Градация языков программирования по сложности

Какой самый сложный и самый легкий языки программирования?

Самый сложный язык программирования это тот который используется для неподходящих для него задач. Трудно написать на Java Script драйвер видеокарты а на ассемблере — Веб-фронтэнд.

На втором месте редкая экзотика по которой нет не документации не обобщенного опыта работы вроде паттернов. Обычно это языки созданные для одной задачи и встроенные в задолго до тебя разработанную систему. Связь с предыдущими разработчиками которой утрачена.

Если есть желание увидеть конкретные названия — язык кодов процессора и намного чаще применяемая его мнемоническая запись ассемблер. НО. Тут сложность не в самом языке. А в том что для разработки на нем надо знать гораздо больше чем на языке высокого уровня. А именно архитектуру процессора для которого собственно пишем. Ситуацию также не упрощает то что архитектуры у разных процессоров разные а соответственно разные и ассемблеры. Вообще ассемблер это собирательное название группы языков. Можно знать C++ но нельзя знать «ассемблер вообще». А еще в чрезвычайно большой трудоемкости разработки на нем. Сотни строк для того что в языке высокого уровня записывается одной строкой. Проще говоря ассемблер рассчитан на то чтобы с максимальной эффективностью выполняться процессором. Удобство программиста здесь в расчет не берется.

А с языками высокого уровня существует «естественный отбор». Сложные неудобные языки просто напросто быстро уходят. Например мне трудно давался Пролог когда его изучали в ВУЗе. Ну так сейчас на нем не то чтобы кто-то пишет. Мало того лично я и не слышал чтобы в профессиональной среде его вспоминали. Как постоянно вспоминают комфортный но проигравший конкуренцию Паскаль. Или с устаревшей парадигмой тем не менее в свое время удобный для математических расчетов Фортран.

Читайте также:  Лабораторные работы функциональное программирование

Высшее, СПбГУ ’86, Спорт всю жизнь. Мое тренировочное приложение 💥 для Андроид 👉 · 15 февр 2021 · vk.cc/c5RMsB

это языки с программированием на стеке — например ассемблер мат. сопроцессора х86. Или в ранних версиях Эльбруса. Вместо плоской памяти и набора ячеек у вас стек и это настолько отличается от обычного логики человека что програмить это чрезвычайно трудно. А вот для компилятора это даже удобно и хорошо оптимизируется. CREATE DUP , 0 ?DO DUP C@ C, CHAR+ LOOP DROP 0. Читать далее

Если мы ищем языки, которые могут изучать даже дети, то подойдут Scratch или Logo. Если речь о взрослых, то, во-первых, вы тоже можете начать с указанных языков — будет полезно и весело! А во-вторых, однозначного рейтинга языков по уровню сложности просто нет, поэтому всё относительно. К условно лёгким можно отнести Pascal, хотя он подходит для решения далеко не всех. Читать далее

Это в высшей мере субъективно. Например, язык Prolog — довольно лёгкий язык для людей, не имевших до этого опыта с императивными языками программирования. Но он крайне сложно даётся обычно людям с обширным бэкграундом на C, C++, Java и другим подобным языкам. Scheme по идее должен быть одним из самых простых языков, его даже в MIT в качестве единственного принимают, на. Читать далее

Такого понятия, как самый сложный или легкий язык не существует. Есть такой критерий, как порог вхождения. Он зависит от многих факторов, но в основном это синтаксис. По сути, он определяет, насколько сложно человеку без опыта начать изучать этот язык. Среди языков высокого порога вхождения можно выделить: C++, Assembler и т.д., Среди низкого порога: C#, Java, Python. Читать далее

Ага, жабоскрипт можно понять практически без опыта, ага. 🙂 Хороший вброс, поржал. 🙂

Всё зависит от человека — может быть, вам легко даётся какой-то язык, а мне не очень. Но в среднем — самых простых языков два — Python и JavaScript (если не считать Small Basic, который используется только для обучения программированию). Чуть посложнее будет Visual Basic. А самый сложный язык (в среднем) — это C++. Я его сейчас изучаю, и знаете, не очень-то это. Читать далее

Самый лёгкий для нас, пожалуй 1С. Просто потому, что он на нашем языке. Для англоязычных это был бы Visual Basic, который и прозвали языком домохозяек.

Самый сложный, я считаю, brainfuck и подобные экзотические языки. Как и в случае с самыми лёгкими эти языки наоборот, очень трудно читать.

Относительно сложных языков программирования отдельно можно выделить эзотерические, которые зачастую сделаны для усложнения написания программ, хотя многие при этом сохраняют «полноту по Тьюрингу», т.е. могут быть использованы для решения реальных программистских задач. К примеру, достаточно известный Brainfuck, имеющий 8 команд, описываемых различными символами, тьюринг. Читать далее

Юсуп, тот факт, что Assembler — низкоуровневый язык программирования не делает его изучение легче (ИМХО, даже наоборот), сложность изучения конкретного языка программирования мало от этого зависит. Изучение скорее зависит от таких факторов, как знание иностранных языков (людям, которые знают английский легче изучать С#, Java), наличия некоторой базы (например, человеку. Читать далее

Антон, Вы допустили неточность: ассемблер — язык низкого уровня. И наоборот — все другие перечисленные Вами языки — высокоуровневые. Что касается сложности/простоты — все зависит от человека и задач, которые он собирается решать. До какого-то предела сложности одну задачу можно решить на нескольких языках почти одинаково (если эти языки хоть немного схожи меж собой). Читать далее

Наверное, самый лучший ответ

Если не брать эзотерические вроде HQ9+, то есть много учебных языков, которые специально сделаны лёгкими в освоении — Бэйсик, Лого. С их помощью можно легко изучить программирование, но серьёзные программы на них не напишешь. Среди промышленных, на мой взгляд, самые лёгкие — Racket, Python.

Если вы инженер и знаете электронику, то я бы сказал, что Си — один из самых простых языков для начала. Ну или как говорят easy to learn, hard to master (легко выучить, трудно мастерски владеть). Набор ключевых слов так же мал как и в каком-нибудь Python. Вы целиком управляете памятью, так что придётся осознать какие в принципе бывают виды памяти. Переполнения при арифметических вычислениях — про это любой инженер-электронщик и так в курсе.

Вообще понятие сложности для всех разное, для кого то и scratch сложный. А вообще, самый сложный язык тот, который ты не понимаешь и не хочешь понять.

Если отвечать именно в такой формулировке, то нет «лучшего языка программирования», ибо каждый язык лучший в той задаче, для которой он хорошо подходит.

А самый лёгкий — Scratch. Он специально создавался для обучения детей, и для работы с ним даже не обязательно уметь читать.

Для людей с математическим складом ума простым окажется Паскаль т.к. он построен по очень четко и компактно сформулированным правилам. Всего 30 синтаксических конструкций.

Для людей не склонных к математике проще могут оказаться интерпретаторы и скриптовые языки вроде Бейсика. Результат можно наблюдать после каждой введенной строчки кода.

Одним из самых простых и наглядных языков был Аналитик, разработанный для ЭВМ МИР-2. Его современными аналогами являются математические пакеты типа Маткад и Матлаб.

Python.
Возьмите любую из сотен книг по такой довольно сложной теме как машинное обучение. На манер известного анекдота они начинаются примерно так: «возьмите keras, pandas и numpy. Вот этой функцией загрузите данные, этой обработайте, и передайте вон той, что выведет красивый график».
Видите как просто?
Более того, там неимоверная тонна синтаксического сахара. Pyton буквально карамелизирован. Чего стоит только выборка с конца массива в начало, для чего в других языках функции городить приходится, а тут просто взял и написал «arr[-1:]» и всё.
Добавьте к этому ещё отсутствие строгой типизации и вы получите язык мечты. . поколения зуммеров.

Одним из самых сложных языков программирования считается Malbolge (https://ru.wikipedia.org/wiki/Malbolge).

Язык разработан с целью быть максимально сложным для написания программ. Получил своё название от Malebolge, восьмого круга ада Данте.

Довольно трудно выделить один конкретный язык, так как под классификацию «самый сложный» попадают многие языки класса «Эзотерические», которые в большенстве своём являются пародией на другие языки или являются шуткой.

Самый известный язык из этого класса называются Brainfuck, а под самым сложным можно выделить Malbolge, который был создан специально для максимального усложнения написания кода. Такие языки даже имеют свою собственный подкласс с названием «Чёрный ящик»

Самый лёгкий язык программирования, это C. По крайней мере один из самых лёгких. Однако, это не значит, что на нём легко писать программы.

Самыми сложными с точки зрения того, какие операции они позволяют делать, являются языки высокого уровня. На данный момент их 3: С++, Java и С#. Любители Apple скажут, что есть ещё Objective C, но он есть только для iOS.

Исторически С++ появился раньше всех. Код, написанный на С++, можно скомпилировать в любой операционной системе. Однако С++ не обладает большой частью функциональности, реализованной в Java и C#, плюс, с точки зрения программиста на последних двух языках, его «синтаксис» подчас чересчур громоздок и во многом устарел. Существуют различные расширения С++, типа Qt, которые пытаются устранить этот разрыв, но у этих расширений не очень-то получается.

Одна из причин, по которой С++ сохраняет свою популярность, заключается в том, что в С++ нет так называемого «сборщика мусора» — программы, автоматически чистящей память от неиспользуемых объектов. Это ставят С++ в преимущество, потому что программист получает ручной контроль за памятью. Поэтому С++ любят использовать для тех процессов, где расход памяти кажется настолько критическим, что автоматический сбор мусора не кажется вариантом. На деле, сборщики мусора в Java и С# заметно продвинулись со времён первых версий. Так что преимущество становится всё более сомнительным, особенно на фоне того, что а) для каждого объекта в С++ приходится писать дополнительный код деструктора, освобождающего память, б) не уничтоженные вовремя объекты — постоянные источник трудно отлавливаемых багов, в) в Java и C# есть методы, позволяющие прямо указать, что объект должен быть удалён в конкретном месте.

Java более проста в своём синтаксисе, чем С++, на Java написано куча программ для интернета вещей. Как и С++, Java изначально была многоплатформенной. Тем не менее, большая часть функциональности, которая есть в С#, на Java реализуется внешними пакетами, поддерживаемыми полутора программистами и потенциально рискующими конфликтовать друг с другом. Плюс, синтаксис Java кажется мне всё-таки более громоздким, чем у C#.

Как вы уже поняли, моим фаворитом был, есть, и вот уже 17 лет остаётся C#. Это язык с наиболее чистым синтаксисом, позволяющий изящно писать программы. Вся та функциональность, которая в Java достигается встраиваемыми пакетами, в С# уже есть. Плюс, пакеты туда тоже можно встраивать.

Многие программисты любят не любить C#, и связано это с его историей. C# — детище Microsoft, а Microsoft в целом имел имидж жёсткого копираста. Изначально на C# программы можно было писать только под Windows, что ограничивало его применимость по сравнению с Java. Плюс, единственным редактором, в котором можно было писать на C#, долгое время оставался Visual Studio.

Тем временем, всё это давно уже изменилось. Майкрософт стал распространять многие свои приложения бесплатно — в частности, есть бесплатная версия Visual Studio, по функциональности мало отличающаяся от платной. Xamarin сделал программы, написанные на C#, конвертируемыми в другие операционные системы. Наконец, появились и другие редакторы C# и вообще среды .NET, к примеру Rider.

Кроме того, C# выгодно отличается от Java тем, что прошёл ISO-стандартизацию.

В общем, для большого, сложного проекта, который делает устоявшаяся фирма, я бы всячески рекомендовал С#.

Источник

Оцените статью