
- •История развития эвм
- •2) Состав эвм
- •3 Процессоры
- •4 Системные платы и озу
- •5 Накопители fdd и hdd
- •6Устройства ввода информации
- •7 Устройства вывода информации
- •8 Назначение и состав ос
- •9 Классификации ос
- •3) Особенности алгоритмов управления ресурсами:
- •3 Основных класса программ:
- •С истемное по 2) Пакеты прикладных программ 3) Инструментарии технологии программирования
- •11 Системное по
- •12 Средства создания приложений
- •13Прикладное по
- •14Процедурное программирование
- •15Объектно-ориентированное программирование
- •16 Текстовые и графические редакторы
- •17 Банк данных
- •19 Обзор субд
- •Системы общего назначения;
- •Специализированные системы.
- •20 Классификации компьютерных сетей
- •21Компьютерные коммуникации
- •22Языки высокого уровня
- •23Средства модульного программирования
- •24 Классификации компьютерных вирусов
- •25 Основные способы защиты вирусов
- •26 Обнаружение и лечение вирусов
- •27 Электронная почта
14Процедурное программирование
Процедурное (императивное) программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 40-х годах.
Программа на процедурном языке программирования состоит из последовательности операций (инструкций), задающих те или иные действия. Основным является оператор присваивания, служащий для изменения содержимого областей памяти. Выполнение программы сводится к последовательному выполнению операторов с целью преобразования исходного состояния памяти (т.е. значений переменных) в заключительное.
Процедурные языки характеризуются:
А) Значительной сложностью;
Б) Отсутствием строгой математической основы;
В) Необходимостью явного управления памятью, в частности необходимостью описания переменных;
Г) Малой пригодностью для символьных вычислений;
Д) Высокой эффективностью реализации на традиционных ЭВМ.
Из-за наличия побочных эффектов (т.е. взаимного влияния различных программных модулей через общую память) программы на таких языках трудно читаемы, плохо модифицируемы и трудно проверяемы, следовательно, ненадежны. По этой же причине они предполагают лишь последовательное выполнение.
Одним из важнейших классификационных признаков процедурных языков является их уровень.
Уровень языка программирования определяется семантической (смысловой) емкостью его конструкций и его ориентацией на программиста-человека. Язык программирования (частично) ликвидирует семантический разрыв между методами решения задач человеком и машиной. Чем более язык ориентирован на программиста, тем выше его уровень:
Двоичный языкявляется не чем иным, как непосредственно машинным языком, в настоящее время такие языки программистами не применяются.
Шестнадцатеричный языкобеспечивает некоторое упрощение записи программы на машинном языке путем представления четырех цифр одной шестнадцатеричной. Этот язык используется в качестве дополнения к языкам высокого уровня, таким как Pascal.
Язык Ассемблера - это язык, предназначенный для представления в удобно читаемой символической форме программ, записанных на машинном языке. Он позволяет программисту пользоваться мнемоническими кодами операций, по своему усмотрению присваивать символические имена регистрам ЭВМ и ячейкам памяти, а также задавать наиболее удобные в том или ином контексте схемы адресации.
Язык детализированных схем программ - это не язык программирования, а язык представления алгоритмов при разработке программ.
Язык Макроассемблера является расширением языка Ассемблера за счет включения макросредств.
Языкивысокогоуровня( APL, Modula -2, Pascal, Basic, Fortan )
15Объектно-ориентированное программирование
Объект состоит из структуры данных и связанных с ней процедур (которые называются методами), которые работают с данными, записанными в экземплярах структуры данных.
В самом общем виде парадигма объектно-ориентированного программирования может рассматриваться как способ управления сложностью: это взаимосвязанная совокупность ряда важных идей, работающих на нескольких уровнях. На самом верхнем уровне находится понятие объекта
Объектно-ориентированное программирование в корне меняет положение, снабжая, программные объекты встроенными характеристиками, которые помогают справиться со все возрастающей сложностью разработки программного обеспечения.
Три важнейших характеристики объектной парадигмы - это инкапсуляция, наследование и полиформизм.
Понятие инкапсуляции означает, что в качестве единого целого, называемого объектом, рассматривается некоторая структура данных, определяющая его свойства или атрибуты и некоторая группа функций.
Наследование позволяет одним объектам приобретать атрибуты и поведение других. Наследование помогает сделать разработку более экономной и обозримой, так как объекты пользуются одними и теми же атрибутами и формами поведения без дублирования реализующих их программных кодов.
Полиформизм - способность объекта реагировать на запрос (вызов метода) сообразно своему типу, при этом одно и то же имя метода может использоваться для различных классов объектов. Полимормизм в сочетании с поздним связыванием весьма продуктивная идея. Термины «раннее связывание» и «позднее связывание» относятся к этапу, на котором обращение к процедуре связывается с ее адресом. В случае раннего связывания адреса всех функций и процедур известны в тот момент, когда происходит компиляция и компоновка программы. Это позволяет приписать каждому обращению к процедуре соответствующий адрес. В противоположность этому, в случае позднего связывания адрес процедуры не связывается с обращением к ней до того момента, пока обращение не произойдет фактически, т.е. во время выполнения программы.