- •1. Понятие информации. Классификация и виды информационных технологий
- •2. Элементная база, архитектура компьютера
- •3. Состав и назначение персонального компьютера. Виды компьютеров
- •4. Операционные системы
- •5 Языки и технологии программирования
- •6. Процедурное, функциональное, объектно-ориентированное и логическое программирование
4. Операционные системы
Операционная система (ОС) — совокупность программных средств, осуществляющих управление ресурсами ЭВМ, запуск прикладных программ и их взаимодействие с внешними устройствами и другими программами, а также обеспечивающих диалог пользователя с компьютером. ОС загружается автоматически после включения компьютера. Она предоставляет определенный способ общения (интерфейс) пользователю с вычислительной системой и возможность взаимодействия программ. Интерфейс при этом может быть программным и пользовательским. Программный интерфейс — совокупность средств, обеспечивающих взаимодействие устройств и программ в рамках вычислительной системы. Пользовательский интерфейс — программные и аппаратные средства взаимодействия пользователя с программой или ЭВМ. Пользовательский интерфейс может быть командным или объектно-ориентированным. Командный интерфейс основан на формировании пользователем команд (вводе их с клавиатуры) для выполнения действий по управлению ресурсами компьютера. Объектно-ориентированный интерфейс — это управление ресурсами вычислительной системы путем операций над ее объектами: создать, активизировать, переместить, скопировать, удалить и т.д. Большинство существующих операционных систем развивается и модифицируются. При этом модификации приобретают статус версий. Обычно, чем выше номер версии, тем более продвинута (развита) ОС.
Операционные системы можно классифицировать по: количеству одновременно работающих пользователей: однопользовательские и многопользовательские; числу заданий, одновременно выполняемых под управлением ОС: одно- задачные и многозадачные; количеству поддерживаемых процессоров: однопроцессорные и много- процессорные; разрядности кода ОС: 8-, 16-, 32- и 64-разрядные; типу пользовательского интерфейса: командные (текстовые) и объектно-ориентированные (графические); типу доступа пользователя к ресурсам ЭВМ: с пакетной обработкой, с разделением времени и реального времени; типу использования ресурсов: локальные и сетевые. Наиболее известные ОС — это DOS; OS/2; UNIX; Windows; Linux. На сегодняшний день наиболее распространены ОС семейства Windows. Однако в последние годы все большую популярность приобретает Linux
5 Языки и технологии программирования
Технологией программирования называют совокупность методов и средств, используемых в процессе разработки программного обеспечения. Как любая другая технология, технология программирования представляет собой набор технологических инструкций, включающих: − указание последовательности выполнения технологических операций; − перечисление условий, при которых выполняется та или иная операция; − описания самих операций, где для каждой операции определены исходные данные, результаты, а также инструкции, нормативы, стандарты, критерии и методы оценки и т.п. Кроме набора операций и их последовательности, технология также определяет способ описания проектируемой системы, точнее модели, используемой на конкретном этапе разработки. Различают технологии, используемые на конкретных этапах раз- работки или для решения отдельных задач этих этапов, и технологии, охватывающие несколько этапов или весь процесс разработки.
ПЕРВЫЙ ЭТАП – «СТИХИЙНОЕ» ПРОГРАММИРОВАНИЕ Первый этап охватывает период от момента появления первых вычислительных машин до середины 60-х гг. XX в. В этот период практически отсутствовали сформулированные технологии, и программирование фактически было искусством. Первые программы имели простейшую структуру. Они состояли из собственно программы на машинном языке и обрабатываемых ею данных. ВТОРОЙ ЭТАП – СТРУКТУРНЫЙ ПОДХОД К ПРОГРАММИРОВАНИЮ (60 – 70-е гг. XX в.) Структурный подход к программированию представляет собой совокупность рекомендуемых технологических приёмов, охватывающих выполнение всех этапов разработки программного обеспечения. В основе структурного подхода лежит декомпозиция (разбиение на части) сложных систем с целью последующей реализации в виде от- дельных небольших (до 40 – 50 операторов) подпрограмм. ТРЕТИЙ ЭТАП – ОБЪЕКТНЫЙ ПОДХОД К ПРОГРАММИРОВАНИЮ (с середины 80-х до конца 90-х гг. XX в.) Объектно-ориентированное программирование определяется как технология создания сложного программного обеспечения, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого типа (класса), а классы образуют иерархию с наследованием свойств. Взаимодействие программных объектов в такой системе осуществляется путём передачи сообщений.
ЧЕТВЁРТЫЙ ЭТАП – КОМПОНЕНТНЫЙ ПОДХОД И CASE-ТЕХНОЛОГИИ (с середины 90-х гг. XX в. до нашего времени) Компонентный подход предполагает построение программного обеспечения из отдельных компонентов физически отдельно существующих частей программного обеспечения, которые взаимодействуют между собой через стандартизованные двоичные интерфейсы. В отличие от обычных объектов, объекты-компоненты можно собрать в динамически вызываемые библиотеки или исполняемые файлы, распространять в двоичном виде (без исходных текстов) и использовать в любом языке программирования, поддерживающем соответствующую технологию.
Язы́к программи́рования— формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель под её управлением.
Язык программирования предназначен для написания компьютерных программ, которые представляют собой набор правил, позволяющих компьютеру выполнить тот или иной вычислительный процесс, организовать управление различными объектами, и тп.
Языки программирования низкого уровня
Первые компьютеры приходилось программировать двоичными машинными кодами. Однако программировать таким образом— довольно трудоемкая и тяжелая задача. Для упрощения этой задачи начали появляться языки программирования низкого уровня, которые позволяли задавать машинные команды в понятном для человека виде. Для преобразования их в двоичный код были созданы специальные программы— трансляторы.
Трансляторы делятся на:
компиляторы— превращают текст программы в машинный код, который можно сохранить и после этого использовать уже без компилятора (примером является исполняемые файлы с расширением *.exe).
интерпретаторы— превращают часть программы в машинный код, выполняют его и после этого переходят к следующей части. При этом каждый раз при выполнении программы используется интерпретатор.
Языки низкого уровня ориентированы на конкретный тип процессора и учитывают его особенности, поэтому для переноса программы на ассемблере на другую аппаратную платформу её нужно почти полностью переписать. Определенные различия есть и в синтаксисе программ под разные компиляторы. Языки низкого уровня, как правило, используют для написания небольших системных программ, драйверов устройств, модулей стыков с нестандартным оборудованием, программирование специализированных микропроцессоров, когда важнейшими требованиями являются компактность, быстродействие и возможность прямого доступа к аппаратным ресурсам.
Ассемблер— язык низкого уровня, широко применяется до сих пор.
Языки программирования высокого уровня
Особенности конкретных компьютерных архитектур в них не учитываются, поэтому созданные приложения легко переносятся с компьютера на компьютер. В большинстве случаев достаточно просто перекомпилировать программу под определенную компьютерную архитектурную и операционную систему. Разрабатывать программы на таких языках значительно проще и ошибок допускается меньше. Значительно сокращается время разработки программы, что особенно важно при работе над большими программными проектами.
-Адресный язык программирования,-Фортран,-Кобол,-Алгол,-Pascal,-Pascal ABC,-Python,-Java
-C,-Basic,-C++,-Objective-C,
-C#,-Delphi
Недостатком некоторых языков высокого уровня является большой размер программ в сравнении с программами на языках низкого уровня.
