Будучи молодым разработчиком, мне было бы полезно получить несколько советов относительно того, о чем следует подумать, чтобы разработать высококачественное приложение. На моих курсах в колледже большинство учителей подчеркивали необходимость проверки входных данных, а некоторые говорили о проблемах безопасности, но никто не освещал важность некоторых других вещей, таких как, например, ведение журнала.
Какие ошибки допускают неопытные разработчики, которые могут привести к разочарованию более опытных разработчиков?
applications
quality
professionalism
awmckinley
источник
источник
Ответы:
Я считаю, что главное, что забывают новые разработчики, это то, что в реальном мире они часто работают в команде. Это показывает себя как ..
Это не значит, что их код не работает совершенно изолированно, но они больше не работают изолированно.
источник
В Windows эти налоги :
Практически на каждой платформе вам придется иметь дело с:
источник
По моему опыту, почти все неопытные разработчики не имеют в виду, что вы (почти всегда) работаете в коммерческой среде. Ваш код должен быть хорошим, но не идеальным. Самое главное не совершенство, это то, что ваш код поставляется.
Иными словами, поставка идеального кода через три месяца после краха вашей компании никому не нужна.
На мой взгляд, это один из наиболее значительных отличий развития в реальном мире от развития, которое преподается в университете.
источник
Действительно широкий вопрос; ответить подробно это ... несколько книг.
Вот общий контрольный список определения систем, чтобы вы начали -
источник
Чистая развязка системы на компьютере разработчика и на целевой машине, чтобы в конечном итоге не возникало ситуаций «Ну, это работает на моей машине».
И как быстро вы сможете восстановить свою машину для разработки?
источник
Я думаю, что это, вероятно, дизайн - то есть подход думать о том, что вы собираетесь делать, прежде чем сделать это.
Слишком много неопытных программистов (помните, когда вы только начинали) любят прыгать и начинать что-то, затем добавить еще немного, добавить еще рекламы и добавить еще немного. Этот подход может сработать, если вы планируете сделать это таким образом (каждый бит может быть проверен по ходу дела, в конце концов), но большинство неопытных программистов фокусируются только на той части, которую они пишут ... поэтому все дополнения имеют тенденцию быть взломанными на вершине. И мы все видели код, который так развивался!
Организация - это следующая вещь, часто они слишком сосредоточены на написанном ими коде, чтобы помнить, как они это делали и что требовалось. Поэтому они забывают связать или задокументировать необходимую зависимость. Они также имеют тенденцию помещать вещи туда, где они падают, мне пришлось критиковать младшего на прошлой неделе, который проверил его код в корневом каталоге, включая 3 wsdls, 2 из которых были в том же файле, и набор сторонних dll, которые он совершил в подкаталог и корневой каталог. Код не был отформатирован в соответствии со стандартами, которые вы могли придумать, и было несколько функций, которые присутствовали, но никогда не вызывались.
Очевидно, он заставил это работать, но это не было опрятно, и это означало, что установка и обслуживание, были бы хлопотны.
источник
Я думаю, что самые большие различия в технике кодирования. У всех немного другой подход, но неопытные разработчики, как правило, создают код, который:
источник
Поскольку вы спрашивали худшие вещи, то мой ответ таков:
источник
Мой самый большой не забывает планировать гибкость. На занятиях требования почти всегда изложены в начале и никогда не меняются. В программном обеспечении часто бывает наоборот: вы получаете неопределенный набор требований, и они часто меняются (даже ежедневно). Лучшее, что вы можете сделать, чтобы помочь с этим, - это гибкое кодирование: слабая связь, небольшие функции, которые можно надежно использовать в различных ситуациях, и как можно больше избегать жестких кодов.
Со временем вы, вероятно, узнаете: а) что, скорее всего, изменится, и наоборот, что скорее всего не изменится, и б) как предвидеть запросы на изменение и планировать их.
источник