************************************************************************************************************
Я несколько лет обучаю языку программирования. Наблюдал за разными людьми. Как правило выбранная тематика приводит человека к языку. Кому-то нравятся игры, кому-то программы. кто-то хочет писать ботов и т .д.
Как правило, после начала изучения языка наступает момент, когда человек узнаёт больше о языке и ему уже хочется писать совсем другие приложения. Это не значит, что он передумал, просто начинает понимать возможности. Тогда и начинаются сомнения, а тот ли язык программирования выбрал и т .д.
Я думал над этим вопросом несколько лет и пришёл к такому выводу. 1. Ошибка. Нельзя выбирать узкопрофильный язык. Нужно выбирать язык общего назначения первый для изучения. Более подходит для этого Пайтон. Пайтон откроет дорогу к любому софту, так как содержит большое количество библиотек. Например, можно писать сайты используя Джанго. Или можно писать графические программы, например, использую PyQt (библиотека написанная на С++, под управлением пайтон).
Можно заняться тестированием или машинным обучением (то есть делать сайты и программы умными, которые способны принимать решения сами. Все эти пакеты используют библиотеку NumPy написанную на Си. И их ряд большой. Skipy - пакет, которые собирает в себе сборку программ, для любой сколь сложной обработки всего чего угодно. Посмотрите здесь . Анаконда.
Я надеюсь возможности понятны.
Пайтон язык с динамической типизацией. то есть пол работы делает за вас. Изучив пайтон, вы вообще въедете в программирование и уже будете делать софт, возможно зарабатывать. Если, вы поймёте, что вам это интересно, то можно идти дальше. Помните я говорил в начале, что важно выбрать язык общего назначения.
Так вот второе правило, если всё-таки решите стать профессионалом высокого уровня, второй язык нужно выбрать, который лежит в основе большинства других языков.
Это язык Си. Си довольно просто, понятный язык, очень лаконичный и быстрый. Нужен он для того, что бы открыть дорогу ко всем другим Си подобным языкам. По сути, например, что бы понять С++ нужно будет просмотреть только отличия. Я к этому пришёл сам за многие годы, не так давно наткнулся на одно видео с Гарварда, меня очень порадовало, что я был прав. Этот подход использует во многих университетах.
Почему работает эта схема? 1. Пайтон, как язык общего назначения, даст вам познакомится с разным программным обеспечением. Вы разберётесь, что вы хотите не выходя за рамки языка. Я говорю именно о времени, так как его потеря слишком дорого обходится.
2. Вы познакомитесь с парадигмами, которые есть в каждом языке, тип объекта (например список, строка и т .д). Вы познакомитесь с переменными. с операциями над объектами и вам станет понятно, что есть язык изнутри.
Объясню проще. Каждый день мы свою голову используем, как компьютер. Например, жена послала в магазин, так как собралась варить борщ. Как правило большинство людей записывают, купить свеклу, морковь и т .д. То есть в голове вы быстро расставили все действия. Пойти в магазин. Достать список, прочитать, найти прилавки с продуктами, положить в карзину, оплатить, принести домой. отдать жене. В вашей голове прошло много операций.
Тоже самое и в компьютере, только компьютеру нужно объяснить. Например, если б мы писали программу. похода в магазин, то нам бы понадобилось нечто что способно объяснить компьютеру, что делать. Именно, для этого и были придуманы языки программирования.
Часто говорю, своим ученикам, что каждый уже программист, так как совершает некие действия, каждый день. Для программы был тот же список, вернее тип данных, или тип объекта, который и называется список. Просто в язык он обозначается, например, в пайтон двумя квадратными скобками ['свекла', 'морковь'] Обратите внимание, язык программирование, как правило уже придуман под нужны людей. В список можно добавить что угодно, например соль. Это область называется операции над объектами. Если в голове мы быстро просчитали, подошли к прилавку, протянули руку и положили, например морковь в корзину. То, компьютеру нужно объяснить. То есть мы понимаем. что нужно добавить ту же морковь в корзину, но компьтео поймёт только свою команду, например добавить в пайтон звучало бы add.
Процесс думаю понятен.
Тогда вернусь к выше утверждениям. Так вот Пайтон даст возможность начать писать всё что угодно, программы. игры, программы под андроид, сайты. Если вам кто-то скажет (повторюсь), что пайтон медленный, не верьте. Вы пользуетесь Ютуб? Так вот в большинстве он написан на пайтон. (источник М. Лутц). Второе, как я говорил ранее, пайтон имеет огромное количество библиотек, к примеру, возьмём PyQt, написание графических программ. Сама библиотека написана на С++ (самый быстрый язык на сегодня). А управляем мы при помощи Пайтон. Суть программирования проста. Взял виджет, в котором уже заложена много действий и программа готова.
Но есть ещё одна важная вещь, которая вам нужна. До начала программирования у вас есть только желание, но остаются внутри вопросы, а какой язык выбрать, потом сомнения, а тот ли язык выбран?? Именно для этого и важно взять первый пайтон. Это будет уже точно тот язык, потому что приведёт вас к пониманию, а что собственно вы будете программировать. После написания приложений на пайтон, примерно через 1-1,5 года, вы начнёте понимать себя самого, то есть понимать, что вы вообще хотите.
У вас начнут проявляться реальные конкретные желания. То есть вы точно например будете понимать, что вы будет писать сайты. вам больше чем достаточно будет Фреймворка Джанго. Здесь остановлюсь. Связка Джанго пайтон очень опасный подход. так как Джанго это настолько большой мир, что увлекаясь им, человек начинает обретать, такую склонность, как фреймворко зависимость. Что это такое? Человек начинает терять способность писать на пайтон, так как Джанго это полностью автономный фреймфорк имеет свои модули, классы, архитектуру и структуру. И начинает забываться сам пайтон. Важно. Изучать например Джанго и PyQt. В чём суть? Обязательно изучать то, что будет вас развивать в чистом пайтон. Я рекомендую android, так как не только полезно, но и перспективно.
Кстати, попутно отвечу на вопрос, нужно ли изучать пайтон, для Джанго? Да нужно. Что нужно изучать? По минимуму типы объектов и начальное понимание ООП. Типы объектов нужны, чтобы по минимуму не терять время. Например, я наблюдал как новичок неделю боролся. а потом заявил, что не поставил одинарную кавычку. Если б он изучил типы объектов, то сразу бы увидел, что в фрагменте кода, строки (тип объекта), они обозначаются одинарными или двойными кавычками. Второе, не будет понятна справка джанго, потому что там объясняется именно типами данных. И наконец закончу. так как уже несколько раз подвожу вк Си, но всё откладываю. К тому времени, как вы будете писать на пайтон, у вас будет понимание что вы хотите. Поэтому следующий язык программирования вы будете выбирать уже осознано. Что бы не прогадать после пайтон нужно изучить Си. Так как такие языки. как PHP, Джава. С++, Си шарп и многие другие имею в своей основе Си подобный синтаксис.
Само изучение следующего Языка это просто просмотр и сразу применение отличий. Вот так изучение всего двух языков даст выход к десятку языков. Повторяю, важное в этом подходе - это прогресс без потери времени. Начать можно с просмотра бесплатного курса, методика моментально понимания python. Прочитайте на картинке,
Что это?
Выше рассказывал процесс похода в магазин. И не просто так. Многие не понимают, что язык придуман для облегчения жизни. (вот что написала девушка Анна, как она выразилась это от неё ускользало. ).
А ведь непонимание этого простого момента не даёт выучить язык большинсту людей. У них разлад в голове, язык сам по себе, а мышление изучающего само по себе. И человек начинает думать, а как же мыслить, как программист, в то время. как он уже мыслит, как программист.
Я высказал своё мнение, принимать решение вам. Я показал вам многие факторы. которые вы ранее не учитывали.. Но по крайне мере, для меня это работает. Надеюсь статья получилась простой и всеобъемлющей. Ещё одна деталь. Важно сделать язык частью жизни. Как происходит понимание языка с ноля, до промышленного программирования? (пояснил здесь)
Успехов Вам.
Спасибо за доверие.
main.py
# Python 3: Simple output (with Unicode)
>>> print("Hello, I'm Python!")
Hello, I'm Python!
# Input, assignment
>>> name = input('What is your name?\n')
>>> print('Hi, %s.' % name)
What is your name?
Python
Hi, Python.
Многие уже осуществили. (пример)