Я думаю, что это, вероятно, дизайн - то есть подход думать о том, что вы собираетесь делать, прежде чем сделать это.
Слишком много неопытных программистов (помните, когда вы только начинали) любят прыгать и начинать что-то, затем добавить еще немного, добавить еще рекламы и добавить еще немного. Этот подход может сработать, если вы планируете сделать это таким образом (каждый бит может быть проверен по ходу дела, в конце концов), но большинство неопытных программистов фокусируются только на той части, которую они пишут ... поэтому все дополнения имеют тенденцию быть взломанными на вершине. И мы все видели код, который так развивался!
Организация - это следующая вещь, часто они слишком сосредоточены на написанном ими коде, чтобы помнить, как они это делали и что требовалось. Поэтому они забывают связать или задокументировать необходимую зависимость. Они также имеют тенденцию помещать вещи туда, где они падают, мне пришлось критиковать младшего на прошлой неделе, который проверил его код в корневом каталоге, включая 3 wsdls, 2 из которых были в том же файле, и набор сторонних dll, которые он совершил в подкаталог и корневой каталог. Код не был отформатирован в соответствии со стандартами, которые вы могли придумать, и было несколько функций, которые присутствовали, но никогда не вызывались.
Очевидно, он заставил это работать, но это не было опрятно, и это означало, что установка и обслуживание, были бы хлопотны.