- EDIT -
Я считаю, что это правильный вопрос, который может иметь несколько ответов (как определено здесь). Это НЕ дискуссия и опрос. Более того, этот вопрос, по-видимому, НЕ аргументирован, так как ни один из респондентов пока не спорит друг с другом.
- ОРИГИНАЛЬНЫЙ ТЕКСТ -
Потрясающе! Я занимаюсь программным обеспечением около 15 лет, и я до сих пор не знаю, что я делаю:)
Серьезно, я все еще борюсь с основами:- overengineering против YAGNI
- срезающие углы, чтобы соответствовать сроку и оттоку назад.
- рискованные инновации против скучных добрых вещей
- наслаждаясь свободой работы в одиночку против силы команды.
Но хуже всего - сложность кода. Мой код имеет тенденцию к злу. Он даже кусает себя через несколько недель. Я прилагал огромные усилия, чтобы сделать его простым, читаемым, удобным, элегантным, красивым, сплоченным, слабо связанным, основанным на хороших простых абстракциях. Но все эти усилия уходят в канализацию!
Не поймите меня неправильно, мой код довольно хорош по большинству стандартов. Я имею в виду, что он гибкий, более или менее единичный, и делает то, что ему нужно. Однако это далеко не просто.
Каждое изменение требует существенного рефакторинга. Если другой человек открыл мой код с целью добавления функции, ему нужно было сделать что-то глупое. Он никак не мог сделать это ПРАВО, даже если он был ГЕНИЙ, даже если бы он был моим собственным CLONE, незнакомым с кодовой базой. Почему, почему ради Бога это происходит? Разве нет какой-то методологии, какой-то технологии, какой-то медитационной техники, что-нибудь вообще?!
Как сохранить мой код простым?