Re[3]: эстетически приятный код :)
От: gear nuke  
Дата: 29.12.05 02:30
Оценка: 22 (1) +1 :))) :)))
Здравствуйте, _Winnie, Вы писали:

_W>Красивый — это всё.


_W>1) эстетически приятный

_W>2) (в меру)эффективный
_W>3) сопровождаемый, расширяемый
_W>4) легко читаемый и понимаемый..
_W>5) ....

Вот код, соответствеующий первому условию:
#!/usr/bin/perl -w                                    
use strict;
                                           $_='ev
                                       al("seek\040D
           ATA,0,                  0;");foreach(1..2)
       {<DATA>;}my               @camel1hump;my$camel;
  my$Camel  ;while(             <DATA>){$_=sprintf("%-6
9s",$_);my@dromedary           1=split(//);if(defined($
_=<DATA>)){@camel1hum        p=split(//);}while(@dromeda
 ry1){my$camel1hump=0      ;my$CAMEL=3;if(defined($_=shif
        t(@dromedary1    ))&&/\S/){$camel1hump+=1<<$CAMEL;}
       $CAMEL--;if(d   efined($_=shift(@dromedary1))&&/\S/){
      $camel1hump+=1  <<$CAMEL;}$CAMEL--;if(defined($_=shift(
     @camel1hump))&&/\S/){$camel1hump+=1<<$CAMEL;}$CAMEL--;if(
     defined($_=shift(@camel1hump))&&/\S/){$camel1hump+=1<<$CAME
     L;;}$camel.=(split(//,"\040..m`{/J\047\134}L^7FX"))[$camel1h
      ump];}$camel.="\n";}@camel1hump=split(/\n/,$camel);foreach(@
      camel1hump){chomp;$Camel=$_;tr/LJF7\173\175`\047/\061\062\063
      45678/;tr/12345678/JL7F\175\173\047`/;$_=reverse;print"$_\040
       $Camel\n";}foreach(@camel1hump){chomp;$Camel=$_;y/LJF7\173\17
        5`\047/12345678/;tr/12345678/JL7F\175\173\047`/;$_=reverse;p
         rint"\040$_$Camel\n";}#japh-Erudil';;s;\s*;;g;;eval;   eval
           ("seek\040DATA,0,0;");undef$/;$_=<DATA>;s$\s*$$g;(   );;s
             ;^.*_;;;map{eval"print\"$_\"";}/.{4}/g; __DATA__   \124
               \1   50\145\040\165\163\145\040\157\1 46\040\1  41\0
                    40\143\141  \155\145\1 54\040\1   51\155\  141
                    \147\145\0  40\151\156 \040\141    \163\16 3\
                     157\143\   151\141\16  4\151\1     57\156
                     \040\167  \151\164\1   50\040\      120\1
                     45\162\   154\040\15    1\163\      040\14
                     1\040\1   64\162\1      41\144       \145\
                     155\14    1\162\       153\04        0\157
                      \146\     040\11     7\047\         122\1
                      45\15      1\154\1  54\171          \040
                      \046\         012\101\16            3\16
                      3\15           7\143\15             1\14
                      1\16            4\145\163           \054
                     \040            \111\156\14         3\056
                    \040\         125\163\145\14         4\040\
                    167\1        51\164\1  50\0         40\160\
                  145\162                              \155\151
                \163\163                                \151\1
              57\156\056

# camel code, copyright 2000 by Stephen B. Jenkins
# The use of a camel image with the topic of Perl 
# is a trademark of O'Reilly & Associates, Inc. 
# Used with permission.

Кто скажет, что он делает?
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Re[3]: красивый код
От: GlebZ Россия  
Дата: 27.12.05 16:30
Оценка: 20 (2) +1 -1 :)
Здравствуйте, _Winnie, Вы писали:

_W>Красивый — это всё.


_W>1) эстетически приятный

Не знаю что такое.
_W>2) (в меру)эффективный
Противоречит пункту 3 и 4
_W>3) сопровождаемый, расширяемый
Противоречит пункту 2 иногда 4
_W>4) легко читаемый и понимаемый..
Противоречит пункту 2 иногда 3

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[9]: красивый код
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.12.05 17:40
Оценка: 4 (2) +1
Здравствуйте, Mystic, Вы писали:

M>Тем не менее про картину вполне естественно сказать "красивая". Точно так же учебники по изобразительному искусству не пишут про "красивые" картины, а раскрывают различные технические приемы


Насколько я помню, в изобразительном искусстве вообще нет понятия "красивый". Это зрители делят картины на "красивые" и "не красивые". Художники такими понятиями не оперируют.


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[6]: красивый код
От: aik Австралия  
Дата: 27.12.05 15:34
Оценка: -2
Здравствуйте, Pzz, Вы писали:

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

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

это — понты, исключительно. имхо.
Re[6]: красивый код
От: GlebZ Россия  
Дата: 27.12.05 17:57
Оценка: +1 :)
Здравствуйте, aik, Вы писали:

aik>Покажи хоть одну книжку "признанного критика" кто бы писал о красоте кода.

Про красоту не помню, а вот в Рефакторинге Фаулера есть глава, называется что-то типа "Код с душком". Так может надо говорить приятно пахнущий код? Или вонючий код? Типа уберите это с экрана, сильно воняет.

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: красивый код
От: Kemsky  
Дата: 27.12.05 15:54
Оценка: 9 (1)
Здравствуйте, Mystic, Вы писали:


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


Да, конечно. Но есть небольшое отличие. Если речь идёт о чём-то масштаба несколько больше, чем контейнер или алгоритм сортировки, то вряд ли у кого-нибудь, кроме автора, хватит энтузиазма дойти до получения эстетического удовольствия.
красивый код
От: _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: красивый код
От: aik Австралия  
Дата: 27.12.05 14:59
Оценка: :)
Здравствуйте, _Winnie, Вы писали:

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

_W>кросспост

Код не бывает некрасивым, бывает что водки мало.
Не должно быть такого отдельного понятия как "красивый" код. Код либо делает что надо, либо не делает. Либо расширяется/дописывается, либо нет. Красивым может быть только результат работы кода.
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[9]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.05 15:50
Оценка: +1
aik wrote:
>
> Pzz>Что бы Вас убедило в том, что это не понты?
>
> Ничего Заявление прозвучало как "все вокруг ..., а я весь в белом". Мир
> не черно-белый.

— Эй, мужик, ты че, интелихент?
— Что Вы, что Вы, я такой же жлоб, как и Вы!

Так правильно?
Posted via RSDN NNTP Server 2.0
Re[3]: красивый код
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 27.12.05 16:26
Оценка: +1
Здравствуйте, _Winnie, Вы писали:

_W>Красивый — это всё.




_W>1) эстетически приятный


Слишком субъективно. Вычеркиваем

_W>2) (в меру)эффективный


Имхо, эффективность к красоте вряд ли имеет отношение. Эффективность -- это часть функциональных требований. Так что вычеркиваем

_W>3) сопровождаемый, расширяемый

_W>4) легко читаемый и понимаемый..

Имхо, пункт 3) следует из 4).
А вместе они образуют такое понятие, как "простой код".

Итого, красота == простоте

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


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[8]: красивый код
От: GlebZ Россия  
Дата: 27.12.05 17:31
Оценка: -1
Здравствуйте, aik, Вы писали:

aik>Так. Еще раз. Про красоту кода книжку покажи. А не про качество.

В английском языке другой словарный запас и семантика на слово красивый, хороший, и правильный. Я думаю что термин "красивый" код — есть неправильная интерпретация переводных книг переводчиками.

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 14:56
Оценка:
Здравствуйте, _Winnie, Вы писали:

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


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

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

Или можно взять другой пример: код выполняющий некоторый математический расчет. Исходный код получен в результате нескольких страниц математических выкладок. Понять суть кода без этих выкладок невозможно. Будет ли он красивым?
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[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]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 15:35
Оценка:
Здравствуйте, aik, Вы писали:

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


Не всегда Часто понимаешь суть и восхищаешься
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>Что бы Вас убедило в том, что это не понты?


Ничего Заявление прозвучало как "все вокруг ..., а я весь в белом". Мир не черно-белый.
Re[4]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 16:00
Оценка:
Здравствуйте, Kemsky, Вы писали:

K>Да, конечно. Но есть небольшое отличие. Если речь идёт о чём-то масштаба несколько больше, чем контейнер или алгоритм сортировки, то вряд ли у кого-нибудь, кроме автора, хватит энтузиазма дойти до получения эстетического удовольствия.


Например, при просмотре исходников TeX я полдучаю эстетическое удовольствие
Re[7]: красивый код
От: aik Австралия  
Дата: 27.12.05 16:01
Оценка:
Здравствуйте, Pzz, Вы писали:

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

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

Нет, он работает лучше чем на троечку, но что еще круче — работает там где остальные не работают вообще. Это вообще — пять. Расширяемость и наращиваемость — круче нет. Хотя и не идеал.

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

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

Нет. Чтоб осознать ненадежность, надо во1ых начать пользоваться, во2ых, начать серьезно пользоваться. Основные фичи софта как раз нормально работают, откровенной халтуры в популярных категориях софта мало.

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

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

Народ об этом и не думает ни разу. В голову не приходит, что они видят глюк. Или что что то сделано тупо, а могло быть и лучше — не видят они. Опроси свою родню про глюки в мобилах/плеерах/телевизорах и так далее. Я не о программерах говорю, в общем.
Re[4]: красивый код
От: ihatelogins  
Дата: 27.12.05 16:14
Оценка:
Здравствуйте, aik, Вы писали:

aik>Здравствуйте, Mystic, Вы писали:


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

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

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


На дамп — непонятно, а на исходники — понятно.
Re[2]: красивый код
От: _Winnie Россия C++.freerun
Дата: 27.12.05 16:20
Оценка:
Здравствуйте, eao197, Вы писали:
E>Здравствуйте, _Winnie, Вы писали:

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


Красивый — это всё.

1) эстетически приятный
2) (в меру)эффективный
3) сопровождаемый, расширяемый
4) легко читаемый и понимаемый..
5) ....



E>Кстати, ты в своей фразе смешал два разных понятия: красивый и плохой. Красивый код так же может быть плохим.
Правильно работающая программа — просто частный случай Undefined Behavior
Re[4]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 16:32
Оценка:
Здравствуйте, eao197, Вы писали:

_W>>1) эстетически приятный


E>Слишком субъективно. Вычеркиваем


Я не согласен. Я уже приводил пример, что можно оценивать картину, фильм, и т. д. Да, оценка будет меняться от человека к человеку. Но этот процесс более-менее сходится. У признаных критиков на некотором этапе наблюдается сходимость данной оценки Иногда со временем. В любом случае, естетическая оценка может быть "эстетично" --- все критики согласны с тем, что код эстетичен, "спорно", "неэстетично" и т. д.
Re[4]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 16:35
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>Здравствуйте, _Winnie, Вы писали:


_W>>Красивый — это всё.


_W>>1) эстетически приятный

GZ>Не знаю что такое.
_W>>2) (в меру)эффективный
GZ>Противоречит пункту 3 и 4
_W>>3) сопровождаемый, расширяемый
GZ>Противоречит пункту 2 иногда 4
_W>>4) легко читаемый и понимаемый..
GZ>Противоречит пункту 2 иногда 3

Поэтому код, в котором остигается разумный компромисс между этими пунктами и можно назвать эстетически приятным
Re[5]: красивый код
От: aik Австралия  
Дата: 27.12.05 16:37
Оценка:
Здравствуйте, Mystic, Вы писали:

M>Я не согласен. Я уже приводил пример, что можно оценивать картину, фильм, и т. д. Да, оценка будет меняться от человека к человеку. Но этот процесс более-менее сходится. У признаных критиков на некотором этапе наблюдается сходимость данной оценки Иногда со временем. В любом случае, естетическая оценка может быть "эстетично" --- все критики согласны с тем, что код эстетичен, "спорно", "неэстетично" и т. д.


Покажи хоть одну книжку "признанного критика" кто бы писал о красоте кода.
Re[6]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 16:46
Оценка:
Здравствуйте, aik, Вы писали:

aik>Покажи хоть одну книжку "признанного критика" кто бы писал о красоте кода.


Но многие пишут о том, как улучшить код
Re[7]: красивый код
От: aik Австралия  
Дата: 27.12.05 16:56
Оценка:
Здравствуйте, Mystic, Вы писали:

aik>>Покажи хоть одну книжку "признанного критика" кто бы писал о красоте кода.

M>Но многие пишут о том, как улучшить код

Так. Еще раз. Про красоту кода книжку покажи. А не про качество.
Re[8]: красивый код
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.05 17:16
Оценка:
Здравствуйте, aik, Вы писали:

aik>Так. Еще раз. Про красоту кода книжку покажи. А не про качество.


Тем не менее про картину вполне естественно сказать "красивая". Точно так же учебники по изобразительному искусству не пишут про "красивые" картины, а раскрывают различные технические приемы
Re[5]: красивый код
От: _Winnie Россия C++.freerun
Дата: 27.12.05 18:44
Оценка:
Здравствуйте, Mystic, Вы писали:
M>Здравствуйте, GlebZ, Вы писали:
GZ>>Здравствуйте, _Winnie, Вы писали:



M>Поэтому код, в котором остигается разумный компромисс между этими пунктами и можно назвать эстетически приятным

Не разумный, а остроумный.
Правильно работающая программа — просто частный случай Undefined Behavior
Re[10]: красивый код
От: _Winnie Россия C++.freerun
Дата: 27.12.05 18:46
Оценка:
Здравствуйте, eao197, Вы писали:

E>Насколько я помню, в изобразительном искусстве вообще нет понятия "красивый". Это зрители делят картины на "красивые" и "не красивые". Художники такими понятиями не оперируют.


Ты когда нибудь видел код, который тебя поражал?
Правильно работающая программа — просто частный случай Undefined Behavior
Re[8]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 28.12.05 03:20
Оценка:
aik wrote:
>
>>> Мне не нравится как линукс написан. А работает... Эхехе. Всё б так
> работало.
> Pzz>Линух не так уж и плохо написан. Где-то на троечку с плюсом. На троечку
> Pzz>с плюсом он и работает
>
> Нет, он работает лучше чем на троечку, но что еще круче — работает там
> где остальные не работают вообще. Это вообще — пять. Расширяемость и
> наращиваемость — круче нет. Хотя и не идеал.

А что, вот такая програмка:

while(1)
fork();

уже перестала его ронять?...
Posted via RSDN NNTP Server 2.0
Re[9]: красивый код
От: aik Австралия  
Дата: 28.12.05 07:17
Оценка:
Здравствуйте, Pzz, Вы писали:

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

Pzz>А что, вот такая програмка:
Pzz> while(1)
Pzz> fork();
Pzz>уже перестала его ронять?...

Тебе написать аналогичную прогу под винду? Результат тоже будет грустным.
Re[11]: красивый код
От: antiPooH  
Дата: 28.12.05 07:32
Оценка:
Здравствуйте, _Winnie, Вы писали:

_W>Здравствуйте, eao197, Вы писали:


E>>Насколько я помню, в изобразительном искусстве вообще нет понятия "красивый". Это зрители делят картины на "красивые" и "не красивые". Художники такими понятиями не оперируют.


_W>Ты когда нибудь видел код, который тебя поражал?


Я, я видел. Я видел программу на фох-про с 19(девятнадцатью) вложенными циклами! Этого мне не забыть никогда!
Re[8]: красивый код
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 28.12.05 08:00
Оценка:
Здравствуйте, aik, Вы писали:

aik>Так. Еще раз. Про красоту кода книжку покажи. А не про качество.


Ты что, термин "code smell" никогда не слышал?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[9]: красивый код
От: Cyberax Марс  
Дата: 28.12.05 08:09
Оценка:
Pzz wrote:
> А что, вот такая програмка:
> while(1)
> fork();
> уже перестала его ронять?...
Давно уже перестала — при настроеных лимитах.

--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re: красивый код
От: jorj  
Дата: 28.12.05 08:21
Оценка:
Здравствуйте, _Winnie, Вы писали:

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


Визуально красивый код (функционально он может вообще не работать — это прежде всего код написанный по четким правилам некоего кодинг стандарта.
Грубо говоря, это когда все написано безобразно, но единообразно!
Re[11]: красивый код
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 28.12.05 08:26
Оценка:
Здравствуйте, _Winnie, Вы писали:

E>>Насколько я помню, в изобразительном искусстве вообще нет понятия "красивый". Это зрители делят картины на "красивые" и "не красивые". Художники такими понятиями не оперируют.


_W>Ты когда нибудь видел код, который тебя поражал?


Поражал чем? Своим совершенством? Небрежностью? Изощренностью? Бесполезностью? Угробищностью?

Имхо, чтобы все это увидеть, вовсе не нужно далеко ходить, достаточно время от времени читать форумы RSDN. Ну например.

Не смотря на флеймовость темы Goto's are evil?
Автор: Cyberax
Дата: 28.11.05
, там было несколько примеров избавления от goto в коде: исходный вариант с goto
Автор: 0xDEADBEEF
Дата: 01.12.05
и без него
Автор: eao197
Дата: 02.12.05
. И, как продолжение, Исходная функция utf8_encode
Автор: 0xDEADBEEF
Дата: 03.11.05
с goto, в которой не просто разобраться, и ее отрефакторенный вариант
Автор: eao197
Дата: 09.12.05
, который лично мне кажется проще.

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

Вот пример
Автор: eao197
Дата: 30.11.05
паталогии. Это не лечится, только ампутация (полное переписывание). И там же пример
Автор: runtime2
Дата: 02.12.05
действительно просто выглядящего решения, только я не проверял его работоспособность на разных входных данных.

В качестве примеров изощренного (по моему мнению) кода можно посмотреть на примеры, приведенные Dmi_3 в теме Compile-time вычисления: а оно вообще надо?
Автор: eao197
Дата: 25.10.05
(например, здесь
Автор: Dmi_3
Дата: 26.10.05
). Не менее изощренный код можно увидеть в статье Использование метаданных в программах на языке C++
Автор(ы): Владислав Юдин
Дата: 22.05.2005
Цель данной статьи — показать, что метаданные это мощный механизм, требующий выделения в отдельный компонент, который хотелось бы видеть в стандартной библиотеке С++.
.

А в качестве, на мой взгляд, бесполезного кода, можно посмотреть InteLib (она затрагивалась в теме Lisp на C++
Автор: Зверёк Харьковский
Дата: 28.09.05
).


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[3]: красивый код
От: Kemsky  
Дата: 28.12.05 08:38
Оценка:
Здравствуйте, _Winnie, Вы писали:

_W>2) (в меру)эффективный

_W>3) сопровождаемый, расширяемый
_W>4) легко читаемый и понимаемый..
_W>5) ....



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


Представь рекламу выставки: все картины написаны стойкими к солнечному свету красками, в рамках из натурального кедра, в стандартном формате, при необходимости легко сворачиваются в трубочку.
Мой критерий искуства в целом — это насколько оно раздвигает границы сознания, расширяет представления о реальности или выводит за её пределы. И если речь идёт о коде, то это может быть демонстрация некоторой техники, неочевидной на текущем этапе, которая может использоваться в частности для улучшения указанных качеств.
Re[10]: красивый код
От: Pzz Россия https://github.com/alexpevzner
Дата: 28.12.05 11:07
Оценка:
aik wrote:
>
>>>>> Мне не нравится как линукс написан. А работает... Эхехе. Всё б так
> Pzz>А что, вот такая програмка:
> Pzz> while(1)
> Pzz> fork();
> Pzz>уже перестала его ронять?...
>
> Тебе написать аналогичную прогу под винду? Результат тоже будет грустным.

Я винда здесь при чем?
Posted via RSDN NNTP Server 2.0
Re[5]: красивый код
От: DJ KARIES Россия  
Дата: 07.01.06 19:16
Оценка:
Здравствуйте, Mystic, Вы писали:

M>Я не согласен. Я уже приводил пример, что можно оценивать картину, фильм, и т. д. Да, оценка будет меняться от человека к человеку. Но этот процесс более-менее сходится. У признаных критиков на некотором этапе наблюдается сходимость данной оценки Иногда со временем. В любом случае, естетическая оценка может быть "эстетично" --- все критики согласны с тем, что код эстетичен, "спорно", "неэстетично" и т. д.


Исчо некатарыи крытики пешут "готично", "гламурна", "зач0т!", "аффтаржжот".
От критика к критику процесс индивидуален.

Поразвелось, блин, критиков. Понаехали, блин!
http://dkdens.narod.ru http://giref.forthworks.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.