Автор Тема: Стил на писане на код  (Прочетена 3842 пъти)

lkr

  • Напреднали
  • *****
  • Публикации: 81
    • Профил
Стил на писане на код
« -: Oct 29, 2008, 21:27 »
Edit: Разделяне на темата от http://www.linux-bg.org/forum/index.php?topic=28439.20

Зависи какво имаш предвид под еднакви. За мен са еднакво грозни и двата :)
http://framework.zend.com/manual/en/coding-standard.coding-style.html.
« Последна редакция: Oct 30, 2008, 14:38 от VladSun »
Активен

VladSun

  • Moderator
  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Стил на писане на код
« Отговор #1 -: Oct 30, 2008, 01:12 »
Зависи какво имаш предвид под еднакви. За мен са еднакво грозни и двата :)
http://framework.zend.com/manual/en/coding-standard.coding-style.html.

Е, аз пък никога не подреждам фигурните скоби така - отврат ми е като видя подравнен if със затваряща }. Още повече, че някои блокове (функции, класове) ги редят като мен, а други (if, switch, else) както те предлагат - на какво прилича това, нема ник'ва дисциплина ;)

А примера с асоциативните масиви ... ;) често не можеш да го наредиш така когато използваш tab indent, а не space indent.
« Последна редакция: Nov 20, 2008, 22:04 от VladSun »
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

lkr

  • Напреднали
  • *****
  • Публикации: 81
    • Профил
Стил на писане на код
« Отговор #2 -: Oct 30, 2008, 09:13 »
Има дисциплина :) Фигурната скоба при функциите и класовете е на нов ред, защото те не могат да са nested, също така не знам кой би ползвал табове вместо spaces, предполагам този който не е принтирал код форматиран с табове ;))
Активен

VladSun

  • Moderator
  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Стил на писане на код
« Отговор #3 -: Oct 30, 2008, 14:32 »
Има дисциплина :) Фигурната скоба при функциите и класовете е на нов ред, защото те не могат да са nested, също така не знам кой би ползвал табове вместо spaces, предполагам този който не е принтирал код форматиран с табове ;))

Код
GeSHi (PHP):
  1. function a()
  2. {
  3. function b()
  4. {
  5. echo 'b';
  6. }
  7.  
  8. echo 'a';
  9. b();
  10. }
  11.  
  12. a();
Липсата на вмъкнати класове е пропуск за PHP-то.

А и не мога да разбера какво общо има nested блоковете с организацията на скобите?

За tab vs. space indent - аз не съм виждал редактор, който да не може да "обръща" indent-a. И все си мисля по отнощение на печатането, че е много по лесно да зададеш tab->2 spaces, ако примерно е било tab->4 spaces, за разлика от hardcoded 4 spaces ;)

Аз лично, никога не съм ползвал space indent. За мен, единственото практическо приложение на Tab символа е именно indent-a.

« Последна редакция: Nov 20, 2008, 22:05 от VladSun »
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

Йордан

  • Напреднали
  • *****
  • Публикации: 1451
  • Distribution: Ubuntu / Gentoo
  • Window Manager: Gnome
  • не е важно колко ти е голяма пишката, а какво можеш с нея
    • Профил
    • WWW
Re: Стил на писане на код
« Отговор #4 -: Oct 30, 2008, 15:14 »
Все пак трябва да се пише код, а не да се рисуват "аски" планини :) Пълно подкрепям VladSun. По е важно променливите да не са примерно $асдфдсф, а $чушки, за да може да се чете кода. Естествено и тук таме някой и друг коментар  [_]3
Активен

Всеки пост - отговор на въпрос !!!

Йордан Георгиев
http://ygeorgiev.net/

lkr

  • Напреднали
  • *****
  • Публикации: 81
    • Профил
Re: Стил на писане на код
« Отговор #5 -: Oct 30, 2008, 17:04 »
Все пак трябва да се пише код, а не да се рисуват "аски" планини :) Пълно подкрепям VladSun. По е важно променливите да не са примерно $асдфдсф, а $чушки, за да може да се чете кода. Естествено и тук таме някой и друг коментар  [_]3

Жалко тогава, че хората са изгубили времето си в писане на подобни документи. Мнението беше лично, не казвам кой от стиловете е грешен/правилен. Zend/Linux Kernel/BSD Kernel ползват подхода споменат по-горе, не съм го измислил аз :)
Активен

VladSun

  • Moderator
  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Re: Стил на писане на код
« Отговор #6 -: Oct 30, 2008, 17:28 »
Стилове на писане колкото искаш (при това добри) - просто избираш този, който най-много ти допада. Съответно, никак не е жалко, че хората са писали такива документи.

Споровете за стила на кодиране винаги ще съществуват - точно поради причината, която изтъкнах по-горе :)

Аз се аргументирах защо не ми харесват някои от правилата на Zend.
Освен това аз не пиша само на PHP - аргументите ти за nested blocks отпадат напълно в други езици ;)
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

lkr

  • Напреднали
  • *****
  • Публикации: 81
    • Профил
Re: Стил на писане на код
« Отговор #7 -: Oct 30, 2008, 17:32 »
 ???
Цитат
Heretic people all over the world have claimed that this inconsistency is ... well ... inconsistent, but all right-thinking people know that (a) K&R are right and (b) K&R are right. Besides, functions are special anyway (you can't nest them in C).
Активен

VladSun

  • Moderator
  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Re: Стил на писане на код
« Отговор #8 -: Oct 30, 2008, 17:38 »
http://en.wikipedia.org/wiki/Indent_style

http://en.wikipedia.org/wiki/Indent_style#K.26R_style
vs.
http://en.wikipedia.org/wiki/Indent_style#Allman_style_.28bsd_in_Emacs.29

Цитат
This once was an important consideration when programs were usually edited on terminals that displayed only 24 lines, but is less significant with larger resolutions.

Имам повече цитати от тебе :P


« Последна редакция: Oct 30, 2008, 17:56 от VladSun »
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

VladSun

  • Moderator
  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Re: Стил на писане на код
« Отговор #9 -: Oct 30, 2008, 17:55 »
Всъщност най-важният цитат от линковете по-горе:
Цитат
It should be noted that The C Programming Language does not explicitly specify this style, though it is followed consistently throughout the book. Of note from the book:

The position of braces is less important, although people hold passionate beliefs. We have chosen one of several popular styles. Pick a style that suits you, then use it consistently.

Именно това защитавам аз.
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P