Просмотр содержимого документа
«Развитие языков программирования»
Развитие языков программирования. Обзор языков программирования. Области применения языков программирования. Стандарты языков программирования. Среда проектирования. Компиляторы и интерпретаторы.
Сергеева Оксана Евгеньевна
Язык программирования – это формальная знаковая система, предназначенная для записи компьютерных программ.
На данный момент в энциклопедии Progopedia.ru описан 171 язык программирования
Сергеева Оксана Евгеньевна
Классификация языков программирования
Точной классификации языков программирования не существует. Наиболее часто встречается классификация по степени близости ЯП к архитектуре компьютера: • ЯП низкого уровня; • ЯП высокого уровня; • ЯП сверхвысокого уровня
Сергеева Оксана Евгеньевна
ЯП низкого уровня
- Языки низкого уровня — это средство записи инструкций компьютеру простыми приказамикомандами на аппаратном уровне. Языки низкого уровня: • машинно-ориентированные; • плохо приспособлены для использования человеком. Для упрощения программирования был разработан язык символического кодирования – Автокод (язык ассемблера или Ассемблер).
Сергеева Оксана Евгеньевна
ЯП высокого уровня
- Языки программирования высокого уровня это языки, которые допускают описание задачи в наглядном, легко воспринимаемом виде. Они не ориентированы на систему команд той или иной ЭВМ. К языкам программирования высокого уровня относятся Бейсик, Фортран, Паскаль, Си и др
Сергеева Оксана Евгеньевна
ЯП сверхвысокого уровня
- ЯП сверхвысокого уровня – это ЯП с высоким уровнем абстракции. В отличие от языков программирования высокого уровня, где описывается принцип « как нужно сделать » , в сверхвысокоуровневых языках программирования описывается лишь принцип « что нужно сделать » . К языкам программирования сверхвысокого уровня можно отнести Алгол-68.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Язык Си является компилируемым и статически типизированным. Он разработан в 70-х годах Деннисов Ритчи. На его основе в дальнейшем были созданы такие языки как С++ и С#, Java.
Сергеева Оксана Евгеньевна
Обзор ЯП
- C++ - мощный язык, предназначенный для создания как низкоуровневых утилит и драйверов, так и весьма внушительных приложений и комплексов программ. Создателем С++ является Бьёрн Страуструп. Разработка языка началась в 1979 году. Первый выпуск C++ для коммерческого использования состоялся в 1985 году. В 1989 году вышла вторая версия языка.
Сергеева Оксана Евгеньевна
Обзор ЯП
- С# - современный объектно-ориентированный язык, в основе которого лежат языки С и С++. Разработан в 1998—2001 годах группой инженеров под руководством Андерсa Хейлсбергa в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Java - это строго типизированный объектноориентированный язык программирования. Разрабатывался с 1991 по 1995 год. Изначально язык назывался Oak, разрабатывался Джеймсом Гослингом для программирования бытовых электронных устройств. Затем он был переименован в Java и стал использоваться для написания клиентских приложений и серверного программного обеспечения.
Сергеева Оксана Евгеньевна
Обзор ЯП
- JavaScript - прототипно-ориентированный сценарный язык программирования, предназначенный для создания небольших клиентских и серверных приложений для Internet. JavaScript изначально создавался для того, чтобы сделать web-странички « живыми » .
Сергеева Оксана Евгеньевна
Обзор ЯП
- PHP – это интерпретируемый язык общего назначения с открытым исходным кодом (скриптовый язык). PHP создавался специально для ведения webразработок. Синтаксис языка берет начало из C, Java и Perl, и является легким для изучения.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Python – это высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика, читаемости кода и на разработку web-приложений.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Ruby – это язык программирования для разработки web-приложений. Разработан Юкихиро Мацумото в 1995 году. Основное назначение Ruby — создание простых и понятных программ, где важна не скорость работы программы, а малое время разработки, понятность и простота синтаксиса.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Perl – это язык программирования общего назначения. Особенностью языка считается возможность работы с текстом. Сейчас он используется для выполнения широкого спектра задач, включая системное администрирование, веб-разработку, сетевое программирование, игры, биоинформатику, разработку графических пользовательских интерфейсов.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Kotlin — достаточно молодой язык, который разрабатывается и спонсируется компанией JetBrains. Он стал официальным языком разработок для Android. Официальный релиз продукта был выпущен в 2016 году.
Сергеева Оксана Евгеньевна
Обзор ЯП
- Swift – это открытый мультипарадигмальный компилируемый язык программирования общего назначения. Создан компанией Apple в первую очередь для разработчиков iOS и macOS.
Сергеева Оксана Евгеньевна
Области применения ЯП
- • научные вычисления (языки C++, FORTRAN, Java); • системное программирование (языки C++, Java); • обработка информации (языки C++, COBOL, Java); • искусственный интеллект (LISP, Prolog); • издательская деятельность (Postscript, TeX); • удаленная обработка информации (Perl, PHP, Java, C++); • описание документов (HTML, XML).
Сергеева Оксана Евгеньевна
Среда проектирования
- Среда проектирования – это средство разработки программы, предоставляющее собой удобный графический интерфейс разработки и большой спектр сервисов, включающих управление версиями хранимых данных, библиотеки классов, мастера создания шаблонов приложений и т.п.
Сергеева Оксана Евгеньевна
Транслятор
- Для того, чтобы компьютер мог понять программу, написанную на каком-то языке программирования, необходима специальная программа (техническое средство), которая будет преобразовывать код исходной программы в машинный код. Такая программа называется транслятором.
Сергеева Оксана Евгеньевна
- омпилятор и интерпретатор Транслятор Компилятор Интерпретатор
Сергеева Оксана Евгеньевна
Компилятор
- Компилятор целиком считывает программу, проводит её пошаговый анализ, оптимизирует её и целиком переводит её в машинный код. Исполняемый файл, получившийся в результате компиляции, может быть запущен без наличия компилятора.
Сергеева Оксана Евгеньевна
Интерпретатор
- В отличие от большинства компиляторов, интерпретатор обрабатывает, а затем исполняет не всю исходную программу, а отдельно каждую её строку, пока программа не будет закончена. Интерпретатор позволяет работать в интерактивном режиме, но исходный код не может работать отдельно без наличия интерпретатора.
Сергеева Оксана Евгеньевна
Стандарты ЯП
- Для того чтобы компиляция одной и той же программы различными компиляторами всегда давала одинаковый результат, разрабатываются стандарты языков программирования. Существует ряд организаций, целенаправленно занимающихся вопросами стандартизации.
Сергеева Оксана Евгеньевна
Стандарты ЯП
- • американский национальный институт стандартов ANSI (American National Standards Institute), • институт инженеров по электротехнике и электронике IEEE (Institute of Electrical and Electronic Engineers), • организация международных стандартов ISO (International Organization for Standardization).
Сергеева Оксана Евгеньевна
Стандарты ЯП
- При создании языка выпускается частный стандарт, определяемый разработчиками языка. Если язык получает широкое распространение, то появляются различные компиляторы, которые не точно следуют частному стандарту. Для приведения наиболее популярных реализаций языка в соответствие друг с другом разрабатывается согласительный стандарт. В процессе развития языка могут появляться новые стандарты, отражающие современные нововведения.
Сергеева Оксана Евгеньевна
Самостоятельно
- Создайте презентацию-обзор на язык программирования, в соответствии с вашим вариантом. Вариант определяется номером вашего компьютера. Варианты:
Сергеева Оксана Евгеньевна
- ABAP
- Abundance
- Action!
- Amiga-E
- AMMORIA
- APL
- Assembler
- AWK
- Axum
- Baltie
- BARSIC
- Basic
- BCPL
- Befunge
- Brainfuck
- Cat
- Ceylon
- Chef
- CHIP-8
- Clarion CMS-2
- COBOL
- Cyclone
- Dart
- DASL
- Dierickx D
- Dylan
- Eiffel
- Entropy
- Factor
- Falcon
- FALSE
- FOCAL
- Foma
- Funky
- G-code
- GAP
- Go
- Grocery List
- Groovy
- Hack VM
- Hanoi Love
- Haskell HQ9+
- Icon
- IDL
- Instruction List
- INTERCAL
- Io
- ISWIM
- KRC
- LabVIEW
- Ladder Diagram
- Limbo
- LOLCODE
- Lua
- LUX
- Malbolge
- MATLAB
- Mercury
- Mesa
- Miranda
- Nemerle
- Nesla
- Nimrod
- Objeck
- Objective-C
- Omgrofl
- Onyx
- Opa
- Oz
- Pascal
- PHP
- Picat
- Piet
- Pike
- Plankalkül
- POP-11
- PowerShell
- Processing
- REFAL
- REXX
- Roco
- RPL
- Ruby
- Rust
- S-lang
- Sanscript
- SASL
- Scala
- Scratch
- Seed7
- Shakespeare
- SNOBOL
- Sparkel
- SQL
- Squirrel
- STAF/STAX
- Tcl
- TermWare
- TeX
- Unix shell
- Unlambda
- Vala
- VHDL
- Whirl
- Whitespace
- Wolfram Mathematica
- X10
- XC
- Аналитик
- Глагол
- ДССП
- ПРОФТ
- РАПИРА
Сергеева Оксана Евгеньевна