красивый код
От: _Winnie Россия C++.freerun
Дата: 27.12.05 14:48
Оценка: +1
Любой некрасивый код является либо учитывающим человеческий фактор, либо workaround-ом вокруг другого неправильного кода, либо неправильным кодом, который можно переписать кратко, красиво и понятно. Нет задачи, для которой нужно писать плохой код, бывает только мало времени/мало опыта/нежелание.

кросспост
Правильно работающая программа — просто частный случай Undefined Behavior
Re: красивый код
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.12.05 14:52
Оценка: +1
Здравствуйте, _Winnie, Вы писали:

_W>Любой некрасивый код является либо учитывающим человеческий фактор, либо workaround-ом вокруг другого неправильного кода, либо неправильным кодом, который можно переписать кратко, красиво и понятно. Нет задачи, для которой нужно писать плохой код, бывает только мало времени/мало опыта/нежелание.


Можно ли узнать твое понимание красоты кода?

Кстати, ты в своей фразе смешал два разных понятия: красивый и плохой. Красивый код так же может быть плохим.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 14:56
Оценка:
Здравствуйте, _Winnie, Вы писали:

_W>Любой некрасивый код является либо учитывающим человеческий фактор, либо workaround-ом вокруг другого неправильного кода, либо неправильным кодом, который можно переписать кратко, красиво и понятно. Нет задачи, для которой нужно писать плохой код, бывает только мало времени/мало опыта/нежелание.


Во-первых, что такое некрасивый код? Что такое неправильный код? Тут много тонкостей, но вы, как мне кажется, делите все код на две части: "+" и "-"ю

Красив ли код, который генерирует, например, синтаксический анализатор? Можно ли его красиво перепивать для языков достаточно большой сложности? Будет ли его легко сопровождать?

Или можно взять другой пример: код выполняющий некоторый математический расчет. Исходный код получен в результате нескольких страниц математических выкладок. Понять суть кода без этих выкладок невозможно. Будет ли он красивым?
Re: красивый код
От: aik Австралия  
Дата: 27.12.05 14:59
Оценка: :)
Здравствуйте, _Winnie, Вы писали:

_W>Любой некрасивый код является либо учитывающим человеческий фактор, либо workaround-ом вокруг другого неправильного кода, либо неправильным кодом, который можно переписать кратко, красиво и понятно. Нет задачи, для которой нужно писать плохой код, бывает только мало времени/мало опыта/нежелание.

_W>кросспост

Код не бывает некрасивым, бывает что водки мало.
Не должно быть такого отдельного понятия как "красивый" код. Код либо делает что надо, либо не делает. Либо расширяется/дописывается, либо нет. Красивым может быть только результат работы кода.
Re[2]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 15:06
Оценка:
Здравствуйте, aik, Вы писали:

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


Ну почему же? Можем же мы оценить код, например, из эстетических соображений? Точно так же, как картину, роман или фильм?
Re[3]: красивый код
От: aik Австралия  
Дата: 27.12.05 15:08
Оценка:
Здравствуйте, Mystic, Вы писали:

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

M>Ну почему же? Можем же мы оценить код, например, из эстетических соображений? Точно так же, как картину, роман или фильм?

Это все равно что на дамп EXE файла смотреть. Нифига непонятно что он из себя представляет.
Re[3]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:08
Оценка:
Mystic wrote:
>
> aik>Не должно быть такого отдельного понятия как "красивый" код. Код
> либо делает что надо, либо не делает. Либо расширяется/дописывается,
> либо нет. Красивым может быть только результат работы кода.
>
> Ну почему же? Можем же мы оценить код, например, из эстетических
> соображений? Точно так же, как картину, роман или фильм?

Кто его сейчас так оценивает? Всем надо, чтобы работало хоть как-то, но
вчера...
Posted via RSDN NNTP Server 2.0
Re[4]: красивый код
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.12.05 15:10
Оценка:
Здравствуйте, Pzz, Вы писали:

>> Ну почему же? Можем же мы оценить код, например, из эстетических

>> соображений? Точно так же, как картину, роман или фильм?

Pzz>Кто его сейчас так оценивает?


Тот, кто будет сопровождать его послезавтра.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[4]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:11
Оценка: 3 (2)
aik wrote:
>
> M>Ну почему же? Можем же мы оценить код, например, из эстетических
> соображений? Точно так же, как картину, роман или фильм?
>
> Это все равно что на дамп EXE файла смотреть. Нифига непонятно что он из
> себя представляет.

По-моему, если код выглядит, как г-но, он и работать будет как г-но.
Конечно, нечеловеческими усилиями и г-но можно хоть как-то заставить
работать, подставив подпорочек и подмотав изолентой

Не поэтому ли у простых человеков столь низкое доверие к компутерам, что
программы пишутся столь халтурно?
Posted via RSDN NNTP Server 2.0
Re[4]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 15:13
Оценка: +1 :)
Здравствуйте, Pzz, Вы писали:

Pzz>Кто его сейчас так оценивает? Всем надо, чтобы работало хоть как-то, но

Pzz>вчера...

Ну... мне кажется, что ты переносишь свой опыт работы на всех
Re[5]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:14
Оценка:
eao197 wrote:
>
>>> Ну почему же? Можем же мы оценить код, например, из эстетических
>>> соображений? Точно так же, как картину, роман или фильм?
>
> Pzz>Кто его сейчас так оценивает?
>
> Тот, кто будет сопровождать его послезавтра.

Если код сейчас аккуратен, то те, кто будут сопровождать его
послезавтра, уж точно доведут его до ручки.

Сопровождатели редко утруждают себя тем, чтобы понять, как программа
работает. Их технология — найти место, и слегка подковырнуть. Если после
этого программа начинает падать по assert'у, перед assert'ом очень
быстро появляется //.

Зачем думать — тесты проходит, и ладно
Posted via RSDN NNTP Server 2.0
Re[4]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 15:16
Оценка:
Здравствуйте, aik, Вы писали:

aik>Это все равно что на дамп EXE файла смотреть. Нифига непонятно что он из себя представляет.


Насколько я понял, предмет обсуждения суть некий код, набраный группой программистов, в частности одним человеком. Честно говоря, я лично различаю просмотр исходников и просмотр дампа, первое все же проще и более эстетично.
Re[5]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:17
Оценка:
Mystic wrote:
>
> Pzz>Кто его сейчас так оценивает? Всем надо, чтобы работало хоть как-то, но
> Pzz>вчера...
>
> Ну... мне кажется, что ты переносишь свой опыт работы на всех

Ну естественно, это основывается на опыте. В т.ч., опыте работы в core
team _крупных_ американских компаниях, имя которых я здесь называть не буду.

Я, кстати, один из немногих людей, кто не будет делать откровенную
халтуру даже перед угрозой потерять работу.
Posted via RSDN NNTP Server 2.0
Re[5]: красивый код
От: aik Австралия  
Дата: 27.12.05 15:28
Оценка:
Здравствуйте, Pzz, Вы писали:

>> M>Ну почему же? Можем же мы оценить код, например, из эстетических

>> соображений? Точно так же, как картину, роман или фильм?
>> Это все равно что на дамп EXE файла смотреть. Нифига непонятно что он из
>> себя представляет.
Pzz>По-моему, если код выглядит, как г-но, он и работать будет как г-но.
Pzz>Конечно, нечеловеческими усилиями и г-но можно хоть как-то заставить
Pzz>работать, подставив подпорочек и подмотав изолентой

Очень незрело думать что ты верно понимаешь по виду кода его качество
Все это очень субъективно и относительно чтобы сразу говорить о качестве кода по его виду.
Мне не нравится как линукс написан. А работает... Эхехе. Всё б так работало.

Pzz>Не поэтому ли у простых человеков столь низкое доверие к компутерам, что

Pzz>программы пишутся столь халтурно?

Это от необразованности в первую очередь. Клавиатура со 104 кнопками пугает. Поэтому то мыши и популярны так.
Халтура никого не пугает, достаточно посмотреть как продаются mp3 плееры (любые), мобилы Сименс/Моторола или компьютерные игрушки. Глюков и тупых недоделок тьма, но рынок подгоняет, и народ хватает как ошпаренный.
Re[5]: красивый код
От: aik Австралия  
Дата: 27.12.05 15:33
Оценка:
Здравствуйте, Mystic, Вы писали:

aik>>Это все равно что на дамп EXE файла смотреть. Нифига непонятно что он из себя представляет.

M>Насколько я понял, предмет обсуждения суть некий код, набраный группой программистов, в частности одним человеком. Честно говоря, я лично различаю просмотр исходников и просмотр дампа, первое все же проще и более эстетично.

Просто смотреть на код (не вдаваясь в суть) и просто смотреть на дамп — одинаково полезные занятия. Я это имел ввиду. А как поймешь суть кода, то тут красота пойдет лесом, вылезут более интересные характеристики кода.
Re[6]: красивый код
От: aik Австралия  
Дата: 27.12.05 15:34
Оценка: -2
Здравствуйте, Pzz, Вы писали:

Pzz>Я, кстати, один из немногих людей, кто не будет делать откровенную

Pzz>халтуру даже перед угрозой потерять работу.

это — понты, исключительно. имхо.
Re[6]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 15:35
Оценка:
Здравствуйте, aik, Вы писали:

aik>Просто смотреть на код (не вдаваясь в суть) и просто смотреть на дамп — одинаково полезные занятия. Я это имел ввиду. А как поймешь суть кода, то тут красота пойдет лесом, вылезут более интересные характеристики кода.


Не всегда Часто понимаешь суть и восхищаешься
Re[7]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:36
Оценка: +1
aik wrote:
>
> Pzz>Я, кстати, один из немногих людей, кто не будет делать откровенную
> Pzz>халтуру даже перед угрозой потерять работу.
>
> это — понты, исключительно. имхо.

Что бы Вас убедило в том, что это не понты?
Posted via RSDN NNTP Server 2.0
Re[6]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:41
Оценка:
aik wrote:
>
> Pzz>По-моему, если код выглядит, как г-но, он и работать будет как г-но.
> Pzz>Конечно, нечеловеческими усилиями и г-но можно хоть как-то заставить
> Pzz>работать, подставив подпорочек и подмотав изолентой
>
> Очень незрело думать что ты верно понимаешь по виду кода его качество
> Все это очень субъективно и относительно чтобы сразу говорить о качестве
> кода по его виду.

Зрело/незрело, это как раз очень субъективное суждение. Такое
утверждение невозможно оспорить по существу, что говорит о его
бессмысленности.

Мой опыт показывает, что общее качество оформления кода (всякие там
отступы, комментарии, консистентность в названиях переменных и т.п.),
вменяемость дизайна и количество ошибок на квадратный метр (т.е., на
строку) это связанные вещи.

Чем небрежнее код на вид, тем хуже он оказывается при более пристальном
рассмотрении...

> Мне не нравится как линукс написан. А работает... Эхехе. Всё б так работало.


Линух не так уж и плохо написан. Где-то на троечку с плюсом. На троечку
с плюсом он и работает

> Pzz>Не поэтому ли у простых человеков столь низкое доверие к компутерам, что

> Pzz>программы пишутся столь халтурно?
>
> Это от необразованности в первую очередь. Клавиатура со 104 кнопками
> пугает. Поэтому то мыши и популярны так.

А я думаю, в первую очередь дело в ненадежности этих самых програм.

> Халтура никого не пугает, достаточно посмотреть как продаются mp3 плееры

> (любые), мобилы Сименс/Моторола или компьютерные игрушки. Глюков и тупых
> недоделок тьма, но рынок подгоняет, и народ хватает как ошпаренный.

Ну да, народ и не ждет от них ничего, кроме глюков.
Posted via RSDN NNTP Server 2.0
Re[8]: красивый код
От: aik Австралия  
Дата: 27.12.05 15:46
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Что бы Вас убедило в том, что это не понты?


Ничего Заявление прозвучало как "все вокруг ..., а я весь в белом". Мир не черно-белый.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.