Безлім вакансій для пошуку intern та junior! Заходьте на jobs.dev.ua і розміщуйте вакансії! 🧑💻
Марія БровінськаВойти в IT
15 августа 2022, 14:01
2022-08-15
Хочу стать программистом. С чего начать и как выбрать между Java Script, PHP, Python и другими
Диана Смеликова, операционный директор Wezom Academy, в своем блоге на DOU объяснила, с чего начать изучать программирование и каким языкам стоит отдать предпочтение на начальном этапе. Вот 5 важных советов от нее.
Диана Смеликова, операционный директор Wezom Academy, в своем блоге на DOU объяснила, с чего начать изучать программирование и каким языкам стоит отдать предпочтение на начальном этапе. Вот 5 важных советов от нее.
Шаг 1: определяем типизацию
Типизация — это сегментация переменных на несколько подтипов: int, flow и т. д. Типизация напрямую влияет на то, каким будет процесс написания программ и как они будут функционировать. Она бывает нескольких видов:
Явная/неявная.
Слабая/сильная.
Статическая/динамическая.
Если у выбранного вами языка типизация считается слабой, он более гибкий. Но в то же время преобразование переменных в нем неявное. И наоборот, языки с более сильной типизацией не такие гибкие, зато и преобразования в них более явные.
Шаг 2: изучаем «стройматериал» сайтов
HTML и CSS — это костяк веб-девелопмента в принципе. Спросите любого программиста, с чего именно он начинал свой путь в IT, и это практически со стопроцентной гарантией будет HTML + CSS:
HTML — язык разметки документа.
CSS — каскадные таблицы стилей.
При помощи HTML и CSS можно создавать содержимое веб-страниц и приложений, менять оформление, добавлять различные эффекты и так далее. Разобраться с логикой и освоить самые простые варианты применения HTML и CSS можно буквально за пару дней. Да и в целом это сравнительно простое направление для изучения.
Написать программу с помощью HTML и CSS не получится, но без этого базиса учить языки программирования будет куда сложнее. Поэтому сейчас фронтенд-обучение включает и изучение JavaScript.
Шаг 3: JavaScript
JavaScript называют одним из наиболее быстрорастущих языков программирования. Он проще в изучении, чем Python или PHP, довольно универсален и позволяет писать приложения буквально для всех существующих платформ.
Изначально JavaScript разрабатывался как язык программирования для создания интерактивных веб-страниц. Но очень быстро его функциональные возможности расширились. И сегодня на JS пишут также мобильные, десктопные и даже серверные приложения.
JS — это не панацея. И помимо очевидных преимуществ у него есть и некоторые недостатки:
— низкая надежность из-за слабой типизации;
— плохо подходит для разработки мобильных приложений.
Недостатки и слабые стороны JS можно компенсировать при помощи TypeScript, Flow и других инструментов, но это скорее полумера. Поэтому на JavaScript, как правило, не разрабатывают сложные программы, требующие максимальной надежности. Условно говоря, на JavaScript можно создать приложение-проигрыватель музыки, но не приложение для онлайн-банкинга.
Шаг 4. PHP
PHP — язык, на котором написаны Facebook и Wikipedia. Вот уже более 10 лет — это популярный, универсальный и надежный язык, на котором написано огромное число веб-конструкторов. Однако за множеством плюсов все еще скрываются и недостатки:
слабая типизация;
неудобно организованная библиотека;
используется преимущественно только в веб-разработке;
плохая реализация многопоточности.
Освоить PHP тоже сравнительно несложно, особенно если вы уже знакомы с JavaScript. Но с ним «в комплекте» также идет пара десятков технологий:
редакторы: Notepad++ или другой подходящий аналог,
серверы БД: MySQL, PostgreSQL,
хранилища: Memcached,
фреймворки: Symfony, Yii и другие.
А еще менеджеры пакетов, профайлеры, отладчики и прочее. Так что обучение PHP не ограничивается только изучением самого языка — об этом нужно помнить.
Шаг 5. Python
Сегодня многие называют Python одним из наиболее перспективных языков, и в этом действительно есть смысл. Он активно используется не только в веб-разработке и написании программ, но и в работе с нейросетями и Machine Learning. А это — технологии будущего.
При этом назвать Python сверхсложным для изучения нельзя. Учить его с нуля, естественно, будет непросто. Но, зная другой язык программирования, вы при желании сможете освоить Python без особых усилий.
Недостатки Python следующие:
неявная типизация;
частичная поддержка многопоточности;
медленный;
прожорливый, в своей расточительности обойдет даже JS.
Самый востребованный редактор кода для Python — PyCharm. А дополнительных технологий, используемых с этим языком программирования, просто масса:
анализ: iPython, Anaconda и другие,
Machine Learning: Scikit-learn, Keras,
веб-девелопмент: Django, Tornado,
менеджеры: Pip, Conda.
Кстати, у Python есть неочевидное преимущество — крайне дружественное и лояльное комьюнити разработчиков. Вы без особых усилий сможете найти ответы на возникающие вопросы и получить помощь более опытных коллег. А это в современной IT-индустрии по-настоящему важно.
Небольшое уточнение
Если опираться только на приведенные выше данные, можно сделать вывод, что лучший выбор для начинающего веб-разработчика — JavaScript. Легче учить, а зарплата на уровне с PHP-девелопером и даже выше, чем у Python-разработчика. Но здесь есть важный нюанс!
В Украине JavaScript-разработчики востребованы за счет их универсальности. А спрос на узкоспециализированных PHP- и Python-девелоперов есть только в крупных городах (или удаленно, проектно). Получается, что если вы планируете работать на внутренний рынок, то JS действительно может стать оптимальным вариантом. Но на западном рынке картина противоположная — крупным проектам в команду часто нужны именно более узконаправленные специалисты по PHP или Python. И тут уж зарплата ощутимо выше.
Соответственно, стоит задаться вопросом, на какой рынок планируете работать именно вы.
Если цель — деньги
HTML + CSS — самый минимум, чтобы заниматься веб-разработкой, а точнее — версткой. Это не языки программирования в прямом смысле, но знать их нужно.
JavaScript — один из популярнейших языков программирования, к тому же сравнительно простой в изучении. После обучения HTML5 + CSS3 + JS уже можно рассчитывать на более высокий доход, чем с базовым HTML + CSS.
Java — более сложный язык, но и зарплата у Java-программистов ощутимо выше.
PHP и Python — популярные, хоть и довольно узкоспециализированные языки программирования, позволяющие хорошо зарабатывать.
Для лучшей оценки соотношения сложности изучения, актуальности и зарплаты рекомендуем ознакомиться со следующей таблицей:
Главная мысль, которую я хочу донести, — нужно выбирать не язык программирования, а интересное вам направление. То есть, сначала определяете, чем хотите заниматься, а уже исходя из этого, подбираете подходящий курс изучения — Python, PHP, JavaScript и так далее.
Новичкам в программировании помимо базового курса разработки могу рекомендовать изучать программирование с JavaScript и PHP. Тем, кто уже овладел базовыми навыками и опытом — Java и Python. Плюс, не забывайте дополнительно знакомиться со стеком технологий и фреймворками.
Мануал для джуна. Python Developer: вопросы на собеседовании, практические задания и советы для начинающих
Джунов, которые ищут работу, проходят кучу собеседований и получают отказы вместо оффера, во время войны стало больше. А все потому, что к собеседованиям необходимо тщательно готовиться.
dev.ua продолжает серию материалов о том, что нужно знать джунам для прохождения собеседования и получения вожделенного оффера от первого работодателя.
Александр Ковтунов, Python Software engineer компании Ajax Systems, который также проводит собеседования для junior- и middle-специалистов, рассказал о профессии Python Developer и дал советы, как начинающим присоединиться к профессии.
12 онлайн-курсов по Java для новичков и профи в 2022 году
Java по-прежнему входит в список самых популярных языков программирования. Вместе с Digital Defund составили список курсов, которые подойдут как новичкам, так и людям с опытом программирования, и помогут освоить этот востребованный язык.
Любишь работать с данными? Пора учить язык программирования R. Вот 5 инструментов, которые в этом помогут
R становится одним из самых популярных языков программирования в IТ-индустрии, особенно в области науки о данных. Если вы также относитесь к тем, кто хочет сделать карьеру в области науки о данных, то этот курсы вам подходят.
Хотите сообщить важную новость? Пишите в Telegram-бот
Главные события и полезные ссылки в нашем Telegram-канале