Определение API. Сигнатура функции. Семантика функции.



Интерфейс прикладного программирования (application programming interface, API ) — набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах.
API библиотеки функций и классов включает в себя описание сигнатур и семантики
функций.
Сигнатура функции — часть общего объявления функции, позволяющая средствам
трансляции идентифицировать функцию среди других. В различных языках
программирования существуют разные представления о сигнатуре функции, что также
тесно связано с возможностями перегрузки функций в этих языках.
Семантика функции — это описание того, что данная функция делает. Семантика функции включает в себя описание того, что является результатом вычисления функции, как и от чего этот результат зависит.

 

Современные платформы программирования

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

Выделяют аппаратную платформу, платформу ОС и платформу программирования.

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

Платформа ОС представляет собой организацию исполнения прикладных программ на уровне операционной системы (например, порядок запуска программы, схему использования ею адресного пространства, API).

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

Классификация платформы программирования:

1. Для разработки системного ПО (модулей ОС): основной платформой является использование языка программирования С или С++ со своим набором API для конкретной ОС. Примеры: Windows, Linux.

2. Для разработки приложений с использованием собственных библиотек. Примеры: Delphi, Visual Studio.

3. Для WEB приложений. Примеры: Net.Framework, J2SE, J2EE, PHP.

4. Для мобильных систем. Примеры: Android.

5. Для кроссплатформенного программирования. Примеры: GNU Compiler Collection.

 

Шаблоны в программировании. Применение.

Шаблоны(template) — средство языков программирования, предназначенное для кодирования обобщённых алгоритмов (обобщенное программирование), без привязки к некоторым параметрам (например, типам данных, размерам буферов, значениям по умолчанию).

Обобщённое программирование (generic programming) — идея программирования, основанная на разделении структур данных и алгоритмов через использование абстрактных описаний требований.

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

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

 

Виды реализации отказоустойчивости при программировании.

Отказоустойчивость — это свойство системы сохранять свою работоспособность после отказа (возникновения ошибки в работе программы) одного или нескольких составных компонентов.

1. Защитное программирование (программированием с защитой от ошибок) - стиль написания программ, при котором появляющиеся ошибки легко обнаруживаются и идентифицируются программистом.

Принципы: 

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

2.  каждая программная ошибка должна быть выявлена как можно раньше, что упрощает установление ее причины; 

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

2. Утверждение (assertion) в программировании — это код (метод или макрос), используемый при разработке, с помощью которого программа проверяет правильность своего выполнения. Если утверждение истинно, то все работает правильно, иначе — обнаружена ошибка в работе программы. Утверждение позволяют выявить быстрее ошибки в сложных программах.

Принципы:

1. Используйте процедуры обработки ошибок (проверка входных данных) для ожидаемых событий и утверждения для событий, которые происходить не должны. 

2. Не следует размещать выполняемый код в утверждениях. 

3. Надо использовать утверждения для проверки и документирования предусловий и постусловий. 

4. Необходимо после проверки утверждения обязательно обработать возможные ошибки

В ООП широко используются для повышения надежности ПО обработка 3. исключительных ситуаций(exception handling) — это механизм языков программирования, предназначенный для описания реакции программы на ошибки во время выполнения (процессором, УВВ и т.д.), которые могут возникнуть при выполнении программы и приводят к невозможности дальнейшего выполнения программы.

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


Дата добавления: 2018-06-01; просмотров: 1392; Мы поможем в написании вашей работы!

Поделиться с друзьями:






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