A1x
Новичок
Фаулер пишет ("Рефакторинг"):у меня нет таких проблем
я не дебил, что бы написать объект и "забыть" про него
... глупые ошибки я делаю часто, и выследить их бывает тяжело.
Фаулер пишет ("Рефакторинг"):у меня нет таких проблем
я не дебил, что бы написать объект и "забыть" про него
... глупые ошибки я делаю часто, и выследить их бывает тяжело.
Расскажи это моим работодателям. Мы правим жуткий говнокод большого проекта в количестве 9 человек-программеров и это не предел - будут набираться ещё люди. Мы ощущаем себя Алисой в зазеркалье, ибо работаем с фанатическим неумением программировать тех, кто был до нас. Слово "Рефакторинг" наш руководитель произносит очень часто и не удивительно - без него проект загнется и очень известная компания потеряет огромные деньги.программный код и, уж тем более, его красота для проекта почти неважны
Да. У нас в России просто нет культуры программирования, нет людей, способных истолковать клиенту, что плохо созданный код - это его будущая головная боль и дополнительные финансовые вливания в дальнейшем. Достаточно посмотреть на дураков, что понакупали битриксы, а теперь не могут найти поддержку на эти проекты.Никому не интересно насколько он офигителен. Никому не интересно, что его легко расширять.
Я в своих домашних мини-проектах в 1-3 тыс строк тоже могу писать "идеальный" код.Adelf
мне похер на индустрию и клиентов, мне мой идеальный код нужен для того, что бы успешно поддерживать и развивать свои проекты
Сестренки писали программы неправильно! Никто так программы не пишет. Ни ящеры,
ни драконы, ни люди. Программа должна быть красивой. Программа должна
быть структурной. Программа должна быть понятной и читабельной. Сестренки
не пользовались командами безусловного перехода. Пусть. Некоторые эстеты
от программирования считают, что оператор безусловного перехода - зло.
Но они не пользовались и операторами условного перехода. Сестренки не писали
подпрограмм. Они вообще не использовали 90% команд компьютера. Логическое
умножение на маску, сдвиги, логическое сложение, несколько команд арифметики
- и все! Вместе с тем, их программы обладали чудовищным быстродействием.
Программы, состоящие на 95% из таблиц адресов переходов и дешифраторов - с
таким Болан не сталкивался. Таблицы и дешифраторы. Это же надо! Сестренки
выделяли умножением на маску одним им известные битики, собирали их в слово,
сдвигом превращали это слово в адрес в таблице переходов, запихивали
полученный адрес в стек и давали команду "возврат из процедуры". По существу,
тот же самый безусловный переход по косвенному адресу, но на 8 тактов
быстрее. Ни один нормальный программист не использует ТАК команду "возврат
из процедуры". Хакеры используют. Но чтоб на этой команде строить всю
логику программы - для этого нужно быть психом или суперхакером.
Два дня Болан ползал по бесчисленным ветвям и веточкам сравнительно
небольшой программы сестренок. Потом сдался. Понять это мог только автор.
У программистов свой, эгоцентрический взгляд на разработку продуктов, который, к сожалению, часто мешает увидеть свет хорошим и правильным вещам. Знание юзабилити в том числе позволяет прояснить некоторые связанные с этим «вопросы»: кто важнее, программист или пользователь (пользователь); кто виноват в том, что пользователь не может воспользоваться функцией продукта (разработчик); что важнее, хороший код или полезная функция (функция); волнует ли кого-то, как все это работает (нет, вообще нет, пока работает); интересно ли пользователям разбираться с вашей программой (нет), дурак ли пользователь (нет).
Вообще бред. Все равно, что спрашивать, что важнее - мотор автомобиля или удобство салона. И то и то - важно.что важнее, хороший код или полезная функция
А что рассказывать? Сайт надо развивать, но он плохо написан, очень плохо. Это мешает развитию. Он тормозит и пестрит ошибками. Его писали люди, которые тоже считали, что писать красивый и понятный, безглючный код -- совсем необязательно. И теперь, спустя годы, клиент держит штат в 10 человек, что бы проект, приносящий прибыль, не умер и мог развиваться.Духовность™
Ну, возможно тебе повезло и ваш клиент готов оплачивать рефакторинг(т.е. работу над проектом без каких-то внешних результатов) отдельно. Либо ты не все рассказываешь.
Почему не добьешься? Достаточно писать без ошибок (E_ALL), с хоть какой-нибудь архитектурой, не хардкодить, писать обильные комментарии, периодически делать рефакторинг и уделять ему хоть какое-то время. Это что, так сложно все?Везде надо ставить грань между идеальностью кода(которой никогда не добьешься
Как видишь, немного не то представление у него. Хотя тоже подходит под общее опеределение рефакторинга. Я лишь утверждаю, что никто нормальный не даст просто так сидеть и чистить код. Оптимизируй, если тормозит. Реорганизуй, если это необходимо для добавления функционала. Но просто так сидеть и играть в красивый код - нормальный клиент не должен это позволять.я пишу свой код так: напишу - он работает. потом я смотрю, что не так - убираю лишнее, чищу, оптимизирую алгоритмы - это называется рефактотринг.
Нормальный клиент держит нормального руководителя, который объясняет клиенту проблемы индустрии. Для конторы, клепающей говносайты рефакторинг не нужен. Для системы, приносящей прибыль (уникальные порталы, инет-магазины), рефакторнг - этонормальный клиент не должен это позволять
.подготовка кода к внедрению функционала
поищите статические анализаторы кода, описанную и неиспользуемую переменную они ловятНе только. К примеру я создал переменную какую то со значением. Думал об одном и создал не так. В итоге она осталась висеть мёртвым грузом в файле, от пользы нету точно, а вот вред очевиден. Занимает лишнее место, снижает читабельность. Также я мог создать обьект какой-то неиспользуемый.