Предлагаю вашему вниманию краткое руководство и практические соображения по изучению нового языка программирования. Недавно коллега переслал мне статью о наиболее распространенных современных языках программирования. Начинающим программистам рекомендуется изучить, по крайней мере, один из этих языков, однако есть и другие обстоятельства, которые следует принять во внимание при выборе языка программирования.
Цели развития карьеры
Если вам, как и мне, свойственно желание узнать и освоить все вокруг, то, вероятно, имеет смысл сузить круг устремлений. Чрезвычайно интересно экспериментировать со всеми языками программирования на свете, но на этом пути не добиться больших свершений. Лучше определенно ответить вопрос: какого рода разработками вы хотите заниматься? Этот вопрос может показаться слишком общим, но спросите себя, чем вы хотите заниматься через десять лет. Какая деятельность принесет вам наибольшее удовлетворение как разработчику?
Майкл Кэмпбелл рассмотрел идею специализации в своем комментарии «Строим карьеру разработчика: похвала специализации» (см. врезку). Он жертвовал долгосрочным потенциалом и безопасностью, берясь за любые подвернувшиеся проекты, и в результате пришел к карьерному решению, которое принесло ему успех. Рекомендую прочесть этот превосходный комментарий.
Основные навыки программирования — ключ к успеху
В моем родном университете штата Колорадо студенты, изучающие вычислительную технику, были обязаны посещать несколько различных курсов, на которых преподавались фундаментальные принципы программирования. За три года учебы я освоила всего несколько языков программирования: объектно-ориентированный язык (Java), императивный язык программирования(C) и мультипарадигматический язык (C++). По неопытности я слегка возмущалась, что так много внимания уделяется лишь нескольким языкам. Просматривая Интернет в поисках вакансий для программистов, я испытывала досаду, ведь работодателям требовались люди со знанием разных языков программирования.
Я вспоминаю те времена и удивляюсь своей наивности. Должна признаться, что я в самом деле недооценивала важность учебных курсов с акцентом на фундаментальные принципы программирования. Позднее, участвуя в других проектах, я почувствовала, что к общему пониманию программирования добавляется гораздо более комфортное владение разными языками.
Не следует воспринимать мой совет как обязательное требование получить диплом об окончании четырехлетнего университетского курса. Если вас привлекает такой путь — прекрасно. Я же стараюсь показать, как важно изучить несколько языков программирования, чтобы овладеть основными концепциями программирования. Впоследствии эти знания можно будет перенести на различные проекты разработки.
Чего требует рынок
Один из авторов сайта Dev Pro, Уоллес МакКлур, призывал разработчиков учитывать востребованность и популярность языков. Среди общих вопросов, которые следует задать самому себе, должен быть такой: какая работа выполняется сегодня в программно-технической индустрии? Нужно не только правильно выбрать язык программирования, способствующий достижению карьерных целей, но и хорошенько изучить, по крайней мере, один язык, пользующийся спросом на рынке, чтобы расширить возможности трудоустройства. Но не стоит делать целью своей жизни изучение языка Scala.
Все это лишь советы, хотя, надеюсь, они будут полезны вам, так как основаны на общении с моими друзьями-программистами и собственном опыте. Как известно, каждый из нас учится по-своему. Не существует универсального подхода к изучению новых языков, поэтому лучшее, что можно посоветовать — строить карьеру таким образом, который приносит вам наибольшее удовлетворение.