Здравствуйте!
Вчера мы с вами выбирали компьютер и операционную систему, а сегодня приступим к тому, ради чего мы здесь и собрались — выбору языка программирования для обучения. А заодно выберем инструмент, который сделает наше обучение полезным и комфортным — среду разработки(в нашем случае сначала это будет редактор кода, а потом среда разработки. Мы не будем здесь вдаваться в подробности об их отличиях, сейчас нам это не важно и не нужно.). Но перед этим хочется добавить ещё пару слов к теме нужных характеристик компьютера. Мы с вами вчера совсем забыли о такой важной части компьютера как дисплей(он же экран, монитор и т.д.). Так вот, если мы покупаем моноблок или стационарный компьютер, то там с диагональю экрана очень тяжело ошибиться — то, что есть на рынке, нам полностью подходит. С ноутбуками чуть-чуть сложнее, среди них ещё есть ребята с диагональю менее 15.6 дюймов, и если у вас в ближайшее время не предполагается покупка дополнительного монитора(а в будущей работе он будет очень удобен, но сейчас он нам не нужен. Тем более, если вы пока что не работаете разработчиком в офисе, то дома дополнительный монитор привяжет вас столу, а мы кажется покупали ноутбук для дополнительных свободы и уюта), то вам такого размера монитора будет недостаточно. Соответственно нам нужен монитор ноутбука диагональю от 15.6 и более, но не переусердствуйте с выбором диагонали экрана, экран размером 17.3 дюйма снизит вашу мобильность.
Язык программирования.
Как вы думаете, что важно человеку, который захотел погрузиться в изучение незнакомой ему области? Либо для человека, который вышел первый день на новую работу? Для меня главное, что нужно в такой ситуации, это такое отношение, которое не отпугнёт меня с порога и при котором у меня не пропадёт с первых часов желание продолжать что-то изучать, либо ходить на эту новую работу. Ведь если вас с самого начала начнут закидывать непонятными терминами, объяснение которых если и будет даваться, то либо потом, либо сейчас и скомкано, как будто вы уже это знаете, то у вас вряд ли появится мотивация продолжать заниматься этим делом. Либо новые коллеги с первого дня, не объяснив толком ничего, отправят вас в гущу событий, требуя от вас навыков и действий, о которых вы не можете знать, не ознакомившись с внутренними процессами организации.
Возможно скидывание с лодки в воду неумеющего плавать человека и работает при обучении плаванию, но, повторюсь, для меня, и я думаю, что таких людей немало, важен комфорт и постепенность в начале пути, а не "вот тебе тонна терминов, правил, приёмов — выпутывайся, а с результатом придёшь завтра".
Резюмируя вышенаписанное, сделаем вывод, что нам нужен такой язык программирования, который будет дружелюбен к нам с первых минут обучения и не отпугнёт нас, а смотивирует изучать и постигать его каждый день со всёвозрастающим упорством, желанием и интересом.
Для меня, и я надеюсь в будущем и для вас, таким языком стал Python.
На самом деле я тут не открываю Америку, в любой мало-мальски подробной статье на тему "Программирование. Какой язык начать изучать?" советуют начать изучение программирования с Python, и сразу же начинают говорить, напомню новому в этой области человеку, о том, что у Python лёгкий синтаксис. И вы сидите и думаете: "Чего же я сам его не выбрал, у него же синтаксис лёгкий".
Самая моя большая претензия к таким формулировкам — ребята, кто пишет такие статьи и обучающие ресурсы, к вам пришёл новый человек, он не занимался программированием до этого, не нужно засыпать его терминами, они ему непонятны сейчас. И вообще общаться терминами в обществе, где эти термины понимаешь, пока что, только ты, это, как мне кажется, дурной тон.
Поэтому я не буду сейчас пользоваться словом синтаксис.
Почему Python?
Потому что он очень логичный и похож на смесь английского языка с алгеброй(не пугайтесь гумманитарии ;)).
Например, что мы делаем в алгебре, чтобы определять переменные.
x = 2
y = 5
z = 8
А потом пишем какое-нибудь уравнение: x + y + z = 15
Правильно?
А что мы делаем в Python, чтобы определить переменные?
x = 2
y = 5
z = 8
А потом пишем в интерактивной подсказке(пока что неважно, что это, чуть позже всё узнаете сами)
x + y + z
И результатом будет 15.
Просто? Да. Логично? Да.
Почему не другой язык программирования? Давайте для ответа на этот вопрос приведём сравнение простых операций из Python, и, например, из C++, Java и JavaScript.
Начнём с определения переменных:
Python:
x = 5
С++:
int x;
int main()
{
x = 5;
}
Java:
int x = 5
JavaScript:
var x = 5
А теперь обычная логическая связка Если..., то...:
Python:
if условие:
результат
C++:
if (условие) { результат; }
Java:
if (уловие)
{
результат;
}
JavaScript:
if (уловие)
{ результат; }
И это мы говорим о самых простых конструкциях. Думаю для начала обучения выбор очевиден. Да, у всех языков программирования есть схожие черты и вы, изучив один, сможете более легко приступить к изучению другого. Но для начала хочется всё-таки чего-то попроще. Впереди вас ждёт много интересного и трудного, и хотя бы сначала мы можем немного упростить себе путь.
Если Python такой простой, то, наверное, на нём и серьёзного ничего сделать нельзя?
Это заблуждение, за кажущейся простотой скрыты огромные ресурсы и возможности. С помощью Python вы можете на профессиональном уровне заниматься: разработкой серверной части сайта(то что управляет сайтом изнутри, та часть работы сайта, которую мы не видим, а видим только её плоды), разработкой в области искусственного интеллекта, разработкой в области машинного обучения, разработкой в области аналитики. Даже игры можно разрабатывать на Python(но этим мало кто занимается, Python всё же немного про другое).
И да, сразу оговорюсь, обучение не будет простым. Оно просто будет менее сложным, чем в случае с другими языками. Будьте готовы к этому и лучше знать об этом сначала, чтобы потом не наступило разочарование. Я буду помогать вам по мере моих сил, но без вашего упорства, желания и старания у нас ничего не получится. И самое главное: любой человек может обучиться программированию, если будет желание.
Редактор кода и среда разработки.
Итак, с языком программирования мы, я надеюсь, определились. Теперь перейдём к инструменту, который будет с нами на протяжении всей нашей жизни программиста — редактор кода.
Тут на самом деле всё достаточно просто. Не смотря на то, что редакторов кода и сред разработки под Python достаточно большое количество, мы с вами остановимся на двух и этого нам будет более, чем достаточно. А про третью программу, интересную, но на первый взгляд, очень непривычную и необычную, я немного расскажу в конце.
Сначала нам понадобится, хотя бы пока будем читать первую книгу(о ней завтра), Visual Studio Code. Мы будем его использовать в связке с Терминалом. Терминал( он в Linux и MacOs) — это аналог(или наоборт, второе аналог первого) командной строки из Windows, вы могли её видеть при установке программ, это такое черное окошко с мигающим курсором в начале строки. Так вот этот самый Терминал будет вашим другом и помощником вместе со средой разработки, всегда. Он быстрый, функциональный и очень облегчает жизнь разработчика. Хотя по началу может показаться, что жизнь он усложняет :).
Итак, на данном этапе вам нужно просто установить Visual Studio Code, это можно сделать как из магазина приложений вашей операционной системы, так и с официального сайта. Также нам после установки программы нужно будет установить плагин для Python, чтобы работать с Python, программа в меню на главной странице подскажет как это сделать, либо вы можете воспользоваться инструкцией отсюда.
После прочтения первой книги, которую, повторюсь, я посоветую завтра, вы можете смело устанавливать PyCharm и продолжать уже пользоваться им. PyCharm существует в двух версиях Professional и Comunity, первая платная, вторая бесплатная. На первых порах вам хватит бесплатной версии. Почему не сразу PyCharm, спросите вы.
В данном случае, чтобы переходить к инструменту, который сильно упростит жизнь, полезно будет сначала эту жизнь ненадолго усложнить, чтобы пощупать весь процесс своими руками и знать, как этот процесс выглядит без удобных инструментов. Для дальнейшего обучения это очень важно. Вам важно знать, как всё работает, иначе потом будет очень сложно.
Почему выбор должен пасть на PyCharm? Всё просто, в нём всё доступно из коробки, тут вам и удобный редактор кода, и удобное создание проектов, и встроенный терминал, и интерактивная консоль Python и много-много всего. Штука крутая, но для начала используйте первый инструмент в связке с терминалом. Не бойтесь, в книге, которую я вам посоветую завтра, научат пользоваться и терминалом и редактором кода.
И то о чём я обещал рассказать, как о третьем варианте. Vim. Великий и ужасный. Бууууу.. :)
Теперь серьёзно, Vim это редактор кода, очень мощный и быстрый редактор кода. Но есть одно но, в нём нет удобного графического интерфейса и для новичков он страшен тем, что в нём мало чего понятно. Vim из тех ребят, которые любят общаться только с людьми, которые его знают, со всеми остальными он неприветлив, а иногда и жесток.
Зачем он нужен? Когда-нибудь у вас настанет момент, когда вы будете работать с сервером, у которого просто нет графической оболочки и ни Visual Studio Code, ни PyCharm установить никак не получится. Перед глазами у вас будет исключительно Терминал. И вот тут на сцену во всей своей красе выйдет Vim. Чаще всего он уже установлен в Unix подобных системах(семейство операционных систем Linux и MacOs) и чтобы с ним начать работать достаточно напечатать в Терминале vim или vi и нажать Enter и вуаля, мы можем приступать к редактированию файлов.
Позже в одном из постов я дам ссылочку на небольшой курс, который обучит основам работы в этом редакторе.
А на сегодня всё. Если появятся вопросы, вы можете писать их в комментариях, я буду рад на них ответить.
Подписывайтесь на блог, чтобы не пропустить новые посты. До встречи завтра!
Предыдущая статья. ............................................................. Следующая статья.