'

Дисциплина: «Высокоуровневые методы информатики и программирования»

Понравилась презентация – покажи это...





Слайд 0

Дисциплина: «Высокоуровневые методы информатики и программирования» Кафедра «ОСУ» Осенний семестр 2009/2010 уч. года Уч. группы: 8581 и 8582


Слайд 1

Лекции: Тузовский Анатолий Федорович – профессор каф. ОСУ Рабочее место к. 316 КЦ ТПУ Консультация: Четверг с 17-18 Лабораторные занятия: Тузовский Федор Анатольевич, ассистент каф. ОСУ


Слайд 2

План лекции Пояснение организации, цели и содержания дисциплины Введение в новую платформу (технологию) разработки и выполнения программного обеспечения - Microsoft.Net


Слайд 3

Организация преподавания дисциплины


Слайд 4

Распределение учебного времени Лекции - 60 часов Лабораторные занятия - 44 часа Всего аудиторных занятий -104 часов Самостоятельная работа - 104 часа Общая трудоемкость - 208 часов


Слайд 5

Материалы курса Материалы по курсу будут расположены в локальной сети по адресу \\Exilim\Info\Дисциплина ВУМИиП (гр. 8581-8582) Дополнительный материал \\Exilim\Info\Тузовский\Высокоуровневые методы информатики и программирования


Слайд 6

Самостоятельная работа (104 часа) Изучение материала лекций. Выполнение примеров сделанных на лекции. Выполнение доп. заданий по ЛР Самостоятельная работа может выполняться: на своем компьютере вечером в лабораториях кафедры


Слайд 7

Отчетность студентов Аттестационные баллы -100 мах. Посещение лекций – 20 баллов Контрольные работы – 30 баллов Лабораторные работы – 50 баллов составление алгоритма (5 баллов) описание класса (5 баллов) описание класса с событиями (5 баллов) разработка программы с GUI интерфейсом (10 баллов) работа с базой данных (15 баллов)


Слайд 8

Литература в электронном формате \\Exilim\Info\ Дисциплина ВУМИиП (гр. 8581-8582)\Библиотека на русском на английском книги по технологии .Net и С# в библиотеке НТБ в магазинах


Слайд 9

Пояснение цели курса


Слайд 10

Что такое ВУМИиП? Высокоуровневые методы: наиболее абстрактные; наиболее развитые. Информатика – наука об информации (о том, как хранить, обрабатывать и визуализировать информацию с использованием компьютеров). Т.е. вопросы технологии обработки информации. Программирование – составление наборов инструкций, которые описывают порядок выполнения компьютером вычислительного алгоритма.


Слайд 11

Из образовательного стандарта специальности 010502 «Прикладная информатика (в экономике)» Содержание курса ВУМИиП: Новейшие направления в области создания технологий программирования Программирование в средах современных информационных систем Объектно-ориентированный подход к проектированию и разработке программ Основы визуального программирования. Компоненты; использование компонентов.


Слайд 12

Основные средства достижения цели Современная методология разработки ПО - Object Oriented Programming, включает Анализ Проектирование Программирование Современная технология разработки (.Net technology, component technology, языки программирования) Современные системы разработки (Visual Studio, CBuilder, Delphy)


Слайд 13

Основные технологии разработки ПО Язык Java (фирма Sun) и основанные на нем технологии (JavaBeabs, NetBeans, Eclipse, JDBC, JSP, …) Платформа .Net (языки C#, Visual Basic, С++ и др., технологии ADO, ASP, LINQ, …)


Слайд 14

Соответствие .Net и Java Comparison of the Java and .NET platforms http://en.wikipedia.org/wiki/Comparison_of_the_Java_and_.NET_platforms Comparison of C# and Java http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java


Слайд 15

Цель нашего курса ВУМИиП Дать основы ООП к разработке программ в среде OS Windows. Изучение новой технологии разработки ПО .Net, как наиболее совершенной в среде OC Windows. Изучить программирование на новом алгоритмическом языке С#. Дать навыки работы с интегрированной средой разработки Visual Studio.Net (2008)


Слайд 16

Пирамида требуемых знаний Объектно-ориентированный подход - программирование Платформа Microsoft .Net Языки – С# (VB.Net,С++) Система разработки – Visual Studio.Net Создаваемая вами программа


Слайд 17

Виды программных систем Локальные прикладные программы (приложение -application) Консольное приложение Приложение с графическим интерфейсом Распределенные программные системы в локальной компьютерной сети (distributed application) Интернет приложения (Web application, с использованием Интернет обозревателя)


Слайд 18

Пояснение работы компьютера и программ Жесткие диски Дискеты *.exe *.dll Внешняя память Оперативная память 0 1 2 Виртуальная оперативная память Системный процесс Процессор Арифметико-логическое устройство (АЛУ) Адрес команды Команда Данные Процесс 1 Процесс 2 . . . . . . . Процесс N Данные Регистры Ячейки – 1 byte 1Кб = 1024 байт = 210 1Mб = 1024 Кб = 220 1Mб = 1024 Кб = 230 FlashCards N


Слайд 19

Логика работы компьютера Внешние устройства Внешняя память Жесткие диски (до 1 Тб) Дискеты … Экран Клавиатура Основной блок Физическая оперативная память (до 1 Гб) Процессор Регистры Арифметико-логическое устройство Виртуальная оперативная память Процессы Системный Пользовательские


Слайд 20

Типы языков программирования Машинные языки (машинные коды, инструкции) Строки чисел задающие машине специальные инструкции +1300042774 +1400593419 +1200274027 Ассемблерные языки Аббревиатуры на английском языке описывающие элементарные команды компьютера (транслируются с помощью ассемблеров) LOAD BASEPAY ADD OVERPAY STORE GROSSPAY Высокоуровневые алгоритмические языки Похожие на обычный английский язык, используются математические обозначения (транслируются с помощью компиляторов и интерпретаторов) grossPay = basePay + overTimePay Объектно ориентированные языки программирования


Слайд 21

Машинный язык Инструкции закодированные на двоичном языке Непосредственно выполняются процессором Язык самого низкого уровня Каждый шаг программы в конечном счете является инструкцией на машинном языке 10010110 11101010 00010010 10101010 10010110 11101010 11111111 01010101 10101101 2034 2035 2036 2037 2038 2039 2040 2041 2042 Адрес Содержание


Слайд 22

Ассемблерный язык Каждой машинной инструкции задается краткое символьное обозначение Язык очень низкого уровня Почти 1 к 1 соответствие с машинным языком Транслируется на машинный язык с помощью ассемблера. MUL X,10 ADD X,Y STO Z,20 SUB X,Z Простая программа


Слайд 23

Языки высокого уровня Близки к естественному (английскому) языку Каждый шаг соответствует нескольким инструкциям на машинном языке Предоставляет поддержку абстракциям Ближе к описанию и решению задач


Слайд 24

Трансляция (компиляция) Машинная команда 0101250130 => 01 | 0125 | 0130 01 – операция сложения (add), 0125 – адрес первого операнда (число), 0130 – адрес второго операнда (число) Оператор ассемблер ADD NUMBER,VALUE => 0101250130 Оператор языка высокого уровня A + B => 0101250130


Слайд 25

Программа связывания (Linking) Вся программа делится на части (блоки операторов, модули) Блоки операторов – function, classes С помощью функций и классов и можно разработать очень сложные программы Набор откомпилированных функций (классов) можно сохранить в одном файле, который называется библиотекой (Library) Существуют статические (*.lib) и динамические (*.dll) библиотеки Программа Linker – объединяет все классы и функции разработанной программы в один файл – выполняемый модуль (executable module) (ищет требуемые функции в библиотеках и добавляет их к модулю)


Слайд 26

Загрузчик создает новый процесс, переписывает программу в ОП, настраивает разные таблицы и передает управление первому оператору (начало функции Main ) Классическая последовательность создания программы Алгоритм решения задачи


Слайд 27

Существующие способы разработки программ в ОС Windows Большинство программистов использовали языки Visual Basic (VB), C или C++. Программисты на языках C и C++ использовали некоторые базовую библиотеку функций ОС - Win32 API, большинство использовали библиотеку классов Microsoft Foundation Classes (MFC). Часть программистов перешли на использование компонентной технологии Component Object Model (COM) с помощью библиотеки ATL. Для разработки Web приложений использовались другие технологии – ASP программирование на Visual Basic Для доступа к базам данных использовались технологии ODBC, ADO, OLE DB.


Слайд 28

Проблемы программного обеспечения Взаимодействие программных модулей (компонент) локальный компьютере в сети (локальной и глобальной) Переносимость между разными платформами (портативность) 32 и 64 битные настольные и портативные Безопасность Эффективность


Слайд 29

Новая платформа разработки и выполнения программ .Net


Слайд 30

Платформа Microsoft .Net В 2002 году компания Microsoft выпустила платформу разработки и выполнения программ под управлением ОС Windows -.NET Framework, которая предлагает новый подход к решению проблем разработки программного обеспечения и соответствие целям информационных систем следующего поколения. Microsoft .Net Platform это новая интегрированная, объектно-ориентированная среда разработки и выполнения программ. С программной точки зрения .Net Platform это набор библиотек классов; среда выполнения программ CLR; набор программных инструментов (Visual Studio, компиляторы, отладчики и пр.).


Слайд 31

Платформа программирования Любая платформа разработки и выполнения программ включает: Среду выполнения кода (программы) Среду разработки программы Библиотеку классов


Слайд 32

Состав платформы .NET (the .NET Framework) Общая среда выполнения (Common Language Runtime) Runtime engine (виртуальная машина) для управляемого кода Управление потоками и памятью Хорошо гранулированная, ясная защищенность (security) Межъязыковое управление исключениями, диагностика, отладка Библиотека классов (.NET Framework Class Libraries) Набор иерархически организованных библиотек классов Используется всеми языками .NET Встроенная общая система типов данных (common type system) Объектно-ориентированная, расширяемая Набор инструментов разработки и отладки программ Компилятор (VB .NET, C# и C++) Инструменты (AL.exe, Disasm.exe)


Слайд 33

Список версий .Net Framework


Слайд 34

Особенности платформы Microsoft.Net Многоплатформенность: она может работать на разных компьютерах, начиная от серверов и настольных компьютеров и заканчивая наладонными компьютерами (PDA) и сотовыми телефонами. Единая модель и инструментарий разработки всех типов приложений (локальных и сетевых) Активная поддержка международных стандартов: она использует такие стандартные протоколы коммуникации, как XML, HTTP, SOAP и WSDL. Безопасность: данная платформа предоставляет намного более безопасную среду выполнения, даже в случае получения программного кода из не надежных источников.


Слайд 35

Общий промежуточный язык (Common Intermediate Language - CIL) Все компиляторы .Net создают программу на специальном языке CIL Общая среда выполнения (Common Language Runtime - CLR) Все программы выполняются под управлением специальной программы (CLR) Framework Class Library (FCL) При выполнении программы, написанные на любом языке, используют общую библиотеку Основные идеи .Net технологии


Слайд 36

Оборудование компьютера Операционная система Window XP/Vista и др. Виртуальная машина – Common Language Runtime (CLR) Библиотека Framework Class Library (FCL) ADO.Net Windows Forms ASP.Net Базовые классы (IO, string, collections, text, … ) Компилятор C# Компилятор VB Компилятор С++ . . . . . . Приложения пользователей Visual Studio .Net .Net Framework


Слайд 37

Упрощенная разработка Высокий уровень абстракции Нет низкоуровневой инфраструктуры COM Полностью объектно-ориентированная Единая система типов Все является объектами некоторых классов, нет variants (без типовых переменных), Один тип string, Все символы кодируются в системе Unicode Программные компоненты Свойства, методы, события и атрибуты являются базовыми элементами классов. Бесшовное взаимодействие между языками


Слайд 38

Установка .Net Framework C:\WINDOWS\Microsoft.NET\Framework Версии платформы v2.0.50727 Варианты установки Software Development Kit (SDK) (354 Mb) – для выполнения и создания управляемых приложений Redistributable Package (22.4 Mb) – выполнения управляемых приложений


Слайд 39

Факты об .NET Framework .NET Framework SDK свободно распространяется (SDK – Software Development Kit) .NET Framework SDK включает компиляторы для языков: C#, VB.NET и C++. Программирование на .NET Framework SDK не требует наличия среду разработки Visual Studio .NET Имеются бесплатные версии среды разработки Visual.Studio (Express Edition) .NET Framework SDK включает набор инструментов, запускаемых из командной строки, такие как компиляторы, отладчики, и разные утилиты Rotor это открытый код реализации .NET Common Language Runtime (CLR) и C# языка


Слайд 40

Проект Mono Проект по созданию полноценной реализации платформы системы .NET на базе свободного программного обеспечения. (выполняется компанией Novell, руководит Мигель де Иказа, известный разработчик, участник проекта GNOME и др.) Включает следующие компоненты: компилятор языка C# — mcs, среду исполнения (CLR) — mono (с поддержкой JIT) и mint (без поддержки JIT), отладчик, а также ряд библиотек, включая реализацию ADO.NET и ASP.NET. В рамках проекта также разрабатываются привязки для графической библиотеки GTK+ на платформу .NET. Среда исполнения mono может исполнять модули, написанные на языках C#, Visual Basic .NET, Java, Boo, Nemerle, Python, JavaScript, PHP и Object Pascal (при наличии компилятора в среду .Net/Mono). Ожидается также поддержка языков C, Ada 2005 и Eiffel. Реализации Mono существуют для таких операционных систем, как: GNU/Linux, FreeBSD, Solaris, Mac OS X, Microsoft Windows и Unix.


Слайд 41

Два типа программ в ОС Windows Программы (exe модули) в виде набора инструкций процессора (native code) выполняются процессором непосредственно все ранее созданное программное обеспечение Программы имеющие специальную структуру на промежуточном языке - управляемый код (managed code) создаются на платформе .Net выполняются в среде CLR


Слайд 42

Работа программ в MS DOS и OS Windows Common Language Runtime Программа пользователя Программа использующая .NET технологию (управляемый код, managed code) Обычная программа, не использующая .NET технологию (не управляемый код, native code) процессы


Слайд 43

Компилятор Управляемые модули *.dll или *.netmodule Компилятор с любого языка преобразует исходный код в промежуточный код, и задает метаданные модуля с описаниями всех типов (классов) в модуле. Загрузчик (Loader) Загрузчик создает новый процесс, в который загружает среду выполнения CLR (Common Language Runtime). Just In Time Compiler Оперативная память CLR вызывает JIT компилятор, который по мере использования классов сборки выполняет компиляцию на язык машинных инструкций. Вначале управление передается статической функции Main. Процессор выполняет операторы в соответствии с логикой программы. Если класс не на машинном языке, то формируется exception, которое вызывает JIT Последовательность создания и выполнения программы на платформе .Net Запуск Common Language Runtime Exceptions RTE Программа Линкер сборок Assembly *.exe или *.dll Может использоваться AL.exe утилита для создания сборки (assembly). Для простых сборок компилятор автоматически создает сборку. Сборка не объединяет модули в единый модуль, а соединяет их логически. Редактор текста Исходный код *.cs, *.vb, … С помощью редактора текста программа записывается в файл и сохраняется на диске.


Слайд 44

Компиляция программ в .Net


Слайд 45

Основные типы модулей с инструкциями компьютера в ОС Windows Выполняемые программы (*.exe) Статические библиотеки (*.lib) Динамические библиотеки (*.dll)


Слайд 46

Типы программных модулей в .Net платформе сборки (assembly) exe (может быть запущен на выполнение) dll (библиотека классов, может использоваться в других программах, которые на нее ссылаются - reference) специальные модули (не включает метаданные о сборке, а только метаданные с описанием типов) netmodule (может быть включен в сборку).


Слайд 47

Новый тип программы – Сборка (assembly) Сборка (assembly) – включает 1 или более управляемых модулей (УМ) Управляемый модуль (managed module) – содержит 1 или более классов Один класс должен включать 1 статический метод (static method) Main() В методе Main должно быть решение задачи, или создание экземпляров класса, которые решают задачу


Слайд 48

Сборка (продолжение) Компилятор сразу создает управляемый модуль и сборку Все модули сборки хранятся (один или несколько файлов) хранятся в одном каталоге Утилита AL.exe – для создания многофайловых сборок (может быть на разных языках) В сборке есть декларация – дополнительные метаданные, которые описывают состав сборки


Слайд 49

Формат исполняемых файлов, объектного кода и динамических библиотек Код программы на языке машинных инструкций Встроенные данные (меню, рисунки, …) Данные Код программы Microsoft Portable Executable


Слайд 50

Формат управляемых программных единиц Описание сборки (только у сборок) Описание доступных классов Код программы на IL языке Встроенные ресурсы (меню, рисунки, …) Метаданные сборки – декларация (Manifest) Метаданные типов (Type Metadata) IL code Resources Метаданные


Слайд 51

Многофайловая сборка CIL Описание сборки Метаданные типов CIL Метаданные Картинка CIL Метаданные Main.exe Aix1.netmodule Aix2.netmodule Image.jpg


Слайд 52

Метаданные сборки - декларация (Assembly Manifest) Декларация (Манифест) это часть метаданных модуля Декларация – метаданные, описывающие содержимое сборки, в частности, PE файлы, представляющий данную сборку. Состав декларации Идентификация – имя, номер версии, открытый ключ Список файлов сборки Список сборок на которые есть ссылки (references) Экспортируемые типы (классы) Хранится в одном выделенном файле сборки Первым делом CLR читает декларацию


Слайд 53

Метаданные типов Единое (табличное) представление информации о типах и других именованных сущностях, определенных и используемых в .NET-приложении. По структуре очень близки к реляционной СУБД. Создаются компилятором Полное описание информации о типах (классах) (определяемых и используемых) Хранятся в виде набора таблиц Расширяют возможности старых технологий, таких как IDL Всегда связаны с кодом на IL (генерируются одновременно) => синхронизированы


Слайд 54

Использование метаданных Устранение необходимости в заголовочных и библиотечных файлах при компиляции Интеллектуальные функции наподобие IntelliSense в VS.NET (браузер типов) – раньше такое тоже было, но использовались TLB Верификация кода (проверка на безопасность) Основа для сборки мусора


Слайд 55

Типы сборок Нестрого именованные сборки (weakly named) – сборки без криптографической подписи Строго именованные сборки (strongly named) – имеют Открытый ключ создателя цифровую подпись, вычисляемую по содержанию сборки и закрытого ключа создателя. Имя строго именованной сборки включает открытый ключ создателя и номер версии.


Слайд 56

Создание и выполнение управляемых программ


Слайд 57

Исполнение в .NET CLR VB Исходный текст Compiler C++ C# Assembly Assembly Assembly Operating System Services MSIL Common Language Runtime JIT Compiler Compiler Compiler Native- код Managed Code Managed Code Managed Code Unmanaged Code CLR Services


Слайд 58

Вызов компилятора csc.exe progr.cs /reference:System.Drawing.dll,System.Windows.Forms.dll /target:exe /out:myprg.exe По умолчанию подключается модуль mscorlib.dll /reference:<подключаемые библиотеки> /target:<тип результата> exe – консольное приложение winexe – GUI приложение library – библиотека классов (dll) module – управляемый модуль /out: <имя полученного файла>


Слайд 59

Создание сборки из управляемых модулей с помощью Assembly Linker csc /t:module a.cs csc /t:module b.cs - создание управляемого модуля AL.exe /target:library /out:lib.dll a.netmodule b.netmodule - создание сборки csc /t:exe /r:lib.dll demo.cs


Слайд 60

Глобальный кэш сборок Global assembly cache (GAC) Обычные сборки хранятся в том файле, где они используются В глобальном кэше (хранилище) сборок хранятся сборки, которые могут использоваться разными приложениями


Слайд 61

Общий промежуточный язык


Слайд 62

Microsoft Intermediate Language (MSIL) MCIL это ассемблерный язык виртуальной машины. Однако реально система команд этой машины переводится в исполняемый код конкретного процессора перед исполнением (так называемая компиляция времени исполнения) При этом выполняется довольно сложный анализ типов программы и проверки условий корректности кода


Слайд 63

Характеристики MSIL Псевдоассемблер – определяет набор команд виртуального процессора (примерно 100 команд) Использует стековую модель выполнения (сперва значения загружаются в стек, вызывается команда операции, а затем результаты сохраняются в памяти) При запуске программы CLR компилирует c CIL в машинные коды Утилита ildasm.exe - дизассеблер


Слайд 64

Трансляция в MSIL Исходный текст на С# using System; class Fib // числа Фибоначчи { public static void Main (String [] args) { int a = 1, b = 1; for (int i = 1; i != 10; ++ i) { Console.WriteLine (a); int c = a + b; a = b; b = c; } } }


Слайд 65

Трансляция в MSIL Сгенерированный код (начало) // объявление имени assembly .assembly fib as "fib" { // здесь могут быть параметры assembly } .class public Fib { .method public static void Main () { .entrypoint // означает начало assembly // декларация локальных переменных: .locals (int32 a, int32 b) ldc.i4.1 // загрузка константы 1 stloc a // сохранение 1 в a (a = 1) ldc.i4.1 stloc b // аналогично: b = 1 ldc.i4.1 // загрузка 1 на стек // (счетчик цикла)


Слайд 66

Трансляция в MSIL (2) Сгенерированный код (окончание) Loop: ldloc a call void System.Console::WriteLine(int32) // печать a ldloc a // stack: 1 a ldloc b // stack: 1 a b add // stack: 1 (a+b) ldloc b stloc a // a = b stloc b // b = (a+b) ldc.i4.1 add // инкремент счетчика dup ldc.i4.s 10 bne.un.s Loop // сравнение и переход // на следующую итерацию pop // удаление счетчика цикла со стека ret } }


Слайд 67

Достоинство MSIL Многоплатформенность Интеграция языков программирования Возможность отладки многоязыковых приложений Единая модель обработки ошибок


Слайд 68

Ассемблер и дизассемблер MSIL Ассемблер ILAsm.exe (входит в .NET Framework) Дизассемблер ILDasm.exe (не входит в .NET Framework, но входит в VS.NET)


Слайд 69

При компиляции IL в команды процессора выполняется верификация (проверка кода на безопасность) Верификация основывается на метаданных При обнаружении небезопасного кода возбуждается исключение (System.Security.VerificationException) Не исполняется для небезопасного кода (например, помеченного с помощью ключевого слова unsafe в C#) MSIL и безопасность


Слайд 70

Инструменты программирования включают все, что необходимо для кодирования и отладки: Согласованные с .Net компиляторы (например, C#, VB, JScript, и управляемый (managed) C++, а также компиляторы, разработанные другими компаниями). Отладчики (debugger). Серверные компоненты (дополнения), такие как обработчики ASP.NET страниц. Интегрированную среду разработки Visual Studio .Net (или другие версии среды разработки).


Слайд 71

Выполнение сборки в процессе OC домены приложений Application domain - концепция для совместного использования и изоляции приложений Накладные расходы меньше, чем при создании нового процесса AppDomains создаются в рамках “CLR-хоста” (одного запуска CLR), исполняющего .NET-приложения Иерархия: Процесс ОС -> CLR-хост -> AppDomains AppDomain создается для каждого .NET-приложения (по умолчанию – DefaultDomain) Явные ссылки между AppDomains запрещены Связь между AppDomains требует прокси-классов и сериализации (обеспечиваемых .NET Remoting API)


Слайд 72

Библиотека классов .NET Framework (FCL)


Слайд 73

Основные сведения о FCL В начальной версии было более 7000 типов (классы, интерфейсы, перечисления и делегаты) Некоторые классы включают описание до 100 методов. В библиотеке описаны 184000 методов. В библиотеке описаны 2800 методов вызова функций Microsoft Win32 API Все языки программирования используют одни и те же типы. Библиотека разделена на иерархическое пространство имен (около 100) Физически классы размещаются в DLL. Классы одного и того же пространства имен могут находиться в разных DLL


Слайд 74

Пространства имен FCL (FCL Namespaces) System System.Data System.Xml System.Web Globalization Diagnostics Configuration Collections Resources Reflection Net IO Threading Text ServiceProcess Security Design ADO SQLTypes SQL XPath XSLT Runtime InteropServices Remoting Serialization Serialization Configuration SessionState Caching Security Services Description Discovery Protocols UI HtmlControls WebControls System.Drawing Imaging Drawing2D Text Printing System.Windows.Forms Design ComponentModel


Слайд 75

Организация библиотеки FCL Размещены в наборе библиотек – dll (Dynamic Link Library) В разных библиотеках включены разные пространства имен – namespaces Объекты одного пространства имен могут включаться в разные библиотеки В пространствах имен включены классы, структуры, интерфейсы, перечисления, делегаты.


Слайд 76

Пространство имен – name space Разделение объектов по иерархически организованным группам Используется иерархическое пространство имен <имяПространства>.<имяТипа>.<имяПодтипа>.<имяСобственное> Вложенность нескольких имен (как почтовый адрес) Значительно понижается вероятность совпадения имен классов разработанных разными компаниями Для описания связей между классами (классы близкие по функциональности включены в одно пространство) Пространство имен включает - классы (Class); интерфейсы (Interface); перечисления (Enum); делегаты (сигнатуры классов, Delegate); другие пространства имен. В одном DLL модуле могут содержаться элементы из разных пространств имен.


Слайд 77

Библиотек классов платформы .Net Framework Class Library (FCL) В состав FCL входит Base Class Library (BCL) - это часть FCL, которая поддерживает базовую функциональность программ. BCL включает классы пространства имен System, System.CodeDom, System.Collections, System.Diagnostics, System.Globalization, System.IO, System.Resources, System.Text, System.Text.RegularExpressions.


Слайд 78

Основные пространства имен FCL System – общие базовые типы System.VisualBasic – базовые типы для VBasic System.Drawing – классы для рисования System.Windows.Forms – классы для приложений с графическим интерфейсом System.Data – классы для работы с данными в БД System.Web – классы для ASP.NET и Web-форм System.Net – классы для работы с сетевыми протоколами System.Web.Services - классы для разработки Web сервисов System.Web.UI – основные классы используемые ASP.Net


×

HTML:





Ссылка: