Файл: "Современные языки программирования".pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 19.06.2023

Просмотров: 70

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

The education systems of current and former British territories, such as Gibraltar,[1] Nigeria and South Africa, also offer the qualification, as supplied by the same examination boards. Other former British colonies, such as Singapore and Zimbabwe, continue to use the O-level qualification.[2] The international version of the GCSE is the IGCSE, which can be taken anywhere in the world, and which includes additional options relating to coursework and the language the qualification is pursued in. All subjects completed in the fifth of the European Baccalaureate are generally equivalent to the GCSEs subjects.

Prior education to GCSE level is generally required of pupils wishing to pursue A Level courses or the BTEC Extended Diploma and International Baccalaureate. GCSE exams were introduced as the compulsory school-leavers' examinations by the government of the United Kingdom. GCSE examinations are typically taken at the age of 16 but may be taken at any age.

При таком виде контроля переменная связывается с типом в момент объявления ещё при написании программы и проверяется на соответствие при каждом её использовании программистом. При таком подходе довольно сложно найти недостатки, однако без них не обходится:

Понижается гибкость языка. Для каждого типа переменной необходима реализация собственной функции.

Значительно замедляется работа компилятора.

В тоже время проверка типов на этапе написания и трансляции программы ведет к возникновению существенных достоинств:

Высокая скорость выполнения программы, связанная с отсутствием проверки типов на этапе выполнения. «Зная» тип переменной транслятор может использовать для неё более простые и подходящие команды.

Значительно уменьшается количество ошибок связанных с некорректным использованием типа переменной: присваивание значений, операции над переменными, передача параметров в функции.

При явном объявлении переменных и типов повышается читабельность и понятность кода, упрощается документирование программы. The qualification is equivalent to a Level 1 or Level 2 (grade depending) Key Skills Qualification (in Scotland, the equivalent is a National 5). Some pupils may decide to take one or more GCSEs before or after they sit the others, and people may apply to take GCSEs at any point either internally through an institution or externally. A level 1 GCSE covers grades C-G (commonly referred by as the foundation tier) whereas a level 2 GCSE covers grades A*-C (commonly referred by as the higher tier). 5 level 2 GCSE's, including English and Maths, are generally required (as well as a B/A in the specific subject) to continue into the level 3 Advanced GCE level (A-Level) or equivalent level 3 qualifications.

The education systems of current and former British territories, such as Gibraltar,[1] Nigeria and South Africa, also offer the qualification, as supplied by the same examination boards. Other former British colonies, such as Singapore and Zimbabwe, continue to use the O-level qualification.[2] The international version of the GCSE is the IGCSE, which can be taken anywhere in the world, and which includes additional options relating to coursework and the language the qualification is pursued in. All subjects completed in the fifth of the European Baccalaureate are generally equivalent to the GCSEs subjects.

Prior education to GCSE level is generally required of pupils wishing to pursue A Level courses or the BTEC Extended Diploma and International Baccalaureate. GCSE exams were introduced as the compulsory school-leavers' examinations by the government of the United Kingdom. GCSE examinations are typically taken at the age of 16 but may be taken at any age.


Как и для динамического контроля, статический контроль типов в языках программирования реализован по-разному, что с учетом строгой или слабой типизации может налагать Personality disorders are a class of mental disorders characterized by enduring maladaptive patterns of behavior, cognition, and inner experience, exhibited across many contexts and deviating markedly from those accepted by the individual's culture. These patterns develop early, are inflexible, and are associated with significant distress or disability.[1]The definitions may vary somewhat, according to source. ряд дополнительных достоинств и недостатков.

Виды типизации в современных языках программирования Представлены в таблице 4.

Таблица 4 Типизация в языках программирования [2]

Язык программирования

Типизация

Java

статическая, строгая

C

статическая

C++

статическая

PHP

динамическая

C#

статическая, строгая

Python

динамическая, строгая

Visual Basic

динамическая

Objective C

статическая /динамическая

Perl

динамическая

Delphi

статическая

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

Однако, в языках со статической Personality disorders are a class of mental disorders characterized by enduring maladaptive patterns of behavior, cognition, and inner experience, exhibited across many contexts and deviating markedly from those accepted by the individual's culture. These patterns develop early, are inflexible, and are associated with significant distress or disability.[1]The definitions may vary somewhat, according to source.типизацией возможно использование динамических свойств по работе с типами. Для этого можно воспользоваться специальными агрегаторами (объединением, классом Variant и т.п.), которые позволят сохранить информацию о типе значения. При использовании подобных агрегаторов возникают накладные расходы сравнимые с использованием динамической типизации и некоторые неудобства в работе (явное приведение типа).

В языках с динамической типизацией Personality disorders are a class of mental disorders characterized by enduring maladaptive patterns of behavior, cognition, and inner experience, exhibited across many contexts and deviating markedly from those accepted by the individual's culture. These patterns develop early, are inflexible, and are associated with significant distress or disability.[1]The definitions may vary somewhat, according to source. организация статической проверки типов задача сложная. Если статическая типизация поддерживается на уровне языка, то компилятор может провести проверку типов и добиться полного исключения лишних вычислений при применении операторов. Если такой поддержки в языке нет, то есть возможность её реализовать путем добавления дополнительных проверок и, следовательно, накладны расходами.


Заключение

Что бы быть современным язык программирования должен отвечать всем современным требованиям и соответствовать тем задачам, которые встают перед программистом сегодня. Именно поэтому в рассмотренных языках программирования представлено большинство методов и способов решения задач по созданию систем обработки информации.

Сегодня предоставляемое программисту многообразие возможностей позволяет, начиная новый проект любой сложности, выбрать язык программирования наиболее подходящий для его реализации. При выборе языка программирования необходимо учитывать требования проекта к скорости работы, потребляемым ресурсам, необходимости кроссплатформенного использования, а также сроки реализации проекта. Кроме того, для некоторых проектов может стать существенным фактор популярности языка программирования. Для популярного языка имеется, как правило, большое количество учебной и справочной литературы, кроме того, использованный язык программирования может стать решающим фактором при выборе программы конечным пользователем. Не менее важно при выборе языка программирования учитывать опыт других разработчиков при решении похожих задач, это поможет избежать типичной ошибки – «изобретение колеса».

Рассмотрев основные концепции современных языков программирования можно выделить несколько наиболее актуальных задач стоящих сегодня перед программистами: Проектирование межплатформенных приложений – не зависящих от используемой платформы. Разработка Интернет–приложений – работающих через Интернет, но не поддерживаемых браузером непосредственно. Создание Web–приложений – клиент–серверных архитектур. Возможность быстрого создания приложений и средств автоматизации. Также актуальны приложения полностью и эффективно использующие все ресурсы современных платформ.

Список использованных источников

  1. Роберт У. Себеста. Основные концепции языков программирования = Concepts of Programming Languages / Пер. с англ. – 5-е изд. – М.: Вильямс, 2001. – 672 с. – 5000 экз. ISBN: 5–8459–0192–8
  2. TIOBE Software: Tiobe Index
  3. http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
  4. Городняя Л.В. Основы функционального программирования. /– М.: Изд-во "Интернет-университет информационных технологий – ИНТУИТ.ру", 2004. – 280 c.: ил. ISBN 5–9556–0008–6
  5. Анатолий А. Андрей К. Логическое программирование и Visual Prolog (с CD).. – СПб.: «БХВ–Петербург», 2003. – С. 990. ISBN 5–94157–156–9.
  6. Иан Грэхем. Объектно–ориентированные методы. Принципы и практика = Object–Oriented Methods: Principles & Practice. – 3–е изд./ – М.: «Вильямс», 2004. – С. 880. ISBN 5–8459–0438–2
  7. Андрей Александреску. Современное проектирование на С++ /Вильямс, 2004 г. 336 стр. Тираж: 3500 экз. ISBN 5–8459–0351–3
  8. Легалов А. И. – SoftCraft: разработка трансляторов: конспект лекций http://www.softcraft.ru/translat/lect/t01-02.shtml