rss vk ok facebook twitter

Хочу стать программистом, с чего начать?

Здравствуйте, уважаемые читатели. Сегодня я дам советы по методике обучения программированию в домашних условиях. Я не буду рекламировать нечто подобное любительских видео-курсов всего за $19.99, а расскажу о том необходимом наборе знаний которыми должен обладать профессионал, посоветую полезную литературу. Статья будет полезна всем, кто действительно хочет стать программистом. Бытует заблуждение, что чтобы стать программистом достаточно изучить какой-нибудь язык программирования, но на самом деле это только начало. Я же сегодня расскажу о том, какие знания и в какой последовательности вам следует получать, чтобы стать профессиональным программистом.

Как бы банально не звучало, но начать следует с изучения основ языка программирования. Не следует изучать языки предназначенные для обучения такие как: Pascal, Basic. Выберите полноценный язык программирования который используют в своей деятельности профессионалы. Например, начните изучать C/C++, C#, Java или Python. Начать изучение языка вы можете по книгам и для каждого языка найдется парочка достойных, подробно и доступно написанных книг. Для Python я бы посоветовал книгу Марка Лутца «Изучаем Python», для Java Брюс Эккель «Философия Java», для C++ Брюс Эккель «Философия C++», для C# Эндрю Троелсен «Язык программирования C# 2010 и платформа .NET 4.0». Так же не забывайте о практике, выполняйте упражнения предлагаемые в книгах и пробуйте писать свои небольшие программы. На этом этапе вы овладеваете главным инструментом программиста и уже можете создавать нечто свое, нечто уникальное, но чтобы вы могли создать современный, востребованный и качественный продукт вам придется расширять и углублять свои знания.

История развития алгоритмов

Любой начинающий специалист, желающий стать программистом, должен знать историю развития и становления своей отрасли хотя бы для того0 чтобы не повторять «чужие» ошибки. История для программиста — алгоритмы. Вы должны ближе познакомится алгоритмизацией и историей развития алгоритмов. Тут можно посоветовать такие книги как Дональд Кнут «Искусство программирования» и Томас Кормен, Чарльз Лейзесторн, Рональд Ривест, Клиффорд Штайн «Алгоритмы. Построение и анализ». Следует предостеречь, что тут вам может понадобиться познания в области математического анализа и не помешает вооружиться хорошим справочником по этой дисциплине.

Операционные системы и программирование

Вы должны быть хорошо знакомы с операционными системами под которые планируете разрабатывать программы. Вы должны знать как устроены эти системы, знать как минимум по одному языку командой оболочки для вашей системы, иметь базовые навыки системного администрирования. Для Windows могу посоветовать Уильям Станек «Windows 7 для продвинутых», Linux — Маттиас Далхаймер, Мэтт Уэлш «Запускаем Linux», FreeBSD — Майкл Лукас «FreeBSD. Подробное руководство». Если вы собираетесь разрабатывать ПО для смартфонов или планшетов, тогда не стоит забывать об операционных системах для мобильных устройств.

Программирование баз данных

Чем бы вы не занимались и какого бы рода ПО не разрабатывали готов поспорить, что вам придется столкнуться с базами данных. Без опыта работы хоть с какой-то СУБД вы не сможете стать программистом даже в отдаленном понимании смысла этого слова. В любом проекте где имеется база данных, она становится главным объектом для внимания программистов. Очень важно не только уметь грамотно проектировать структуру БД, но и уметь организовать взаимодействие программы с оной наиболее оптимальным способом. Могу посоветовать несколько книг: Томас Коннолли, Каролин Бегг «Базы данных. Проектирование, реализация и сопровождение. Теория и практика.», К. Дж. Дейт «SQL и реляционная теория», Стефан Фаро «Рефакторинг SQL-приложений», Кэвин Кляйн, Дэниэл Кляйн, Брэнд Хант «SQL справочник».

Рефакторинг кода

хочу стать программистом

Объектно-ориентированное программирование и проектирование, рефакторинг кода. Очень важно научиться писать код так чтобы он был понятен другим программистам, он был универсальным и его можно было использовать повторно, именно в этом нам поможет объектно-ориентированное программирование. Обязательно стоит прочесть такие труды как: Эрих Гамма и др. «Приемы объектно-ориентированного проектирования», Мартин Фаулер «Шаблоны корпоративных приложений». Это книги ставшие классикой и шаблоны приводимые в них надо знать наизусть. Так же вам может потребоваться изучить какие-то специфические шаблоны связанные с той область в которой вы планируете работать. Рефакторинг — улучшение и повышение качества уже существующего кода, и вам очень важно овладеть этим умением. В этом вам помогут следующие книги: Мартин Фаулер «Рефакторинг существующего кода», Роберт Мартин «Чистый код. Создание, анализ и рефакторинг».


resume professor

С течением времени вы будете сильнее понимать важность выбора инструментальных средств и влияния выбранной методологии разработки на развитие проекта. Вам предстоит обзавестись интегрированной средой разработки, отладчиками, профайлерами, системой контроля версий, познакомиться с модульным и интеграционным тестированием, различными вспомогательными средствами и системами непрерывной интеграции. Все это многообразие средств призвано упростить и структурировать процесс разработки приложений как в одиночку, так и в составе команды разработчиков.


На этом этапе вы должны уже без проблем находить всю информацию через поисковики, и знакомиться с программным обеспечением путем чтения документации, но чтобы ознакомиться с проблемой в целом советую книгу Стива Макконела «Совершенный код» как классическое издание пытающее охватить весь процесс разработки, начиная от проектирования и заканчивая приемочным тестированием и документированием кода.

Я перечислил основные темы которыми необходимо овладеть чтобы успешно разрабатывать современные и качественные программы, но время не стоит на месте, а IT-отрасль развивается стремительно. Надо постоянно осваивать новые технологии, чтобы оставаться востребованным специалистом ну и конечно же не забывать о практике! Если вы всерьез решили стать программистом, тогда вас наверняка заинтересует моя следующая статья о языке программирования Visual C#.

К этой статье добавлено 4 комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *