Средства создания приложений
Инструментальное ПО (инструментарий) или системы программирования - это системы для автоматизации разработки, наладки новых программ на языке программирования.
Группы: 1) Средства для создания приложенияа) локальные средства, обеспечивающие выполнение отдельных работ по созданию программ, языки и системы программирования) б) Интегрированные средства разработки программ выполняют комплекс взаимных работ по выполнению программ.
2) Кейс (CASE) технологии – средства создания информационных систем, предоставляющие методы анализа, проектирование и создание программных систем, предназначенных для автоматической организации процессов разработки и реализации информационных систем.
Средства создания информационных систем: 1) Локальные – средства разработки программ, языка, систем программ и инструментальной среды пользователя.
2) Языки программ – формальный язык алгоритмического решения задач для описания программ на ЭВМ.
Виды языков: 1) Машинные (язык,воспринимаемый аппаратной части ПК, машинные коды)2) Машинно-ориентировочные (отражают структуру конкретного типа ПК)
3) Алгоритмические (не зависят от типа ПК, отражают структуру алгоритма)
4)Процедурно-ориентировочные(возможность описывать программы, как совокупность процедур) 5) Проблемно – ориентированные(для задач определённого класса) 6) Интегрированные системы программирования( понимают совокупность языка и виртуальной машины, обеспечивающие на реальной машине выполнение программы написанной на конкретном языке)
Виртуальная машина – программный комплекс, имитирующий работу ПК с определённым входным языком. Содержит: транслятор, отладчики.
Транслятор – программа осуществляющая перевод текста из одного в другой язык.
Трансляция может выполняться с помощью компиляторов(транслируют всю программу без её выполнения) и интерпретаторов(выполняется по оператору обрабатывает и выполняет программы.
В самом общем случае для создания программы на выбранном языке программирования (языке системного программирования) нужно иметь следующие компоненты:
1. Текстовый редактор для создания файла с исходным текстом программы.
2. Компилятор или интерпретатор. Исходный текст с помощью программы-компилятора переводится в промежуточный объектный код. Исходный текст большой программы состоит из нескольких модулей (файлов с исходными текстами). Каждый модуль компилируется в отдельный файл с объектным кодом, которые затем надо объединить в одно целое.
3. Редактор связей или сборщик, который выполняет связывание объектных модулей и формирует на выходе работоспособное приложение – исполнимый код.
Исполнимый код – это законченная программа, которую можно запустить на любом компьютере, где установлена операционная система, для которой эта программа создавалась. Как правило, итоговый файл имеет расширение .ЕХЕ или .СОМ.
Прикладное ПО
Прикладные программы могут использоваться автономно или в составе программных комплексов или пакетов. Прикладное ПО – программы, непосредственно обеспечивающие выполнение необходимых работ на ПК: редактирование текстовых документов, создание рисунков или картинок, создание электронных таблиц и т.д.
Пакеты прикладных программ – это система программ, которые по сфере применения делятся на:
1) Проблемно-ориентированные (Бухгалтерский учёт, финансовая деятельность, кадровый учёт, управление математическими записями).
2) Метода-ориентированные (Продукты обеспечения не зависимо от предметной области и функции информационных систем, математические и статистические методы решения задач)
3) Общего назначения - Поддерживающие ИТ конечных пользователей: СУБД (обеспечение организации и хранения локальных баз данных ), Текстовые процессоры (автоматическое формирование документов), Табличные процессоры (работа с таблицами), Средства графических презентаций.
4) Интеллектуальные системы( Реализующие отдельные функции интеллекта человека: база знаний, логические выводы, интеллектуальный интерфейс ).
5) Автоматическое проецирование (Для поддержки работы конструктора связи с графическим моделированием и демонстрацией иллюстраций)
6) Офисные (Органайзеры, переводчики)
7) Мультимедиа (Аудио и видео информации.Расширенное использование пользователем)
8) Настольные издательские системы (обеспечение ИТ в компьютерной издательской системе (деятельности)).
14Процедурное программирование
Процедурное (императивное) программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 40-х годах.
Программа на процедурном языке программирования состоит из последовательности операций (инструкций), задающих те или иные действия. Основным является оператор присваивания, служащий для изменения содержимого областей памяти. Выполнение программы сводится к последовательному выполнению операторов с целью преобразования исходного состояния памяти (т.е. значений переменных) в заключительное.
Процедурные языки характеризуются:
А) Значительной сложностью;
Б) Отсутствием строгой математической основы;
В) Необходимостью явного управления памятью, в частности необходимостью описания переменных;
Г) Малой пригодностью для символьных вычислений;
Д) Высокой эффективностью реализации на традиционных ЭВМ.
Из-за наличия побочных эффектов (т.е. взаимного влияния различных программных модулей через общую память) программы на таких языках трудно читаемы, плохо модифицируемы и трудно проверяемы, следовательно, ненадежны. По этой же причине они предполагают лишь последовательное выполнение.
Одним из важнейших классификационных признаков процедурных языков является их уровень.
Уровень языка программирования определяется семантической (смысловой) емкостью его конструкций и его ориентацией на программиста-человека. Язык программирования (частично) ликвидирует семантический разрыв между методами решения задач человеком и машиной. Чем более язык ориентирован на программиста, тем выше его уровень:
1) Двоичный языкявляется не чем иным, как непосредственно машинным языком, в настоящее время такие языки программистами не применяются.
2) Шестнадцатеричный языкобеспечивает некоторое упрощение записи программы на машинном языке путем представления четырех цифр одной шестнадцатеричной. Этот язык используется в качестве дополнения к языкам высокого уровня, таким как Pascal.
3) Язык Ассемблера - это язык, предназначенный для представления в удобно читаемой символической форме программ, записанных на машинном языке. Он позволяет программисту пользоваться мнемоническими кодами операций, по своему усмотрению присваивать символические имена регистрам ЭВМ и ячейкам памяти, а также задавать наиболее удобные в том или ином контексте схемы адресации.
4) Язык детализированных схем программ - это не язык программирования, а язык представления алгоритмов при разработке программ.
5) Язык Макроассемблера является расширением языка Ассемблера за счет включения макросредств.
6) Языкивысокогоуровня( APL, Modula -2, Pascal, Basic, Fortan )
15Объектно-ориентированное программирование
Объектсостоит из структуры данных и связанных с ней процедур (которые называются методами), которые работают с данными, записанными в экземплярах структуры данных.
В самом общем виде парадигма объектно-ориентированного программирования может рассматриваться как способ управления сложностью: это взаимосвязанная совокупность ряда важных идей, работающих на нескольких уровнях. На самом верхнем уровне находится понятие объекта
Объектно-ориентированное программирование в корне меняет положение, снабжая, программные объекты встроенными характеристиками, которые помогают справиться со все возрастающей сложностью разработки программного обеспечения.
Три важнейших характеристики объектной парадигмы - это инкапсуляция, наследование и полиформизм.
1) Понятие инкапсуляции означает, что в качестве единого целого, называемого объектом, рассматривается некоторая структура данных, определяющая его свойства или атрибуты и некоторая группа функций.
2) Наследование позволяет одним объектам приобретать атрибуты и поведение других. Наследование помогает сделать разработку более экономной и обозримой, так как объекты пользуются одними и теми же атрибутами и формами поведения без дублирования реализующих их программных кодов.
3) Полиформизм - способность объекта реагировать на запрос (вызов метода) сообразно своему типу, при этом одно и то же имя метода может использоваться для различных классов объектов. Полимормизм в сочетании с поздним связыванием весьма продуктивная идея. Термины «раннее связывание» и «позднее связывание» относятся к этапу, на котором обращение к процедуре связывается с ее адресом. В случае раннего связывания адреса всех функций и процедур известны в тот момент, когда происходит компиляция и компоновка программы. Это позволяет приписать каждому обращению к процедуре соответствующий адрес. В противоположность этому, в случае позднего связывания адрес процедуры не связывается с обращением к ней до того момента, пока обращение не произойдет фактически, т.е. во время выполнения программы.