Оценить:
 Рейтинг: 0

Карьера в IT. Как найти работу, прокачать навыки и стать крутым разработчиком

Год написания книги
2017
Теги
<< 1 ... 6 7 8 9 10 11 12 13 >>
На страницу:
10 из 13
Настройки чтения
Размер шрифта
Высота строк
Поля
В общем, слушайте свое сердце, это упростит вам изучение вашего первого языка программирования. Чем больше вас привлекает изучаемая технология и чем больше вы ею увлечены, тем легче вам будет преодолевать виражи учебного процесса. Например, я очень хотел заниматься разработкой под iOS, потому что у меня появился мой первый iPhone, и я был в восторге от этой технологии. Эта воодушевленность значительно облегчила мне изучение Objective-C и создание моего первого приложения под iOS.

Будь я равнодушен к этой технологии, вряд ли я продвинулся бы в ней достаточно далеко.

Уровень сложности

Еще одним важным моментом, который следует учитывать при выборе языка программирования, является уровень сложности.

Некоторые языки программирования более сложны в освоении, чем другие. Я не рекомендую начинать изучение программирования с C++, потому что по сравнению с другими языками программирования он довольно сложен для понимания. В этом случае вы будете иметь дело с управлением памятью и указателями, а также с некоторыми другими неприятными конструкциями, которые могут вызвать у новичка настоящий ступор.

C++ это великий язык – один из моих любимых, но его изучение тот еще квест. Гораздо проще будет начать знакомство с программированием с таких языков, как C#, Lua, Python, Ruby или PHP. Более того, для начинающих программистов существуют даже специальные языки, такие как Scratch или Basic.

Я не хочу отговаривать вас от изучения более сложного языка, такого как C++, если вы действительно этого хотите. Однако следует заранее представлять, во что вы ввязываетесь, и принять осознанное решение, насколько легким для изучения должен быть ваш первый язык.

Доступные ресурсы

Оцените ресурсы, которые вам пригодятся при изучении выбранного языка программирования. Например, в случае некоторых малоизвестных языков вы можете столкнуться с недостатком учебных материалов по ним – книг, онлайн-видео или любых других ресурсов – все это может существенно осложнить процесс освоения языка.

Популярные языки программирования хороши тем, что вам будет доступна масса онлайн-руководств, учебных курсов, книг и других материалов, поэтому перед началом обучения обязательно изучите этот вопрос. Несмотря на то, что сейчас существует огромное количество разнообразных ресурсов для начинающих, стоит заранее учесть степень доступности обучающих руководств.

Также рекомендую оценить, какими ресурсами располагаете конкретно вы, например компьютером или программным обеспечением. Даже более сложный язык программирования будет проще изучить, если у вас под рукой есть много интерактивных онлайн-учебников.

Изучать JavaScript можно онлайн через браузер, без установки чего-либо на компьютер. В свою очередь такой язык, как C ++, потребует для своей работы определенных инструментов и программного обеспечения, получить которые может быть непросто.

Наконец, подумайте о людях, которых вы знаете. Есть ли среди них те, к кому вы могли бы обратиться за советом в случае трудностей?

Не зацикливайтесь на вопросе ресурсов, но и забывать о них тоже не стоит.

Адаптивность

Напоследок давайте поговорим о такой вещи, как адаптивность. Языки программирования по-разному адаптируются к исходным условиям. Например, на момент написания этой книги язык программирования C# можно с уверенностью назвать одним из наиболее адаптируемых благодаря таким компаниям, как Microsoft и Xamarin (теперь входит в состав Microsoft).

Изучая C#, вы вовсе не будете ограничены лишь разработкой под Windows или web-программированием. Этот язык может использоваться для создания приложений под любую из доступных платформ.

С помощью C# можно создавать приложения для Linux и Mac, и даже для Android и iOS. Многие другие языки программирования обладают сходной гибкостью.

Например, Ruby был перенесен на множество различных платформ и используется во многих технологических областях. JavaScript также легко адаптируется. Вы даже можете использовать JavaScript для управления платами Arduino и робототехники. (Мой хороший друг Дерик Бейли написал неплохую статью на этот счет.)

Некоторые другие языки программирования менее гибки. Например, если вы изучаете R или Go, вы будете чуть более ограничены технологиями и платформами, под которые можно разрабатывать программы на этих языках. Все больше языков программирования, особенно популярных, переносятся на новые платформы и используются во множестве различных технологий. При этом часть языков по-прежнему остаются не столь универсальными.

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

Пара мыслей напоследок

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

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

Главное – не сдаваться! Уверяю вас, что все получится. В какой-то момент вы можете ощутить скуку или решить, что надо было выбрать другой язык и затем начать перебирать разные технологии, но поверьте мне – это будет плохая идея. Когда я начинал изучать программирование, одним из самых важных навыков для разработчика было глубокое понимание языка. Я просматривал массу книг по C++, пытаясь узнать обо всех тонкостях языка. Сегодня в этом занятии нет необходимости. В наши дни программисты работают на более высоком уровне, что предполагает более широкое использование библиотек и фреймворков, нежели функций самого языка. Разумеется, вы по-прежнему должны уметь программировать, но тончайшее владение каким-либо языком сейчас излишне.

Именно по этой причине я рекомендую вам не тратить слишком много времени на выбор языка. Просто начните учить какой-то один и не меняйте своего решения.

Глава 6. Ваш первый язык программирования

Итак, выбор сделан. Что дальше? Конечно же, открыть книгу и начать читать! Прекрасный выбор, который с большой долей вероятности заставит вас отказаться от программирования раз и навсегда.

Помните, я говорил об обучении на практике? Именно этим мы и займемся в этой главе.

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

Большинство программистов (как и я сам в начале пути) учились так:

1) начинали штудировать учебник;

2) пытались что-то из него повторить;

3) это что-то не желало работать;

4) вновь и вновь перечитывали материал, пока не удавалось разобраться в проблеме;

5) PROFIT!

То, чем я собираюсь поделиться с вами, получено в результате обучения многих разработчиков программного обеспечения не только в процессе изучения их первого языка программирования, но и улучшения их навыков разработки на этом языке. При создании этой главы я также руководствовался собственным опытом освоения таких языков, как C ++, C # и Java.

Фактически в этой главе будет описана последовательность действий, которой я придерживался бы при изучении своего первого языка программирования, если бы знал то, что знаю сейчас.

Посмотрите, как функционирует уже работающее приложение

Как я уже говорил, большинство начинающих программистов, желая освоить какую-то технологию, просто открывают соответствующий учебник и начинают его читать. В мире существует несколько прекрасных книг, которые ставят своей целью научить вас программировать через практику. Однако я придерживаюсь мнения, что лучше всего начинать с изучения исходного кода уже написанного и точно работающего приложения, пытаясь понять, как работает программа.

Да, это сложно. Да, сначала все будет непонятно и некомфортно. Но советую привыкнуть к этому ощущению.

Я предлагаю вам взять любое популярное приложение с открытым кодом и изучить его. Для поиска объекта исследования воспользуйтесь сайтом GitHub. Отдельно рекомендую вам научиться скачивать код, собирать и запускать его самостоятельно. Будет очень круто, если в это время с вами сможет побыть опытный программист и помочь вам в наиболее трудных моментах! Но если таких знакомых у вас нет – ничего страшного.

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

Вы совершенно точно будете ощущать дискомфорт. Скорее всего, вы даже почувствуете, что не понимаете ровным счетом ничего.

Как я уже говорил – это нормально. Если вы сможете понять хотя бы пару строчек, это будет очень круто. А если вам удастся изменить пару параметров так, что код запустится, а в приложении что-то изменится, то вы – огромный молодец!

Изучая программирование подобным способом, вы сможете понять, как выглядит структура хороших приложений. Представьте себя археологом, изучающим письменность древних цивилизаций. Благодаря этому методу вы окажетесь на несколько шагов впереди других начинающих программистов. Потому что в отличие от них, вы будете знать, как выглядит тот язык, на котором вы учитесь писать.

Перед путешествием всегда полезно изучить местность. В программировании дела обстоят точно так же.

Просмотрите пару качественных материалов по теме

Продолжая тему изучения местности, в качестве следующего шага я рекомендую вам пробежаться по тексту пары книг глазами, – именно пробежаться, а не читать их от корки до корки.

Суть данного этапа заключается в том, чтобы понять, какие в изучаемой области имеются основные темы и понятия. Затраченные вами усилия обязательно окупятся, когда вы почувствуете, что поняли, какие вещи вы будете изучать и как они соотносятся друг с другом.

<< 1 ... 6 7 8 9 10 11 12 13 >>
На страницу:
10 из 13