Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Какой язык программирования лучше выбрать начинающему?

В веб разработке начинающему легче будет освоиться?
Программирование+3
Анонимный вопрос
  ·   · 23,7 K
Python Developer, VK Feed Expert, AI Operator.  · 2 июн 2022
Безусловным лидером является Python, названия язык получил не в честь животного. Когда создатель давал ему название он смотрел комедийную передачу Монти Пайтона, отсюда и название(Всё, что я запомнил из книги про пайтон). Не буду козырять крутыми терминами из википедии и опишу попроще. Пайтон это:
  • Динамическая типизация Пайтон сам назчает необходимый тип перменной. Удобно при разработке
  • В случае необходимости пайтон сам изменяет тип переменной. Удобно при разработке
  • Ооочень простой синтаксис. Это и плюс и минус, с одной стороны максимально простой синтаксис, с другой может усложнить чтение кода.
  • Обилие встроенных функций
  • Очень много готовых библиотек и фреймворков. Язык простой, сообщество огромное. Почти на любой вопрос можно найти ответ на тостере или стековерфлоу
  • Есть фреймворк(Django) и для веб разработки. Поэтому зная пайтон вы можете очень быстро написать качественное веб-приложение.
  • Легко найти работу
  • Можно изучать как первый ЯП
Веб-разработка: JS
  • Динамическая типизация(та же хрень, что и у пайтона)
  • Есть расширения языка(Typescript), который в случае необходимости, позволяет строго типизировать данные.
  • На JS можно написать что угодно. Фронтент, Бэкенд(nodejs) и даже десктоп(electron).
  • Простой синтаксис, воистинну безграничные возможности. Хотите писать в ооп стиле - пишите. А может функциональный - без проблем.
  • Самый популярный ЯП на данный момент. Огроменное сообщество, тонны библиотек. Его активно развивают такие гиганты как facebook, google. Ни один сайт сейчас не работает без js. Отлючите js и зайдите на лолз. На любой вопрос есть решения на любом языке.
  • Хорошая документация библиотек. Частично переведен реакт. У вью js есть русскоязычная документация. Да, это хороший аргумент ибо сейчас везде пишут на фреймворках.
  • Немнго про electron. Это библиотека для JS, которая позволяет вам создавать кроссплатформенные приложения на пк. На ней сделана:visual studio code, avocode. На оф. сайте больше инфы.
  • NODEJS. Ну как я могу не вспомнить своего любимчика, консольные приложения, серверные приложения. Абсолютно любой каприз. В пакетном менеджере множество готовых библиотек. Можно очень быстро развернуть качественное приложения, написав минимум кода. Вообще про ноду надо рассказывать отдельно, ибо это слишком всеобъемлющий инструмент, чтобы описать его в паре предложений.
  • С работой Не так однозначно, с одной стороны вакансий много, но и конкуренция огромная. Но точно не пропадете.
  • Можно изучать как первый ЯП
PHP: Я хейтер данного ЯП(незаслуженно), поэтому просто процитирую мастера. Если у вас сломался стол, вы можете купить инстрмент, закончить столярские курсы(nodejs) и починить стол. Но если у вас вечерника и вам нужно починить стол за пару часов вы покупаете скотч(php) и чините стол. ЯП вполне рабочий, первая версия фейсбука была написана на нём.
  • Огромное сообщество
  • Простота
  • Высокая скорость разработки(быстрее чем на nodejs)
  • Есть некоторые косяки, но в реальной разработке вы скорее всего их не встретите.
  • Конечно не так много фреймворков как на JS, но парочка достойных будет(например yii)
  • С работой Не так однозначно, с одной стороны вакансий много, но и конкуренция огромная. Но точно не пропадете.
  • Можно изучать как первый ЯП
PYTHONО фреймворке DJanjo я написал выше. Зная python вы без труда сможете построить неплое веб-приложение.Дополнительно:Конечно веб-разработка, это не только язык, помимо этого еще тонны информации и библиотек с которыми вы непременно будете иметь дело.
Хочу писать под андроид: Здесь конечно мои знания слабоваты. Я 2 года изучал jav-у(java) в колледже по курсу Oracle. Да извините, под андроид пишут на джаве. Я в курсе, можно написать приложение и без знаний джавы с помощью html(это не рофл), но это будет просто набор веб-страниц завернутый в апк. И про различные библиотеки C++ и подобное слышал. Анивей java здесь маст хев.
Итак Java
  • Только ООП разработка, без классов и пакетов здесь ничего не живет. Соотвественно лучше бы понимать, сущность классов методов(есть разница между методом и функцией). Здесь придется знакомится с конструкторами и деструкторами, абстракциями. Это конечно может быть и JS или пайтон, но в JAVA - это неотъемлемая часть языка. И хотите вы этого или нет знать это надо.
  • Только строгая типизация. Сложнее, но больше контроля памяти.
  • Кроссплатформенность. Т. к. код javы выполняется на виртуальной машине java вам не нужно думать об переносимости(в отличии от C)
  • Нужно знать "что под капотом". Хоть в java есть автоматический сборщик мусора, надо знать как он работает и "намекать" ему, когда стоит очистить память.
  • Сторогость языка может быть и плюсом, если в js глаза разбегаются от изобилия стилей кодинга, то здесь всё более однозначно и декларативно.
  • Это отец ооп, поэтому "из коробки" идут 1000-чи библиотек, функциональности которых хватит для любых задач.
  • Можно изучать как первый ЯП
  • Насчет разработки для десктопа не знаю, но мобильным разработчиком, особенно в крупном городе можно устроиться без проблем.
Хочу писать софт для пк: дедуля С
  • Бесспорно вечная классика
  • Кроссплатформенность. Оййййййй, это вам не джава или пайтон. Здесь нет закулисной магии, надо вгрызаться в реализации разных компиляторов, пробовать потом снова пробовать, гореть. Дать есть проекты, которые забирают на себя эту работу, но в этих проеках тоже нужно разбираться. Что я хочу сказать? В си нельзя поставить где-то галочку или написать пару строчек для решения проблемы, здесь надо тяжко ебашить.
  • Конечно это и плюс. Вы получаете огромный контроль над системой, вы сами управляете памятью(но это значит, что вы должны ее вовремя очищать, иначе будет синдром хрома), вы можете делать ассемблерные вставки и напрямую управлять регистрами процессора, напрямую обращаться к системным вызовам. Большая сила - большая отвественность
  • На С можно сделать все, абсолютно. Некоторые кодеры пишут ООП на С( на фукнциональном языке, который для этого не предназначен).
  • Главное, что нужно понять: Если вы хорошо знаете С, то любой ЯП будет вам по силам. НО чтобы действительно хорошо знать С, надо очень очень много трудиться. Вы ничего не будете понимать и это чувство будет становиться сильнее по мере изучения. Если вы уверены в своих силах - начинайте. Но подумайте хватит ли вас чтобы дойти до конца.
  • Это очень быстрый язык, на нем пишут операционки и игровые движки(обычные приложения на С писать невыгодно), а для этого надо знать еще больше. Исходя из этого работу вы так просто не найдете.
  • Хорошо подумайте прежде чем выбирать этот язык в качестве первого
C++ - примеными почты все пункты из Си. ++ появлися раньше c#, крупные игровые студии привыкли к нему, поэтому найти работу может быть чуть проще(при условии, что вы специалист).
Не вижу смысла расписывать более подробно т. к. если вы решили выбрать одного из этих красавцев, вы должны привыкать гуглить. Есть крупный игровой движок(unreal engine), который значительно упростит разработку игр.
С# или С++?
  • По заявлениям майкрософт C# - это джава из который выбросили все лишнее(нет)
  • Кроссплатформенность. Здесь конечно дела попроще чем отца и деда, но как по мне у джавки приятнее будет.
  • Ощущаеться привязанность к microsoft и их стаффу
  • Писать намного проще и удобнее чем на предках
  • Он очень похож на java
  • Т.к на вас лежит меньше ответственности, вы будете совершать меньше ошибок
  • Подходит для большинства игр
  • Можно писать игры под Unity, очень низкий порог входа, даже школьники делают неплохие проекты.
  • Можно писать и бекэнд, но там такая дрочь
  • Хотите писать игры - однозначно берите этот язык.
  • Для разработки настольных приложений я бы выбрал java.
  • Работу найти можно
А по какому рейтингу/исследованию python является безусловным лидером для начинающих? Я такого утверждения нигде... Читать дальше
Дэйта сайенс, преподавания, популяризация науки.   · 2 июн 2022
Веб-разработка - это достаточно сложно. Даже в самом начале эпохи "веб 1.0" разработчикам надо было знать несколько языков и технологий, уметь работать с СУБД, понимать основы используемых сетевых протоколов, заботиться о... Читать далее
3 эксперта согласны
только Python Язык программирования Высокоуровневый язык программирования общего назначения с динамической строгой... Читать дальше
Диванный философ, по совместительству инженер  · 31 мая 2022
Вы написали очень правильный на мой взгляд комментарий - сначала выбираем первую отрасль разработки (например Веб-разработка) а потом язык. Хотя есть и тоже неплохой альтернативный вариант - начать с классики например C++ или... Читать далее
1 эксперт согласен
Ну прям очень подробно, очень обстоятельно
Математик и программист Python.  · 15 июл 2022
Если вы совсем новичок в программировании, в веб-разработку лучше не залезать.  Сначала можно изучить Python, простой и высокоуровневый язык. Он отлично подходит для новичков. Потом можно изучить JavaScript, в веб-разработке он... Читать далее
Разработка высоконагруженных систем. Опыт 15+   · 9 июн 2022  · progolang.zenclass.ru
Здравствуйте! В вашем случае нужно изучать сразу 3 языка технологии: 1. Html - потребуется для верстки сайтов.  2. Css - нужен для того, чтобы ваш сайт не был "квадратным" и "серым" 3. JavaScript - это язык программирования... Читать далее
Согласен, что скриптовые веб-технологии самые простые для освоения после шел-скриптов, однако: HTML — это язык... Читать дальше
Лингвист, преподаватель ин. яз., специалист ИТ, из...  · 4 мая 2023
Однозначно ответить на такой вопрос нельзя в силу его неопределённости, поскольку всё относительно. Исходя из своего опыта могу рекомендовать Вам начать с написания командных файлов типа .bat/.sh. Там небольшой основной набор... Читать далее