Языки программирования и первые свидания

Содержание

Языки программирования понятие и виды (стр. 1 из 4)

1. Введение

Внедрение ЭВМ во все сферы человеческой деятельности требует от специалистов разного профиля овладения навыками использования вычислительной техники. Повышается уровень подготовки студентов вузов, которые уже с первых курсов приобщаются к использованию ЭВМ и простейших численных методов, не говоря уже о том, что при выполнении курсовых и дипломных проектов применение вычислительной техники становится нормой в подавляющем большинстве вузов.

Вычислительная техника используется сейчас не только в инженерных расчетах и экономических науках, но и таких традиционно нематематических специальностях, как медицина, лингвистика, психология. В связи с этим можно констатировать, что применение ЭВМ приобрело массовый характер. Возникла многочисленная категория специалистов — пользователей ЭВМ, которым необходимы знания по применению ЭВМ в своей отрасли — навыки работы с уже имеющимся программным обеспечением, а так же создания своего собственного ПО, приспособленного для решения конкретной задачи. И здесь на помощь пользователю приходят описания языков программирования.

2. Что такое язык программирования

Язык программирования — формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например, компьютера). Язык программирования определяет набор лексических, синтаксических и семантических правил, используемых при составлении компьютерной программы. Он позволяет программисту точно определить то, на какие события будет реагировать компьютер, как будут храниться и передаваться данные, а также какие именно действия следует выполнять над этими при различных обстоятельствах.

Со времени создания первых программируемых машин человечество придумало уже более двух с половиной тысяч языков программирования. Каждый год их число пополняется новыми. Некоторыми языками умеет пользоваться только небольшое число их собственных разработчиков, другие становятся известны миллионам людей. Профессиональные программисты иногда применяют в своей работе более десятка разнообразных языков программирования.

Создатели языков по-разному толкуют понятие язык программирования . Среди общиx мест, признаваемых большинством разработчиков, находятся следующие:

· Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами.

· Задача: язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека компьютеру, в то время как естественные языки используются лишь для общения людей между собой. В принципе, можно обобщить определение «языков программирования» — это способ передачи команд, приказов, чёткого руководства к действию; тогда как человеческие языки служат также для обмена информацией.

· Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.

3. Этапы решения задачи на ЭВМ.

Наиболее эффективное применение ВТ нашла при проведении трудоемких расчетов в научных исследованиях и инженерных расчетах. При решении задачи на ЭВМ основная роль все-таки принадлежит человеку. Машина лишь выполняет его задания по разработанной программе. роль человека и машины легко уяснить, если процесс решения задачи разбить на перечисленные ниже этапы.

Постановка задачи. Этот этап заключается в содержательной (физической) постановке задачи и определении конечных решений.

Построение математической модели. Модель должна правильно (адекватно) описывать основные законы физического процесса. Построение или выбор математической модели из существующих требует глубокого понимания проблемы и знания соответствующих разделов математики.

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

Разработка алгоритма. Процесс решения задачи(вычислительный процесс) записывается в виде последовательности элементарных арифметических и логических операций, приводящей к конечному результату и называемой алгоритмом решения задачи.

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

Оладка программы. Составленная программа содержит разного рода ошибки, неточности, описки. Отладка включает контроль программы, диагностику (поиск и определение содержания) ошибок, и их устранение. Программа испытывается на решении контрольных (тестовых) задач для получения уверенности в достоверности результатов.

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

Анализ результатов. Результаты расчетов тщательно анализируются, оформляется научно-техническая документация.

4. Для чего нужны языки программирования

Процесс работы компьютера заключается в выполнении программы, то есть набора вполне определённых команд во вполне определённом порядке. Машинный вид команды, состоящий из нулей и единиц, указывает, какое именно действие должен выполнить центральный процессор. Значит, чтобы задать компьютеру последовательность действий, которые он должен выполнить, нужно задать последовательность двоичных кодов соответствующих команд. Программы в машинных кодах состоят из тысячи команд. Писать такие программы – занятие сложное и утомительное. Программист должен помнить комбинацию нулей и единиц двоичного кода каждой программы, а также двоичные коды адресов данных, используемых при её выполнении. Гораздо проще написать программу на каком-нибудь языке, более близком к естественному человеческому языку, а работу по переводу этой программы в машинные коды поручить компьютеру. Так возникли языки, предназначенные специально для написания программ, — языки программирования.

Имеется много различных языков программирования. Вообще-то для решения большинства задач можно использовать любой из них. Опытные программисты знают, какой язык лучше использовать для решения каждой конкретной задачи, так как каждый из языков имеет свои возможности, ориентацию на определённые типы задач, свой способ описания понятий и объектов, используемых при решении задач.

Всё множество языков программирования можно разделить на две группы: языки низкого уровня и языки высокого уровня.

К языкам низкого уровня относятся языки ассемблера (от англ. toassemble – собирать, компоновать). В языке ассемблера используются символьные обозначения команд, которые легко понятны и быстро запоминаются. Вместо последовательности двоичных кодов команд записываются их символьные обозначения, а вместо двоичных адресов данных, используемых при выполнении команды, — символьные имена этих данных, выбранные программистом. Иногда язык ассемблера называют мнемокодом или автокодом.

Большинство программистов пользуются для составления программ языками высокого уровня. Как и обычный человеческий язык, такой язык имеет свой алфавит – множество символов, используемых в языке. Из этих символов составляются так называемые ключевые слова языка. Каждое из ключевых слов выполняет свою функцию, так же как в привычном нам языке нам языке слова, составленные из букв алфавита данного языка, могут выполнять функции разных частей речи. Ключевые слова связываются друг с другом в предложения по определённым синтаксическим правилам языка. Каждое предложение определяет некоторую последовательность действий, которые должен выполнить компьютер.

Язык высокого уровня выполняет роль посредника между человеком и компьютером, позволяя человеку общаться с компьютером более привычным для человека способом. Часто такой язык помогает выбрать правильный метод решения задачи.

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

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

Один из самых популярных вопросов в нашем сообществе от начинающих программистов звучит так: «С какого языка мне начать?» Для ответа мы привлекли наших экспертов.

Иван Кухта , старший программист-разработчик ПО в компании Acronis

Все зависит от того, какую область вы выберете. Если вы хотите работать непосредственно с железом, писать драйверы и различные приложения, для которых требуется максимальная производительность, — тогда подойдут только C или C++. Если ваша цель — приложения для мобильников, стоит изучить Java или Objective C, C#. Для веб-серверов необходимы go, python и php; для веб-приложений — JavaScript.

Если же вы пока не определились с областью, можно смело выбирать C/C++, поскольку, зная этот язык, вы без труда выучите любой другой. Есть только одна вещь, которую важно помнить: как и разговорный язык, язык программирования забывается, если его постоянно не использовать, поэтому лучше владеть одним или двумя языками в совершенстве, чем поверхностно знать большое количество.

На мой взгляд, настоящий программист никогда не ограничивается знанием только одного языка. И даже если в будущем вы собираетесь писать драйвера и системные приложения, вам всё равно пригодится какой-нибудь из скриптовых языков, таких как perl или python. Более того, знание скриптовых языков сейчас просто необходимо для любого программиста, несмотря на его специализацию.

Алексей Камалетдинов , разработчик в «Ростелеком Контакт-центр»

Python вполне подойдет для изучения общих концепций программирования. Это очень популярный язык, у него много библиотек, синтаксис легко читаемый и довольно аккуратный код. Основными преимуществами Python для новичков является то, что он довольно распространен и его легко выучить. Вы с легкостью сможете на нем писать как web-приложения, так и обычные десктопные. В зависимости от предметной области, необходимо выбрать объектно-ориентированный язык. Например, если вы занимаемся системным программированием, то лучше всего подойдет С++. Если вы разрабатываете корпоративное приложение (информационные системы предприятий), то это С# или Java.

Стас Павлов , руководитель направления маркетинга для технических аудиторий в Microsoft Россия

Я в своё время начинал с Фортрана и Паскаля, так как они были у меня в институте. Потом был С/C++, Visual Basic Script, PHP и Visual Basic, потом C#, потом немного F#.

Если опираться на свой опыт и иметь возможность выбирать, наиболее комфортно мне было разрабатывать на С#, и с него бы я и начал. Больше всего в плане понимания алгоритмов и механизмов работы ОС, под которые я писал, дал мне C++.

Артём Кудзев , руководитель направления маркетинга технологий 2ГИС

На примере C++ и Java изучить основу основ ООП, а потом определиться в предметной области и изучить родной для неё язык.

Григорий Петров , технический евангелист VoxImplant

Полагаю, лучше всего начать обучение с JavaScript. Благодаря веб браузерам, этот язык программирования является стандартом де-факто при создании веб приложений, одной из самых быстрорастущих областей разработки. Также по нему есть великолепная бесплатная книга, «Eloquent JavaScript», переведенная на русский.

Борис Шестаков , руководитель группы разработки Java в AT Consulting

Все зависит от задачи, которую вы хотите решить. Однако если это ваш первый язык, я бы порекомендовал язык со строгой типизацией общего назначения (C++, Java, .NET): с ними в любом случае не пропадете и будет легко перейти на любой другой. Ещё интересный способ понять, какой язык взять для изучения – зайти на GitHub, ввести в поиск интересующую тему и посмотреть, на чем пишут другие разработчики.

Дмитрий Сошников , технологический евангелист Microsoft, доцент МФТИ, МАИ, преподаватель детского лагеря JUNIO-R

Здесь всё зависит от возраста. Если вы решили действительно смолоду учиться программировать, и вам еще нет 12 лет – лучше начинать с простых графических языков, типа Kodu Game Lab или Scratch . Считается, что традиционные языки программирования стоит осваивать после 12-ти. Из традиционных языков мне всегда был близок C # – для него есть хорошая среда разработки, а программировать можно всё: от игр в Unity , до веб-сайтов на ASP . NET или электроники. Для обучения можно посмотреть видеоуроки, или почитать книжку C # для школьников .

Алексей Михайлишин , руководитель отдела разработки ПО компании ОС3

Новичкам я бы рекомендовал для начала понять, что язык — это всего лишь инструмент в работе программиста. Да, конечно, важно владеть им уверенно, чтобы создавать хорошие программы, но на первом месте должно быть именно мастерство разработчика, а не язык, на котором он пишет.

Но так как начинать всё равно с чего-то надо, да и изучать те же алгоритмы и структуры данных в вакууме не очень удобно, то могу порекомендовать использовать для этого язык Си. Он достаточно низкого уровня, чтобы не приучать к тоннам синтаксического сахара и дать общее понимание того, как устроен компьютер, который исполняет программу. Но вместе с тем это и не язык ассемблера, что даёт возможность сосредоточиться на общих вещах, не тратя большую часть умственных усилий на запоминание всех названий jump’ов и значений регистров. В качестве литературы рекомендую классическую K&R.

Цукерберг рекомендует:  Мастер-класс по созданию логотипа

Также можете обратить внимание на Python, который автоматически приучит вас к некоторой структуре и стилю оформления кода, что тоже полезно для новичков. Да и исполнение интерпретатором вместо полноценной компиляции даст чуть более быструю обратую связь, что важно при обучении.

Список языков программирования по популярности

Программирование – это целая наука, позволяющая создавать компьютерные программы. Она включает в себя огромное количество различных операций и алгоритмов, которые образуют единый язык программирования. Итак, что же это такое и какими бывают языки программирования? В статье даны ответы, а также приведен обзорный список языков программирования.

Интересное из истории

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

Первый машинный язык был придуман в 1941 году Конрадом Цузе, который является изобретателем аналитической машины. Чуть позже, в 1943 г., Говард Эйкен создал машину «Марк-1», способную считывать инструкцию на уровне машинного кода.

В 1950-х годах начался активный спрос на разработку программного обеспечения, а машинный язык не выдерживал большие объемы кода, поэтому был создан новый способ общения с компьютерами. «Ассемблер» является первым мнемоническим языком, заменившим машинные команды. С годами список языков программирования только увеличивается, ведь область применения компьютерных технологий становится обширнее.

Классификация языков программирования

На данный момент существует более 300 языков программирования. Каждый из них имеет свои особенности и подходит для одной определенной задачи. Все языки программирования можно условно разделить на несколько групп:

  • Аспектно-ориентированные (основная идея – разделение функциональности для увеличения эффективности программных модулей).
  • Структурные (в основе лежит идея создания иерархической структуры отдельных блоков программы).
  • Логические (в основе лежит теория аппарата математической логики и правил резолюции).
  • Объектно-ориентированные (в таком программировании используются уже не алгоритмы, а объекты, которые принадлежат определенному классу).
  • Мультипарадигмальные (сочетают в себе несколько парадигм, и программист сам решает, каким языком воспользоваться в том или ином случае).
  • Функциональные (в качестве основных элементов выступают функции, которые меняют значение в зависимости от результатов вычислений исходных данных).

Программирование для начинающих

Многие задаются вопросом, что же такое программирование? По сути, это способ общения с компьютером. Благодаря языкам программирования мы можем ставить перед различными устройствами определенные задачи, создавая специальные приложения или программы. При изучении данной науки на начальном этапе самое главное – это выбрать подходящие (интересные для вас) языки программирования. Список для начинающих приведен ниже:

  • Basic придуман в 1964 году, относится к семейству высокоуровневых языков и используется для написания прикладных программ.
  • Python («Питон») довольно легко выучить благодаря простому читаемому синтаксису, преимущество же в том, что на нем можно создавать как обычные десктопные программы, так и веб-приложения.
  • Pascal («Паскаль») – один из древнейших языков (1969 г.), созданных для обучения студентов. Его современная модификация имеет строгую типизацию и структурированность, однако «Паскаль» – вполне логичный язык, который понятен на интуитивном уровне.

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

Новички имеют возможность ускорить изучение программирования и его основ благодаря специальным инструментам. Основной помощник – это интегрированная среда разработки программ и приложений Visual Basic («Визуал Бейсик» одновременно является и языком программирования, который унаследовал стиль языка Basic 1970-х годов).

Уровни языков программирования

Все формализованные языки, предназначенные для создания, описания программ и алгоритмов для решения задач на компьютерах, делятся на две основных категории: языки программирования низкого уровня (список приведен ниже) и высокого уровня. Поговорим о каждом из них отдельно.

Низкоуровневые языки предназначены для создания машинных команд для процессоров. Главное их преимущество в том, что они используют мнемонические обозначения, т. е. вместо последовательности нулей и единиц (из двоичной системы счисления) компьютер запоминает осмысленное сокращенное слово из английского языка. Самые известные языки низкого уровня – это «Ассемблер» (существует несколько подвидов этого языка, каждый из которых имеет много общего, а отличается лишь набором дополнительных директив и макросов), CIL (доступен в платформе .Net) и Байт-код JAVA.

Языки программирования высокого уровня: список

Высокоуровневые языки созданы для удобства и большей эффективности приложений, они являются полной противоположностью низкоуровневых языков. Их отличительная черта – наличие смысловых конструкций, которые емко и кратко описывают структуры и алгоритмы работы программ. В языках низкого уровня их описание на машинном коде было бы слишком длинным и непонятным. Языки же высокого уровня обладают независимостью от платформы. Вместо них функцию транслятора совершают компиляторы: они переводят текст программы в элементарные машинные команды.

Следующий список языков программирования: C («Си»), C# («Си-шарп»), «Фортран», «Паскаль», Java («Ява») — входит в число самых используемых высокоуровневых синтаксисов. Он обладает следующими свойствами: эти языки работают с комплексными структурами, поддерживают строковые типы данных и операции с файлами ввода-вывода информации, а также имеют преимущество – с ними гораздо проще работать благодаря читабельности и понятному синтаксису.

Самые используемые языки программирования

В принципе, написать программу можно на любом языке. Вопрос в том, будет ли она работать эффективно и без сбоев? Вот почему для решения различных задач следует выбирать наиболее подходящие языки программирования. Список по популярности можно охарактеризовать так:

  • языки ООП: Java, C++, Python, PHP, VisualBasic и JavaScript;
  • группа структурных языков: Basic, Fortran и Pascal;
  • мультипарадигмальные: C#, Delphi, Curry и Scala.

Область применения программ и приложений

Выбор языка, на котором написана та или иная программа, во многом зависит от области ее применения. Так, например, для работы с самим «железом» компьютера (написания драйверов и поддерживающих программ) лучшим вариантом станет C («Си») или С++, которые входят в основные языки программирования (список смотрите выше). А для разработки мобильных приложений, в том числе игр, следует выбрать Java или С# («Си-шарп»).

Если вы еще не определились, в каком направлении работать, то рекомендуем начать изучение с языков C или C++. Они имеют весьма понятный синтаксис, четкое структурное разделение на классы и функции. К тому же, зная C или С++, можно с легкостью выучить любой другой язык программирования.

ИСТОРИЯ РАЗВИТИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Одной из самых революционных идей, приведших к созданию автоматических цифровых вычислительных машин, была высказанная в 20-х годах XIX века Ч. Бэббиджем мысль о предварительной записи порядка действий машины для последующей автоматической реализации вычислений — программе. И, хотя использованная Бэббиджем запись программы на перфокартах, придуманная для управления ткацкими станками французским изобретателем Жозефом Мари-Жаккаром, технически не имеет ничего общего с современными приемами хранения программ в ЭВМ, принцип здесь по-существу один. С этого момента начинается история программирования.

Аду Лавлейс, одну из немногих современников Чарльза Бэббиджа, кто сумел по достоинству оценить аналитическую машину, называют первым в мире программистом. Она теоретически разработала некоторые приемы управления последовательностью вычислении, которые используются в программировании и по сей день, описала одну из важнейших конструкций практически любого современного языка программирования — цикл.

Революционным моментом в истории языков программирования стало появление системы кодирования машинных команд с помощью специальных символов, предложенной Джоном Моучли, сотрудником Пенсильванского университета. Система кодирования, предложенная Моучли, увлекла одну из сотрудниц его компании — Грейс Мюррей Хоппер, которая посвятила всю свою жизнь компьютерам и программированию. Она вспоминает, что стала «третьим в мире программистом первого в мире большого цифрового компьютера». Г. Хоппер доказала, чего она стоит как программист. Впоследствии она писала: «Я имела то преимущество, что изучала как технику, так и математику и знала, как работает машина от начала и до конца».

При работе на компьютере «Марк-1» Г. Хоппер и ее группе пришлось столкнуться со многими проблемами и все, что ими придумано, было впервые. В частности, они придумали подпрограммы. Сейчас любой программист не задумываясь использует аппарат подпрограмм в любом языке программирования. И еще одно фундаментальное понятие техники программирования впервые ввели Г. Хоппер и ее группа — «отладка». Однажды жарким летним днем 1945 г. неожиданно произошла остановка компьютера «Марк-1».

Обнаружилась неисправность одного реле, контакты которого были заблокированы мотыльком, залетевшим неизвестно каким образом в помещение вычислительного центра. Вспоминает Г. Хоппер: «Когда к нам зашел офицер, чтобы узнать, чем мы занимаемся, мы ответили, что очищаем компьютер от насекомых (debuging)». С тех пор термин «debuging» (отладка) используется в технических процессах тестирования неисправностей в компьютере, а также в системах программирования.

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

В конце 40-х годов, до прихода Г. Хоппер в фирму Джона Моучли, последний создал систему под названием «Short Code», которая являлась примитивным языком программирования высокого уровня. В ней программист записывал решаемую задачу в виде математических формул, а затем, используя специальную таблицу, переводил символ за символом, преобразовывал эти формулы в двухлитерные коды. В дальнейшем специальная программа компьютера превращала эти коды в двоичный машинный код. Система, разработанная Дж. Моучли, была по существу одним из первых примитивных интерпретаторов.

Уже в 1951 г. Хоппер создала первый в мире компилятор и ею же был введен сам этот термин. Компилятор Хоппер осуществлял функцию объединения команд и в ходе трансляции производил организацию подпрограмм, выделение памяти компьютера, преобразование команд высокого уровня (в то время псевдокодов) в машинные команды. «Подпрограммы находятся в библиотеке (компьютера), а когда вы подбираете материал из библиотеки — это называется компиляцией» — так она объясняла происхождение введенного ею термина.

В 1954 г. группа под руководством Г. Хоппер разработала систему, включающую язык программирования и компилятор, которая в дальнейшем получила название MATH-MATIC. После удачного завершения работ по созданию MATH-MATIC Г. Хоппер и ее группа принялись за разработку нового языка и компилятора, который позволил бы пользователям программировать на языке, близком к обычному английскому. Необходимость появления подобной системы Хоппер объясняла следующим образом: «Существует много различных людей, которым нужно решать разные задачи.

Некоторые из них связаны с обработкой символов, другие — с обработкой слов, и им нужны языки другого типа, а не наши попытки превратить их всех в математиков». В 1958 г. появился компилятор FLOW-MATIC. В отличие от ФОР-ТРАНа — языка для научных приложений — FLOW-MATIC был первым языком для задач обработки коммерческих данных. Работы в этом направлении привели к созданию языка КОБОЛ (COBOL — Common Business Oriented Language). Одним из основных консультантов при создании этого языка была Грейс Мюррей Хоппер.

Середина 50-х годов характеризуется стремительным прогрессом в области программирования. Роль программирования в машинных командах стала уменьшаться. Начали появляться языки программирования нового типа, выступающие в роли посредника между машинами и программистами. Первым и одним из наиболее распространенных был Фортран (FORTRAN, от FORmula TRANslator — переводчик формул), разработанный группой программистов фирмы IBM в 1954 г. (первая версия).

В середине 60-х годов сотрудники математического факультета Дартмутского колледжа Томас Курц и Джон Кемени создали специализированный язык программирования, который состоял из простых слов английского языка. Новый язык назвали «универсальным символическим кодом для начинающих» (Beginners All-Purpose Symbolic Instruction Code, или, сокращенно, BASIC). Годом рождения нового языка можно считать 1964 г. Сегодня универсальный язык Бейсик (имеющий множество версий) приобрел большую популярность и получил широкое распространение среди пользователей ЭВМ различных категорий во всем мире. В значительной мере этому способствовало то, что Бейсик начали использовать как встроенный язык персональных компьютеров, широкое распространение которых началось в конце 70-х годов.

В начале 60-х годов все существующие языки программирования высокого уровня можно было пересчитать по пальцам, однако впоследствии их число достигло трех тысяч. Разумеется, подавляющая часть языков не получила сколько-нибудь широкого распространения; в практической деятельности используется не более двух десятков. Разработчики ориентировали языки на разные классы задач, в той или иной мере привязывали их к конкретным архитектурам ЭВМ, реализовывали личные вкусы и идеи.

В 60-е годы были предприняты попытки преодолеть эту «разноголосицу» путем создания универсального языка программирования. Первым детищем этого направления стал PL/I (Programm Language One), 1967 г. Затем на эту роль претендовал АЛГОЛ-68 (1968 г.). Предполагалось, что подобные языки будут развиваться и усовершенствоваться и вытеснят все остальные. Однако ни одна из этих попыток на сегодняшний день не увенчалась успехом (хотя PL/I в усеченных версиях использовали многие программисты). Всеохватность языка приводила к неоправданной, с точки зрения программиста, сложности конструкций, неэффективности компиляторов.

Языки программирования служат разным целям иих выбор определяется удобностью пользователя, пригодностью для данного компьютера и данной задачи. А задачи для компьютера бывают самые разнообразные: вычислительные, экономические, графические, экспертные и т.д. Такая разнотипность решаемых компьютером задач и определяет многообразие языков программирования. По всей видимости, в программировании наилучший результат достигается при индивидуальном подходе, исходящем из. класса задачи, уровня и интересов программиста.

Например, Бейсик широко употребляется при написании простых программ; Фортран является классическим языком программирования при решении на ЭВМ математических и инженерных задач; язык Кобол (COBOL, от Common Business Oriented Language — общий язык, ориентированный на деловые задачи; создан в 1960 г.) был задуман как основной язык для массовой обработки данных в сферах управления и бизнеса.

Еще более специализированным является язык ЛОГО (от греческого logos — слово), созданный для обучения программированию школьников профессором математики и педагогики Сеймуром Пейпертом из Массачусетского технологического института. Обучаясь программированию на ЛОГО, дети задают простые команды, которые управляют игрушечной черепашкой, снабженной карандашиком. Отметим и еще один достаточно популярный специализированный язык — Пролог (Prolog — PROgramming in LOGic), разработанный как язык программирования для создания систем искусственного интеллекта.

Цукерберг рекомендует:  Java курс онлайн - обучение Джава

В конце 50-х годов плодом международного сотрудничества в области программирования явился Алгол (ALGOL, от ALGOrithmic Language — алгоритмический язык). Алгол предназначен для записи алгоритмов, которые строятся в виде последовательности процедур, применяемых для решения поставленных задач. Специалисты-практики восприняли этот язык далеко неоднозначно, но, тем не менее, его влияние на развитие других языков и теорию программирования оказалось весьма значительным.

В нашей стране в те годы был создан под руководством Сергея Петровича Ершова транслятор Альфа, который представлял довольно удачную русифицированную версию Алгола. Впоследствии академик Ершов сыграл важнейшую роль в становлении в СССР школьной информатики.

Развитие идеи Алгола о структуризации разработки алгоритмов нашло наивысшее отражение при создании в начале 70-х годов языка Паскаль швейцарским ученым Никлаусом Виртом. Язык Паскаль первоначально разрабатывался как учебный, и, действительно, сейчас он является одним из основных языков обучения программированию в школах и вузах. Однако, качества его в совокупности оказались столь высоки, что им охотно пользуются и профессиональные программисты.

Не менее впечатляющей, в том числе и финансовой, удачи добился джазист Филип Кан, француз, разработавший систему Турбо-Паскаль. Суть его идеи состояла в объединении последовательных этапов обработки программы — компиляции, редактирования связей, отладки и диагностики ошибок — в едином интерфейсе. Версии Турбо-Паскаля заполонили практически все образовательные учреждения, программистские центры и частные фирмы.

Период с конца 60-х и до начала 80-х годов характеризуется бурным ростом числа различных языков программирования, сопровождавшим, как это ни парадоксально, крмзис программного обеспечения. Этот кризис особо остро переживало военное ведомство США. В январе 1975 г. Пентагон решил навести порядок в хаосе трансляторов и учредит комитет, которому было предписано разработать один универсальный язык. На конкурсной основе комитет проработал сотни проектов и, когда стало ясно, что ни один из существующих языков не может их удовлетворить, принял два проекта для окончательного рассмотрения.

В мае 1979 г. был объявлен победитeль — группа ученых во главе с Жаном Ихбиа. Победивший язык окрестили АДА, в честь Огасты Ады Лавлейс. Язык АДА — прямой наследник языка Паскаль. этот язык предназначен для создания и длительного (многолетнего) сопровождения больших программных систем, допускает возможность параллельной обработки, правления процессами в реальном времени и многое другое, чего трудноилиневозможно достичь средствами более простых языков.

Большой отпечаток на современное программирование наложил язык Си (первая версия — 1972 г.), являющийся очень популярным в среде разработчиков систем программного обеспечения (включая операционные системы). Си сочетает в себе черты как языка высокого уровня, так и машинно-ориентированного языка, допуская программиста ко всем машинным ресурсам, чего не обеспечивают такие языки, как Бейсик и Паскаль.

Следует отметить, что многие языки, первоначально разработанные для больших и малых ЭВМ, в дальнейшем были приспособлены к персональным компьютерам. Хорошо вписались в «персоналки» не только Паскаль, Бейсик, Си, Лого, но и ЛИСП, ПРОЛОГ — языки искусственного интеллекта.

В течение многих лет программное обеспечение строилось на основе операциональных и процедурных языков, таких как Фортран, Бейсик, Паскаль, Ада, Си. И сегодня современные версии этих и им подобных языков (Модула, Форт и др.) доминируют при разработке прикладных программных средств. Однако по мере эволюции языков программирования получили широкое распространение и другие, принципиально иные, подходы к созданию программ.

Классическое операциональное и/или процедурное программирование требует от программиста детального описания того, как решать задачу, т.е. формулировки алгоритма и его специальной записи. При этом ожидаемые свойства результата обычно не указываются. Основные понятия языков этих групп — оператор и данные. При процедурном подходе операторы объединяются в группы — процедуры. Структурное программирование в целом не выходит за рамки этого направления, оно лишь дополнительно фиксирует некоторые полезные приемы технологии программирования.

Принципиально иное направление в программировании связано с методологиями (иногда говорят «парадигмами») непроцедурного программирования. К ним можно отнести объектно-ориентированное и декларативное программирование. Объектно-ориентированный язык создает окружение в виде множества независимых объектов. Каждый объект ведет себя подобно отдельному компьютеру,их можно использовать для решения задач как «черные ящики», не вникая во внутренние механизмы их функционирования. Из языков объектного программирования, популярных среди профессионалов, следует назвать прежде всего Си++, для более широкого круга программистов предпочтительны среды типа Delphi и Visual Basic.

Рис. 3.1. Классификация языков программирования

При использовании декларативного языка программист указывает исходные информационные структуры, взаимосвязи между ними и то, какими свойствами должен обладать результат. При этом процедуру его получения («алгоритм») программист не строит (по крайней мере, в идеале). В этих языках отсутствует понятие «оператор» («команда»). Декларативные языки можно подразделить на два семейства — логические (типичный представитель — Пролог) и функциональные (Лисп). По всей видимости, непроцедурные языки имеют большое будущее. Все сказанное выше можно отобразить схемой — крупноструктурной классификацией языков программирования. В ней указаны основные методологии программирования; в нижнем ряду, в скобках — типичные языки соответствующих групп.

Не нашли то, что искали? Воспользуйтесь поиском:

Рейтинг языков программирования в 2020 году

Для оценки перспективности своих усилий каждый программист должен регулярно смотреть рейтинги языков программирования. Часто бывает так, что появится некоторый модный язык, о котором все начинают писать, но потом этот язык тихо исчезает. Те программисты, которые бросились изучать этот язык, вдруг видят, что их усилия оказались напрасными.

Например, в середине в 80-х стал очень популярен язык Prolog, но потом его популярность резко снизилась. И сейчас на нем практически никто не пишет. А место популярного новичка занял Python.

Как же узнать рейтинг языков программирования? Общего рейтинга не существует, так как нет простого способа собрать подобную статистику. Но существуют разные способы оценки популярности языков программирования. Рассмотрим самые популярные рейтинги.

1. Рейтинг Черной утки

Самым крупным сайтом, посвященным программам с открытым исходным кодом является сайт Black Duck (Черная утка) blackducksoftware.com

Одним из проектов Черной утки является каталог open source. В этом каталоге представлено около 500 000 проектов. Так как у всех проектов код открыт, то легко определить, на каком языке эти проекты написаны. На январь 2020 года рейтинг выглядит так.

Как видно, здесь практически половина программ (46%) написано на C. Это понятно, потому что С — это язык общения программистов. Это единственный язык, компилятор которого есть на всех платформах: от встроенных систем до суперкомпьютеров.

2. Рейтинг Wappalyzer для веб-приложений

Сервис Wappalyzer использует различные методы для идентификации веб-технологий. Рейтинг языков программирования для разработки сайтов на январь 2020 выглядит так.

В веб-программировании однозначно лидирует язык PHP, более 80% сайтов написано на этом языке.

3. Рейтинг TIOBE Index

Рейтинг TIOBE Index построен на оценке результатов поисковых запросов, содержащих название языка. Логика этого индекса очень проста: «Если язык ищут в поисковых системах, то он популярен». Конечно же, это заявление спорное, потому что программисты-профессионалы крайне редко будут искать в поисковике именно название языка программирования. Они чаще ищут решение конкретной задачи. Но громадный плюс этого рейтинга в том, что он достаточно объективно показывает интерес к тому или иному языку.

Индекс TIOBE показывает самые популярные языки программирования, информации о которых искали на 25-ти самых популярных поисковых системах, то есть запросы вида: «+» programming». Индекс подсчитывается каждый месяц.

Индекс TIOBE на январь 2020 года выглядит так:

В этом индексе однозначным лидером является Java.

На графике изменений индекса хорошо видны как менялась популярность языков программирования. Но при этом первое-второе место постоянно делят два языка Java и C. Хотя Java активно продвигается компанией Oracle, а язык C никто не продвигает.

И еще интересно то, что C++ ни разу не смог превысить по популярности C.

4. Рейтинг IEEE Spectrum

Ежегодный рейтинг IEEE Spectrum Top Programming Languages использует 11 метрик из 9-ти источников, включая поисковые запросы, упоминания в твиттере и даже упоминания в вакансиях на работу программиста. С одной стороны этот рейтинг использует больше данных, но с другой стороны во многих источниках данные имеют связанный характер. Чем больше публикуются вакансий на некоторый язык программирования, тем больше запросов будет в поисковых системах. То есть у новых языков больше шансов попасть на вершину рейтинга.

Рейтинг IEEE на 2020 год выглядит так:

Важностью особенностью рейтинга IEEE является то, что рейтинг интерактивный и можно поиграть с параметрами. В этом рейтинге лидирует Python.

5. Рейтинг Stack Overflow

Сайт Stack Overflow — это площадка, на которой разработчики могут задавать и отвечать на вопросы по программированию. Этот сайт имеет около 40 миллионов посещений в месяц. Есть русскоязычная версия сайта: ru.stackoverflow.com

Этот рейтинг рассчитывается на основе опроса разработчиков. В январе 2020 года было опрошено более 100 000 разработчиков и составлен рейтинг языков программирования. Скорее это рейтинг языков, которые вызывают вопросы. В этом рейтинге лидером стал JavaScript.

Такая популярность вполне объяснима, сейчас JavaScript бурно развивается и каждая новая возможность вызывает массу вопросов, поэтому программисты идут на сайт Stack Overflow, чтобы задать вопросы.

Любопытно, что C не попал даже в первую десятку.

6. Вакансии на Head Hunter

Можно подойти к рейтингу языков программирования с другой стороны и посмотреть, какие языки указываются в вакансиях и сколько собираются платить. Одна из самых популярных площадок для поиска работы в IT-сфере — это сайт HeadHunter. Там есть отдельный раздел — вакансии для программистов.

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

Здесь видно, что программист, знающий Pascal (среда Delphi), все еще востребован.

7. Google Books Ngram Viewer

И в конце рассмотрим чрезвычайно полезный сервис Гугл, на котором можно смотреть использование ключевых слов в публикациях.Поэтому можно смотреть популярность не только языков программирования, а любых технологий.

В начале этой статьи приведены графики использования слов Prolog и Python. А теперь введем JavaScript, Python и PHP.

Видно как в 1992 году появляется интерес к JavaScript и он быстро обгоняет Python и PHP.

Похожие записи:

Комментарии 18

Совсем мелкая ошибка в предпоследнем предложении. Вы написали «В начале этой статьи приведены графики использования слов Prolog и Pascal», а там были Prolog и Phyton.

«Для оценки перспективности своих усилий каждый программист должен регулярно смотреть рейтинг языков программирования.» — совет неоднозначный. Профессионал обычно хорошо знает 1-2 языка и специализируется на них довольно долго. Изучение другого языка происходит обычно по причине старта какого-нибудь проекта, или тупика в карьере с текущими знаниями.

Здравствуйте! Спасибо за статью!
Хотел бы узнать Ваше мнение насчет языка программирования Prolog. Дело в том, что язык программирования Prolog используется в разработке программ для искусственного интеллекта.Так как технологии искусственного интеллекта развиваются все интенсивнее, не станет ли язык программирования Prolog популярным, ну или востребованным?

Здравствуйте! Язык Prolog стал популярен в 1980-х годах в связи с японской программой создания программы искусственного интеллекта. Но эту программа кончилась грандиозным провалом. В результате все наработки были розданы бесплатно и никаких полезных программ так и не было создано. Поэтому сейчас Prolog полностью морально устарел и не используется. Даже если и будет новый прорыв в разработке искусственного интеллекта, то, скорее всего, он будет связан с другой технологией и другим языком программирования.

В девяностом году шеф мой взял аспиранта себе на написание САПР, типа Симулинк в Матлабе. Тогда ещё XT-шки были в диковинку. И был в то время бум создания «Искусственного интеллекта». Ходили шутки, что это нужно, когда своего интеллекта не хватает. Ну и аспирант этот решил создавать этот САПР на языке Пролог. Тогда ещё книг, типа Братко не было. В ДОСе работали. Ну и он разобрался в языке этом глубоко так. Ему понравилось в нём лазить по деревьям и делать откаты. В других языках это геморройно было, а в Прологе это вшито как аксиома (исходные кирпичики языка). То есть если программа заходит в тупик, то как-то самореализуется всё там, что она, делая откаты назад сама ищет выход из этого тупика. И аспиранту это нравилось в ней. Написал он в ней САПР свой, «Гаммой» назвал его, была куча публикаций. Но потом бросил заниматься этим и диссертации не защитил. Его пригласили в СберБанк программистом работать, а там зарплаты уже со стипендией аспиранта не сравнить. Так всё это и забросилось. Отчёт в семи томах кода сохранился с той поры и валяется где-то. У меня на даче очень много книг по Прологу на чердаке стопками лежит не тронутых, а Братко, по моему, аж десять экземпляров. В то время хлеб стоил сто рублей, а книги эти по рублю продавались. На растопку жалко их рвать…

Интересный обзор! А что вы можете сказать про Rust в контексте перспективы дальнейшего развития?

Современные языки программирования: краткий обзор

Компьютеры так прочно вошли в нашу жизнь, что мы уже не можем представить ее без них. Трудно поверить, что только полвека назад появились первые компьютеры, которые были медлительными и громоздкими. Сейчас у нас есть огромное многообразие — от ультратонких ноутбуков до мощных игровых компьютеров.

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

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

Зачем нужны языки программирования

Без языка программирования ни один компьютер работать не будет. С его помощью создаются определенные математические алгоритмы, которые помогают компьютеру выполнять команды пользователя.

  • Язык программирования выглядит совсем не так, как мы привыкли представлять себе язык — это набор различных символов, которые преобразуются в понятный компьютеру код.
  • Классификация языков программирования от низких до высоких уровней зависит от того, настолько близок язык к человеку. Чем меньше язык программирования понятен человеку, тем по уровню он ниже.
  • Большая часть языков преобразуется в понятный машине код с помощью программ-трансляторов. С их помощью прописываются лексические, семантические и синтаксические правила, которые определят, какие действия запросит пользователь и внешний вид программы.
  • Язык программирования — неотъемлемая часть работы любого компьютера. В современном мире с ними работают программисты, которые прописывают коды и создают программы с использованием сложных кодовых конструкций.
Цукерберг рекомендует:  C# - Компонент Chart для MonoDevelop

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

История языков программирования

Первыми «ласточками» в истории языка программирования считаются такие обычные вещи, как музыкальная шкатулка или жаккардовый ткацкий станок. Они появились еще в XVIII-XIX веках.

Начало же современному программированию было дано в 1930-1940-е годы, когда были написаны лямбда-исчисление и машина Тьюринга. То время можно назвать началом истории разработки языков программирования, ведь компьютеры становились все популярнее. В 1940-е годы появились первые электрические компьютеры, и тогда же немецкий инженер Ц. Кузе разработал Планкалькюль, первый высокоуровневый язык.

В 1950-е годы были разработаны машинные коды, которые считаются языками программирования первого поколения. Но их приходилось переписывать для каждой ЭВМ отдельно, так что первым реально работающим языком программирования можно считать «Краткий код». Он первым стал представлять собой не набор математических кодов, а выражения, которые потом перерабатывались в код.

Затем появились языки второго поколения — они были проще для человека, но ограничивались использованием ассемблера. Так называли программу, которая переводила команду на машинный язык, своего рода переводчик.

А уже к середине 1950-х годов стали зарождаться языки третьего поколения. Их отличает то, что они подходят для любой программы, их не нужно переписывать под каждую заново. Они уже считают полноценными языками высокого уровня.

В 1960-годы языки программирования начали стандартизировать и улучшать. Хоть затем и появились языки четвертого и пятого поколения, они являются более усовершенствованными версиями языков третьего поколения.

После того, как стал развиваться интернет в 1990-е годы, появились еще языки для написания веб-страниц. Сейчас развитие языков программирования идет по большей части в сторону безопасности пользователя.

Список языков программирования

Есть тысячи языков программирования. Мы выделили те, что наиболее популярны и чаще используются в современном мире.

Basic

Basic или Бейсик называют группу языков программирования высокого уровня. Его создали профессора колледжа Дартмут в 1964 году с целью помощи студентам в создании собственных компьютерных программ. Сейчас детище Томаса Курца и Джона Кемени стало основным языком, на котором пишутся программы для ОС Windows.

В далеком 1972 году Дэннис Ритчи придумал язык, который остается популярен и сейчас. Программисты любят его за успешное сочетание в нем элементов как высокого, так и низкого уровней программирования. Кстати, для тех языков программирования, которые используются для написания сайтов, основой является как раз язык Си.

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

Python

Разработка этого языка началась в 1980-х годах голландцем Гвидо ван Россумом, но его первая версия была выпущена только в 2008 году. Он отличается постоянным усовершенствованием и активным сообществом пользователей. Python является высокоуровневым языком с большим объемом различных функций. Особенно хорошо он справляется с веб-разработкой, анализом данных и автоматизацией процессов.

Этот язык лидирует среди тех, что применяются в разработке веб-сайтов и поддерживается практически всеми хостинг-провайдерами. Он применяется, в основном, для разработки веб-сайтов и веб-приложений. Впервые PHP был представлен публике в 1995 году датским программистом Расмусом Лердорфом.

Язык программирования Java работает с веб-приложениями, которые транслируются в байт-код. Он может работать на любой компьютерной архитектуре, так как код преобразуется с помощью Java-машины. Он появился в 1996 году и последние годы он стал самым популярным языком программирования. Однако многие недовольны из-за того, что он работает медленнее, чем его конкуренты.

JavaScript

Хотя JavaScript похож на Java, но все же является отдельным языком. Чаще всего используется в качестве встраиваемого языка: приложения получают доступ к веб-страницам с его помощью. Он более легок в применении и дается даже тем, кто мало знаком с программированием. Доля его использования ежегодно растет.

Go (Golang)

В 2007 году компания Google занялась разработкой собственного языка программирования, с помощью которого бы можно было решать реальные проблемы. Созданием языка занимались Роб Пайк и Кен Томпсон, которые уже в 2009 году представили Go. Для компании Google он является заменой популярных языков Си и Си ++. Он не стал прорывом, но зато используется для создания серьезных проектов.

Этот язык программирования является системой, с помощью которой можно удобно управлять базами данных. Первые разработки были начаты еще в 1970-х годов, но первый вариант SQL был представлен в 1986 году. В современном мире SQL довольно популярен в качестве удобного языка для улучшения, управления и создания баз данных.

Swift

Компания Apple тоже придумала собственный язык программирования, чтобы создавать на нем приложения для всех родственных гаджетов. Apple представила свой язык в 2014 году как удобный, надежный, свободный и доступный любому программисту. Он был создан персонально для продуктов Apple.

Pascal

Никлаус Вирт создал этот язык в 1969 году, а назвали язык в честь математика Блеза Паскаля. Он является популярным языком программирования и в наши дни. Именно на нем обучают студентов на первом курсе университета и в старшей школе. На его основе построено множество других языков.

В современном мире без языков программирования невозможно обойтись. Все больше и больше людей самостоятельно выбирают профессию программиста, хоть она и сложна на первый взгляд, но быстро развивается и становится популярной с каждым годом. А языки программирования — сложный, но интересный процесс создания компьютерного мира!

Нравится статья? Поддержи наш проект и поделись с друзьями!

С какого языка начать изучать программирование?

Начать программировать можно и на shell/powershell, в зависимости от того, что у Вас за ОС — *nix или Windows.
А вообще нормальная и самая логичная и правильная практика — выбирать средства для решения задач, а не использовать классическое решение по забиванию гвоздей микроскопом.

Потому как средства выбираются в зависимости от того, под что Вы хотите программировать:
микроконтроллеры вроде Atmega/Arduino или еще какие-то системы управления на тех же заводах — свои языки.

Система управления заводами/фабриками и вообще производствами — обычно мега шикарный язык Scala с о всякими хитрыми контроллерами, датчиками, механизмами и прочими девайсами из производства/энергоснабжения, знание и разработка на котором и работа с АСУТП на каком-нить производстве или поставщике какого-то ресурса обычно дает очень хорошие зарплаты.

Мобильные платформы — .Net, html, css, js, java, варианты С в зависимости от экосистемы.
Веб платформы — тоже в общем html, css, js + та же Java/.Net в зависимости от того, на чём пишется back-end.
Десктоп — тут все еще шире — почти все интерпретаторы и компиляторы есть под все популярные платформы, и писать на том же питоне или руби можно хоть под MacOS, хоть под Windows.

Язык программирования

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

— Что это вообще такое? — спросил мой приятель, указав на книгу.

— Хм, язык программирования такой. Мы его сейчас в универе изучаем.

Друг на некоторое время о чём-то крепко задумался, а потом выдал мне с абсолютной невозмутимостью в голосе:

С какого языка изучать программирование?

Беседовал недавно со школьником на тему: какой язык программирования он собирается изучать. Буду, говорит, изучать PHP или С++. Спрашиваю: а кто тебе посоветовал именно их изучать? — Да кто-то из друзей…

Ну что на это сказать? Если начать с этих языков (PHP, вообще-то, трудно назвать языком программирования в классическом смысле), то я сильно сомневаюсь в результатах. Тем более, что советовал, скорее всего, такой же «грамотей», как и тот, с которым беседовал я.

Так что смысл в такой статье есть. Привожу краткие характеристики тех языков, которые я преподавал в течение ряда лет.

BASIC — язык наиболее простой для начального знакомства. Его осваивают не только те, у кого хорошо развито математическое мышление. Я его преподавал как начальный язык программирования. Так как в нем нет необходимости описывать типы переменных, он больше похож на обычные математические решения. Для олимпиад подходит до городского уровня, но не выше.

PASCAL — требует определенного математического мышления, но вполне подходит для начального изучения. В настоящее время имеется достаточно много литературы, доступной для школьников. Олимпиадное программирование обычно происходит на нем. Это язык, на котором я веду преподавание.

Си — язык профессионального программирования. Для начального изучения не рекомендуется. Его можно изучать после основательного знакомства с Паскалем. Но нужен он лишь для уровня международных олимпиад, ну может иметь преимущества для некоторых классов задач на уровне российских. С литературой по нему, доступной для школьников, я не знаком.

Delphi — в консольном варианте это Паскаль, может использоваться на олимпиадах. В объектно-ориентированном варианте не используется на олимпиадах. Для начального обучения не рекомендуется, также как и остальные ООП языки программирования. Я провожу пару занятий по Delphi в конце курса, но исключительно для того, чтобы у моих учеников не было комплекса неполноценности при общении с «распальцованными» выскочками.

Ассемблер — на самом деле, правильнее говорить ассемблеры, т.к. для каждого типа процессоров ассемблер свой. Для начального изучения категорически не рекомендуется. Его как первый язык может освоить только электронщик, детально знакомый с работой цифровой техники. В Интернете я встречал предложения начинать с ассемблера, но это не более чем стёб.

Общие замечания: языки программирования различаются синтаксисом, способом выражения мысли программиста. Главное не синтаксис, а алгоритмическое мышление. Если его нет, то нет и навыка программирования. Если выработано алгоритмическое мышление, то переход с одного языка программирования на другой не столь уж и проблематичен. Во многих школах преподавание ведется на BASIC-е просто потому, что других языков преподаватели не знают, а те кто знают, работают программистами и ерундой (вроде преподавательской деятельности) не занимаются.

Вывод: начинать изучение надо с TurboBASIC или TurboPASCAL. Подчеркиваю, что с турбо-вариантов. Изучение начинать после знакомства с алгеброй. Как вариант допустимо изучение программирования до знакомства с алгеброй, но тогда на примере языка программирования BASIC вводить алгебраические понятия. Но это в том случае, если идет индивидуальное обучение.

Моя практика показывает, что раннее обучение, как правило, неэффективно. Правда, встречаются дети с исключительной (высокой) мотивировкой, для которых общие рекомендации не работают. Но это очень редко. Если у ребенка есть явновыраженные математические способности, то можно начинать с PASCALя, если нет, то лучше начинать с BASICа. Если есть желание познакомиться с пользовательским аспектом (без серьезного вникания в синтаксис), то можно знакомиться с EXEL (без макросов).

Всем и каждому программирование не нужно вообще. Для общего образования достаточно знать компьютер на уровне пользователя. Изучение языков программирования — это серьёзный труд, требующий большой концентрации внимания, поэтому прежде всего надо четко знать, чего вы хотите. И самое главное, чего хочет ребенок. Или это глубокий интерес — и тогда требуется серьезный подход, или это поверхностное желание… В случае глубокого желания надо настраиваться на серьезный труд и не на один год.

Еще раз повторюсь, не на программировании свет клином сошелся. Жизнь разнообразна, и вполне возможно, что ваш ребенок найдет себя в совершенно другой области. Заниматься программированием — означает обречь себя на вечное ученичество. Сейчас те языки программирования, которые мы изучали в университете (30 лет тому назад), можно найти, как правило, в разделе история вычислительной техники. В то же время программирование — процесс творческий и заниматься им интересно (мне так точно). Желаю успехов в освоении этого предмета. От простого к сложному.

Язык программирования

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

— Что это вообще такое? — спросил мой приятель, указав на книгу.

— Хм, язык программирования такой. Мы его сейчас в универе изучаем.

Друг на некоторое время о чём-то крепко задумался, а потом выдал мне с абсолютной невозмутимостью в голосе:

Понравилась статья? Поделиться с друзьями:
Все языки программирования для начинающих