Цитата из мануала ( http://dev.mysql.com/doc/refman/5.1/en/string-type-overview.html#id2508991 ):
ENUM values are represented internally as integers
ENUM values are represented internally as integers
А о чем? Тут апеллируют к тому, что серьезные проекты требуют enum'ов в половине таблиц.Автор оригинала: grigori
а кто-то здесь говорит о документообороте?
Знаю, кто ж этот баян не знает. Но тут же ссылаются на действительно сложные задачи, выходящие далеко за рамки детской пеесочницы или уютной клетки в зоопарке.Автор оригинала: grigori
> справочник состояний, фиксирующий в том числе возможные переходы и возможные операции
Знаешь анекдот про верблюжонка с мамой в зоопарке?
"А зачем нам все эти навороты?"
Зависит от размеров switch в твоем коде (или размеров бороды из if...else if...else if...).Автор оригинала: grigori
>Это резко упрощает программный код.
С 10 строк до 7?
Критерий? Для чего, извини? Это вопрос скорее дисциплины разработки - как использование системы контроля версий или багтрекера. Нет критерия. который можно механистически применить и сказать: "'этому проекту багтрекер не требуется". Скорее, это вопрос личных ощущений и зрелости исполнителя.Автор оригинала: grigori
>Любое более-менее сложное
Предоставь критерий определения границы сложности и "достаточности развития взаимосвязей", требующей браузер объектов, пожалуйста.
Что кто пишет - это индивидуальный выбор. К примеру, у нас есть несколько внедренных систем управления деятельностью предприятия. Как подсистема в них присутствует собственная система управления проектами.Автор оригинала: grigori
Большинство из нас пишет (условно) по 5 похожих магазинов за $1500 каждый, а не ERP АвтоВАЗа.
К этому апеллировал один совершенно отдельный человек. С таким же успехом можно апеллировать к разделению таблиц по этому самому полю. Это даже интереснее - хотя бы сильные различия в подходах есть.Автор оригинала: The employer
А о чем? Тут апеллируют к тому, что серьезные проекты требуют enum'ов в половине таблиц.
Или я как-то не так понимаю серьезность, или давайте уже поговорим в том числе о документообороте.
Если карту переходов писать в файл, то сильных различий в коде не будет. Будет меньшая сложность данных, меньшее количество запросов и невозможность (без костылей) сделать изменение матриц администратором.Автор оригинала: The employer
Борьба идет за то, чтобы из таких вот switch убрать всю бизнес-специфичную логику, оставить только интерпретатор некоего языка (или, в других терминах, реализацию некоего конечного автомата, с переходами под воздействием входных данных). Вот в чем упрощение.
Это не вопрос дисциплины, это вопрос требований. Так же, как и система контроля версий и багтрекер. Даже если вы не используете специальное ПО для багтрекинга, вы все равно запоминаете, что нужно сделать. Ну или на бумажку записываете. Так и тут: совсем не всегда необходима такая фича, как добавление новых статусов.Автор оригинала: The employer
Критерий? Для чего, извини? Это вопрос скорее дисциплины разработки - как использование системы контроля версий или багтрекера. Нет критерия. который можно механистически применить и сказать: "'этому проекту багтрекер не требуется". Скорее, это вопрос личных ощущений и зрелости исполнителя.
Каких требований? Это служебная вещь, примерно как логирование ошибок или юнит-тесты. Или как использование багтрекера.Автор оригинала: korchasa
Это не вопрос дисциплины, это вопрос требований. Так же, как и система контроля версий и багтрекер. Даже если вы не используете специальное ПО для багтрекинга, вы все равно запоминаете, что нужно сделать. Ну или на бумажку записываете. Так и тут: совсем не всегда необходима такая фича, как добавление новых статусов.
Это я относительно словосочетаний "нормальном приложении", "всегда", "никогда" и прочим крайностям. Надо же чем-то заниматься, пока подкасты слушаешь.Автор оригинала: The employer
Я не очень понял - а чем состоит твой тезис? Что ты подстверждаешь, или что ты опровергаешь из того я писал? (спрашиваю по той причине что ты вроде бы мне отвечаешь, так что наверное этот комментарий имеет отношение к тому о чем я писал, хотя на первый взгляд это и не очевидно).
Мне почему-то кажется, что все служебные вещи должны либо приносить бабло, либо уменьшать риски по потере бабла. А не внедряться просто потому что "так надо".Автор оригинала: The employer
Каких требований? Это служебная вещь, примерно как логирование ошибок или юнит-тесты. Или как использование багтрекера.
Ну вот, нет у нас отдельного багтрекера(жиры с головой хватает), и браузера всего подряд (только по требованию заказчика с заточкой под типичные операции), и юнит тесты с целью уменьшения стоимости делаются только для критических и сложных кусков, приемочных тестов вообще нет, как класса, потому, что заказчик не хочет платить, и проверяет все сам - ручками. Все? Процесс разработки плохой?Автор оригинала: The employer
Если тебе достаточно писать на бумажку, или ты вручную запросами или смастеренными вьюхами получаешь достаточную для тебя картину объектов в БД - так и не ставь багтрекер/не делай браузер объектов. Но если у компании нормальный процесс разработки, то багтрекер дается просто на старте проекта и ты ОБЯЗАН им пользоваться. А в других конторах могут оставлять этот момент на выбор разработчикам. Бог им судья.
Да. Потому что заказчик ничего общего с процессом разработки не имеет. Процесс разработки хромает у вас, а не у заказчика.Процесс разработки плохой?
Хуже чем мог бы быть, imho. Да, положа руку на сердце, ты ведь и сам это знаешь, верно?Автор оригинала: korchasa
Процесс разработки плохой?
Я допускаю, что есть такие интернет-магазины, для которых какой-нибудь шоп-скрипт или любая поделка на основе ос коммерс не подходит. Но мало таких, если мерять в процентах от общего количества.Автор оригинала: grigori
>арендовать хостинг с готовым скриптом долларов за сто в год.
для магазина бижутерии с шикарным уникальным интерфейсом?
"Страшно далеки вы от народа" (С)Ленин
Вот да, вот это самое интересное в теме. Буду рад чем-то помочь, если смогу.Автор оригинала: grigori
о том, как из модели убрать "бороду из if...else if...else if..." при подготовке запроса insert - думаю давно
спасибо за подсказки
Конечно не имеет. Он же всего лишь за него платит. С чего бы ему иметь отношение.Автор оригинала: флоппик
Да. Потому что заказчик ничего общего с процессом разработки не имеет. Процесс разработки хромает у вас, а не у заказчика.
Я писал про конкретный проект, а не о том, что мы можем в принципе. Тут не случай "заказчик не просит", тут "заказчику предложены варианты, и он выбрал более рисковый для себя, но более дешевый". Т.е. заказчик примерно понимает уровень качества, получаемый на выходе, и согласен с ним (в отношении юнитов и приемочных тестов).Автор оригинала: The employer
Хуже чем мог бы быть, imho. Да, положа руку на сердце, ты ведь и сам это знаешь, верно?
У нас тоже процесс несовершенен, мы об этом знаем и работаем над его совершенствованием. Потому что если занимать позицию "заказчик не просит, так что и не надо" - это перекрывает пути на более высокий уровень, где заказчику уже надо. Иными словами - не нужно ждать пока появится заказчик, готовый платить за приемочные тесты. Потому что тогда есть серьезный шанс, что такой заказчик не появится вовсе.
в модель, описанную конечным набором кейсов, всегда можно заложить некоторый конечный набор состояний, комбинаций которых достаточно для описания этих кейсов.Да только вот посмотрев в базу ты так и не сможешь дать точный ответ на вопрос - а что же этот конкретный пользователь может делать. имея статус, например, 'varified'. Чтобы такой ответ дать, тебе придется "в уме" сложить логику приложения (тот самый 'where status in...', причем везде где такое встречается, с разными комбинациями в in), и то что ты видишь в БД.
вообще много интересных мыслей.за чем "энумсрач" выбросили в помойку?.. =)
имхо, ему вполне место в БД или оффтопе
меня тоже мучает эта мысльприемочные тесты не оправдали вложений, из-за высокой стоимости написания и поддержки (не смотря на всякие Selenium IDE и сторонние продукты). Со всякими аяксами и богатым JS постоянно тыкались в детские грабельки.
А как это говнокод уменьшит? Там же все к окошкам, полям да кнопочкам сводится. До кода, как до луныАвтор оригинала: grigori
думаю, стажеров заставить писать тесты для дисциплины, чтоб говнокода меньше было
Мне кажется тесты это не причина хорошего кода, следствие качеств человека, умения предусматривать всякие исключительные ситуации.Автор оригинала: grigori
korchasa
был у меня такой опыт
те части, которые писал челвоек с тестами, пошли в работу без проблем (только он жаловался, что нужно)
те, что были без тестов - пришлось переписать
Как в русском сегменте? Поставить на удаление за малую значимость и пиар? Они вроде со всеми так делаютАвтор оригинала: grigori
предлагаю отнестись к этой интесной, но загаженой теме, как к статье на википедии