Απρίλιος 2009 - Posts

Μετά το 5ο student guru event μου ζητήσατε να ποστάρω tutorial για code snippets και φυσικά όπως πάντα δε θα σας χαλάσω χατήρι =D

Για να θυμηθούν οι παλιοί (όσοι βρεθήκατε στο event) αλλα και για να μάθουν οι καινούριοι (όσοι δέν ήρθατε), να τονίσω ότι τα code snippets είναι κομματάκια κώδικα (όπως λέει και το όνομα τους) που σκοπό έχουν την ενίσχυση του Rapid Application Development (ακα RAD).Τώρα όσον αφορά το πρακτικό κομμάτι, είναι ένα αρχείο xml το οποίο ανάλογα τα δεδομένα του, όταν πατήσετε τον alias που του έχετε ορίσει και μετά tab θα γραφεί αυτόματα ο κώδικας που έχει ορισθεί στο xml αρχείο του.

Ο καλύτερος τρόπος να μάθεις κάτι είναι να το δημιουργήσεις, οπότε πάμε να γράψουμε ένα code snippet το οποίο όταν θα πατάμε pr (απο το print) θα τυπώνει το string “Hello World of Code Snippets!”.

Ανοίγουμε το visual studio και πάμε να φτιάξουμε ένα xml αρχείο (file->new file->xml) και αλλάζουμε την κατάληξή του απο xml σε snippet.Τώρα θα έχετε κάτι τέτοιο:

image

Πάμε να ορίσουμε το xml namespace του αρχείου μας

image 

Στη συνέχεια θα ορίσουμε το format του snippet μας σε 1.0.0:

image

 

Ύστερα, πρέπει να ορίσουμε την επικεφαλίδα του η οποία περιλαμβάνει στοιχεία όπως το shortcut που θα εκτελεί το snippet μας, τον τίτλο του, κάποια περιγραφή, τον συγγραφέα και άλλα (φυσικά το intellisense βοηθάει απίστευτα στο να εξερευνήσετε τα χαρακτηριστηκά (πχ) της επικεφαλίδας):

image

Μετά, θα δηλώσουμε τον κώδικα που θα εμφανίζετε όταν θα τρέχει το snippet:

image

Οι γλώσσες που μπορούμε να δηλώσουμε είναι C#, j#, VB και xml.Αν ο κώδικάς σας χρειάζεται κάποιο dll, τότε πρέπει στο reference να ορίσετε ποιό, για να γίνει add το κατάλληλο reference (σημειώστε πως αυτό γίνετε μόνο για code snippets για VB, στις άλλες περιπτώσεις πρέπει να γίνει manualy).Πχ αν θέλετε να εμφανίζετε κάποιο MessageBox θα πρέπει να δώσετε το System.Windows.

Τώρα για να το δηλώσουμε, πρέπει να πάμε στο Tab Tools και να πατήσουμε Code Snippets Manager.Εκεί θα κάνουμε import το αρχείο μας και θα του πούμε σε ποιό φάκελο να αποθηκευτεί.Αφού πατήσετε ΟΚ, κάθε φορά που σε ένα C# project πατάτε pr και tab θα εμφανίζετε Console.WriteLine("Hello World of Code Snippets!");

Όμως αυτό που φτιάξαμε δέν είναι πρακτικό, διότι θα πρέπει να σβήνουμε κάθε φορά το μύνημα “Hello World of Code Snippets”.Ας αλλάξουμε λίγο το xml μας… ;)

 

Capture

Πλέον όταν θα τρέχουμε το snippet μας, στο σημείο που είχε πρίν το μύνημα προς εκτύπωση θα το έχει highlighted και με ένα διπλό κλίκ θα μπορούμε να γράψουμε το μύνημα μας.Αν αφήσουμε τον κέρσορα πάνω απο το μύνημα θα εμφανησθεί ένα μύνημα που θα λέει “The message to be printed”.Όπως καταλάβατε με αυτό τον τρόπο κάνουμε τα snippets μας ακόμα πιό χρήσιμα αλλά και user friendly, καθώς καθοδηγούν τον χρήστη του τί πρέπει να συμπληρώσει.

Τέλος, υπάρχουν ατελείωτα snippets στο internet καθώς και προεγκατεστημένα στο visual studio (δοκίμαστε for + tab. foreach + tab, if + tab κλπ ;)).

Cheers ‘n’ Keep coding

Share/Bookmark