Спасибо, поржал Ну а "станете как боги" - это да )) всегда привлекало людей )) да и вообще лажа - сейчас и в ближайшее время придется все делать вручную, и плохое проектирование постоянно убивает проекты.
и это сюда выкладывает Simpliest, который все всегда знает и делает правильно? ^^ нужно просчитывать всю модель, если не делать сразу такие вещи как кеширование, то хотя бы оставлять возможность для "вживления" писать документацию, комментировать код, создавать картинки с сущностями и взаимодействиями если заниматься каким то серьезным проектом, которым возможно потом будет заниматься не 1 и не 2 человека. "Потом ..." "В будущем" проблем с плохо спроектированным проектом то сейчас.. это что получается, пришел в проект, поставил туда костылей, работает и хрен с ним, в системе постоянные ошибки, а подумать(видимо это заразно ) и переписать лень?или как при этом он своими заплатками хочет просчитать все возможные ошибки, а не проще сразу нормально делать? нифига это не смешно
Мне всегда нравилось определение "надежности системы". Надежность системы - это способность системы скрывать свои ошибки. Padaboo Он предлагает не тупо ставить заплатки, а ставить заплатки и анализировать логи. Сейчас работает, а причины ошибки будут исправлены, если будут найдены. Переписать не лень, переписать нет времени и средств.
Он же там говорит, что ошибок много, и еше оправдывает это какими то девизами, ошибок в идеале быть не должно, даешь пустые логи. Почему ошибки не исправлялись по мере поступления? т.е. весь смысл сводился к тому что, просто прикрыть дырки и сидеть думать, а не исправлять все по очереди?нет ведь... даже он подводит к мысли примерно : "главное чтобы работало" и потом всяческие примеры, что вот вот тут так и т.п.
Padaboo В идеале не должно, но в реальности они всегда есть. Вот из этой реальности мы и исходим. Ошибки не исправлялись, потому что не выявлена причина ошибки. Он же говорит что костыль - это я нашел почему работает не правильно, но мне лень исправлять причину. А заплатка это - я не знаю почему работает неправильно, но я сейчас сделаю чтоб обходило эту дыру и буду копить логи возникновения этой ошибки.
Volt(220) все это справедливо конкретно для его случая, если я все написал сам, значит я знаю как это работает, примерно где и как может возникнуть ошибка, если появилась будет легко найти и исправить ее быстро... и так по мере появления ошибок... не исправлять ошибки нельзя по моему глубокому убеждению, он и не мог по другому поступить, так в чем же была глубокая мысль? это все советы для "взялся за чужой проект, а кругом жопа", по моему мнению если у меня куча ошибок и я не могу их исправить и не знаю откуда они берутся , то стоит задуматься стоит ли заниматься программированием значит был тяжелый день, исправлю завтра) значит мне дали по голове, потерял память, свой код не узнаю )
Но при этом, почему-то, в конце концов система оказывается покрыта заплатками так крепко и сложно, что защищена от любого внешнего проникновения))) Вообще, доклад этот вводит в заблуждение - по ходу выясняется, что, во-первых - не костыль, а заплатка (в этот момент надо запомнить разницу), во-вторых - ошибка - это перерасход ресурсов (а не логическая ошибка, из-за который что-то ломается), и весь предыдущий и последующий контекст рассматривать уже в свете этих фактов. Суть сводится к известной всем нам давно истине: самая эффективная оптимизация - железная, а не программная.
[vs] а ну тогда докладчик просто КО... мог бы выйти и сказать "Закрываем дырки, покупаем железо, пьем пиво" все равно не должно так быть, это называется звените работа "на отъебись"
Padaboo А вот нифига. Я уже не помню как конкретно работает мой говнокод 3-летней давности. И это простая система автоматизации типа "вывел из базы, ввел в базу". А если взять нормальный проект над которым работает человек 5-7. В таком проекте отдельный программист не знает как оно работает и где может возникнуть ошибка. Дай бог, главный программист знает что и где и только он, тогда, может исправлять ошибки. Но у него, как бы, и так дел достаточно, он не может каждую ошибку исправлять. Собственно об этом там и речь, что есть САМ который может исправлять эти ошибки, но это стоит дорого.
Volt(220) ведь не составит труда переписать ее если там возникнут ошибки?это 3-х летней давности, а там где 5-7человек, там каждый постоянно со свей частью имеет дело. найти по цепочке откуда взялась ошибка будет сложно в крупном проекте ? а потом дать волшебного пенделя тому от чьего кода все начинается... притом если 5-7 человек, то у каждого изолированные задачи, каждый может все хорошо продумать, довести до идеала, или нет? Elkaz вроде как работал в проекте онлайн игры, надо его спросить много там было таких заплаток или нет
Volt(220) У нормально проекта должна быть документация. Документация пишется по ходу разработки. Докладчик приводил в пример игру дозор, старые MMORPG, если они написаны на PHP - это страшный быдлокод. Современные системы проектируются по известным и проверенным паттернам. upd. PHP тогда еще был 4-й. В Perl было все для хорошего проектирования, но что-то мне слабо верится, что на нем браузерки писались лучше ))
Padaboo У меня есть одна такая игра, могу скинуть завтра если интересно - я честно говоря, не понимаю почему она так ужасно написана. Хотя догадываюсь - если она была написана лет 8 назад, то тогда нигде в России не учили нормально писать на PHP. Книги на русском писали о PHP4, совместимом с PHP3. Серьезные программисты не писали на PHP. В игре не обойтись без ООП, а оно в PHP4 было сильно ограничено. На PHP5 вполне можно написать хорошую игру.
[vs] хех, систему обработки ударов,расчета всякие критических ударов, увертов и парирования интересно было бы посмотреть )
Padaboo, а если хочется задуматся над интересно алгоритмически-игровой задачей - возми Антоновский LoD, ты в него играл, и скажи, какое самое оптимальное поведение пушки в выборе цели?