Синтаксис, семантика и прагматика 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Синтаксис, семантика и прагматика



О языке

Python — современный язык программирования, работающий на всех распространенных операционных системах для настольных компьютеров. Язык программирования Питон разрабатывается чуть более 20 лет. В настоящее время активно используется две версии языка — более старая версия 2 и современная версия.

Версия 2 более не развивается, но до сих пор ещеиспользуется, поскольку очень много программного обеспечения и библиотек разработано именно для версии 2. Между версиями есть существенная несовместимость, в том числе в синтаксисе команд ввода-вывода (программа на языке Python 2-й версии может не работать в 3-й версии и наоборот), но в целом они очень похожи. Мы будет использовать именно версию 3, как более современную и совершенную.

Python — современный универсальный интерпретируемый язык программирования.

Его достоинства:

1. Кроссплатформенность и бесплатность.

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

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

4. Богатая стандартная библиотека, возможность разработки промышленных приложений (для работы с сетью, GUI, базами данных и т.д.)

 

Python — один из самых простых и лаконичных языков. Научившись писать на нём в одну строчку сложные программы, которые на C и Pascal занимают десятки строк, вам уже не захочется добровольно возвращаться к этим языкам!

Большинство школьных олимпиад по информатике поддерживают язык Python. C 2015 года в текстах задач ЕГЭ примеры приводятся также и на языке Python.

Практика показывает, что задания ЕГЭ по информатике, в которых требуется написать программу, существенно проще решать с использованием языка Python, чем классических языков Бейсик, Паскаль, C/C++.

В университетах разных стран Python постепенно вытесняет языки С и Java, которые долгое время ис­пользовались для обучения студен­тов программированию. В список университетов и колледжей, в кото­рых изучается Python, входят более 30 учебных заведений США, в том числе Массачусетсский технологи­ческий институт (MIT) — ведущий мировой центр инженерного образо­вания.

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА

· Марк Лутц. Изучаем Python. 4-е издание – очень толстый и подробный учебник.

· Марк Саммерфилд. Программирование на Python 3 – менее толстый, не столь подробный учебник.

 

Где применяется Python

Язык программирования Python приобретает все большую популяр­ность. По данным одного из самых известных рейтингов ТЮВЕ, Python с 2008 года прочно удерживается в восьмерке наиболее популярных языков программирования.

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

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

· Google

· Яндекс

· Mail.Ru

· Apple(использует Python и Twisted для разработки сервера календарей iCal)

· IBM

· Европейская организация по ядерным исследова­ниям (CERN)

· DreamWorks

· Национальное управ­ление по воздухоплаванию и иссле­дованию космического пространства США (NASA)

· Nokia

Кроме того, Python активно используется в различных проектах:

· CherryPy — среда для разработки веб-приложений

· Django — среда для разработки веб-приложений

· Google App Engine — Google-хостинг

· Matplotlib — визуализация научных данных в стиле MATLAB

· BitTorrent — первый клиент-сервер для популярного протокола файлообменных сетей.

· Dropbox — приложение для прозрачной синхронизации данных на множестве компьютеров.

Следующие проекты используют Python для написания скриптов:

· Википедия использует Python для написания ботов

· OpenOffice.org — набор офисных программ, альтернатива Microsoft Office

· Vim — текстовый редактор

· GIMP

· Blender

· Cinema 4D

· Maya

· Inkscape

· Scribus

Python также активно используется разработчиками компьютерных игр (Eve Online, Civilization IV и др.)

Свободно распространяемые реа­лизации языка Python существуют для всех популярных операционных систем (Windows, Linux, Mac OS X, FreeBSD, Android, iOS и др.), что сразу снимает проблему лицензирования программного обеспечения.

 

Язык блок-схем

Для записи алгоритмов в школьном курсе часто используется два языка – псевдокод и язык блок-схем.

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


ПРИМЕР БЛОК-СХЕМЫ

Алгоритм вычисления корней квадратного уравнения

 

.

Та же программа на языке С++ будет выглядеть так:

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

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

 

Pascal

С

Комментарии к коду

Будьте аккуратны, С чувствителен к регистру букв, нельзя заменить print на Print или PRINT. Весь текст (за исключением текстовой строки "Hello, World!") нужно набирать в нижнем регистре.

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

С++

Комментарии к коду

Строка

#include <iostream>

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

cout << "Hello, World!\n"

не имело бы смысла.

Заметим, что, в отличие от Си, при подключении стандартных библиотек не указывается расширение .h.

Строка using namespace std; указывает, что ниже по тексту в рамках данной единицы трансляции (файла) можно обращаться к идентификаторам пространства имен std стандартной библиотеки без явного его указания.

Операция << ("выдать") отправляет свой второй параметр в поток, определяемый первым параметром.

В данном случае строка "Hello, World!" записывается в стандартный выходной поток cout.

Стандартная константа endl — аналог символа перевода строки '\n', и при желании может быть им заменена.

Как и в Си, целое значение, возвращаемое функцией main() считается возвращаемым системе значением программы. Если ничего не возвращается, система получит какое-то "мусорное" значение.

Java

Python

Perl

JavaScript

Assembler

О языке

Python — современный язык программирования, работающий на всех распространенных операционных системах для настольных компьютеров. Язык программирования Питон разрабатывается чуть более 20 лет. В настоящее время активно используется две версии языка — более старая версия 2 и современная версия.

Версия 2 более не развивается, но до сих пор ещеиспользуется, поскольку очень много программного обеспечения и библиотек разработано именно для версии 2. Между версиями есть существенная несовместимость, в том числе в синтаксисе команд ввода-вывода (программа на языке Python 2-й версии может не работать в 3-й версии и наоборот), но в целом они очень похожи. Мы будет использовать именно версию 3, как более современную и совершенную.

Python — современный универсальный интерпретируемый язык программирования.

Его достоинства:

1. Кроссплатформенность и бесплатность.

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

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

4. Богатая стандартная библиотека, возможность разработки промышленных приложений (для работы с сетью, GUI, базами данных и т.д.)

 

Python — один из самых простых и лаконичных языков. Научившись писать на нём в одну строчку сложные программы, которые на C и Pascal занимают десятки строк, вам уже не захочется добровольно возвращаться к этим языкам!

Большинство школьных олимпиад по информатике поддерживают язык Python. C 2015 года в текстах задач ЕГЭ примеры приводятся также и на языке Python.

Практика показывает, что задания ЕГЭ по информатике, в которых требуется написать программу, существенно проще решать с использованием языка Python, чем классических языков Бейсик, Паскаль, C/C++.

В университетах разных стран Python постепенно вытесняет языки С и Java, которые долгое время ис­пользовались для обучения студен­тов программированию. В список университетов и колледжей, в кото­рых изучается Python, входят более 30 учебных заведений США, в том числе Массачусетсский технологи­ческий институт (MIT) — ведущий мировой центр инженерного образо­вания.

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА

· Марк Лутц. Изучаем Python. 4-е издание – очень толстый и подробный учебник.

· Марк Саммерфилд. Программирование на Python 3 – менее толстый, не столь подробный учебник.

 

Где применяется Python

Язык программирования Python приобретает все большую популяр­ность. По данным одного из самых известных рейтингов ТЮВЕ, Python с 2008 года прочно удерживается в восьмерке наиболее популярных языков программирования.

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

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

· Google

· Яндекс

· Mail.Ru

· Apple(использует Python и Twisted для разработки сервера календарей iCal)

· IBM

· Европейская организация по ядерным исследова­ниям (CERN)

· DreamWorks

· Национальное управ­ление по воздухоплаванию и иссле­дованию космического пространства США (NASA)

· Nokia

Кроме того, Python активно используется в различных проектах:

· CherryPy — среда для разработки веб-приложений

· Django — среда для разработки веб-приложений

· Google App Engine — Google-хостинг

· Matplotlib — визуализация научных данных в стиле MATLAB

· BitTorrent — первый клиент-сервер для популярного протокола файлообменных сетей.

· Dropbox — приложение для прозрачной синхронизации данных на множестве компьютеров.

Следующие проекты используют Python для написания скриптов:

· Википедия использует Python для написания ботов

· OpenOffice.org — набор офисных программ, альтернатива Microsoft Office

· Vim — текстовый редактор

· GIMP

· Blender

· Cinema 4D

· Maya

· Inkscape

· Scribus

Python также активно используется разработчиками компьютерных игр (Eve Online, Civilization IV и др.)

Свободно распространяемые реа­лизации языка Python существуют для всех популярных операционных систем (Windows, Linux, Mac OS X, FreeBSD, Android, iOS и др.), что сразу снимает проблему лицензирования программного обеспечения.

 

Синтаксис, семантика и прагматика

 

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

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

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

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

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

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

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

 



Поделиться:


Последнее изменение этой страницы: 2016-12-10; просмотров: 1097; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.150.89 (0.058 с.)