Файл: Классификация языков программирования. Критерии выбора среды и языка разработки программ (Низкоуровневые языки программирования).pdf
Добавлен: 31.03.2023
Просмотров: 143
Скачиваний: 2
СОДЕРЖАНИЕ
Глава 1. Низкоуровневые языки программирования
Глава 2. Среднеуровневые языки программирования
Глава 3. Высокоуровневые языки программирования
Глава 4: Параметры выбора языка программирования
Глава 5. Алгоритмические языки программирования
Глава 6. Формальные языки программирования
Глава 7. Символический язык программирования
Глава 8. Императивные языки программирования
Программирование на ассемблере сводится к занесению в регистры компьютера данных из памяти (к которой с точки зрения процессора относятся и подключенные к компьютеру устройства), выполнению операций над ними и записи результата в память. За регистрами процессора закреплены буквенные обозначения, номенклатура которых зависит от типа процессора (Intel x86, ARM и др).
Особый регистр-указатель команд отвечает за последовательность выполнения команд. Его изменение недоступно программисту. Управление регистром-указателем производятся командами условных и безусловных переходов, циклов, вызова процедур и возврата из них.
Вывод:
Мы узнали что такое языки программирования, их историю, узнали про машинный код и Низкоуровневые языки программирования. Так же познакомились с языком Ассемблер, и узнали как он работает.
Глава 2. Среднеуровневые языки программирования
К моему большому сожалению про среднеуровневые языки программирования, написано очень мало информации в Всемирной паутине. Сказано что: Среднеуровневые языки служат связующим звеном между аппаратной и программной частью компьютера. Они действуют на уровне абстракции.
Абстракция — метод управления сложностью систем, на таких понятиях как цвет, высота, длина, ширина, красота, тип и т. д.
Можно сказать что информации нет никакой вообще, однако о них упоминается в одном сайте, а значит они есть. По этому я не могу рассказать не о плюсах, не о минусах, не даже о том какие есть среднеуровневые языки. Везде говорят только о Высокоуровневых языках. Возможно это и ложь что они существуют, но я решил всё равно их упомянуть.
Вывод:
Мы узнали как работают среднеуровневые языки.
Глава 3. Высокоуровневые языки программирования
Итак а теперь поговорим о высокоуровневых языках:
Языки программирования высокого уровня - языки, которые используют разные абстрактные смысловые конструкции, их просто невозможно сообщать машине на низкоуровневых языках в силу их большого объема и сложности.
Ответить конкретно на вопрос о том: Когда появился первый язык высокого уровня довольно сложно. Первые попытки создать что-то подобное наблюдались еще в 70 годах, но тогда использовался в основном язык Pascal, который нельзя отнести к высокому уровню. Американские военные первыми взялись разрабатывать язык программирования высокого уровня. Результат работы: в начале 80-х годов был разработан язык Ada, который был очень функциональным для своего времени, но в то же время предельно упрощен. Его главной задачей было программирование различной военной аппаратуры, встроенных систем, где любые сложности и долгие подсчеты идут только во вред.
Так же в те годы был создан язык C, с которого после создали языки С++ и СИ Шарп, и ряд других примеров, список которых довольно длинный. Также именно из высокоуровневого языка «С» берет свое начало популярнейший в наше время язык высокого уровня Java, на котором одинаково эффективно пишутся программы, скрипты, плагины и прочие «примочки» как на компьютеры, так и на разнообразные гаджеты: смартфоны, планшеты, смарт часы, очки виртуальной и дополненной реальности. Указанные языки были лидерами еще в далекие 80-90-е годы и остаются ими и поныне, хотя конечно, за это время изменилось и появилось очень многое.
Pascal - сейчас наиболее известный язык программирования, используется для обучения программированию в старших классах и на первых курсах вузов, является основой для ряда других языков.
Язык был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал одну из первых в мире механических машин, складывающую два числа. Первая новость Вирта о языке выпущена 1970 годом; представляя язык, автор в качестве цели его создания указывал построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные. Последующая работа Вирта была направлена на создание на основе Паскаля языка системного программирования, с сохранением возможности вести на его базе систематический, целостный курс обучения профессиональному программированию. Результат работы — язык Модула-2.
Ada — язык программирования, созданный в 1979—1980 г. Министерству обороны США была поручена цель разработать единый язык программирования для встроенных систем (то есть систем управления автоматизированными комплексами, функционирующими в реальном времени, если в общих словах то для управления внешними устройствами). Имелись в виду прежде всего бортовые системы управления военной техникой, радары, орудийные комплексы и т.д. У разработчиков не стояли задачи создать универсальный язык, по этому решения, принятые программистами, нужно воспринимать в особенности выбранной предметной области. Язык назван в честь Ады Лавлейс.
Справочный словарь:
парадигма программирования - это совокупность идей и понятий, определяющих стиль написания компьютерных программ. Это способ определяющий организацию вычислений и структурирование работы, выполняемой компьютером.
структурный модульный язык – парадигма программирования, в основе которой лежит представление программы в виде иерархической структуры блоков. Проще говоря в виде дерева.
Algol — название ряда языков программирования, применяемых в написании программ для научно-технических задач на ЭВМ. Разработан комитетом по языку высокого уровня IFIP в 1958–1960г. (Алгол 58, Алгол 60). Кардинально переработан в 1964–1968г (Алгол 68). Один из первых высокоуровневых языков. Применялся в Европе и СССР, как в качестве практического программирования, так и академического языка (языка публикации алгоритмов в научных работах), в США и Канаде не смог превзойти распространённый там Fortran. Оказал влияние на все разработанные позднее императивные языки программирования — в частности, на язык Pascal.
Обычно названием Алгол именуют Алгол 60, в то время как Алгол 68 рассматривается как самостоятельный язык.
(Если и дальше копать по незнакомым нам словам то мы здесь на долго останемся, по этому двинемся дальше.)
Язык со строгой типизацией - язык программирования который задает ограничения на смещение операций над разными типами данных. Это один из наиболее противоречивых терминов в области типизации, так как он не имеет одного общепринятого значения, и разные авторы используют его в разных значениях.
методология программирования - методы, применяемые на различных стадиях жизненного цикла программного обеспечения и имеющих общий философский подход.
Объектно-ориентированное-программирование - методология программирования основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого класса, а классы образуют иерархию наследования. Объектно-ориентированными языками программирования считаются языки: С++, Visual Basic, Delphi, Java.
В исходном варианте, стандартизованном в 1983 году, Ада — это структурный, модульный язык программирования, содержащий высокоуровневые средства программирования параллельных процессов. Синтаксис Ады написан на основе языков Algol или Pascal, отличие в расширении, а также сделан более строгим и логичным. Ада — язык со строгой типизацией, в нём исключена работа с объектами, не имеющими типов, а автоматические преобразования типов сведены к абсолютному минимуму: допускается неявное приведение значения общего целого или вещественного числового типа к совместимому числовому типу. В стандарте 1995 года в язык были добавлены базовые средства обектно-ориентированного-программирования, в стандарте 2007 эти средства были дополнены, поэтому современная Ада — объектно-ориентированный язык программирования.
Разница меду языками низкого и высокого уровней состоит в том что низкоуровневые языки обращаются к «железу, давая ему точные команды, а высокоуровневые языки оперируют более абстрактными понятиями, здесь не нужно задавать способ работы каждой детали устройства, а достаточно просто в общих чертах задавать выполнение определенных задач и функций. Программисты, работающие с низкоуровневыми языками, должны знать ещё и основы электроники, технические нюансы устройств, с которыми они будут работать, для работы на высокоуровневом языке все это не нужно.
К примеру, если подключенное к ПК устройство (вентилятор) может работать на максимальных оборотах 2500 об/мин, то когда программист, используя низкоуровневый язык, пишет на него драйвера, он должен это учитывать потому, что если он поставит выше количества максимальных об/мин, то вентилятор сгорит. Программисты, которые используют языки программирования высокого уровня не задумываются об этом, они просто задают, к примеру, запуск вентилятора в определенный момент времени и его остановку. Это довольно упрощенные определения. Однако и они тоже могут сделать так что бы он работал при определённых об/мин. Но если они не будут этого писать то вентилятор будет работать при своих обычных средних показателях об/мин.
Если говорить об отличиях с другими видами языков, то они могут быть еще более существенны. К примеру, разница между машинным кодом и высокоуровневым языком, как между небом и землей – в первом случае нужно работать с понятным машине шифром и набором принятых обозначений, во втором – использовать абстрактный язык с собственными правилами и синтаксисом.
А теперь рассмотрим самые популярные, высокоуровневые языки программирования, которые являются лидерами, и изучение которых способно дать максимальную отдачу.
СИ Шарп является основой для написания программ под операционную систему Microsoft Windows. Именно в недрах данной компании C# и зародился, используясь в первую очередь для разработки приложения на платформу .NET Framework. С его помощью довольно легко реализовывать взаимодействие с базами данных MS SQL, он прекрасно интегрируется с другими языками С и С++.
Один из нескольких языков семейства «С», который в наше время повсеместно используется для решения самых разнообразных задач:
- Создание логических ядер для сложного ПО;
- Разработки для сетей, серверов и других служб, которые их обслуживают;
- Для разработки компьютерных игр;
(Примечание: если поискать в интернете игры которые были сделаны на этом языке, то он ничего не даст. Единственное что он выдаёт это простые игры которые можно играть в интернете даже не скачивая их, их ещё называют Flach игры. Пожалуй именно эти игры и делают на этом языке программирования, однако точного ответа нет, а значит и пример привести тоже нельзя.)
- Для создания интерфейсов программ и других задач.
Даже обычный видеоплеер, которых сейчас хоть пруд пруди, чаще всего пишется именно на С++. Да, в нем могут быть элементы интерфейса (кнопки, переключатели и т.п.) разработанные на любом другом языке, но если речь идет о серьезных функциях, например, перекодировка видео в иной формат или загрузка большого файла порциями, то подобные задачи решает именно С++.
Java - строго типизированный объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems после этот язык купила компания Oracle. Разработка ведётся сообществом, организованным через Java Community Process, язык и основные реализующие его технологии распространяются по лицензии GPL. Права на торговую марку принадлежат корпорации Oracle.
Это высокоуровневый язык, который используется в написании ПО для компьютерной техники. В последние годы в него вдохнула вторую жизнь мобильная ОС «Android», программы на которую пишутся в основном именно на Java. Благодаря этому факту актуальность языка ничуть не убывает. Зная его можно писать приложения как для ПК, так и для других современных гаджетов (включая смарт часы и очки виртуальной реальности).
Благодаря Java сейчас компания Mojang всё растёт и растёт, потому что они написали игру под всеми известным названием Minecraft. И которую полюбили миллиарды людей, и играют и записывают видео по сей день на всеми известный YouTube. Так же в интернете тоже есть игры написанные на этом языке, и которые даже не надо скачивать.
И даже красивые элементы страницы можно сделать на языке Java Script. Я его тоже использовал когда писал калькулятор расчёта суммы, и он мне очень помог. В общем Java это многогранный язык программирования, и куда не посмотри, практически везде можно найти ему применение. Однако и в нём есть свои недостатки, он очень хорошо поглощает оперативную память, в прочем тут удивляться нечему, ведь это высокоуровневый язык программирования.
Если играть в Minecraft с 8 гигабайтами оперативной памяти, то он их все может использовать и не подавиться, и даже просит ещё при том что он будет тормозить, и выдавать разные неприятные глюки.