Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flasher.ru > Флейм

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.11.2010, 18:04
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 11  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
>>но в целом это кажется признаком не очень хорошего стиля.

Можно подробней, чем не угодил стиль в случае, когда в каком-то месте программы надо получить список локаций с одним конкретным статусом (даже если статусов более двух)?

Можно, конечно, предположить, что вам не понравилось, что используется магическая строчка "OPEN", а не статическая константа какого-нибудь класса вроде LocationStatus.OPEN, но при чем же здесь как таковая фильтрация xml с занесением результатов в вектор?
__________________
скриптограф


Последний раз редактировалось orcpochta; 20.11.2010 в 18:11.
Старый 20.11.2010, 18:05
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 12  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
А может и не существует. Может разбор вообще ведется после определенного действия пользователя, которого может и не быть.
Это как с if, в зависимости от числа условий, сложность и вложенность if может быть различной.
Не давно была тема про "?:". Там тоже звучали слова про "читабельность". Вот сейчас у меня в проекте есть список действий в switch, больше десятка. Но в зависимости от дополнительного условия, эти действия могут запускаться с разными числами. Типа
Код AS3:
offset = isFace ? 10 : 8;
И если использовать if else, то все это разрастается в высоту и становится не читабельным. Но в повседневной жизни "?:" не очень удобен.

Здесь так же. Решается конкретная задача и для этой задачи такой вид кода допустим. Будет другая задача, можно будет пересмотреть код. Будет третья, тоже может придется. А еще... можно писать комментарий над строкой.

Кстати, написание regexp тоже смахивает на быдлокодерство, предлагаю разбирать строки вручную с помощью if и indexOf
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.11.2010, 21:29
f.g.programmer вне форума Посмотреть профиль Отправить личное сообщение для f.g.programmer Найти все сообщения от f.g.programmer
  № 13  
Ответить с цитированием
f.g.programmer
 
Аватар для f.g.programmer

блогер
Регистрация: Sep 2010
Адрес: Россия
Сообщений: 137
Записей в блоге: 3
?: и regexp прекрасно справляются со своими задачами не уменьшая читабельности, а иногда и улучшая, если ими не злоупотребляют, как здесь с фильтром.

Хороший стиль это субъективное понятие, каждый сам выбирает для себя правила (обычно они включают в себя большинство более менее общепринятых).
В целом - это умение писать читабельный предсказуемый код, который не раздражает написавшего и тех, кто его читает.

Старый 20.11.2010, 21:34
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 14  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
f.g.programmer, вот и фильтр прекрасно справился со своей задачей )
Хотите увидеть настоящий быдлокод?
Код AS3:
function sample (flag:Boolean) {
	if (flag == true) {
		///
	}
}
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.11.2010, 23:03
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 15  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
В чем здесь быдлостность кода?)))
__________________
скриптограф


Последний раз редактировалось orcpochta; 20.11.2010 в 23:05.
Старый 20.11.2010, 23:09
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 16  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Видимо стоит писать так:
Код AS3:
if (flag)
//вместо
if (flag == true)
ах да, наверно ещё не указано что функция возвращает void


Последний раз редактировалось Bgg; 20.11.2010 в 23:11.
Старый 20.11.2010, 23:11
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 17  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
Сообщение от orcpochta Посмотреть сообщение
В чем здесь быдлостность кода?)))
Вот Bgg верно заметил
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 20.11.2010, 23:18
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 18  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
быдлокод - это когда выпоняются лишние телодвижения по отношению к коду. С e4x такого нет. Там четко указано, что он должен сделать, пусть и не очень читаемо.
Посетите *****код.ру - поймете, что такое быдлокодерство.

Вот это, например, быдлокод. Как думаете, что здесь вычисляется?
Код AS3:
function midVal(X, Y)
{
    return (Math.max(X, Y) - Math.min(X, Y)) / 2 + Math.min(X, Y);
}
Вообще-то среднее арифметическое. Что достаточно было бы записать как 0.5*(X + Y).


Последний раз редактировалось i.o.; 21.11.2010 в 07:25.
Старый 20.11.2010, 23:54
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 19  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
Цитата:
Сообщение от iNils Посмотреть сообщение
Вот Bgg верно заметил
мне кажется это просто хеллоуворлдство, а не быдлокодерство - код-то доступен в своем осмыслении по самое не могу)))
__________________
скриптограф

Старый 21.11.2010, 00:12
ir73 вне форума Посмотреть профиль Отправить личное сообщение для ir73 Найти все сообщения от ir73
  № 20  
Ответить с цитированием
ir73
FD Team

блогер
Регистрация: Dec 2005
Сообщений: 365
Записей в блоге: 6
Код AS1/AS2:
function sample (flag:Boolean) {
	if (flag.toString() == "true") {
		///
	}
}

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:18.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:18.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.