Действительно ли программировать настолько сложно? Страшно начать? С чего начать?
Задаётесь ли вы вопросами, прежде чем войти в мир программирования? Вы также можете растеряться, когда слышите много жаргонов от программистов, которыми они обмениваются при разговоре друг с другом. У каждого новичка одни и те же проблемы. Например, трудности при решении вопроса о кодировании, трудности в получении логики кода, трудности в подходе к проблеме и в поиске решения. Когда другие программисты хорошо решают вопросы, хорошо понимают логику сложного программного обеспечения и хорошо разбираются в функциях любого программного обеспечения, большинство начинающих начинают сомневаться в своих возможностях.
В большинстве случаев, когда начинающие разочаровываются, они либо отказываются от программирования, либо пытаются найти решение одного вопроса: «Как мыслить как программист и быстро решать вопрос кодирования?». Возможно, вы получили много советов от профессионалов, возможно, вы прочитали несколько статей и блогов, а также следовали некоторым советам. Все эти советы, написанные в блогах и предоставленные профессионалами, приводят вас в замешательство, потому что вы все еще не можете найти метод, который использует каждый программист при быстром решении вопросов кодирования. Итак, каков общий подход каждого программиста, чтобы стать хорошим специалистом в решении проблем?
Универсальный хак, используемый всеми программистами для создания навыков решения задач.
Вы можете решить проблемы быстро, только если вы уже решали проблему или видели ее ранее. Поэтому задача состоит в том, чтобы у вас было больше опыта.
Это не значит, что вам нужно ознакомиться с каждой задачей, поскольку это невозможно. В этих случаях вы должны быть в состоянии определить шаблоны в задачах программирования. Это происходит в том случае, если вы понимаете решения множества проблем, чтобы вы могли определить, когда две проблемы похожи, и вы можете использовать определенные методы, для решения проблемы.
Начинающие программисты должны сначала понимать кучу основных алгоритмов и структур данных. Ознакомьтесь с решениями разных проблем, пока шаблоны не станут вам понятны. Чем больше вы решаете, тем больше вы будете видеть шаблоны старых проблем в новых.
Три шага, о которых следует помнить при создании программного обеспечения
Помните, что изначально, как программист, вам придется сталкиваться с проблемами большую часть времени в блоке программы, и вы должны исправлять это, переставляя и комбинируя. Если вы еще ‘зеленый’, вы будете чувствовать меньший интерес к решению ошибок / проблем, потому что это займет больше времени для решения. Здесь вам нужно набраться терпения, а не бросать программирование. Вам нужно оценивать задачку с разных сторон. Есть известная цитата Стива Джобса:
Каждый в этой стране должен научиться программировать, потому что это учит вас думать.
Что именно значит думать, как программист?
Когда вы столкнетесь с проблемой, попробуйте разобраться в каждой детали. Посмотрите ожидаемый результат. Затем подумайте о следующих необходимых шагах для решения этой проблемы. Не поддавайтесь искушению слепо пробовать вещи. Вместо этого подождите и подумайте о том, что делать дальше.
Теперь мы собираемся обсудить три основных шага, которые каждый программист должен выполнить в своей отрасли при создании программного обеспечения.
Сделай так, чтобы работало. Сделай правильно. Сделай быстро.
-Кент Бек
- Cделай так, чтобы работало
Когда у вас проблема, первый шаг – заставить ее работать. Цель здесь – понять проблему и найти решение. Ничего больше. Возможно, вы думаете, что ваша программа должна быть правильной и оптимальной, но преждевременная оптимизация – глупая идея. Помните, всё хорошее должно развиваться и становиться лучше со временем.
Вы можете заставить код делать то, что он должен делать, любым способом, каким вы хотите. Мы говорим о программном обеспечении, поэтому вместо того, чтобы пытаться найти идеальное решение с первой попытки, найдите только то решение, которое обеспечивает работу этой функции в вашем программном обеспечении. Не тратьте свое время на беспокойство о том, идеален ли ваш подход. Если вы считаете, что существует несколько решений, и вы не можете найти лучшее, выберите одно и продолжайте. Когда вы закончите, убедитесь, что он работает.
- Сделай правильно
На первом этапе у вас есть рабочее решение для вашей проблемы и способ убедиться, что он продолжает работать. Теперь ваша задача – следовать принципам рефакторинга, чтобы улучшить дизайн вашего кода. Следуйте принципу программного обеспечения, проверьте, могут ли какие-либо шаблоны проектирования сделать ваше решение более традиционным. При этом убедитесь, что вы понимаете и вносите в него изменения без особых усилий. Вам и другим разработчикам станет проще поддерживать ваш код.
- Сделай быстро
Теперь вам нужно измерить производительность вашего кода, что является третьим шагом. Оптимизация кода. Что ж, это самый сложный шаг в программировании. Многие компании просто выпускают решение для производства, которое работает со стадии «сделай правильно». Настоятельно рекомендуем, если у вас есть достаточно ресурсов и времени, всегда задумывайтесь о производительности вашего кода. Оптимизация кода — это не просто заставить этот код работать быстрее. Но это больше, чем это. Ваш код должен занимать меньше времени и использовать меньше ресурсов. Вы должны подумать, как я могу сделать его более тестируемым, как я могу сделать его более расширяемым, как я могу сделать этот код более ценным для пользователя.