Сергей Немчинский: Как учить 2 языка программирования одновременно? И не сойти с ума? - FoxmindEd
07.08.2022

Сергей Немчинский: Как учить 2 языка программирования одновременно? И не сойти с ума?

Сергей Немчинский
5 минут просмотра
Сергей Немчинский: Как учить 2 языка программирования одновременно? И не сойти с ума?

Большинство новичков пугает необходимость изучения сразу нескольких языков. Да, часто бывает, что помимо основного языка, нужно выучить еще и SQL, JavaScript, верстку, может что-то еще. Как это все уместить в голове, чтобы не получилась каша?

Большинство языков похожи

На самом деле подавляющее большинство языков, которые вам придется изучать, похожи друг на друга. Более того, почти все современные языки являются С-подобными (за исключением Python), соответственно, они имеют очень похожий синтаксис. У них похожие описания методов и классов, одни и те же фигурные скобочки, циклы for и операторы if и т.д. Почти все такие языки ООП (кроме SQL). Если вы пишите на PHP и дописываете какой-то кусок на JS, у вас будет фактически один и тот же синтаксис. 

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

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

SQL нужно знать всем бэкенд-разработчикам

С языком SQL все немного иначе (SQL – это язык запросов к базе данных). Знание SQL абсолютно ультимативно для любого программиста на backend языке (PHP, Java, C#, Python, Ruby, Node.js и пр.). Он используется в более чем 80% проектов. При этом SQL сильно отличается по синтаксису от C-подобных языков. Радует то, что SQL достаточно простой, у него очень мало ключевых слов. Единственная проблема – это понять, как он, в принципе, работает. 

У каждой базы данных есть свой диалект SQL, но отличия у них минимальны. Поэтому если вы выучили ANSI SQL, т.е. стандартный SQL, то переходя даже на незнакомую базу данных, вам нужно будет только посмотреть отличия. В большинстве случаев отличия будут в ограничениях в количестве выдачи строк и еще какие-то мелочи. Если в вашем языке используется какой-то ORM (object-relational mapping) то, скорее всего, сам SQL писать вручную вы не будете. Советую просто смириться с тем, что SQL нужно знать и потратить неделю, чтобы изучить его основы.

До какого уровня учить SQL? До того уровня, когда вы сможете написать запрос к нескольким таблицам. То есть select с join. Выбрать из таблицы employee, все данные, у которых название department такое-то. Я думаю, что даже для самого начинающего программиста разобраться, как сделать эту выборку, уйдет неделя или даже меньше.

Все остальные языки об одном и очень похожи.

Не скачите с языка на другой

Нужно упомянуть еще один важный аспект. Есть новички, которые скачут с одного языка на другой. Запомните, вы должны учить только те языки, которые являются дополнительными к вашему. Например, если вы Python разработчик, вам не нужно перескакивать на его прямых конкурентов – PHP и Ruby. Что вам имеет смысл учить? Естественно, SQL. А также Java Script, ибо любой бэкенд разработчик рано или поздно попадает в ситуацию, когда нужно что-то поправиться на фронте. Вы можете не любить фронтенд и JavaScript, но это наша реальность, вам это нужно знать.  

Подытожим

Вы учите свой основной язык программирования + если вы на бэкенде, как следует учите SQL, если на фронтенде – учите верстку и CSS. Я также советую попробовать что-то из параллельной работы. Т.е. новичкам-бэкендерам попробовать написать что-то на фронте, хотя бы валидацию формы. Если вы фронтендер – написать что-то на бекенде, например, что-то на php. Это очень сильно прибавит вам знаний и не займет так уж много времени. Вам  не нужно становиться профессионалом на параллельном языке, но вы получите общее представление.

Всегда ваш Сергей Немчинский