Когда код пора выбрасывать

Духовность™

Продвинутый новичок
Когда код пора выбрасывать

Что делать, когда понимаешь, что твой подход, 80% кода и вся архитектура - есть неудачное решение? Хочется с одной стороны начать сиюминутно писать все заново, вроде бы как есть желание + предыдущий ОПЫТ, а вот ЧТО ИМЕННО писать - не знаешь. Нет какой-либо архитектуры на уме, кроме неудачной старой, которая оказалась неповоротливым, усложняющим процесс разработки решением.

В такую минуту хочется вообще забыть все, что до этого читал/слышал об архитектуре и попытаться создать на базе собственного опыта какой-то удачный код. Но вот реально, мешают прошлые наработки. Как то так получается, что "ноль фантазии", кроме того, что было раньше.

Что посоветуете? Наверняка опытные программисты не раз констатировали, что их разработки есть великий govnocode.
 

berkut

Новичок
мне кажется, тут пора к психологу, а не на пхп форум
 

cDLEON

Онанист РНРСlub
У меня такое ощущение возникает каждый день.
И самое прикольное, так это то, что я смотрю на чужой код и про себя лажаю его по полной :)
 

Духовность™

Продвинутый новичок
berkut
причем тут психолог?

cDLEON
бывает и такое, да. но у тебя ощущение,а у меня именно объективное суждение
 

Dreammaker

***=Ф=***
triumvirat, возможно взглянуть на сторонние фреймворки - может какой-то приглянется?
 

nerezus

Вселенский отказник
Рефакторить. Я сначала из говна достаю небольшие вещи, которые улучшаю. И двигаюсь снизу вверх, меняя в верхних уровнях уровенб взаимодействия.

И когда недавно переписывал все, то 80% кода уже было, просто изменил взаимодействие на верхнем уровне, а модули остались теми же.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
nerezus прав, а berkut - нет :)

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

вообще, эти проблемы для меня - показатель зрелости в профессии :)
 

iceman

говнокодер
triumvirat
у меня лично на 100% не удачная была, отказался от нее, начал думать над новой, вроде бы придумал. Начал реализовывать - миллионы подводных камней, опять отказался, начал думать снова и так уже больше пол года +) но во всех идеях компонентный подход, глобальный контроллер странички меня не как не устраивает...

просматривал другие фреймворки, все они какие-то сложные...

В данный момент работаю с Oracle Application Express, штука удобная для написания админки и проектов где дизайн не важен... но сами сайты (выходную часть сайта) мне лично пока не удобно делать, возможно мало опыта... щас пытаюсь сделать "выходную часть" на пхп чтобы по быстрому штамповать "простые сайты"
 

nerezus

Вселенский отказник
PHPMaker может генерить админки, причем с кастом-дизайном и т.д..
Только вот его ногами писали...
 

Dreammaker

***=Ф=***
Я сейчас приглядываюсь к разным фреймворкам - CI застопорился в развитии и несколько отстал от жизни, хочется чего-то более активно развивающегося. Смотрел mzz, Yii. Оба понравились, но у второго преимущество - активное комьюнити (чтобы там не говорили о нахлебниках - опенсурс-троллях - в комьюнити есть преимущество:) ).

Yii - что-то среднее между CodeIgniter'ом и Symfony (по возможностям приближается к симфони, но понятен почти как CI :) ), некоторый функционал пока в зачатке, но фреймворк активно развивается.
 

Gorynych

Посетитель PHP-Клуба
любая система в силу пожеланий работодателя/заказчика обрастает оверхаками, которые ее замедляют, ибо инородны.

1) Вариант номер раз - вы писали систему с расчетои на отдачу в определнное время, когда оврхаки начинают тормозить прогнозируемыю выдачу более чем в 5 раз пора выкидаывать код и переделывать.

При этом надо все равно отсмотреть лог медленных запросов как движка, так и СУБД;

2) Вы писали систему с расчетом на ту или иную функциональность, а ее оверхаки перекрыли более 35 процентов прогнозированного функционала - пора переписывать, ядро явно е расчитано на то, что требуется потребителю (заказчику) от системы.

P.S> все выше сказанное - ИМХО
 

Alexandre

PHPПенсионер
Что делать, когда понимаешь, что твой подход, 80% кода и вся архитектура - есть неудачное решение? Что посоветуете?
не паниковать: заняться рефакторингом
В такую минуту хочется вообще забыть все, что до этого читал/слышал об архитектуре и попытаться создать на базе собственного опыта какой-то удачный код.
и создать очередной говнокод???
не боги горшки обжигали...
не сразу Москва строилась....

в общем - сперва думай, потом пиши код
и снова шаг 1...
все мы криво писали, все мы когда-то кодили говн@м
так что - не ошибается тот кто ничего не делает
а осознание того, что твой код г...но - уже пол дела - прогресс роста налицо.
 

AmdY

Пью пиво
Команда форума
Lightning
сам с таким недавно столкнулся, пол месяца правил баги в чужом коде, а потом за 4 дня переписал, плюс ещё два полных дня потратил на доработку. но всё же лучше рефакторить, перепрыгивая грабли можно научиться не только не наступать на них, но и заранее знать где они валяются.
 
Сверху