|
|
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Псевдокод: 1. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Как правильнее? Почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 15:22:10 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nym, Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 15:30:23 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Mozok, во-первых, Код: plaintext 1. 2. во-вторых, если condition_over_result_inner - не односложное условие, состоящее, например, из (result_inner < 0 or result_inner > 5), а dosmth() - ресурсоемкая функция, то в вашем примере получится напрасная трата ресурсов Код: plaintext 1. 2. Я думаю я достаточно четко описал в примерах, чтобы понимать о чем я спрашиваю. Если информации недостаточно - скажите, добавлю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 15:39:06 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nym, да ладно вам, уже и пошутить нельзя :). Вообще, в данном случае выбор за вами. Сам предпочитаю вариант 3. Почему? Потому что он наглядно демонстрирует модульность метода, видно все этапы алгоритма. Мой бывший начальник предпочитал вариант 2, не любил много return'ов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 16:58:19 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Mozok, раньше сам использовал 3ий вариант. Потом что-то где-то прочитал и стал предпочитать 1ый вариант. Вот теперь не могу найти, почему я это сделал. :) 2 вариант плох лишними проверками на каждом блоке кода, но зато код куда удобнее читать, чем портянку Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Вот интересно людей послушать, кто как делает и почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 17:24:06 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
табличный метод самый лучший, но корпеть придется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 19:00:23 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
mccc, табличный - это первый? можете вкратце объяснить, почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 20:14:59 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Детский вопрос. Тем не менее. Вариант 3 неудобен в случаях, когда требуется ручная очистка (удалить память, закрыть файл). Во вторых, выбор зависит от используемого языка и возможностей. В 3х - пофигу, лишь бы было читаемо и одинаково (почти) по всей программе. В 4х - неплохо почитать чужой код (библиотеки там, еще чего н. большое). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 20:22:38 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Siemargl Вариант 3 неудобен в случаях, когда требуется ручная очистка (удалить память, закрыть файл). Ага. Поэтому на восьмой день, хорошенько отдохнув, Бог создал RAII :). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 20:53:14 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Mozok, зависит от языка. Можем на досуге подискутировать на тему автоуничтожения, например в деструкторах, а особенно gargage коллектором взаимозависимых объектов. Или, например, циклически зависимых. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 21:25:47 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nym, Мне 3-й нравится - читабельный и букаф немного. Сам именно в таком стиле делаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 21:45:53 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Для чистоты обсуждения примем за истину то, что во всех подходах ресурсы будут правильно освобождены и само исполнение полностью эквивалентно по результату. Есть ли фундаментальная разница в оптимизации подобных конструкций интерпретатором (PHP и др.) или компилятором (C++, C#, Java и др.), в зависимости от используемого "стиля" 1/2/3? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2010, 23:02:11 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nym ... Как правильнее? Почему?Иногда даже так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. точек прерывания, которые нужно установить, чтобы исследовать что происходит в случае "fail", если ошибка возникает нерегулярно и проявляется только после какого-то периода работы в "реальных" условиях. Вообще-то выбор формы зависит от того пишется ли данный кусок программы сразу или появляется в результате "эволюции", а также от условий "написания". Не помню откуда: "... Извини, что написал тебе это длинное письмо - у меня не было времени написать короче." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 03:05:34 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Я правильно понимаю, что никакой разницы, кроме эстетичности и удобства, нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 10:19:04 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nymЯ правильно понимаю, что никакой разницы, кроме эстетичности и удобства, нет? главное - удобство. удобство комментирования блоков кода. удобство выставления точек прерывания. удобство понимания чужого кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 10:30:14 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
eNose, да мне в принципе в любом из трех вариантов удобно кодировать... Всё таки - кроме удобства и субъективного "мне это нравится" есть разница? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 10:40:23 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
программы уже давно пишутся для людей, а не для компиляторов. Так что просто поставьте себя на место другого человека, который видит код в первый раз и напишите его так, что-бы алгоритм работы был бы максимально читабелен и понятен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 10:58:06 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
Ggg_old, это всё понятно. Я никогда в жизни код а-ля Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Вышеупомянутые подходы же кажутся мне хорошо читабельными. Поэтому интересно: при прочих равных (при равной читабельности) что лучше? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 11:18:57 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nymЯ правильно понимаю, что никакой разницы, кроме эстетичности и удобства, нет? не согласен про эстетику. в данном конкретном случае вариант 3 наиболее удобочитаемый и "легкоусваяемый". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 12:07:48 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nymВышеупомянутые подходы же кажутся мне хорошо читабельными. Поэтому интересно: при прочих равных (при равной читабельности) что лучше?вариант 1 не является удобным ни с точки зрения написания, ни с точки зрения дальнейшей модернизации, ни с точки зрения последующего чтения. достаточно появиться одной-двум секциям else, как код превратится в совершенно непонятные макароны. В этом смысле, подход 2 и 3 практически идентичны, различия - в личных предпочтениях. Мне, к примеру, более по душе вариант 3, а иногда приходится пользоваться подходом, предложенным avb1003, к примеру, при написании хранимок на TSQL 2000. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 12:17:31 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
*безнадежным голосом* Так всё таки компилятору есть разница? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 12:35:45 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nym*безнадежным голосом* Так всё таки компилятору есть разница? *не менее безнадежно* Есть разница, компилятор, интерпретатор либо компилятор в байт код. Разница в 1, 10 либо 1.3 раза соответственно (условно). Интерпретатор - чем меньше парсить текста, тем быстрее. Остальным пофигу. А есть еще люди, которым этот код читать - это важнее всего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 13:04:07 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
an0nym*безнадежным голосом* Так всё таки компилятору есть разница?в общем случае, нет. Не думай за компилятор, пусть лучше он думает за тебя ;-)) пиши так, чтобы было понятно тебе и окружающим, используй профайлер, если найдёшь, что именно разница в таком написании условных операторов, тогда и оптимизируй. пиши для людей, а не для компилятора, в общем. Тут это уже говорили, впрочем. ЗЫ. настоятельно рекомендую для просветления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 13:08:59 |
|
||
|
"Стиль" кодирования - как правильно?
|
|||
|---|---|---|---|
|
#18+
egorychиспользуй профайлер, если найдёшь, что именно разница в таком написании условных операторов, тогда и оптимизируй. ЗЫ. настоятельно рекомендую для просветления. Да я надеялся, может кто-то уже до меня профайлер заюзал. :( То что люди пишут, я до создания топика знал. :) ЗЫ. Почитаю, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2010, 13:16:26 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36493343&tid=1343855]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
198ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 491ms |

| 0 / 0 |
