Помогите выбрать язык программирования
Я столкнулся с такой проблемой, что мои мозги обростают мхом - старею, наверное. И вот, я решил во что бы то ни стало научиться какому-то полезному языку программирования, что бы, значит, и мозги прочистить и развить, и, в случае чего, работу можно было найти.Помогите, пожалуйста, выбрать из четырех языков, по 2 параметрам: "востребованность" и "учебная литература на русском"
Подробнее
КУПОН НА 1 помощь
пидоры помогите,реактор помоги,программирование,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор
Собственно
Python | |
|
126 (35.9%) |
Java | |
|
50 (14.2%) |
C | |
|
20 (5.7%) |
C++ | |
|
79 (22.5%) |
JavaScript | |
|
76 (21.7%) |
Еще на тему
А Java уже давно заняла свою нишу и сидит на жопе смирно в enterprise web (backend) development. Все её потуги в android отобрал Kotlin. А его в свою очередь походу вытеснит Dart.
большинству больше и не надо
В голосовалке 5.
Чем ты планируешь заниматься? Для чего именно тебе нужен язык программирования?
Всё таки для разных задач нужны разные платформы и решения..
C и C++ крайне не рекомендую выбирать!
1. Слишком много UB (непредвиденного воздействия), что может привести к плавающим багам на разных компиляторах в разных режимах сборки.
2. Достаточно маленькие и узкие стандартные библиотеки. Почти любое действие, которое делается в других языках одной строкой, тут придётся делать самостоятельно с использованием кучи разных функций и объектов. Конечно, можно использовать сторонние библиотеки, но тогда ты будешь ими засорять проект и свои знания о плюсах.
3. Неактуальность. Сейчас есть куча хороших языков программирования с тем же самым (или более высоким) функционалом и направлением, например: Go, Rust, Dart, но осваивать их будет намного проще и перспективнее.
JS + NodeJs - тоже не самый плохой выбор для старта.
А так да больше в водных. С, C++ только для поиграться, если есть хоть малейшие надежды на работу забудь.
Программирование не развивает мозги. Оно их деградирует.
>в случае чего, работу можно было найти.
Про это сразу забудь. Не бывает никакого "в случае чего". Это программирование, а не укладка плитки.
>Помогите, пожалуйста, выбрать из четырех языков, по 2 параметрам: "востребованность" и "учебная литература на русском"
По востребованности и учебной литературе на русском с большим отрывом лидирует английский язык. Из списка же - js.
У меня друг, например, сначала сделал себе свой сайт. Потом нашел стажировку, где учился писать плагины под какую-то e-commerce платформу. И так через годик-полтора, продолжая изучать разные технологии, стал полноценным программистом и пилит теперь веб сервисы с нуля.
Т.е сначала простые веб технологии: HTML, CSS, JavaScript. Потом можно и Python посмотреть. Очень сильно мотивирует, когда что-то получается, а сделать себе сайт достаточно просто.
Для экспериментов хорош.
Для чего-то не очень сложного и громоздкого тоже. Конечно, люди и мега-системы она питоне пишут, но мне страшно на интерпретируемом языке без статической типизации писать большие системы (есть mypy, но это не все равно не то).
Производительность? Можно часть написать на си/с++.
Доступ к чему-то низкоуровнему? Можно написать на си/с++.
Лично для меня питон + си/с++ покрывает все потребности.
- он вездесущ: не будет проблем найти полезное применение как профессиональное так и бытовое
- развитая экосистема готовых библиотек для деланья чего угодно начиная от фронтенда, а не заканчивая им как другие языки (ака гигабайты node_modules)
- все остальные будут тебя за него хуесосить вне зависимости от твоих навыков: почувствуй себя гуру за пару дней
Дальше смотри (гугли) какие языки и технологии там используются и дуй учить.
Еще можешь погуглить вакансии в своей области и отталкиваться уже от запросов рынка.
Самый же просто вариант, чтибы войти в IT и получать килорубли в месяц - JavaScript/NodeJs. Этого говна сейчас полным полно. Даже самая ленивая контора сейчас нанимает JS макак на проекты разного рода. В топе таких проектов конечно же веб. Но есть, и мобильные, и десктопные.
Изучаешь JS, HTML, CSS, и поглядываешь на NodeJS. Обязательно изучаешь что такое Git и с чем его едят - без него никуда. Дале зависит от того что больше нравится: если веб морды - доучиваешь Angular/React/Vue (что-то одно для начала хватит), если серверную часть - NodeJS и какой-то SQL.
Со всего этого собираешь какое-то веб приложение (погугли идеи) и дуй на собесы в разные конторы. Если есть стажировка - это очень хорошо, особенно если она оплачивается. Рекомендую начать именно с нее, чтобы набраться более менее реального опыта.
Как вариант еще можно Java + Spring Framework или C# + ASP.NET Core (для веб разработки) или С# + WPF (для десктопной).
Эти тоже довольно востребованы сейчас (по крайней мере в Украине). Но как правило они (кроме С# + WPF) тоже подразумевают знания фронт-энда (JS + Angular/Vue/React).
И вот еще один мой ответ другому реакторчанину на похожий вопрос: http://joyreactor.cc/post/4542345#comment21620017
Главное помни, что надо ебашить много, как и везде, иначе дела не будет.
ЗЫ. Раст - один из самых няшных языков, что я знаю.
Но возможно я и преувеличил. Сам я тоже с паскалей и сишок начинал. Но лишь потому, что таковой была учебная программа в универе. А универ, кроме языков программирования еще дает хорошую базу в виде архитектуры компьютера, мат.логики и ПТЦА, алгоритмов и структур данных. В куче с этим всем, изучениее Паскаля, С и С++ становится более понятным.
Человеку же, который в душе не ебет, что такое программирование, как все устроено на уровне железяк и тд прийдется ооочень много учить чтобы понимать что такое плюсы и зачем все устроено именно так. Раст в этом плане чуть проще. Но у него есть тоже много нюансов, которые человеку, который с программированием не сталкивался (особенно с программированием С/С++), будет трудно понять.
Потому, я и не советовал ТС начинать с них, если он, еще раз, хочет ПРОСТОЙ способ изучить программирование и БЫСТРО найти работу.
И это не значит что эти языки дно, там тоже есть свои супер серьёзные заморочки. Просто начать хоть что-то делать на них будет немного проще.
А так основное это не знание языка, а умение заниматься проектированием, и понимания алгоритмов, за это программистом такие деньги платят.
И да, тебе либо прям зайдёт и понравится, либо это будет скука дикая, и ты это быстро бросишь
Хочешь «проветрить мозги» — ищи на хабре рейтинги «любимых языков» — они не просто так любимые сообществом и будь готов пробовать несколько языков, что-то индивидуально приглянётся; хочешь зарабатывать — смотри вакансии в своём городе, причём те, где требуют минимум опыта.
Почему-то все думают, что как только ты сможешь написать хелловорлд без подглядывания в доки - тебя сразу же начинают ждать абсолютно все эйчары, чтобы предложить зарплату 300кк в наносекунду. Увы, это так не работает. Чтобы в итоге найти работу, нужно будет выучить и узнать еще дохуя всего - от фреймворков до теоретических знаний в сфере, в которой будешь работать. А ЯП - это лишь один из инструментов, зачастую далеко не самый сложный.
веб - JS, HTML+CSS вдогонку
обработка данных, нейронные сети, автоматизация - Python
геймдев - C++ либо C#, если под Unity
мобилки - Kotlin (уже несколько лет успешно заменяет Java) либо Swift, если пользуешься Apple
Литература: в достаточном количестве имеется на все перечисленные ЯП
Размять мозги: зависит от задачи
Порядок обучения: от низкого уровня (C -> C++) к высокому (Python, JS)
Нет, от изучения нескольких языков с одной (императивной) парадигмой по времени ничего не теряешь, в целом концепции одни и те же.
Удачи.
Если хочешь именно мозг размять, то лучше смотреть на необычные языками с разными прикольными концепциям. Например, если в ФП ударяться, Haskell, если менее хардкор - Rust.
ЗЫ. Высокие средние ЗП на питоне - следствие засилия машин лернинга, и там знания питона не хватит.