Лаба 1. Билеты. Системы и языки программирования система программирования
Скачать 0.78 Mb.
|
16. СИСТЕМЫ И ЯЗЫКИ ПРОГРАММИРОВАНИЯ Система программирования Системы программирования - это комплекс инструментальных программных средств, предназначенный для разработки программ на одном или нескольких языках программирования. Системы программирования предоставляют сервисные возможности. Современные системы программирования обычно предоставляют пользователям мощные и удобные средства разработки программ. В них входят: компилятор или интерпретатор; интегрированная среда разработки; средства создания и редактирования текстов программ; обширные библиотеки стандартных программ и функций; отладочные программы, т.е. программы, помогающие находить и устранять ошибки в программе; "дружественная" к пользователю диалоговая среда; многооконный режим работы; мощные графические библиотеки; утилиты для работы с библиотеками встроенный ассемблер; встроенная справочная служба; другие специфические особенност VS, PyCharm, KOMODO, Lion Microsoft Visual Studio - платная, но есть версия Community Edition для некоммерческой разработки. Поддерживает разработку на языках: Ajax, ASP.NET, DHTML, JavaScript, JScript, Visual Basic, Visual C#, Visual C++, Visual F#, XAML и другие. NetBeans - бесплатная, поддерживаемые языки: C, C++, C++ 11, Fortan, HTML 5, Java, PHP и другие. Eclipse - бесплатный редактор, первоначально создавался для Java-разработки, поддерживаемые языки: C, C++, Java, Perl, PHP, Python, Ruby и другие. ЯП Язык программирования — формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например, компьютера) Низкоуровневые и ВысокоуровневыеЯзык машинных команд и ассемблер являются языками низкого уровня. Язык низкого уровня – это язык программирования, предназначенный для определенного типа компьютера и отражающий его внутренний машинный код; языки низкого уровня часто называют машинно-ориентированными языками. Их сложно конвертировать для использования на компьютерах с разными центральными процессорами, а также довольно сложно изучать, поскольку для этого требуется хорошо знать внутренние принципы работы компьютера. Язык высокого уровня – это язык программирования, предназначенный для программиста; он не зависит от внутренних машинных кодов компьютера любого типа. Языки высокого уровня используют для решения проблем, и поэтому их часто называют проблемно-ориентированными языками. Каждая команда языка высокого уровня эквивалентна нескольким командам в машинных кодах, поэтому программы, написанные на языках высокого уровня, более компактны, чем аналогичные программы в машинных кодах. Язык программирования Си (английское название — С) создавался как инструментальный язык для разработки операционных систем, трансляторов, баз данных и других системных и прикладных программ. Далее ООП С++ Компилируемые и интерпретируемые компиляция полный предварительный перевод — лектор заранее передает текст выступления переводчику, тот записывает перевод, размножает его и раздает слушателям (после чего лектор может и не выступать) При компиляции в память компьютера загружается программа-компилятор. Она воспринимает текст программы на языке высокого уровня как исходную информацию. После завершения компиляции получается программа на языке машинных команд. Затем в памяти остается только программа на языке машинных команд, которая выполняется, и получаются требуемые результаты. + это скорость исполнения! интерпретация синхронный перевод — лектор читает доклад, переводчик одновременно с ним слово в слово переводит выступление. Интерпретатор в течение всего времени работы программы находится во внутренней памяти. В ОЗУ помещается и программа на языке высокого уровня. Интерпретатор в последовательности выполнения алгоритма «читает» очередной оператор программы, переводит его в команды и тут же выполняет эти команды. Java, JavaScript, C#, Python Прикладным программам стала требоваться кроссплатформенность (возможность работать под любой ОС и на любой платформе) и на фоне возросшей мощности компьютерного "железа" востребованы стали интерпретируемые языки, т.к. для обеспечения их кроссплатформенности "достаточно" сделать интерпретатор языка под нужную ОС и платформу. Универсальные и специализированныеКлассификация говорит сама за себя. Есть языки, на которых можно в принципе написать любую программу, но не всегда это можно сделать, например, быстро. Или такая программа не обязательно будет оптимально быстро работать. Типичный универсальный язык всех времен и народов: С++. И в этом его большой плюс. А, может, даже два плюса )). Специализация в языках программирования касается, как правило, либо предметной области, например, математические вычисления (Fortran, F#), искусственный интеллект (LISP), веб-разработка (PERL, PHP), компьютерные игры (Unity, Lua), бухгалтерия (1С) и т.д., либо какой-то технологии программирования, например, многопоточность как в языке Cи-Омега (Cw) или способ записи операторов как в F#. Алгоритмические и Языки описания данныхАлгоритмические: Pascal, C++, Java, C# Языки описания данных: XML, XAML, JSON, HTML, DDL SQL Алгоритмические языки, конечно, тоже умеют описывать данные, но в основном предназначены для создания больших и сложных программ, которые описывают действия, то есть алгоритмы. Объектно-Ориентированные и Структурные языки программированияОбъектно-ориентированный язык программирования (ОО-язык) — язык, построенный на принципах объектно-ориентированного программирования. В основе концепции объектно-ориентированного программирования лежит понятие объекта — некой сущности, которая объединяет в себе поля (данные) и методы (выполняемые объектом действия). Структурные языки программирования. В основе этих языков лежит представление программы в виде иерархической структуры блоков. Любая программа состоит из трёх базовых управляющих структур: последовательность, ветвление, цикл. 17. МАШИННО-ОРИЕНТИРОВАННЫЕ, ПРОБЛЕМНООРИЕНТИРОВАННЫЕ И УНИВЕРСАЛЬНЫЕ ЯЗЫКИ. АЛФАВИТ, СИНТАКСИС И СЕМАНТИКА Машинно-ориентированное программирование — это процесс создания программы, где исходный код пишется на машинно-ориентированном языке (например, на языке-ассемблере). Программы, написанные на машинно-ориентированных языках чаще всего являются не кроссплатформенными. Хотя, в качестве исключения, можно взять в пример программы, которые не используют системные вызовы, относящиеся к определённой ОС, а также, использующие машинные операторы, которые есть во всех известных процессорных архитектурах. Машинно-ориентированное программирование имеет смысл быть в сфере системного программирования, но в некоторых случаях его применение является бесполезным (а иногда даже невозможным). Вот самые распространённые случаи его применения: Программирование некоторых микроконтроллеров (например, создание драйвера клавиатуры). Создание программ для различных дисплеев, станков и так далее (что можно отнести к прошлому пункту). Создания загрузчика для ОС. Создание ОС Проблемно-ориентированные предназначены для описания процессов обработки информации в более узкой, специфической области. Наиболее известными языками этой группы являются: РПГ, Лисп, АПЛ, GPSS. Объектно-ориентированные – языки, ориентированные на разработку программных приложений для широкого круга разнообразных по сфере приложения задач, имеющих общность в реализуемых компонентах. Универсальные языки. Классификация говорит сама за себя. Есть языки, на которых можно в принципе написать любую программу, но не всегда это можно сделать, например, быстро. Или такая программа не обязательно будет оптимально быстро работать. Типичный универсальный язык всех времен и народов: С++. И в этом его большой плюс. А, может, даже два плюса )). |