Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save anonymous/93de47a77e8aabfe56e9fd7cbb3e0b26 to your computer and use it in GitHub Desktop.
Save anonymous/93de47a77e8aabfe56e9fd7cbb3e0b26 to your computer and use it in GitHub Desktop.
Где и как применяются языки программирования

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


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



Классификация и обзор языков программирования
Современные языки программирования
Развитие языков программирования


























Актуализация и проверка знаний: На прошлом занятии мы познакомились с понятием алгоритма, алгоритмическими конструкциями, свойствами алгоритма и основами алгоритмизации. Давайте вспомним, что такое алгоритм, какими свойствами он обладает, как записывается, что такое программа? Алгоритм может быть задан следующими способами: Изложение нового материала время 40 мин. Для представления алгоритма в виде, понятном компьютеру, служат языки программирования. Сначала разрабатывается алгоритм действий, а потом он записывается на одном из таких языков. В итоге получается текст программы - полное, законченное и детальное описание алгоритма на языке программирования. Затем этот текст программы специальными служебными приложениями, которые называются трансляторами, либо переводится в машинный код язык нулей и единиц , либо исполняется. Транслятор — средство для преобразования текстов из одного языка, понятного человеку, в другой язык, понятный компьютеру. Трансляторы бывают двух типов — интерпретаторы и компиляторы. Отличие между ними заключается в том, что интерпретатор последовательно анализирует и исполняет каждую строку программы, а компилятор проводит полный анализ написанной программы и формирует уже готовый к исполнению машинный код. Языки программирования - искусственные языки. От естественных они отличаются ограниченным числом "слов", значение которых понятно транслятору, и очень строгими правилами записи команд операторов. Для написания текста программы можно использовать обычный текстовый редактор, а затем с помощью компилятора перевести её в машинный код, то есть получить исполняемую программу. Но проще и удобнее пользоваться специальными интегрированными средами программирования. На заре компьютерной эры, в е годы XX века, программы писались на машинном языке и представляли собой очень длинные последовательности нулей и единиц. Составление и отладка таких программ было чрезвычайно трудоемким делом. В 60—е годы для облегчения труда программистов начали создаваться языки программирования высокого уровня, формальные языки, кодирующие алгоритмы в привычном для человека виде в виде предложений. Такие языки программирования строились на основе использования определенного алфавита и строгих правил построения предложений синтаксиса. Наиболее широко распространенным типом языков программирования высокого уровня являются процедурные языки. В таких языках широко используются управляющие конструкции операторы , которые позволяют закодировать различные алгоритмические структуры линейную, ветвление, цикл. Одним из первых процедурных языков программирования был известный всем Бейсик Basic , созданный в году. В течение последующего времени Бейсик развивался, появлялись его различные версии MSX-Basic, Бейсик-Агат, QBasic и др. Другим широко распространенным языком программирования алгоритмического типа является Pascal. Basic Бейсик создавался в х годах в качестве учебного языка и очень прост в изучении. По популярности занимает первое место в мире. Благодаря языкам программирования высокого уровня, программы которые мы будем составлять, будут больше напоминать инструкции, обращенные к человеку, нежели к машине. Однако следует иметь в виду, что в языках программирования не допускаются даже незначительные с точки зрения человека нарушения в правилах написания программ. Ведь даже маленькая неточность может вызвать невыполнимость программы или трудно уловимую ошибку. В языках программирования высокого уровня программа - это перечень действий. Исполнение этих действий определено в самом языке программирования, и их принято называть операторами. Язык программирования может быть представлен в виде набора спецификаций, определяющих его синтаксис и семантику. Для многих широко распространённых языков программирования созданы международные стандарты. Специальные организации проводят регулярное обновление и публикацию спецификаций и формальных определений соответствующего языка. В рамках таких комитетов продолжается разработка и модернизация языков программирования, и решаются вопросы о расширении или поддержке уже существующих и новых языковых конструкций. Современные цифровые компьютеры обычно являются двоичными и данные хранят в двоичном бинарном коде хотя возможны реализации и в других системах счисления. Эти данные, как правило отражают информацию из реального мира имена, банковские счета, измерения и др. Особая система, по которой данные организуются в программе, — это система типов языка программирования; разработка и изучение систем типов известна под названием теория типов. Языки могут быть классифицированы как системы со статической типизацией и языки с динамической типизацией. Статически-типизированные языки могут быть в дальнейшем подразделены на языки с обязательной декларацией, где каждая переменная и объявление функции имеет обязательное объявление типа, и языки с выводимыми типами. Иногда динамически-типизированные языки называются латентно-типизированными. Системы типов в языках высокого уровня позволяют определять сложные, составные типы, так называемые структуры данных. Как правило, структурные типы данных образуются как декартово произведение базовых атомарных типов и ранее определённых составных типов. Основные структуры данных списки, очереди, хеш-таблицы, двоичные деревья и пары часто представлены особыми синтаксическими конструкциями в языках высокого уровня. Такие данные структурируются автоматически. Существует несколько подходов к определению семантики языков программирования. Наиболее широко распространены разновидности следующих трёх: При описании семантики в рамках операционного подхода обычно исполнение конструкций языка программирования интерпретируется с помощью некоторой воображаемой абстрактной ЭВМ. Деривационная семантика описывает последствия выполнения конструкций языка с помощью языка логики и задания пред- и постусловий. Денотационная семантика оперирует понятиями, типичными для математики — множества, соответствия, а также суждения, утверждения и др. Язык программирования строится в соответствии с той или иной базовой моделью вычислений и парадигмой программирования. Несмотря на то, что большинство языков ориентировано на императивную модель вычислений, задаваемую Фон Неймановской архитектурой ЭВМ, существуют и другие подходы. Можно упомянуть языки со стековой вычислительной моделью Forth, Factor, Postscript и др. В настоящее время также активно развиваются проблемно-ориентированные, декларативные и визуальные языки программирования. Компилируемые и интерпретируемые языки. Языки программирования могут быть разделены на компилируемые и интерпретируемые. Программа на компилируемом языке при помощи специальной программы компилятора преобразуется компилируется в набор инструкций для данного типа процессора машинный код и далее записывается в исполнимый модуль, который может быть запущен на выполнение как отдельная программа. Другими словами, компилятор переводит исходный текст программы с языка программирования высокого уровня в двоичные коды инструкций процессора. Если программа написана на интерпретируемом языке, то интерпретатор непосредственно выполняет интерпретирует исходный текст без предварительного перевода. При этом программа остаётся на исходном языке и не может быть запущена без интерпретатора. Можно сказать, что процессор компьютера — это интерпретатор машинного кода. Кратко говоря, компилятор переводит исходный текст программы на машинный язык сразу и целиком, создавая при этом отдельную исполняемую программу, а интерпретатор выполняет исходный текст прямо во время исполнения программы. Разделение на компилируемые и интерпретируемые языки является несколько условным. Так, для любого традиционно компилируемого языка, как, например, Паскаль, можно написать интерпретатор. Для любого интерпретируемого языка можно создать компилятор — например, язык Лисп, изначально интерпретируемый, может компилироваться без каких бы то ни было ограничений. Создаваемый во время исполнения программы код может так же динамически компилироваться во время исполнения. Как правило, скомпилированные программы выполняются быстрее и не требуют для выполнения дополнительных программ, так как уже переведены на машинный язык. Вместе с тем, при каждом изменении текста программы требуется её перекомпиляция, что создаёт трудности при разработке. Кроме того, скомпилированная программа может выполняться только на том же типе компьютеров и, как правило, под той же операционной системой, на которую был рассчитан компилятор. Чтобы создать исполняемый файл для машины другого типа, требуется новая компиляция. Интерпретируемые языки обладают некоторыми специфическими дополнительными возможностями, кроме того, программы на них можно запускать сразу же после изменения, что облегчает разработку. Программа на интерпретируемом языке может быть зачастую запущена на разных типах машин и операционных систем без дополнительных усилий. Однако интерпретируемые программы выполняются заметно медленнее, чем компилируемые, кроме того, они не могут выполняться без дополнительной программы-интерпретатора. Некоторые языки, например, Java и C , находятся между компилируемыми и интерпретируемыми. А именно, программа компилируется не в машинный язык, а в машинно-независимый код низкого уровня, байт-код. Далее байт-код выполняется виртуальной машиной. Для Java байт-код исполняется виртуальной машиной Java Java Virtual Machine, JVM , для C — Common Language Runtime. Подобный подход в некотором смысле позволяет использовать плюсы как интерпретаторов, так и компиляторов. Следует упомянуть также оригинальный язык Форт Forth имеющий и интерпретатор и компилятор. Современные языки программирования рассчитаны на использование ASCII, то есть доступность всех графических символов ASCII является необходимым и достаточным условием для записи любых конструкций языка. Управляющие символы ASCII используются ограниченно: Ранние языки, возникшие в эпоху 6-битных символов, использовали более ограниченный набор. Например, алфавит Фортрана включает 49 символов включая пробел: Заметным исключением является язык APL, в котором используется очень много специальных символов. Использование символов за пределами ASCII например, символов KOI8-R или символов Юникода зависит от реализации: В СССР существовали языки, где все ключевые слова писались русскими буквами, но большую популярность подобные языки не завоевали исключение составляет. Встроенный язык программирования 1С: Процедурное императивное программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в х годах. Теоретической моделью процедурного программирования служит алгоритмическая система под названием Машина Тьюринга. Программа на процедурном языке программирования состоит из последовательности операторов инструкций , задающих процедуру решения задачи. Основным является оператор присваивания, служащий для изменения содержимого областей памяти. Концепция памяти как хранилища значений, содержимое которого может обновляться операторами программы, является фундаментальной в императивном программировании. Выполнение программы сводится к последовательному выполнению операторов с целью преобразования исходного состояния памяти, то есть значений исходных данных, в заключительное, то есть в результаты. Таким образом, с точки зрения программиста имеются программа и память, причем первая последовательно обновляет содержимое последней. Процедурный язык программирования предоставляет возможность программисту определять каждый шаг в процессе решения задачи. Особенность таких языков программирования состоит в том, что задачи разбиваются на шаги и решаются шаг за шагом. Используя процедурный язык, программист определяет языковые конструкции для выполнения последовательности алгоритмических шагов. Ada язык общего назначения. Basic версии начиная с Quick Basic до появления Visual Basic. Объектно-ориентированный язык программирования ОО-язык — язык, построенный на принципах объектно-ориентированного программирования. В основе концепции объектно-ориентированного программирования лежит понятие объекта — некоей субстанции, которая объединяет в себе поля данные и методы выполняемые объектом действия. Например, объект человек может иметь поля имя, фамилия и методы есть и спать. Соответственно, в программе можем использовать операторы Человек. В современных ОО языках используются методы: Создание нового класса объектов путём добавления новых элементов методов. В данный момент ОО языки позволяют выполнять множественное наследование, то есть объединять в одном классе возможности нескольких других классов. Сокрытие деталей реализации, которое позволяет вносить изменения в части программы безболезненно для других её частей, что существенно упрощает сопровождение и модификацию ПО. При полиморфизме некоторые части методы родительского класса заменяются новыми, реализующими специфические для данного потомка действия. Таким образом, интерфейс классов остаётся прежним, а реализация методов с одинаковым названием и набором параметров различается. С полиморфизмом тесно связано позднее связывание. Позволяет устранить многие ошибки на момент компиляции, операции проводятся только над объектами подходящего типа. Неполный список объектно-ориентированных языков программирования: Кроме ОО-языков общего назначения существуют и узкоспециализированные ОО-языки. Механизм обработки сопоставление по образцу декларативных утверждений уже реализован в устройстве языка. Типичным примером таких языков являются языки логического программирования языки, основанные на системе правил. В программах на языках логического программирования соответствующие действия выполняются только при наличии необходимого разрешающего условия. Характерной особенностью декларативных языков является их декларативная семантика. Основная концепция декларативной семантики заключается в том, что смысл каждого оператора не зависит от того, как этот оператор используется в программе. Декларативная семантика намного проще семантики императивных языков, что может рассматриваться как преимущество декларативных языков перед императивными. Наиболее распространённым языком логического программирования является язык Пролог. Ответы на вопросы учащихся время 10 мин. Закрепление нового материала время 20 мин. Вопросы для закрепления изученного материала. Что такое язык программирования? В каком году появились машинные языки? Что такое машинно-ориентированные языки, и для кого они предназначены? Подведение итогов 3 мин. Оцените свое эмоциональное состояние на уроке. Для этого у вас на столах лежат карточки. На уроке я работал. Своей работой на уроке я. Урок для меня показался. Материал урока мне был. Поблагодарить автора 14 Добавить в избранное! Сертификаты и призы участникам! Возможности сайта Ответы на популярные вопросы Как принять участие в конкурсах. Новости для педагогов Формирование 21 выпуска новостей от урок. Стандартизация языков программирования Язык программирования может быть представлен в виде набора спецификаций, определяющих его синтаксис и семантику. Типы данных Современные цифровые компьютеры обычно являются двоичными и данные хранят в двоичном бинарном коде хотя возможны реализации и в других системах счисления. Структуры данных Системы типов в языках высокого уровня позволяют определять сложные, составные типы, так называемые структуры данных. Семантика языков программирования Существует несколько подходов к определению семантики языков программирования. Компилируемые и интерпретируемые языки Языки программирования могут быть разделены на компилируемые и интерпретируемые. Основные сведения Программа на процедурном языке программирования состоит из последовательности операторов инструкций , задающих процедуру решения задачи. Особенности В современных ОО языках используются методы: Список языков Неполный список объектно-ориентированных языков программирования: NET Visual DataFlex Perl PowerBuilder Python Scala ActionScript 3. Вопросы для закрепления изученного материала Что такое язык программирования? Рефлексия Оцените свое эмоциональное состояние на уроке.


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


Чтобы заставить компьютерную программу сделать определённое действие, мы выбираем в её настройках необходимую опцию, ждём, пока программа выполнит обработку информации и наслаждаемся результатом. Но мало кто из нас задумывался, а почему нажатие определённой кнопки заставляет работать программы? Как она понимает, чего мы хотим? Их цель — преобразовать наши команды в понятный для компьютера язык. Принцип их работы заключается в том, что они задают некое число заранее определённых электрических разрядов, серия которых несёт за собой последствие в виде решения поставленной задачи. В обиходе эти компиляторы называют языками программирования, то есть языками, понятными и для программистов, и для компьютеров. Развиваться именно как компьютерные программы эти языки начали в середине х — начале 70х, когда были созданы первые настоящие компьютеры, способные исполнять несколько различных функций. Со временем количество компиляторов увеличивалось по мере того, как расширялись направления работы компьютеров. Например, некоторые из них использовались исключительно для создания операционных систем, другие — только для написания программного обеспечения разнообразных направлений. Мы не будем рассматривать конкретные примеры создания программ. Вместо этого сравним самые популярные из ныне существующих языков программирования, которые используют профессионалы. Это один из первых, и невероятно популярный до сих пор язык, которым просто обязан владеть каждый программист. С момента своего создания этот язык прошёл несколько стандартизаций и обновлений, благодаря чему остаётся актуальным и в наше время. Именно благодаря этому его так часто используют профессионалы. Однако критиков у языка также достаточно. Правда, вторая проблема была частично решена в году, когда были введены дополнительные шаблоны компилятора. Питон — достаточно популярный в наше время язык, суть которого сводится к тому, чтобы как можно проще было создавать сложные программы. Созданный на основе более ранних языков, он впитал в себя все их наработки и является более совершенным. К тому же он постоянно обновляется, последняя версия была выпущена в начале года. Но в свою очередь, за минимализм приходится платить низким быстродействием, а за минимализм — наличием множества ошибок в системном коде, некоторые из которых присутствуют и в самых последних версиях. Как бы то ни было, но и Python нашёл своих поклонников. Ознакомиться с языком можно здесь. Этот продукт от Майкрософт знают все программисты, ведь большинство именно на нём познавало азы работы с компиляторами. Он прост, многофункционален и идеально подходит для быстрого создания прототипов программ. Кроме широких возможностей по созданию программного кода, также с его помощью можно конструировать пользовательский интерфейс программы. Именно ВБ чаще всего используют профессионалы из Майкрософт для создания своих программ. Недостатки у компилятор также есть. К ним относятся отсутствие указателей, низкоуровневый доступ к памяти компьютера. Также программа отличается невысокой скоростью работы и возможностью использования только на Windows и Mac OS X. Более подробно ознакомиться с Visual Basic можно на сайте http: Это язык программирования, который чаще всего применяют специалисты для создания веб-страниц. В настоящее время его принимают и поддерживают большинство хостинг-провайдеров. Благодаря возможности применения на любой ОС, скорости выполнения, функциональности и простоте его используют практически все разработчики сайтов. Также с помощью PHP можно создавать графический интерфейс пользователя. Создатели языка заложили в него несколько пасхальных яиц. Из недостатков языка важно вспомнить то, что если вы написали код на более ранней версии, то на новой он, скорее всего, не откроется. Также в нём просто не предусмотрена возможность создания многопоточных программ. Узнать больше информации о языке можно на сайте www. Delphi — многофункциональный язык, созданный на основе Object Pascal. Данный язык является ещё одним из самых популярных языков из-за наличия огромного количества компиляторов и диалектов. Каждый программист использует именно тот диалект, который подходит для его основного направления в работе. В целом, Delphi — императивный, объектно-ориентированный язык. Чаще всего на этом языке создаются разнообразные программы. Именно наличие множества диалектов является одновременно и достоинством, и недостатком языка, так как программу, написанную на одном из них, другой компилятор, скорее всего, не откроет. Это ещё один известный язык, способный работать на любой платформе. Однако есть у языка и подводные камни. Так, программы, написанные на Java, имеют репутацию слишком медлительных и требующих больших объёмов оперативной памяти. Java имеет несколько модификаций не диалектов, а именно разных видов , которые созданы для различных целей. Каждый из них имеет свои уникальные библиотеки данных и структуру, позволяющую более продуктивно работать над определённым направлением программирования. Больше информации на сайте http: JavaScript — необходимый атрибут большинства современных браузеров. Чаще всего цель этого языка — придать веб-страницам больше интерактивности. На его создание повлияли множество более ранних языков программирования, на основе которых он соединил многофункциональность и простоту. По крайней мере для опытных программистов. Область применения JavaScript необычайно широка — это и веб-приложения, и браузеры, и прикладное ПО, и офисные и серверные приложения. Широкую популярность также обеспечивают ему специальные библиотеки, позволяющие достичь высокого уровня абстракции. Из минусов JavaScript стоит отметить очень низкий уровень безопасности его приложений, а также массу ошибок в песочнице, браузере, плагинах и расширениях, с которыми хотя бы однажды сталкивался каждый. Но в то же время, совсем отказаться от этого языка пока что нельзя, ведь без него откажут в работе большинство интернет-браузеров. Более подробно на www. Синтаксис языка простой и лаконичный, без множества ненужных кодов. Также язык содержит в себе сборщик ненужного мусора, поддерживает блоки команд и замыкания с полной привязкой к переменным. Также особенностью этого скриптового языка является то, что программы, написанные на нём, могут в дальнейшем использовать его для расширения своих возможностей. На данный момент уже выпущено несколько версий языка, каждая из которых принесла что-то новое в принцип его работы. Кроме того, этот язык один из самых экономных по отношению к ресурсам компьютера, за что его так любят обычные программисты. Самая последняя из них — 1. На официальном сайте вы можете более подробно ознакомиться с достоинствами и недостатками этого языка www. Этот язык также менее популярен среди обывателей из-за того, что с его помощью можно писать в основном объектно-ориентированные программы, даже чаще всего не программы, а Flash — приложения. Синтаксис и функциональность компилятора стандартны для подобного рода языков и заключаются в работе, запрограммированной лишь на указанный вид приложений. Плюсом этого языка является его многофункциональность по отношению к Flash. Как ни странно, но это же одновременно и его минус, так на нём больше нельзя написать практически ничего. Узнать больше о этом компиляторе можно на сайте actionscript. Это высокоуровневый гибридный язык, который сочетает в себе возможности как функционального, так и объектно-ориентированного программирования. Созданный всего несколько лет назад, он впитал в себя соответствующие наработки всех предыдущих поколений языков программирования, и, одновременно с этим, привнёс в создание программ кое-что новое — возможность метапрограммирования. Суть этого метода в создании программ, которые во время своей работы генерируют другие программы. То есть, можно сказать, что он сам создаёт языки программирования? И да, и нет. Он создаёт возможные сценарии для дальнейшего генерирования исполняемых файлов. В целом, Nemerle просто-напросто объединил в себе все самые лучшие и необходимые функции более ранних языков. В общем, вышло так, что наиболее новый язык имеет меньше всего недостатков. Языков программирования в наше время великое множество. Мы рассмотрели лишь самые популярные из них. Каждый имеет свои недостатки и преимущества из-за того, что они ориентированы на различные сферы программной деятельности. Один отлично работает с браузерами, но совершенно не подходит для написания Flash, другой — совсем наоборот. Каждый программист начинает с самых простых из них и в конце обучения выбирает или тот, который больше всего подходит ему из-за направления его деятельности, и становится специалистом в этой области, или же продолжает понемногу использовать каждый из них. Кроме того, не стоит забывать о том, что у большинства языков программирования есть ещё и свои диалекты, которые иногда сильно различаются между собой. Политика Конфиденциальности Пользовательское соглашение. Рубрики Культура Ченнелинг Уроки Космос Медицина Наука Психология Авто Армия Деньги Дом Игры ИТ Купить Личности Отдых Семья Спорт Другое. Обзор основных языков программирования. Создание и развитие социальной сети. Искусственный интеллект и виртуальная реальность. Как пользоваться социальной сетью Google Plus. Общение на тему "Обзор основных языков программирования" Написать комментарий отменить комментарий. Главное Видео уроки Ченнелинг. Авто Армия Видео уроки Деньги Дом Другое Игры ИТ Космос Культура Купить Личности Медицина Наука Отдых Психология Семья Спорт Ченнелинг.


Высказывания философово проблемах
Выкройка игрушки жирафа
Как быстро стать популярным на ютубе
Приказ минэкономразвития 291
Расписание автобусов м аннино ммц
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment