П Л А Н Информатика = 1 часть Начало. Классики. Периодизация развития

advertisement
ПЛАН
Основания и обоснования. Чего не будет.
Информатика = 1 часть
Начало. Классики.
Исходные принципы ВМ
Теория деятельности
Периодизация развития
Этапные рубежи
Языки высокого уровня
Знаковые формы
Эволюция типов
Свёртка действий
Преобразования и связи
Интерпретация и трансляция
Архитектура
Аппаратное программирование
Операционные Системы
Объектная парадигма = 2 часть
Единичное исполнение
Свертка данных
Информационная замкнутость
Субъекты и Объекты
«Священные коровы»
Разработка сложных систем
Этические следствия
Информационая картина Мира
Три источника и три составных
части
ИНФОРМАТИКА
: информатики:
Техника
1 - Конструктивная деятельность,
Создаёт неимоверно сложные системы, чтобы затем всё стало проще.
2 - Наука,
Математика
изучаёт законы хранения, переработки и передачи информации,
сложность строения привычно элементарных действий и систем,
а также структуру взаимодействий объектов и субъектов.
Наука обеспечивает нам различение различного при сохранении целостности общего,
и простое описание сложного, знаковыми системами (языки).
3 - Мировоззрение,
Философия
задаёт информационно-деятельностную картину Мира,
закономерности развития цивилизации и её культуры, в том числе —
взаимодействия людей между собой и с компьютерами.
Учитываются Ремесло, Искусство,
Субъективность объективного и Объективность субъективного.
В рассмотрение включаются действующие Субъекты,
обеспечивается движение в противоречиях.
Ничто не растёт и развивается так быстро, как Информационные системы.
Сложнее них — только биологические структуры.
Информатика началась в 1949 г. с создания ЭВМ и программирования для них.
Три основных принципа:
1. Преобразования (действия)
2. Хранение (память)
3. Универсальность (программы)
Каждый системный программист
мечтает быть Пользователем.
(Слоган. лето 1972 г.)
Мы всегда хотели, чтобы:
 Системы были надёжные, но быстрые и компактные,
 Системы, делали то, что надо, но качественно,
 Ошибки легко обнаруживались, но просто исправлялись,
 Для каждой работы был свой инструмент и поддержка,
 и т.д.
Мы хотим, чтобы:
 Системы качественно, делали всё, что нам надо, но
это было бы легко специфицировать,
 Сложность функционирования всё возрастала, но
использовать и проектировать было проще,
Первая открытая
книга
 Была возможность пользоваться тем, что уже сделано, но
не начинать с нуля каждый раз,
по программированию, изданная в СССР
 Можно было сосредоточиться на решаемой проблеме, но
не отвлекаться всё время на инфраструктуру обеспечения.
 и т.п.
Цель программирования как науки —
уничтожение программистов, как класса!
(Слоган. лето 1972 г.)
Морис Винсент Уилкс
(Maurice Vincent Wilkes)
26 июня 1913 г.
академик
Сергей Алексеевич
ЛЕБЕДЕВ
1902 — 1974
член-корр. АН СССР
Алексей Андреевич
ЛЯПУНОВ
1911 — 1973
академик
Виктор Михайлович
ГЛУШКОВ
1923 — 1982
Алан. М.
Тьюринг
1912 — 1954
Дж. фон-Нейман
1903 — 1957
Основатель
Сибирской школы
Информатики
академик
Андрей Петрович
Ершов
1931 — 1988
Клод Э. Шеннон
1916 — 2001
Джон
Маккарти
Грейс Хоппер
1906 — 1992
Дж. T. Шварц
1930-2009
Никлаус
Вирт
Чарльз А.Р.
Хоар
Святослав
Сергеевич Лавров
1923 — 2004
Настоящее
Теория деятельности
Московский Методологический Кружок
форма
существования
возник в начале 50-х годов (в одно
время
с появлением ЭВМ)
Причины ———— Следствия и окончательно оформился в 1954
Цивилизации
г. в ходе дискуссии
Результаты
Целина философском
по————
проблемам логики
факультете МГУ.
есть Деятельность
Первоначально был известен как Московский Логический Кружок.
Причины лежат в прошлом
Отцы-основатели — А. А. Зиновьев, Г. П. Щедровицкий,
Прошлое
Будущее Цели лежат в будущем
Б. А. Грушин и М.К. Мамардашвили.
В 1958
Естественные
г. кружок, стал называться
и Искусственные
Методологическим
системы
(ММК), его лидером стал Г. П. Щедровицкий
СМД-Методология
ММК
весьма
ММК
Естественное
— это философско-методологическая
следует причинам, вопрос «Почему?»
и практическая
школа интеллектуальной
работы
со
Искусственное
своими оригинальми
следуетприёмами
целям, вопрос
организации
«Кому коллективного
нужно?» конструктивна
рефлектирующего и
творчества.
детальна.
Со временемОни
егоподчиняются
участники, ученики
разнымГ.П.Щедровицкого,
законам
создали самостоятельные организации,
продолжающие
традиции
Кружка, и ММКсоставляется
превратилсяизв Конкретных
широкое методологическое
движение.
Общая
Деятельность
деятельностей.
Каждая конкретная деятельность задаётся целью, начинается и заканчивается.
Конкретная деятельность — искусственная система.
Всякая деятельность выполняется по программе.
Георгий Петрович
Щедровицкий
1929 —1994
Г. П. Щедровицкий, ММК Москва,1960-62
Знаковые формы
Отображаемая действительность
Схема двойного знания
Содержательно-генетическая логика:
Знаковые системы состоят из двух планов — знакового и действительности,
поскольку эти планы, вообще говоря, неизоморфны,требуется особая техника
работы в сложных случаях. — схема двойного знания
Языковое мышление— это деятельность со знаковыми системами.
Коллективная деятельность, деятельность комуникации,
Системная мыследеятельность (СМД)
Единичное Исполнение программы само и есть конкретная деятельность.
А. А. Берс, ВЦ Новосибирск, 1966-68
Ведущие парадигмы информатики
по 10-летним этапам.
50-е Составление программ для ЭВМ
управление, память, адресность,
подпрограммы, микропрограммирование;
60-е Языки, Выражение программ "на ЯВУ“
80
90
60
70
основные структуры, описания и типы данных,
трансляторы и интерпретаторы;
70-е Обеспечение эффективности
применения ЭВМ
50
Проблемы и задачи
на III тысячелетие:
Субъектные взаимодействия,
Смешанное исполнение,
Эффективный параллелизм,
Вирт-Машины
Речевое общение
операционные системы, процессы, базы данных, прерывания,
страничная и сегментная организация,
кэширование, параллельность;
80-е Объектная ориентированность
объекты, сообщения, управление по событиям;
и потоками данных
90-е Взаимодействие машин
активные компоненты, асинхронность, Интернет, встроенные
компьютеры, распределенная обработка.
00-е Всемирная Сеть, многопроцессорные
кластеры
Этапные
рубежи,
Параллельные вычисления, сетевые социальные службы,
где происходили коренные переосмысления
основных
понятий:
глобальная навигация, мобильная
связь.
переход на Языки ВУ(60), освоение Объектов(80), проявление Субъектов(90).
Языковая парадигма
Знаковые формы — Тексты программ. Содержательные обозначения.
Синтаксис, две семантики: семантика текста и семантика исполнения.
Основные структуры:
описания, операции, выражения,.
операторы, следование, переход, ветвление, цикл, процедура, вызов, блок, модуль.
Читаемость, ассортимент символов.
Национальные варианты, Unicode.
Выделились Данные — тип данных, представление.
Простые и составные типы. Динамические типы.
Логические, числа, указатели. Массивы, структуры, строки. Списки, деревья.
Эволюция типов —
тип как множество значений ==> тип, как множество операций.
типы, встроенные в язык, и определяемые пользователем.
Неприятности:
Коллизии обозначений.
Отчуждение программы от программиста
Побочный эффект.
«Висячие» указатели, «мусор».
Подстановка именем в Алголе 60.
Интерпретация и трансляция. Сборка.
Смешанные вычисления.
Эффективные средства свёртки действий:
подпрограммы и процедуры, модули,
языковые библиотеки.
Базы данных
Эффективность эксплуатации
и Архитектура
Вычислительных машин
Многоуровневая память
Многопроцессорность
сегментная и страничная адресация.
кеширование
Отчуждение программиста
от программы
прерывания,
защита, кольца и теги.
Семейства машин,
Отладка
совместимость,
микропрограммирование,
драйверы устройств,
аппаратное программирование.
Операционные Системы
планирование и диспетчеризация,
режимы:
мультипрограммный,
многопроцессный,
разделения времени
обмен сообщениями,
коллективное пользование
файловые системы,
переносимость.
Структура исполнения программы
Операционная обстановка
высокого уровня
Активные и Пассивные
компоненты обстановки:
(Environment)
 Исполнитель и сигналы,
Исполнитель
Сигналы
Рабочая
ВВод
Перечень объектов
акад. А. П. Ершов
Перечень
протоколов
ВЫвод
Основная структура
область
исполнения
(интерпретации) стек (stack)
придумал и запатентовал в 1957 г.
Friedrich L. Bauer.
Программный фрагмент
 Программный фрагмент
 Рабочая область с
подобластями Ввода и Вывода
 Перечень (внешних) Объектов
 Перечень Протоколов
взаимодействия
Основной тезис обоснования:
Конкретная деятельность — это всегда
Единичное исполнение программного фрагмента
Многомерность
подходящим Исполнителем
локальных
в заданной
замкнутой Операционной Обстановке.
внутренних
времен
Совмещение нескольких ООВУ
одинакового уровня
в одну обстановку
Частные разновидности
операционных обстановок
Операционная обстановка
высокого уровня
Перечень
протоколов
область
ВЫвод
Рабочая
Перечень
протоколов
область
Программный фрагмент
Ξ-форма
(Оболочка)
ВВод
Рабочая
Перечень объектов
ВВод
Перечень объектов
F-форма
(Вирт-машина)
ВЫвод
Целостность и
Замкнутость ООВУ
область
C-форма
L-форма
ВЫвод
Общая Е-форма
Рабочая
Программный фрагмент
Программный фрагмент
Программный фрагмент
по управлению,
 по информации,
 по связям,
 по времени
Исполнитель
ВВод
область
Исполнитель
область
Рабочая
ВЫвод
Перечень
протоколов
Исполнитель
Рабочая
ВЫвод
Исполнитель
Сигналы
ВВод
Перечень объектов
ВВод
Перечень объектов
Логическое строение Объекта
Основные свойства Объектов:





пассивность,
отдельная
целостность,
инкапсуляция,
политипия
информационная
замкнутость
Свойства
классов:
создание,
наследование
 полиморфизм
Политипия
Набор методов + размер домена = ТИП
Перечень обращений =
Интерфейс
Meт1 (Х) y
Meт 2 (Х)
....
....
Домен
Meт k (Х) z
Методы
подпространство
описаний
Принцип информационной замкнутости:
При обращении к объекту может измениться только
состояние этого объекта, и никакого другого.
Работа с составными объектами
ведется в два этапа: навигацией получаем доступ
к нужному подобъекту,а затем обращаемся к нему
в соответствии с его типом.
подпространство
команд
подпространство
данных
Составные объекты и подобъекты. Сборка
Будем определять и создавать объекты,
как объекты в подпространстве
Подобъект объекта не является объектом
в том же подпространстве,
в котором сам объект является объектом.
Значит нам не хватает понятия!
Конфигурация — множество объектов,
 объединённые средствами навигации из некого головного объекта
. Тип конфигурации задается её операциями навигации
В
А
Конфигурация объектов: Множество объектов,
F
Две Конфигурации
 объединённые средствами навигации из
единого головного объекта,
 возможно из разных подпространств,
 возможно связанных.
. Конфигурация приписана тому подпространству,
где находится её головной объект.
. Тип конфигурации задается её операциями навигации.
Наведенная активность F
У составных объектов не может быть общих подобъектов.
однако один объект может входить сразу в несколько конфигураций,
Отдельная Конфигурация
Сцепленные конфигурации
Конфигурации, в отличие
от Составных объектов могут
менять свой состав динамически
Подобъекты объекта всегда могут быть представлены
как конфигурация некоторых объектов
во внутреннем подпространстве,
т.е. домене, объекта-хозяина.
Состояния и Значения
Значения элементарны и однократны,независимо от их размера (объёма)
а следовательно — не копируемы (но сохраняемы)
(например, речь или песня, симфония)
Выдаваемый результат, например, речь, музыку нужно отличать
от их записи, которая есть состояние объекта, = текст.
Задача: нащипать лучину от полена, и разжечь камин (составить программу).
Спецификация разборки изделия
смена Типа
Объект
Составной
объект
смена Типа
Конфигурация
(отдельная)
смена Типа
Составной
объект
Отщепление
компонента
Объект
Поэтому, когда возникает необходимость в преобразовании для:
замены значения на последовательность значений (сериализация), то:
Значение «загоняется» в объект,
а затем «превращается» в конфигурацию
и уже оттуда берется и передается по частям,
Объект
Строение Субъекта.
Активность нельзя, вывести логически,
т.е. только оперируя знаками — её
Цикличность Существования Субъекта.
приходится постулировать, как новую сущность.
Субъект = активность + объект,
активатор
Исполнитель
Порты
Состояния Субъекта
В Реальном Мире:
Естественная
Информационная
непроницаемость
Субъектов.
Имя 1
Имя 2
S3
Роли
Имя 3
Политипия
для Субъектов
В Знаковом Мире:
Искусственные
инкапсуляция и
Информационная
замкнутость Объектов.
Существовани
Протоколы
Базисный
Два разных способа использования Программных фрагментов,
дополняющие друг друга — Методы объектов и Протоколы
Протокол является «хозяином»,
и ведёт взаимодействие.
Чистый
Если мы прибегаем к протоколу,
то должны следовать Его предписаниям,
Возможна Субъективизация Протоколов
ВВод
Рабочая
область
ВЫвод
Нечистый «Экологически»
СубъектИсполнитель
Перечень объектов
Программный фрагмент
Виртуализация
протокола
«Священные коровы» информатики
(принципы, которые никогда не должны нарушаться)*
Каждое единичное исполнение должно завершаться;
(без этого нельзя разложить сложное на части)
Целостность и корректность связей (доступов)
должны обеспечиваться Системой;
В ходе изменения состояния элемента
всякий другой доступ должен быть запрещен;
Любая операционная обстановка и любой объект
должны быть информационно-замкнуты.**
* Более точно, мне не известно ни одного случая, когда из нарушения этих требований
можно было бы извлечь пользу !!!
** хотя это пока и не всегда так (в С++, C#) и др.
Субъект воспринимает Реальный мир как Действительность,
отображает (через свой Внутренний мир) вещи,
как Объекты Знакового мира,
в котором и проистекает
Деятельность.
Технология —
программа для пользователя.
(Слоган. лето 1985 г.)
Машина поручает человеку работу,
которую тот не смог поручить машине.
(Слоган. осень 1984 г.)
инженер
Бользен,
Сын профессора
Советский
разведчик
группенфюрер
СС
Всеволод
который
нежно
дружит
Максим
Исаев
Макс
Штирлиц
Владимиров
с фрау Заурих
Спасибо за
внимание.
Готов ответить …
Download