Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Красота кода 
:(
    Опции темы
Baa
Дата 15.5.2004, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва




У кого есть чувство красоты кода? Как вы думаете, оно приходит с опытом, али от человека зависит? Замечал, что многие программисты пишут программы абы как. Я сейчас говорю не только про форматирование. Не каждый человек может восхищаться красотой кода другого человека. А некоторые в нем вообще никакой красоты не видят. Есть ли чувство красоты у вас? Может какие случае были?
Я видел как красивый, так и бездарный (на мой взгляд) код. Генеальные реализации тех или иных моментов. А можете ли вы восхищаться чужим кодом?


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Гость_maris
Дата 15.5.2004, 14:46 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Я это называю "изящество". Ну что-то вроде старого анекдота, где даны числа от 1 до 10 и требуется напечатать 0, если число чентое, и 1 в противном случае. И четыре варианта решения задачи:

1.
Код
if x=2 or x=4 or x=6 or x=8 or x=10
then write(0)
else write(1)


2.
Код
if not odd(x)
then write(0)
else write(1)


3.
Код
write(x mod 2)


4.
Код
a : array[1..10]:=(1,0,1,0,1,0,1,0,1,0);
write(a[x])


Какой вариант ты бы назвал красивым?

  Вверх
LSD
Дата 15.5.2004, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin




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


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
chipset
Дата 15.5.2004, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




я например после года изучения Си, восхищался кодом Страуструпа
Код

for(int i=0;i<N;i++) {
...
}

wow.gif smile.gif rolleyes.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Дрон
Дата 15.5.2004, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Мне на полном серьёзе один товарищ заявил, что я красиво форматирую тексты программ smile.gif
В примере выше только 2 и 3 ещё на что-то похожи (хотя самый быстрый наверно №4), а вообще уменее найти "изящное" решение для сложных ситуаций мне в людях нравится. К сожалению редко встречаю.
Почитываю я тут иногда исходники QuakeII -- интересно написаны, поучительно. Видно, что ребята заботились не о красоте кода, а о быстродействии. Эстетического удовольствия особо не вызывает, но вызывает уважение. Кстати написано оно всё на простом Си (без плюсов).

Это сообщение отредактировал(а) Дрон - 15.5.2004, 17:09


--------------------
Да. Именно так.
PM   Вверх
chipset
Дата 15.5.2004, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




мне С++ больше нравится, ещё мне нравится архитектура COM...


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Дрон
Дата 15.5.2004, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Цитата
мне С++ больше нравится

Больше, чем что? Чем простой Си?
Не стоит их сравнивать. Это разные по своему назначению языки.



--------------------
Да. Именно так.
PM   Вверх
setq
Дата 15.5.2004, 18:47 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











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

не всем это нужно. уверен - некоторым красиво писать противопоказано. (это не я, я вылизываю код как псих) от чего это зависит? пойди узнай.

мне ближе 3-й и 4-й вариант
  Вверх
nevermind
Дата 15.5.2004, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 15.5.2004




Мне кажется что вариант 2 наиболее правильный, т.к. между 1 и 10 могут быть еще дробные числа, и в третьем варинате mod не сработает. А 1 вариант мне кажется вообще не элегантным. Но как сказать, это мое субьектиное мнение smile.gif
PM   Вверх
LSD
Дата 15.5.2004, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin




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

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


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
chipset
Дата 15.5.2004, 19:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




мне больше всего вариант 4 понравился... smile.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
<Spawn>
Дата 15.5.2004, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Око кары:)
****


Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург




nevermind Кто тебе сказал, что не сработает? 3 - ий самый "ровный" вариант. Меньше кода, ни каких условий, не занимается память лишними значениями(типа 4-го варианта) все предельно просто и главное понятно! Я за 3-ий smile.gif


--------------------
"Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков.
PM MAIL ICQ   Вверх
chipset
Дата 15.5.2004, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




Ну давайте что ли опрос сделаем... biggrin.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Chingachguk
Дата 15.5.2004, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва




Мне больше нравится 3-ий, но я бы сделал лучше:

Цитата

write(x and 1)




--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
Она
Дата 15.5.2004, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 23.4.2004
Где: Москва




Цитата
Какой вариант ты бы назвал красивым?

Ответ не мой, мужнин, но когда я его услышала, я оценила силу его мысли biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Не один код (из приведенных) не является красивым, т.к. минимальные требования к "красивости (субъективному" что б поставленная задача была решена, а ни в одном из случаев этого не видно smile.gif Где цикл спрашивается? biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Добавлено @ 22:07
ну вот еще один (правда работающий) вариант smile.gif
var
i:integer;
begin
for i:=1 to 10 do
if (i and 1)=1 then Memo1.Lines.Add('0')
else Memo1.Lines.Add('1')
end;



--------------------
С уважением. Мария.
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила раздела «Флейм»
Sneg0k

Добро пожаловать в «Флейм».

В разделе не действуют многие правила:

  • Можно оффтопить(умеренно)
  • Можно общаться на темы, не только связанные с программированием.

Строго запрещено:

  • Размещать рекламу
  • Обсуждать политику
  • Оскорблять друг-друга и переходить на личности
  • Наезжать, провоцировать других участников форума
  • Материться
  • Троллить

Напоминаем о существовании волшебной кнопочки "Репорт". Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джина-модератора, который нашлет порчу на злостного нарушителя. Кстати - счётчик сообщений здесь не растёт.


Глас Винграда:


Глас Философии:


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Sneg0k

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Флейм | Следующая тема »


 




[ Время генерации скрипта: 0.0614 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.