Underscores vs camelBack

Γενικά θέματα για τις γλώσσες προγραμματισμού που δεν καλύπτονται από τις άλλες περιοχές της κατηγορίας.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cpulse » 09 Δεκ 2010 11:36

Γεια χαρά σε όλους. Θέλω τη γνώμη σας για ένα θέμα styling του κώδικα.

Οι C, C++, Java έχουν καθιερώσει ένα style που βολεύει πολύ και είναι καθαρό στην κατανόηση.. όλα τα ονόματα των functions και μεταβλητών με μικρά γράμματα και χρήση του camelBack στύλ. Οι κλάσσεις ξεκινάνε με κεφαλαίο γράμμα και οι σταθερές είναι όλα κεφαλαία.

Μετά από κάποια χρόνια προγραμματισμού σε PHP, κάποια στιγμή συνειδητοποίησα οτι έχω προσαρμοστεί στα βίτσια της PHP όσον αφορά το camelBack.

Δηλαδή αντί να γράφω
function thisIsMyFunctionName()

προτιμώ να το γράφω
function this_is_my_function_name()

Και φιλοσοφόντας το λίγο είναι από πολλές απόψεις προτιμότερο. Πρώτον είναι μακράν ποιο εύκολο να διακρίνω τι λέει. Δεύτερον, μπορώ να κάνω search με μια φράση και με ένα underscore και να βρίσκω ευκολότερα κώδικα που με ενδιαφέρει (βοηθάει πολύ στο debugging). Τρίτον.. δεν ζούμε πια με οθόνες που βγάζουν 80 columns.. έχουμε άπλετο χώρο για underscores.

Τώρα όμως ετοιμάζω ένα open source project που θα πάει πολύ μακριά και έχω προβληματιστεί αν είναι καλό να κρατήσω τα underscores ή να γίνει μια μαζική αλλαγή σε camelBack.

Ποιά είναι η δική σας γνώμη;

Άβαταρ μέλους
CyberCr33p
Honorary Member
Δημοσιεύσεις: 3197
Εγγραφή: 06 Νοέμ 1999 01:00
Τοποθεσία: Αθήνα
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από CyberCr33p » 09 Δεκ 2010 17:47

Και εγώ με κάτω παύλα γράφω τα ονόματα στις function στα μικροπρογράμματα που έχω φτιάξει σε PHP.

Θα σου πρότεινα να δεις τον κώδικα σε κάποια γνωστά προγράμματα (Joomla, Wordpress, Drupal) για να δεις πώς τις ονομάζουν και εκεί.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cpulse » 09 Δεκ 2010 18:00

Τα ξέρω.. αλλά δεν με πολυνοιάζουν. Το Joomla χρησιμοποιεί περισσότερο το camel back, τα άλλα δύο με underscores. Όμως σχεδόν όλα, ειδικά το wordpress, είναι γραμμένα με πολλά διαφορετικά στύλ.

Το Drupal έχει μεν αρχές για το coding style, αλλά δεν μπορώ να τους πάρω και πολύ στα σοβαρά. Ούτε καν objects δεν έχουν. Ούτε καν επεκτάσεις σε .php δεν χρησιμοποιούνε. Σαν να βγήκαν από σπηλιά είναι αυτοί.. δεν μπορείς να παραδειγματιστείς από τους Drupalάδες.

Εγώ θέλω απαντήσεις από τους gurus μας.

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cherouvim » 09 Δεκ 2010 18:14

Δυστυχώς στην PHP δεν υπάρχουν code style standards δοσμένα από τους δημιουργούς της γλώσσας. Οπότε απλά διάλεξε (ή φτιάξε) ένα code style και ακολούθησε το πιστά. Ιδανικά διάλεξε κάποιο από τα (γνωστά) υφιστάμενα:
- http://framework.zend.com/manual/en/cod ... ndard.html
- http://pear.php.net/manual/en/standards.php

Εννοείται οτι όποιο ακολουθήσεις θα το αναφέρεις στα guidelines για το πιθανό development/contributions που θα δεχτείς από άλλους.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cpulse » 09 Δεκ 2010 18:31

Καλά εγώ σε αυτά χιτλεριάζω.. μην ανησυχείς

αλλά πχ εσυ που έχεις μάθει με την java.. θα σου κακοφαινότανε να γράψεις με underscores; θα το θεωρούσες χαζό ή κακό με οποιοδήποτε άλλο τρόπο;

ή είναι απλά ένα θέμα styling που δεν σε ενοχλεί και πολύ;

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cherouvim » 09 Δεκ 2010 18:38

cpulse έγραψε:αλλά πχ εσυ που έχεις μάθει με την java.. θα σου κακοφαινότανε να γράψεις με underscores; θα το θεωρούσες χαζό ή κακό με οποιοδήποτε άλλο τρόπο;
Όχι μια χαρά φαίνεται. Σκοπός είναι να βρεις κάποιο και να το ακολουθείς.

Στην PHP γράφω τα function names με underscores και indentation πάντα με 1TBS λόγω τριβής με Java.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cpulse » 09 Δεκ 2010 18:55

Ποοποο.. ανακούφιση. Τώρα βλέπω οτι δεν είμαι μόνο εγώ τρελός. Υπάρχουν κι άλλοι και μάλιστα δίνουν στην μούρλα τους και ονόματα :)

Μάλιστα.. κι εγώ οπαδός του 1TBS είμαι από οτι φαίνεται. Και με μια έξτρα ιδιαιτερότητα.. πάντα τα else τα ξεκινάω σε διαφορετικές γραμμές. Ο λόγος είναι οτι έτσι μπορείς πανεύκολα να τα σβήνεις να κάνεις ένα test run και μετά πίσω με ctrl+z αν δεν σου κάτσει το test.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από korgr » 09 Δεκ 2010 20:08

μιαΕίναιΗΤέλειαΜορφήΓραφήςΟνομάτων

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από gvre » 09 Δεκ 2010 22:52

Μπορείς να ορίσεις και ένα δικό σου στυλ. Σημασία έχει να χρησιμοποιούν όλοι το ίδιο. Χρήσιμο σε τέτοιες περιπτώσεις είναι το PHP Code Sniffer μαζί με pre-commit hooks για svn ή git.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cpulse » 09 Δεκ 2010 23:50

korgr:
ANTiJAVaSTYLINgRULEz :p

gvre:
Πράγματι χρήσιμο το code sniffer για το επόμενο στάδιο που θα πρέπει να κυνηγάς με το ρόπαλο για εφαρμογή των guidelines. Μέχρι εκεί είναι που ήθελα να δω περίπου πως αντιλαμβανόμαστε αυτά τα θέματα. Εγώ πχ τσαντίζομαι πολύ όταν δεν βρίσκω ομοιομορφία.

Άβαταρ μέλους
burnmind
Script Master
Δημοσιεύσεις: 954
Εγγραφή: 26 Σεπ 2009 02:14
Τοποθεσία: UK
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από burnmind » 10 Δεκ 2010 01:36

Δε θεωρώ πως υπάρχει σωστή και λάθος γραφή. Όπως βολεύει τον καθένα. Κάποτε δοκίμασα τα underscores, πιστεύοντας πως θα μου είναι πιο εύκολο να διακρίνω τα ονόματα (και απλά για δοκιμή) αλλά σύντομα ξαναγύρισα στην πολυαγαπημένη καμήλα.

Μου φαίνεται ακόμα περίεργο που το μάτι μου πιάνει πιο εύκολα τις λέξεις που αρχίζουν με κεφαλαία παρά τις χωρισμένες με underscore! Αλλά είπαμε, όπως βολεύει τον καθένα!

Συνεχίζω που και που να γράφω με underscores, αλλά μόνο αν πρέπει (λόγω ομοιογένειας του project).

Οπότε, αν πρόκειται να γράψεις (ή να κάνεις debug) τον περισσότερο κώδικα στο project, να χρησιμοποιήσεις ό,τι σε βολεύει περισσότερο. Αλλιώς, κάνε ένα poll να δεις τι χρησιμοποιεί η πληοψηφία και επέλεξε αυτό!

ΥΓ: Κάποτε είχα διαβάσει μια πολύ ωραία συζήτηση επί του θέματος σε ένα ξένο forum, αλλά δυστυχώς δε μπορώ να τη βρω, κρίμα..

ΥΓ2: Έμαθα και την άχρηστη πληροφορία της ημέρας με το link του cherouvim: Χρησιμοποιώ Allman style indentation! Μιλάμε όμως ψύχωση, με το ζόρι μπορώ να γράψω με οποιονδήποτε άλλο τρόπο (αν για κακή μου τύχη πρέπει)!

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cpulse » 10 Δεκ 2010 01:51

Ένα καιρό το χα γυρίσει κι εγώ έτσι με τα curly braces. Αλλά δεν γίνεται δουλειά έτσι.. πολλές γραμμές κώδικα χωρίς περιεχόμενο. Ειδικά αμα γράφεις javascript που είναι γεμάτα μικρο-functions.

Άβαταρ μέλους
burnmind
Script Master
Δημοσιεύσεις: 954
Εγγραφή: 26 Σεπ 2009 02:14
Τοποθεσία: UK
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από burnmind » 10 Δεκ 2010 02:50

cpulse έγραψε:Ένα καιρό το χα γυρίσει κι εγώ έτσι με τα curly braces. Αλλά δεν γίνεται δουλειά έτσι.. πολλές γραμμές κώδικα χωρίς περιεχόμενο. Ειδικά αμα γράφεις javascript που είναι γεμάτα μικρο-functions.
Δεκτό, αλλά βοηθάει τρομερά στο readability, οπότε το προτιμώ. Όσο για τη JavaScript, στο development script τα χρησιμοποιώ, αλλά το τελικό script το περνάω από minifier ούτως ή άλλως.

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από cherouvim » 10 Δεκ 2010 04:28

burNMind έγραψε: ΥΓ2: Έμαθα και την άχρηστη πληροφορία της ημέρας με το link του cherouvim: Χρησιμοποιώ Allman style indentation! Μιλάμε όμως ψύχωση, με το ζόρι μπορώ να γράψω με οποιονδήποτε άλλο τρόπο (αν για κακή μου τύχη πρέπει)!
Καθόλου άχρηστη φίλε μου. Για τα εξής 3 θέματα γίνονται "πόλεμοι" καθημερινά:
http://en.wikipedia.org/wiki/Indent_style
http://www.google.com/search?q=tabs+vs+spaces
http://en.wikipedia.org/wiki/Posting_style

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Underscores vs camelBack

Δημοσίευση από korgr » 10 Δεκ 2010 09:13

Όλη μου η φιλοσοφία (γιατί βαριέμαι να γράφω πρωί πρωί) σε εικόνα από τμήμα του πυρήνα του Odyssey

Εικόνα

underscores χρησιμοποιώ κυρίως σε ονόματα css class

Απάντηση

Επιστροφή στο “γλώσσες προγραμματισμού - γενικά”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης