Добавлен: 31.03.2023
Просмотров: 231
Скачиваний: 2
СОДЕРЖАНИЕ
ГЛАВА 1. СИСТЕМЫ ПРОГРАММИРОВАНИЯ
1.1 Понятие о языках программирования высокого уровня
1.2 Виды языков программирования
ГЛАВА 2. ОБЗОР СОВРЕМЕННЫХ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ ДЛЯ РАБОТЫ С «БОЛЬШИМИ ДАННЫМИ»
2.1. Возможности синтаксиса и использования
ВВЕДЕНИЕ
Актуальность. В языках высокого уровня особенности конкретных компьютерных архитектур не учитываются, поэтому написанные программы легко могут быть перенесены на другой компьютер. Зачастую достаточным является компиляция программы под определенную архитектурную и операционную систему.
Разработка программ на языках высокого уровня значительно проще и ошибок намного меньше. К тому же время разработки программы значительно уменьшается, что является особенно важным фактором при работе над сложными программными проектами. Недостаток некоторых языков высокого уровня состоит в большом размере программ по сравнению с программами на языках низкого уровня. В то же время текст программ на языке высокого уровня гораздо меньше, но в байтах код, написанный на ассемблере, будет более компактным. Поэтому языки высокого уровня преимущественно используют для создания программного обеспечения для компьютеров и вычислительных устройств с большим объемом памяти. Языки же низкого уровня используются для написания программ к устройств, для которых критичным является размер программы. Языки высокого уровня делятся на универсальные и проблемно-ориентированные. Наиболее распространенные универсальные языки C#, C++, Basic, Pascal (Delphi) используются для разработки Windows-приложений. Большой вклад в программирование на начальных этапах внесли языки Fortran, Cobol, Algol, C и др.
Языки программирования для разработки Интернет-приложений скорее относятся к универсальным языкам. К ним относятся современные версии C#, Basic, J#.
Предмет исследования –приложения в языках программирования высокого уровня.
Цель курсовой работы: Обзор языков программирования высокого уровня.
Задачи, направленные на достижение цели курсовой работы:
- проанализировать системы программирования;
- изучить возможности языка программирования;
- изучить возможности языка программирования высокого уровня;
- выявить особенности Паскаль, C++, Python.
Рассмотрению вопроса графических приложений в языках программирования высокого уровня посвящены работы авторов И. А. Бабушкиной, С. М. Окулова, О. Е. Масленниковой, И. В. Гавриловой, Л. Г. Гагариной, Е. В. Кокоревой и других.
ГЛАВА 1. СИСТЕМЫ ПРОГРАММИРОВАНИЯ
1.1 Понятие о языках программирования высокого уровня
В мире насчитывается несколько сотен символических языков программирования различных структур и возможностей, которые могут быть классифицированы по различным признакам.
Рисунок 1. Классификация языков программирования
Главным квалификационным признаком языков и, следовательно, систем программирования является принадлежность к одному из оформившихся к настоящему времени стилей программирования, каждому из которых соответствует своя собственная модель вычислений.
Языки программирования – это формальные языки специально созданные для общения человека с компьютером. Каждый язык программирования, равно как и «естественный» язык (русский, английский и т.д.), имеет алфавит, словарный запас свои грамматику и синтаксис, а также семантику[7].
Алфавит – фиксированный для данного языка набор основных символов, допускаемых для составления текста программы на этом языке.
Синтаксис – система правил, определяющих допустимые конструкции языка программирования из букв алфавита.
Семантика – система правил однозначного толкования отдельных языковых конструкций, позволяющих воспроизвести процесс обработки данных.
При описании языка и его применении используют понятия языка. Понятие подразумевает некоторую синтаксическую конструкцию и определяемые ею свойства программных объектов или процесса обработки данных[4].
Взаимодействие синтаксических и семантических правил определяют те или иные понятия языка, например, операторы, идентификаторы, переменные, функции и процедуры, модули и т.д. В отличие от естественных языков правила грамматики и семантики для языков программирования', как и для всех формальных языков, должны быть явно, однозначно и четко сформулированы.
Языки программирования, имитирующие естественные языки, обладающие укрупненными командами, ориентированными на решение прикладных содержательных задач, называют языками «высокого уровня». В настоящее время насчитывается несколько сотен таких языков, а если считать и их диалекты, то это число возрастет до нескольких тысяч. Языки программирования высокого уровня существенно отличаются от машинно-ориентированных (низкого уровня) языков. Во-первых, машинная программа в конечном счете записывается с помощью лишь двух символов 0 и 1. Во-вторых, каждая ЭВМ имеет ограниченный набор машинных операции, ориентированных на структуру процессора. Как правило, этот набор состоит in сравнительно небольшого числа простейших операций, типа: переслать число и ячейку; считать число из ячейки; увеличить содержимое ячейки на +1 и т.п. Команда на машинном языке содержит очень ограниченный объем информации, поэтому она обычно определяет простейший обмен содержимого ячеек памяти, элементарные арифметические и логические операции. Команда содержит код и адреса ячеек, с содержимым которой выполняется закодированное действие[2].
Языки программирования высокого уровня имеют следующие достоинства:
− алфавит языка значительно шире машинного, что делает его гораздо более выразительным и существенно повышает наглядность и понятность текста;
− набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса;
− конструкции команд (операторов) отражают содержательные виды обработки данных и задаются в удобном для человека виде;
− используется аппарат переменных и действия с ними;
− поддерживается широкий набор типов данных.
Таким образом, языки программирования высокого уровня являются машинно-независимыми и требуют использования соответствующих программ-переводчиков (трансляторов) для представления программы на языке машины, на которой она будет исполняться[8].
1.2 Виды языков программирования
В данном пункте рассмотрим пополняющийся список популярных языков программирования, разметок и протоколов. Ссылки на описание каждого из них [21]:
Объектно-ориентированные языки Объектно-ориентированные языки стали дальнейшим уровнем развития процедурных языков, основной концепцией которых есть совокупность программных объектов. Написание программы на языке представляется в виде последовательности создания экземпляров объектов и использование их методов. К ним относятся из первых языков Simula и SmallTalk, далее C++, Java.
Декларативные языки программирования В декларативном программировании задается спецификация решения задачи, то есть дается описание того, что представляет собой проблема и какой ожидается результат. Программы, созданные с помощью декларативного языка, не содержат переменные и операторы присваивания. К декларативным языкам можно отнести SQL и HTML. К подвидам декларативного программирования относится функциональное и логическое программирование.
Функциональные языки программирования Функциональные языки являются языками искусственного интеллекта. Программа, написанная на функциональном языке, состоит из последовательности функций и выражений, которые необходимо вычислить. Основной структурой данных является связный список. Функциональное программирование принципиально отличается от процедурного. Основными функциональными языками являются Lisp, Miranda, Haskel. Логические языки программирования Языки, ориентированные на решение задач без описания алгоритмов, языки искусственного интеллекта. Представителем логического программирования является Prolog, которым написано большинство экспертных систем.
Языки сценариев (скрипты) Языки относятся к объектно-ориентированным языкам, используются для написания программ, которые исполняются в определенной программной среде. Тексты программ, написанные на языке сценариев, можно включать в тело Html-документа. Первыми скриптами были Perl и Python, которые изначально были разработаны для операционной системы Unix, а уже в дальнейшем появились версии языков для операционных систем Windows и Macintosh. Для написания программ на языке сценариев необходимо знание процедур и функций системных библиотек. Языки, ориентированные на данные Языки ориентированы на работу с одним определенным типом данных. Например, APL работает с матрицами и векторами, Snobol обрабатывает строки, SETL выполняет операции над множествами. Особое развитие получили языки для работы с базами данных: 3GL, PL/SQL, FoxPro.
ГЛАВА 2. ОБЗОР СОВРЕМЕННЫХ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ ДЛЯ РАБОТЫ С «БОЛЬШИМИ ДАННЫМИ»
2.1. Возможности синтаксиса и использования
Разработчики программного обеспечения любят спорить о том, какой язык программирования является лучшим. Однако критерий того, что является «лучшим», сбивает с толку. Когда мы обсуждаем разработку программного обеспечения для использования в машинном обучении и областях науки, связанных с данными, этот вопрос вечен и никогда не потеряет своей актуальности.
Лучшими языками программирования являются языки, объединяющие в себе простоту синтаксиса и использования, что является довольно субъективным критерием, но такие факторы, как безопасность, скорость, количество библиотек и поддержка сообщества такими не являются, поэтому при выборе будет происходить упор на них. Итак, давайте рассмотрим шесть лучших языков программирования для работы с данными и машинным обучением.
Scala [1]
Scala является популярным языком программирования, и, скорее всего, большинство ученых, работающих с данными, сталкивались с ним. Это мультипарадигмальный язык, поддерживающий использование открытого исходного кода. Язык был разработан в 2003 году Мартином Одерским. Scala – это сокращенная форма «Scalable Language». Он был создан для того, чтобы излагать стандартные основы программирования элегантным, безопасным и лаконичным образом.
Если вы знакомы с синтаксисом Java, вы можете быстро освоить Scala. Изучение этого языка значительно проще, если вы знаете другие языки, такие как Python, C или C ++. Многие предпочитают Scala, так как он стабильный, гибкий, быстрый и масштабируемый. Написание программного кода в Scala организуется и выполняется довольно быстрее по сравнению с Python. При этом его можно применять Scala для создания прибыльных продуктов, которые работают с огромным количеством данных.
Julia [2]
Julia набирает популярность в мире данных и машинного обучения. Некоторые эксперты уже сравнивают его с Python, что, возможно, является преждевременным выводом, но это ни в коей мере не уменьшает возможности Julia.
Этот язык программирования является современным, высокопроизводительным и значительным, был создан группой математиков из Массачусетского технологического института (MIT) и ученых-компьютерщиков. Данный язык, в основном, применяется для манипуляции большим количеством данных и научных расчетов. Если вы раньше работали с такими языками как Matlab, R или Python, то Вы быстро привыкнете к Julia. Скорость Julia делает его отличным языком для машинного обучения и науки о данных.
JavaScript
Если вы пытаетесь войти в науку о данных как разработчик и не хотите изучать новый язык, JavaScript – это Ваш выбор. JavaScript - легкий, простой в реализации и мощный язык программирования.
Прежде чем приступить к работе с JavaScript, не мешало бы иметь опыт работы с HTML и иметь опыт работы с концепциями объектно-ориентированного программирования. Это дает вам основную идею разработки онлайн-приложений. Это также становится полезным, когда Вы расширяете свой модуль машинного обучения в браузере или мобильных приложениях. Помимо этого, в JavaScript есть замечательные библиотеки для разработки информационных панелей и визуализации данных. Многие методы машинного обучения, такие как сочинение музыки, распознавание возражений и жестов и т. д., могут быть реализованы с помощью TensorFlow.js, который является динамической библиотекой JavaScript для работы с данными.
Swift [3]
Если вы являетесь поклонником продукции Apple и Вам нравится использовать их многочисленные устройства и их привлекательную iOS, скорее всего, вам понравится Swift. Этот язык программирования является открытым, гибким и простым. Apple создала его для приложений OS x и iOS. Swift основан на лучшем из Objective-C и C, но без ограничений адаптируемости C. Это отличный язык для начинающих из-за его точного, но обширного синтаксиса и быстрой скорости работы приложений.