powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Хороший тон в программировании?
25 сообщений из 153, страница 1 из 7
Хороший тон в программировании?
    #39266646
LimsЯ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день, как то меня спросил преподаватель что считается хорошим тоном в программировании? как должен выглядеть красивый и читабельный код? недолго думая я ответил - что бы легко читался был локоничным и понятным всем кто его читает.
а как считаете вы?
если не сложно можете дать ссылку на статью где обсуждают данный вопрос) и если можно примеры которые по вашему мнение можно считать красивым кодом)))) очень любопытно что это такое красивый код и как его писать)))

Модератор: Тема перенесена из форума "C++".
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266693
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иди на github.com и читай исходники. Годик хотя бы. Потом сам себе ответишь какие понятнее.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266726
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LimsЯчто считается хорошим тоном в программировании?
без бутылки здесь не разобраться
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266736
Фотография бухалтер фантоцци
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goto же
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266739
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LimsЯВсем добрый день, как то меня спросил преподаватель что считается хорошим тоном в программировании? как должен выглядеть красивый и читабельный код? недолго думая я ответил - что бы легко читался был локоничным и понятным всем кто его читает.
а как считаете вы?
если не сложно можете дать ссылку на статью где обсуждают данный вопрос) и если можно примеры которые по вашему мнение можно считать красивым кодом)))) очень любопытно что это такое красивый код и как его писать)))

Модератор: Тема перенесена из форума "C++".


понятие "красивый код" неформализуемо.

никто не сможет дать определение ему.

да и вообще, я бы сказал, что это -вредное понятие, код должен работать правильно, и быть читаемым и поддерживаемым, больше от него ничего не требуется.

и уж 100% нехорошо преподавателю задать такие вопросы, ну разве что с целью вызвать студента на какой-то диалог, дать повод к размышлению
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266743
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как должен выглядеть красивый и читабельный код?


вообще, самый красивый код - это тот, что еще не написан. Он же - самый нечитаемый.

Самый читаемым код - helloworld , он же - самый бесполезный.

нормальный промышленный код вообще как правило накрасив и плохочитаемый. Зато он работает, он полезен.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266796
Гхостик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гугли "code smell".
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266800
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LimsЯчто считается хорошим тоном в программировании?Хорошая программа похожа на красивый дом.
В ней и фундамент /архитектура/ разумная и окна /функции/ красивые /не на перекосяк/ и поставлены в достаточном количестве и подходящем месте, ...

В программе " плохого тона" все наоборот /как вроде при построении дома строителям надели повязки на глаза/.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266882
Красивый код - это код который помещается на одной визитной карточке :)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
    #include <stdlib.h>   // card > aek.ppm
    #include <stdio.h>
    #include <math.h>
    typedef int i;typedef float f;struct v{
    f x,y,z;v operator+(v r){return v(x+r.x
    ,y+r.y,z+r.z);}v operator*(f r){return
    v(x*r,y*r,z*r);}f operator%(v r){return
    x*r.x+y*r.y+z*r.z;}v(){}v operator^(v r
    ){return v(y*r.z-z*r.y,z*r.x-x*r.z,x*r.
    y-y*r.x);}v(f a,f b,f c){x=a;y=b;z=c;}v
    operator!(){return*this*(1/sqrt(*this%*
    this));}};i G[]={247570,280596,280600,
    249748,18578,18577,231184,16,16};f R(){
    return(f)rand()/RAND_MAX;}i T(v o,v d,f
    &t,v&n){t=1e9;i m=0;f p=-o.z/d.z;if(.01
    <p)t=p,n=v(0,0,1),m=1;for(i k=19;k--;)
    for(i j=9;j--;)if(G[j]&1<<k){v p=o+v(-k
    ,0,-j-4);f b=p%d,c=p%p-1,q=b*b-c;if(q>0
    ){f s=-b-sqrt(q);if(s<t&&s>.01)t=s,n=!(
    p+d*t),m=2;}}return m;}v S(v o,v d){f t
    ;v n;i m=T(o,d,t,n);if(!m)return v(.7,
    .6,1)*pow(1-d.z,4);v h=o+d*t,l=!(v(9+R(
    ),9+R(),16)+h*-1),r=d+n*(n%d*-2);f b=l%
    n;if(b<0||T(h,l,t,n))b=0;f p=pow(l%r*(b
    >0),99);if(m&1){h=h*.2;return((i)(ceil(
    h.x)+ceil(h.y))&1?v(3,1,1):v(3,3,3))*(b
    *.2+.1);}return v(p,p,p)+S(h,r)*.5;}i
    main(){printf("P6 512 512 255 ");v g=!v
    (-6,-16,0),a=!(v(0,0,1)^g)*.002,b=!(g^a
    )*.002,c=(a+b)*-256+g;for(i y=512;y--;)
    for(i x=512;x--;){v p(13,13,13);for(i r
    =64;r--;){v t=a*(R()-.5)*99+b*(R()-.5)*
    99;p=S(v(17,16,8)+t,!(t*-1+(a*(R()+x)+b
    *(y+R())+c)*16))*3.5+p;}printf("%c%c%c"
    ,(i)p.x,(i)p.y,(i)p.z);}}



с таким результатом
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266887
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть отраслевые правила, типа Дейкстры.

Есть правила языка типа PEP8.

И есть корпоративные.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266892
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv...
понятие "красивый код" неформализуемо.
никто не сможет дать определение ему.

+100 с ремаркой:

Пару месяцев назад вышел на пенсию русский программист Александр Степанов.
Сам он не использует слово "красивый" ни в качестве технического термина, ни в качестве оценочного.
Студенту, твердо определившемуся в том, что программирование - его профессия ( и не только студенту)
совсем не бесполезно было бы посмотреть пока лежащие на ютубе на канале A9 лекции.

Мне сейчас пришел в голову такой вариант определения красоты "по Степанову" (с которым, почти наверно, он сам не согласится в смысле применимости термина "красота" применительно к коду):
Чужой код красивый, когда изучая его ты понимаешь, что сам код на ту же тему выписал бы строго идентично,
неотличимо точка в точу, вплоть до расстановки отступов.
Идентичность кода двух программистов здесь рассматривается как высшая мера его "красоты".

MasterZivда и вообще, я бы сказал, что это -вредное понятие, код должен работать правильно, и быть читаемым и поддерживаемым, больше от него ничего не требуется.


+100500 в том месте, в каком человек приходит на форум и спрашивает - как мне нарисовать краксивый код.

Но в смысле ремарки выше, как личная оценка, смысл которой состоит в том, что "если бы писал я, то несомненно сделал бы неотличимо точно также", "красивый" может быть использован как личная медаль, вручаемая одним программистом другому.

MasterZivи уж 100% нехорошо преподавателю задать такие вопросы, ну разве что с целью вызвать студента на какой-то диалог, дать повод к размышлению
В последнем смысле - очень хорошо, как минимум приемлемо. Как элемент постановки мозгов будущего ремесленника.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266902
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
красивый по словарю

учитывая что 1 и 3-ее значения относятся строго к внешнему виду, думаю они тут не применимы (ну не знаю... можно попробовать команды в виде солнышка расположить, тогда он будет внешне красив, но не думаю что кто-то такой "красоте" будет рад)

касательно же "2. Отличающийся полнотой и глубиной внутреннего содержания.". Ну вот.... Как по мне очень хорошо применимо к коду.
Красивый код - это код, отличающийся своей полнотой и глубиной внутреннего содержания.

То есть тот код, который более полно и глубоко решает возложенную на него задачу (к которому не прилагается 20 страниц пояснений, что надо сделать, что бы этот код решил поставленную задачу... как его надо настроить и подготовить, и какие ситуации надо обработать вручную, потому что этот код такого не делает)
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266905
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хз,

Недавно, в целях оптимизации, мой код отдали на наладку другому человеку.

В итоге, про*павшись 2 недели, он переписал 50 строк моего кода на свой, мотивируя "не разобрался".

Глядя на его код, который мне прислали на проверку, и который втрое длиннее при той же парадигме конечного автомата, я в задумчивости. Который код красивее - тот, что ты написал, или который понятен всем?
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266906
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl... Который код красивее - тот, что ты написал, или который понятен всем?

Вот в точности строго на эту тему пятая лекция в серии Беседы о программировании.
Где Шон Пэрент рассказывает о своем опыте работы в течении нескольких дней в качестве
ревизора кода в компании Google ( 1я часть лекции 6я минута и далее)

YouTube Video
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266912
uid unique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LimsЯ,

написан в принятом для данного языка стиле (для С, С# и Java они разные хотя синтаксически языки в одной группе), понятный без документации (имена методов и переменных), структурированный (можно расширять функционал меняя отдельные части/модули/методы а не монолит в виде путанного спагетти).

Патчи должны легко читаться (для этого нужны пустые строки и изменения только тех частей которые относятся к заданию), для облегчения code review. Выражаю неодобрение тем в одной группе со мной кто коммитит косметические изменения и функционал втихую приплетает... ;-)
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266918
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglНедавно, в целях оптимизации, мой код отдали на наладку другому человеку.

В итоге, про*павшись 2 недели, он переписал 50 строк моего кода на свой, мотивируя "не разобрался".

Я думаю что он был отчасти прав. Для корпоративной разработки очень важна свободная циркуляция
кода между всеми участниками команды. Если где-то есть затык - кто-то был очень гениален и написал
умный но непонятный код - то этот гениальный код следует уничтожить для сохранения возможности
командной работы. Можно конечно провести внутренние семинары и скрамы на тему понимания
сложного фрагментано КМК любой тим-лид выберет вариант с переписыванием.

Грубо говоря - хороший код - это код понятный команде.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266921
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код следует писать руководствуясь правилом ясности: "Ясность лучше чем мастерство"

"Поскольку обслуживание является важным и дорогостоящим, следует писать такие программы, как если бы обмен наиболее важной информацией, осуществляемый программой, был связан не с компьютером, выполняющим данную программу, а с людьми, которые будут читать и поддерживать исходный код в будущем (включая и самого создателя программы)."

Эрик Реймонд, Искусство программирования для UNIX
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266942
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Ты говоришь о "красоте", как о единстве стиля.
Что я не вижу способа опровергать.

Но ты прими в расчет, что данное поэтом знание о том, что
"Мысль изреченная есть ложь" - не является открытием Тютчева Федора Ивановича,
а именно в таком виде и известно всем народам мира, которые хоть на каком-нибудь, любом и каждом, языке пытались выражать мысли словами.
Лао Цзы сформулировал ее так: Высказанная вслух истина перестаёт быть таковой, ибо уже утратила первичную связь с моментом истинности.


я так думаю - нельзя предугадать - был "прав" коллега, "налаживающий" код от Siemargl, или нет.

В более-менее устойчивой команде некое единство стиля возникает само.
Как раз именно благодаря "свободному перетеканию кода между всеми участниками команды".
И, опять вспоминая Лао Цзы - не нужно стремиться быть полезным .

Переформулированное Львом Толстым не стремление к полезности в недеяние
прямо относится к скраму - не надо делать скрам, стремиться к нему и "внедрять".

Устойчивая команда сама, без применения скрама, немедленно и автоматически отторгнет
чужака с иными стилистическими представлениями о красоте кода, как немедленно и автоматически отторгла Шона Пэрента из Гугла, сразу после демонстрации им своих представлений о том, что такое с его точки зрения хороший код.

Единство стиля есть несомненное свидетельство того, что команда сформирована, но не свидетельством собственно совершенства и качества кода в ней.

А история Шона Пэрента, в свете вышесказанного, может быть вообще изложена как история ложной деятельности - бессмысленности позиции ревизора кода от слова совсем .
Т.к. результат его деятельности принимается только, если заключается в тщательном охранении уже сформированного стиля, а любая попытка его усовершенствования будет отторгнута как неприемлемая.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39266960
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
uid unique... Выражаю неодобрение тем в одной группе со мной кто коммитит косметические изменения и функционал втихую приплетает... ;-)

Если вы тестировщик - ваше неодобрение не требует объяснений.

Если вы администратор, то медаль рисуется как-то так:
На одной стороне будут изображены инструменты, используемые для пресечения такой
деятельности. В случае, например, когда это ломает интерфейсы межмодульного
взаимодействия буквально или в смысле ожидаемого поведения компонента.

На другой стороне попробуйте разглядеть следующее - риски естественной смерти вашей системы от дыхательной недостаточности, имхо, серьезно повышаются, если такая деятельность будет пресечена полностью.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39267014
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonSiemarglНедавно, в целях оптимизации, мой код отдали на наладку другому человеку.

В итоге, про*павшись 2 недели, он переписал 50 строк моего кода на свой, мотивируя "не разобрался".

Я думаю что он был отчасти прав. Для корпоративной разработки очень важна свободная циркуляция
кода между всеми участниками команды. Если где-то есть затык - кто-то был очень гениален и написал
умный но непонятный код - то этот гениальный код следует уничтожить для сохранения возможности
командной работы. Можно конечно провести внутренние семинары и скрамы на тему понимания
сложного фрагментано КМК любой тим-лид выберет вариант с переписыванием.

Грубо говоря - хороший код - это код понятный команде.

IMHO, если думать до конца то очень "вредная" позиция: если нивелировать работу команды разработчиков этим принципом то производимый код станет на уровне самого слабого игрока команды. Если ещё включить в рассмотрение что и команда со временем меняется и обычно, когда код уходит из стадии активной разработки в поддержку, на смену приходит более слабая команда, то надо сразу ориентироваться на "потенциального" слабейшего участника команды. Таким образом, руководствуясь этим принципом вы сведёте работу хороших и высокооплачиваемых специалистов до уровня студентов. Я почти уверен, специалисты быстро сбегут или соберут деньги и сбегут с поддержки. Следующий аспект: от студенческого кода не следует ожидать высокой эффективности. В итоге вы получите: дорогой код, который может поддерживать даже студент, и "слабый" продукт, которым часто недовольны потребители и который не конкурентноспособен. (дорогой продукт за много денег).
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39267035
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl, тут... мы все рассуждаем о коде которого никто не видел.

Ты мог-бы привести эти загадочные 50 строк и их рефакторинг?
Разумеется ... предварительно убрав оттуда бизнес-сведения, имена e.t.c.

Я думаю что после этого мнения аудитории несколько поменяются.

Спасибо.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39267048
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

А ты читаешь релейную логику? =)
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39267050
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(пожимает плечами)

Не знаю. Но аудитория среагировала мгновенно. И заметьте - безо всяких
предварительных сведений о специфике вашей предметной области.

Вот я и заинтересовался первоисточником.
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39267120
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LimsЯВсем добрый день, как то меня спросил преподаватель что считается хорошим тоном в программировании? как должен выглядеть красивый и читабельный код? недолго думая я ответил - что бы легко читался был локоничным и понятным всем кто его читает.
Вспомнилось:

"Что важнее, форма или содержание?" (ц)
"Вам шашечки или ехать?" (ц)
"На вкус и цвет товарищей нет." (ц)
"О вкусах не спорят." (ц)
...
Рейтинг: 0 / 0
Хороший тон в программировании?
    #39267514
uid unique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonSiemarglНедавно, в целях оптимизации, мой код отдали на наладку другому человеку.

В итоге, про*павшись 2 недели, он переписал 50 строк моего кода на свой, мотивируя "не разобрался".

Я думаю что он был отчасти прав. Для корпоративной разработки очень важна свободная циркуляция
кода между всеми участниками команды. Если где-то есть затык - кто-то был очень гениален и написал
умный но непонятный код - то этот гениальный код следует уничтожить для сохранения возможности
командной работы. Можно конечно провести внутренние семинары и скрамы на тему понимания
сложного фрагментано КМК любой тим-лид выберет вариант с переписыванием.

Грубо говоря - хороший код - это код понятный команде.
Плюсую... стандартизация и возможность понять код новичку на проекте (и автору кода через полгода) важнее сжатия исходников. даже стилистика должна сохраняться, у непонятного кода скорее всего и стиль совершенно другой.
...
Рейтинг: 0 / 0
25 сообщений из 153, страница 1 из 7
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Хороший тон в программировании?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]