Меня часто спрашивают: «Какой язык программирования нужно знать?» Этот вопрос неверный. Профессиональному программисту одного языка программирования точно не хватит. Их надо знать несколько. Поэтому правильный вопрос: «С какого языка начать?» На этот вопрос ответить очень легко, потому что в качестве языка для начинающих сейчас остался только один.
Лет тридцать назад в качестве языка для начинающих фигурировало несколько языков:
- Фортран (я сам с него начинал)
- Бейсик (любимый язык Билла Гейтса)
- Паскаль (любимый язык студентов, в нем мало правил и нет исключений)
Кроме того, в разное время для новичков рекомендовались такие экзотические языки как: Пролог, Лисп и Ада.
Что же мы имеем сейчас? Несмотря на то, что были разработаны сотни языков программирования, есть устойчивая тенденция к сокращению числа используемых языков. Случился естественный отбор. Выжили те языки, которые максимально приближены к используемым технологиям. Более того, как только уходит технология, то вместе с ней и пропадает интерес к языку.
Пишим программу для определения IP. И КОМПИЛИРУЕМ ДЛЯ WINDOWS
Например, как только пропал интерес к экспертным системам, так тут же пропал интерес и к языку Пролог. И наоборот, сейчас в качестве основной технологии автоматизации бухучета является программный комплекс 1С. Поэтому программисты для 1С весьма востребованы.
Сейчас есть несколько популярных технологий и для каждой технологии есть всего два-три языка, которыми пользуется большинство. Чуть позже мы их рассмотрим, но сначала ответим на главный вопрос: с какого же языка нужно начать?
Это вопрос серьезный, потому что изучение языка — весьма трудоемкое дело. Обидно, если усилия будут потрачены впустую. Гораздо лучше так спланировать процесс обучения программированию, чтобы одновременно и стать востребованным специалистом, и быть уверенным в том, что знания не устареют через несколько лет.
Я уже писал о рейтинге языков программирования. В разных рейтингах лидеры разные, но в первой пятерке неизменно оказываются: Java, C, Python, C++, C#.
С какого же начать? Выбор очевиден — это язык Си. Почему?
1. Си — это универсальный язык
Язык Си создавался практиками. Их не очень интересовало, как красиво и правильно выстроить модель языка. Их интересовал только результат. Поэтому на языке Си можно написать все, что угодно. Как следствие, в языке Си много исключений и нестыковок.
Именно поэтому университетский профессор Никлаус Вирт решил разработать язык Паскаль, в котором нет никаких исключений и все очень логично.
Паскаль — этот отличный язык. Но только в теории. А на практике программисту приходится сталкиваться с такими задачами, что предусмотреть все нельзя. Поэтому в язык Си добавлялись все новые и новые возможности. Сейчас на языке Си можно закодить все: от программ для встроенных систем до софта для суперкомпьютеров.
Таким, образом, если вы знаете язык Си, то ваши возможности как программиста ничем не ограничены. Практически для всех платформ существуют компиляторы языка Си. Садись и работай.
ABLETON LIVE ПОНЯТНЫМ ЯЗЫКОМ ДЛЯ НОВИЧКОВ
2. На языке Си написаны большинство операционных систем
Сам язык Си был разработан для операционной системы UNIX. Позднее на языке Си были написаны операционные системы Windows, Linux и Mac OS.
На ядре UNIX работает почти весь Интернет. Веб-серверы также написаны на языке C.
Все это говорит о том, что знание языка Си в ближайшем будущем точно не устареет. Если вы знаете Си, то всегда сможете найти работу системного программиста.
3. На языке Си написаны большинство популярных языков программирования
Это очень интересная история. Много раз язык Си объявляли «устаревшим», а поэтому на базе него пытались создать что-то более грандиозное.
Другой университетский профессор — Бьёрн Страуструп написал язык C++. Но по факту получилось, что он только добавил в к языку Си так называемое объектно-ориентированное программирование (ООП). Заменить язык Си ему не удалось. Эти два языка стали развиваться параллельно.
Другую попытку сделал Брэд Кокс, который создал язык Objective-C. Затем на базе Objective-C был создан Swift. Этот язык используется в качестве основного языка программирования в корпорации Apple. Но опять же Swift написан на Си и может использовать, при необходимости, код на языке Си.
Следующей попыткой заменить Си стала компания Sun Microsystems. Она поставила задачу сделать язык программирования, похожий на C++, но при этом этот язык должен был стать универсальным. Так появился язык Java. Он предназначен для работы на виртуальной Java-машине. Главный недостаток этого языка в том, что он существенно медленнее языка Си.
В ответ на технологию Java компания Microsoft запустила свою собственную технологию .NET и разработала для нее язык C#.
Как видите, все эти языки и находятся сейчас в топе рейтингов языков программирования.
Но они все используют ядро чистого Си. Поэтому как только вы выучите Си, то вы уже наполовину выучили C++, C#, Objective-C, Swift и Java.
Также на языке Си написаны популярные языки PHP, Javascript и Python. То есть лучший старт для изучения всех популярных языков — это сначала выучить язык Си.
4. Для языка Си существует множество материалов
В силу популярности языка Си для него написаны горы документации: книги, статьи, обучающие курсы, исходные тексты.
Для языка Си написаны множество библиотек, редакторов, компиляторов, отладчиков, профайлеров.
Вы можете с легкостью найти исходные тексты с примерами.
Все это значит, что никаких проблем с изучением Си у вас не будет. Что нельзя сказать о новых и модных языках.
5. Какие еще языки нужно знать программисту?
Как я сказал вначале, современное программирование крутится вокруг определенных технологий. Рассмотрим наиболее популярные.
Если вы пишете прикладные программы, то с большой вероятностью вам нужно будет получать информации из базы данных. Поэтому вам нужно знать язык запросов SQL.
Если вы пишете для Интернета, то вам будут нужны знания языков разметки, а также серверных и клиентских языков.
Языки разметки: HTML, XML, CSS.
Серверные языки: PHP, Java, C#, Python.
Клиентские языки: Javascript, VBScript, ActionScript (хотя последние два уже устаревают).
Для разработки мобильных приложений используются: HTML5, Java, Swift.
Источник: progtips.ru
Какой язык программирования самый легкий в обучение?
В курсе (и книге) Structure and Interpretation of Computer Programs на изучение непосредственно языка Scheme тратится два занятия (первых), в сумме два часа одиннадцать минут. Всё остальное время мы учимся решать задачи на этом языке. Мне больше неизвестны реально используемые на продакшене языки программирования, абсолютно все языковые концепции которых можно было бы объяснить за два часа живой лекции. Возможно, Clojure или EMACS Lisp, но они тоже оба лиспы.
Пишу код и записываю подкаст · 22 янв 2022 · dreamsorder.simplecast.com
Если вы инженер и знаете электронику, то я бы сказал, что Си — один из самых простых языков для начала. Ну или как говорят easy to learn, hard to master (легко выучить, трудно мастерски владеть). Набор ключевых слов так же мал как и в каком-нибудь Python. Вы целиком управляете памятью, так что придётся осознать какие в принципе бывают виды памяти. Переполнения при арифме. Читать далее
«Порядок снов» в Телеграме
По образованию физик, работаю программистом · 16 янв 2022
Конечно, Python. Один из самых лёгких и популярных к тому же.
1 эксперт согласен
подтверждает
скорее «да», чем «нет»
Увлекаюсь математическими проблемами. · 17 янв 2022
Лучше сразу с python начинать. Я, как и многие, начинал с HTML, CSS, JS и сильно увяз, как в болоте. Затем начал перебирать PHP, JAVA, C#. Но когда попробовал изучать python, то я почувствовал лёгкость и мой бег по языкам прекратился. Этот язык популярен в различных современных направлениях. В первое время мне не нравилось в нем отсутствие скобок в теле функций, к. Читать далее
1 эксперт согласен
подтверждает
Ответ заслуживает внимания однозначно, но он однобок.
Администрирую и программирую(Java) · 1 февр 2022
Python. Возьмите любую из сотен книг по такой довольно сложной теме как машинное обучение. На манер известного анекдота они начинаются примерно так: «возьмите keras, pandas и numpy. Вот этой функцией загрузите данные, этой обработайте, и передайте вон той, что выведет красивый график». Видите как просто?
Более того, там неимоверная тонна синтаксического сахара. Pyton. Читать далее
1 эксперт согласен
подтверждает
В целом да. но увы и нет — тут важно понимать что python, к слову не самый легкий в изучении язык, но самый распр. Читать дальше
Ответы на похожие вопросы
программист · 12 нояб 2021
Если не брать эзотерические вроде HQ9+, то есть много учебных языков, которые специально сделаны лёгкими в освоении — Бэйсик, Лого. С их помощью можно легко изучить программирование, но серьёзные программы на них не напишешь. Среди промышленных, на мой взгляд, самые лёгкие — Racket, Python.
1 эксперт согласен
Программист C++ · 4 нояб 2021
Вообще понятие сложности для всех разное, для кого то и scratch сложный. А вообще, самый сложный язык тот, который ты не понимаешь и не хочешь понять.
Погромист на C# · 20 янв 2022
Если отвечать именно в такой формулировке, то нет «лучшего языка программирования», ибо каждый язык лучший в той задаче, для которой он хорошо подходит.
А самый лёгкий — Scratch. Он специально создавался для обучения детей, и для работы с ним даже не обязательно уметь читать.
Научные заметки о жизни: zen.yandex.ru/id/5c43498395753900ac66852d · 25 нояб 2021
Очень непростой вопрос. Для разных людей это будут разные языки.
Для людей с математическим складом ума простым окажется Паскаль т.к. он построен по очень четко и компактно сформулированным правилам. Всего 30 синтаксических конструкций.
Для людей не склонных к математике проще могут оказаться интерпретаторы и скриптовые языки вроде Бейсика. Результат можно наблюдать после каждой введенной строчки кода.
Встречал людей, для которых наиболее естественными были функциональные языки. Или декларативные.
Одним из самых простых и наглядных языков был Аналитик, разработанный для ЭВМ МИР-2. Его современными аналогами являются математические пакеты типа Маткад и Матлаб.
2 эксперта согласны
Диванный философ, по совместительству инженер · 30 дек 2021
Самый сложный язык программирования это тот который используется для неподходящих для него задач. Трудно написать на Java Script драйвер видеокарты а на ассемблере — Веб-фронтэнд.
На втором месте редкая экзотика по которой нет не документации не обобщенного опыта работы вроде паттернов. Обычно это языки созданные для одной задачи и встроенные в задолго до тебя разработанную систему. Связь с предыдущими разработчиками которой утрачена.
Если есть желание увидеть конкретные названия — язык кодов процессора и намного чаще применяемая его мнемоническая запись ассемблер. НО. Тут сложность не в самом языке. А в том что для разработки на нем надо знать гораздо больше чем на языке высокого уровня. А именно архитектуру процессора для которого собственно пишем.
Ситуацию также не упрощает то что архитектуры у разных процессоров разные а соответственно разные и ассемблеры. Вообще ассемблер это собирательное название группы языков. Можно знать C++ но нельзя знать «ассемблер вообще». А еще в чрезвычайно большой трудоемкости разработки на нем. Сотни строк для того что в языке высокого уровня записывается одной строкой.
Проще говоря ассемблер рассчитан на то чтобы с максимальной эффективностью выполняться процессором. Удобство программиста здесь в расчет не берется.
А с языками высокого уровня существует «естественный отбор». Сложные неудобные языки просто напросто быстро уходят. Например мне трудно давался Пролог когда его изучали в ВУЗе. Ну так сейчас на нем не то чтобы кто-то пишет. Мало того лично я и не слышал чтобы в профессиональной среде его вспоминали. Как постоянно вспоминают комфортный но проигравший конкуренцию Паскаль.
Или с устаревшей парадигмой тем не менее в свое время удобный для математических расчетов Фортран.
Высшее, СПбГУ ’86, Спорт всю жизнь. Мое тренировочное приложение для Андроид · 15 февр 2021 · vk.cc/c5RMsB
это языки с программированием на стеке — например ассемблер мат. сопроцессора х86. Или в ранних версиях Эльбруса. Вместо плоской памяти и набора ячеек у вас стек и это настолько отличается от обычного логики человека что програмить это чрезвычайно трудно. А вот для компилятора это даже удобно и хорошо оптимизируется.
Источник: yandex.ru
Какой язык программирования выучить первым
Люди, которые решают связать свою жизнь с IT-сферой часто задаются вопросом, какой язык программирования выучить первым? Ответ вроде бы простой – нужно начинать с самого лёгкого и постепенно переходить к более сложному. Но на деле не всё так, поскольку простота языка – не самый главный критерий при его изучении.
Как начать изучать программирование
С какого языка начать изучение программирования
Статистика: использование, востребованность и перспективы
Подведём итоги