П Л А Н Основания и обоснования. Чего не будет. Информатика = 1 часть Начало. Классики. Исходные принципы ВМ Теория деятельности Периодизация развития Этапные рубежи Языки высокого уровня Знаковые формы Эволюция типов Свёртка действий Преобразования и связи Интерпретация и трансляция Архитектура Аппаратное программирование Операционные Системы Объектная парадигма = 2 часть Единичное исполнение Свертка данных Информационная замкнутость Субъекты и Объекты «Священные коровы» Разработка сложных систем Этические следствия Информационая картина Мира
1 - Конструктивная деятельность, Создаёт неимоверно сложные системы, чтобы затем всё стало проще. ИНФОРМАТИКА : 2 - Наука, изучаёт законы хранения, переработки и передачи информации, сложность строения привычно элементарных действий и систем, а также структуру взаимодействий объектов и субъектов. Наука обеспечивает нам различение различного при сохранении целостности общего, и простое описание сложного, знаковыми системами (языки). 3 - Мировоззрение, задаёт информационно-деятельностную картину Мира, закономерности развития цивилизации и её культуры, в том числе взаимодействия людей между собой и с компьютерами. Учитываются Ремесло, Искусство, Субъективность объективного и Объективность субъективного. В рассмотрение включаются действующие Субъекты, обеспечивается движение в противоречиях. Техника Математика Философия Три источника и три составных части информатики: Ничто не растёт и развивается так быстро, как Информационные системы. Сложнее них только биологические структуры.
Мы всегда хотели, чтобы: Системы были надёжные, но быстрые и компактные, Системы, делали то, что надо, но качественно, Ошибки легко обнаруживались, но просто исправлялись, Для каждой работы был свой инструмент и поддержка, и т.д. Мы хотим, чтобы: Системы качественно, делали всё, что нам надо, но это было бы легко специфицировать, Сложность функционирования всё возрастала, но использовать и проектировать было проще, Была возможность пользоваться тем, что уже сделано, но не начинать с нуля каждый раз, Можно было сосредоточиться на решаемой проблеме, но не отвлекаться всё время на инфраструктуру обеспечения. и т.п. Каждый системный программист мечтает быть Пользователем. (Слоган. лето 1972 г.) Цель программирования как науки уничтожение программистов, как класса! (Слоган. лето 1972 г.) Информатика началась в 1949 г. с создания ЭВМ и программирования для них. Три основных принципа: 1.Преобразования ( действия ) 2.Хранение ( память ) 3.Универсальность ( программы ) Морис Винсент Уилкс (Maurice Vincent Wilkes) 26 июня 1913 г. Первая открытая книга по программированию, изданная в СССР
академик Виктор Михайлович ГЛУШКОВ член-корр. АН СССР Алексей Андреевич ЛЯПУНОВ академик Сергей Алексеевич ЛЕБЕДЕВ
Основатель Сибирской школы Информатики академик Андрей Петрович Ершов Клод Э. Шеннон Дж. фон-Нейман Чарльз А.Р. Хоар Никлаус Вирт Джон Маккарти Святослав Сергеевич Лавров Грейс Хоппер Алан. М. Тьюринг Дж. T. Шварц
Единичное Исполнение программы само и есть конкретная деятельность. А. А. Берс, ВЦ Новосибирск, Всякая деятельность выполняется по программе. Г. П. Щедровицкий, ММК Москва, Общая Деятельность составляется из Конкретных деятельностей. Каждая конкретная деятельность задаётся целью, начинается и заканчивается. Конкретная деятельность искусственная система. форма существования Цивилизации есть Деятельность Георгий Петрович Щедровицкий В 1958 г. кружок, стал называться Методологическим (ММК), его лидером стал Г. П. Щедровицкий ММК это философско-методологическая и практическая школа интеллектуальной работы со своими оригинальми приёмами организации коллективного рефлектирующего творчества. Со временем его участники, ученики Г.П.Щедровицкого, создали самостоятельные организации, продолжающие традиции Кружка, и ММК превратился в широкое методологическое движение. Московский Методологический Кружок возник в начале 50-х годов ( в одно время с появлением ЭВМ ) и окончательно оформился в 1954 г. в ходе дискуссии по проблемам логики на философском факультете МГУ. Первоначально был известен как Московский Логический Кружок. Отцы-основатели А. А. Зиновьев, Г. П. Щедровицкий, Б. А. Грушин и М.К. Мамардашвили. Прошлое Настоящее Будущее Результаты Цели Причины Следствия Естественные и Искусственные системы Естественное следует причинам, вопрос « Почему? » Искусственное следует целям, вопрос « Кому нужно? » Они подчиняются разным законам Причины лежат в прошлом Цели лежат в будущем Теория деятельности Языковое мышление это деятельность со знаковыми системами. Коллективная деятельность, деятельность комуникации, Системная мыследеятельность (СМД) Содержательно-генетическая логика: Знаковые системы состоят из двух планов знакового и действительности, Отображаемая действительность Знаковые формы Схема двойного знания поскольку эти планы, вообще говоря, неизоморфны,требуется особая техника работы в сложных случаях. схема двойного знания СМД-Методология ММК весьма конструктивна и детальна.
50-е Составление программ для ЭВМ управление, память, адресность, подпрограммы, микропрограммирование ; 60-е Языки, Выражение программ "на ЯВУ основные структуры, описания и типы данных, трансляторы и интерпретаторы ; 70-е Обеспечение эффективности применения ЭВМ операционные системы, процессы, базы данных, прерывания, страничная и сегментная организация, кэширование, параллельность; 80-е Объектная ориентированность объекты, сообщения, управление по событиям; и потоками данных 90-е Взаимодействие машин активные компоненты, асинхронность, Интернет, встроенные компьютеры, распределенная обработка. 00-е Всемирная Сеть, многопроцессорные кластеры Параллельные вычисления, сетевые социальные службы, глобальная навигация, мобильная связь. Проблемы и задачи на III тысячелетие: Субъектные взаимодействия, Смешанное исполнение, Эффективный параллелизм, Вирт-Машины Речевое общение Ведущие парадигмы информатики по 10-летним этапам Этапные рубежи, где происходили коренные переосмысления основных понятий: переход на Языки ВУ (60), освоение Объектов (80), проявление Субъектов (90).
Языковая парадигма Выделились Данные тип данных, представление. Простые и составные типы. Динамические типы. Логические, числа, указатели. Массивы, структуры, строки. Списки, деревья. Эффективные средства свёртки действий: подпрограммы и процедуры, модули, языковые библиотеки. Базы данных Неприятности: Коллизии обозначений. Отчуждение программы от программиста Побочный эффект. «Висячие» указатели, «мусор». Подстановка именем в Алголе 60. Интерпретация и трансляция. Сборка. Смешанные вычисления. Знаковые формы Тексты программ. Содержательные обозначения. Синтаксис, две семантики: семантика текста и семантика исполнения. Эволюция типов тип как множество значений ==> тип, как множество операций. типы, встроенные в язык, и определяемые пользователем. Читаемость, ассортимент символов. Национальные варианты, Unicode. Основные структуры: описания, операции, выражения,. операторы, следование, переход, ветвление, цикл, процедура, вызов, блок, модуль.
Эффективность эксплуатации и Архитектура Вычислительных машин Многопроцессорность прерывания, защита, кольца и теги. Многоуровневая память сегментная и страничная адресация. кеширование Семейства машин, совместимость, микропрограммирование, драйверы устройств, аппаратное программирование. Операционные Системы планирование и диспетчеризация, режимы: мультипрограммный, многопроцессный, разделения времени обмен сообщениями, коллективное пользование файловые системы, переносимость. Отчуждение программиста от программы О т л а д к а
Основная структура исполнения (интерпретации) стек (stack) придумал и запатентовал в 1957 г. Friedrich L. Bauer. Исполнитель Перечень объектов Перечень протоколов Рабочая область Программный фрагмент ВВод ВЫвод Сигналы Основной тезис обоснования: Конкретная деятельность это всегда Единичное исполнение программного фрагмента подходящим Исполнителем в заданной замкнутой Операционной Обстановке. Исполнитель и сигналы, Программный фрагмент Рабочая область с подобластями Ввода и Вывода Перечень (внешних) Объектов Перечень Протоколов взаимодействия Активные и Пассивные компоненты обстановки: Совмещение нескольких ООВУ одинакового уровня в одну обстановку Операционная обстановка высокого уровня (Environment) акад. А. П. Ершов Структура исполнения программы Многомерность локальных внутренних времен
Частные разновидности операционных обстановок Целостность и Замкнутость ООВУ по управлению, по информации, по связям, по времени Исполнитель Перечень объектов Рабочая область Программный фрагмент ВВод ВЫвод C-форма Перечень объектов Перечень протоколов Рабочая область Программный фрагмент ВВод ВЫвод Ξ -форма Исполнитель Перечень объектов Перечень протоколов Рабочая область ВВод ВЫвод F-форма Исполнитель Рабочая область Программный фрагмент ВВод ВЫвод L-форма Общая Е-форма Исполнитель Перечень объектов Перечень протоколов Рабочая область Программный фрагмент ВВод ВЫвод Сигналы Операционная обстановка высокого уровня (Оболочка) (Вирт-машина)
Основные свойства Объектов: пассивность, отдельная целостность, инкапсуляция, политипия информационная замкнутость Свойства классов: создание, наследование полиморфизм Принцип информационной замкнутости: При обращении к объекту может измениться только состояние этого объекта, и никакого другого. Политипия Логическое строение Объекта Набор методов + размер домена = ТИП Перечень обращений = Интерфейс Meт 1 (Х) y Meт 2 (Х) Meт k (Х) z Домен Методы.. подпространство подпространство подпространство описаний команд данных Подобъект объекта не является объектом в том же подпространстве, в котором сам объект является объектом. Работа с составными объектами ведется в два навигацией получаем доступ к нужному подобъекту,а затем обращаемся к нему в соответствии с его типом. Работа с составными объектами ведется в два этапа : навигацией получаем доступ к нужному подобъекту,а затем обращаемся к нему в соответствии с его типом. Будем определять и создавать объекты, как объекты в подпространстве Составные объекты и подобъекты. Сборка Конфигурация множество объектов, объединённые средствами навигации из некого головного объекта. Тип конфигурации задается её операциями навигации Значит нам не хватает понятия!
Конфигурация объектов: Множество объектов, объединённые средствами навигации из единого головного объекта, возможно из разных подпространств, возможно связанных.. Конфигурация приписана тому подпространству, где находится её головной объект.. Тип конфигурации задается её операциями навигации. Подобъекты объекта всегда могут быть представлены как конфигурация некоторых объектов во внутреннем подпространстве, т.е. домене, объекта-хозяина. У составных объектов не может быть общих подобъектов. однако один объект может входить сразу в несколько конфигураций, Отдельная Конфигурация Сцепленные конфигурации В А F Две Конфигурации Наведенная активность F Конфигурации, в отличие от Составных объектов могут менять свой состав динамически
Состояния и Значения Значения элементарны и однократны, независимо от их размера (объёма) а следовательно не копируемы (но сохраняемы) (например, речь или песня, симфония) Поэтому, когда возникает необходимость в преобразовании для: замены значения на последовательность значений (сериализация), то: Значение «загоняется» в объект, а затем «превращается» в конфигурацию и уже оттуда берется и передается по частям, Выдаваемый результат, например, речь, музыку нужно отличать от их записи, которая есть состояние объекта, = текст. Спецификация разборки изделия Задача: нащипать лучину от полена, и разжечь камин ( составить программу ). смена Типа Конфигурация ( отдельная ) Объект смена Типа Составной объект Отщепление компонента Составной объект смена Типа Объект
Строение Субъекта. акти- ватор Исполнитель Система объектов П о р т ы Активность нельзя, вывести логически, т.е. только оперируя знаками её приходится постулировать, как новую сущность. Цикличность Существования Субъекта. Субъект = активность + объект, Состояния Субъекта S5S5 S3S3 S2S2 S kS k S mS m S1S1 Существование В Реальном Мире: Естественная Информационная непроницаемость Субъектов. В Знаковом Мире: Искусственные инкапсуляция и Информационная замкнутость Объектов. Роли Имя 1 Имя 2 Имя 3 Политипия для Субъектов
Два разных способа использования Программных фрагментов, дополняющие друг друга Методы объектов и Протоколы Базисный Чистый Нечистый «Экологически» Виртуализация протокола Протокол является «хозяином», и ведёт взаимодействие. Если мы прибегаем к протоколу, то должны следовать Его предписаниям, Возможна Субъективизация Протоколов Протоколы Субъект- Исполнитель Перечень объектов Рабочая область Программный фрагмент ВВод ВЫвод
Каждое единичное исполнение должно завершаться; (без этого нельзя разложить сложное на части) Любая операционная обстановка и любой объект должны быть информационно-замкнуты.** * Более точно, мне не известно ни одного случая, когда из нарушения этих требований можно было бы извлечь пользу !!! «Священные коровы» информатики (принципы, которые никогда не должны нарушаться) * В ходе изменения состояния элемента всякий другой доступ должен быть запрещен; Целостность и корректность связей (доступов) должны обеспечиваться Системой; ** хотя это пока и не всегда так (в С++, C#) и др.
Субъект воспринимает Реальный мир как Действительность, отображает (через свой Внутренний мир) вещи, как Объекты Знакового мира, в котором и проистекает Деятельность. Технология программа для пользователя. (Слоган. лето 1985 г.) Машина поручает человеку работу, которую тот не смог поручить машине. (Слоган. осень 1984 г.) инженер Бользен, который нежно дружит с фрау Заурих группенфюрер СС Макс Штирлиц Советский разведчик Максим Исаев Сын профессора Всеволод Владимиров
Спасибо за внимание. Готов ответить …