Иллюстрированный самоучитель по Visual Studio.Net
Введение
Разработчик
приложений, решивший воспользоваться услугами Visual Studio.Net 7.0, получает
в свое распоряжение достаточно много новых технологий и инструментов, которые
позволяют ему быстро и эффективно создавать обычные Windows-приложения, которые
теперь принято называть настольными — desktop applications, а также web-приложения
и web-услуги (Web Services). Компания Microsoft добавила в арсенал программиста
новый язык С# (произносится «Си шарп»), который, как обещают специалисты, способен
в несколько раз ускорить цикл разработки сложных проектов.
Главной новостью,
которая должна привлечь ваше внимание, является то, что Visual C++, Visual Basic
и С# используют одну и ту же среду разработки IDE (Integrated Development Environment),
что дает возможность создавать комплексные проекты с использованием разных языков
(mixed-language solutions). Многоязыковая среда разработки .Net (.Net Framework)
представляет собой сумму трех составляющих:
-
общая для рассмотренного
набора языков библиотека времени исполнения (Common Language Runtime);
-
унифицированная библиотека
классов разработчика (Unified Programming Classes);
-
модель разработки web-приложений
(Active Server Pages.Net).
Первая составляющая
— библиотека времени исполнения (Common Language Runtime, сокращенно CLR), функционирует
как на этапе выполнения, так и на этапе разработки. Во время выполнения кода
она следит за динамикой многопотоковых приложений, обеспечивает взаимосвязь
процессов, поддерживает их безопасность, автоматизирует процедуры выделения
и освобождения памяти. На этапе разработки CLR автоматизирует типовые задачи,
решаемые программистом, значительно упрощая использование новых технологий.
Особо отмечаются преимущества, получаемые при создании компонентов стандарта
COM (Component Object Model, сокращенно COM — Модель многокомпонентных объектов).
Вторая составляющая
(Unified Programming Classes) предоставляет разработчику унифицированную, объектно-ориентированную,
расширяемую библиотеку классов, которая совместно с другими ресурсами является
частью программируемого интерфейса приложений API (Application Programming Interface).
Она объединяет элементы MFC (Microsoft Foundation Classes), WFC (Windows Foundation
Classes) и часть API, используемую Visual Basic.
Третья составляющая
(ASP.Net) представляет собой надстройку на.д классами, которая дает возможность
пользоваться объектно-ориентированной технологией при разработке типовых элементов
HTML-интерфейса. Фактически выполняемые на стороне сервера, эти элементы проецируют
функции пользовательского интерфейса в виде HTML-кода. Однако при разработке
сервера имеется возможность использовать мощный аппарат, предоставляемый объектной
моделью программирования. Результат — резкое упрощение процесса построения web-приложений.
В дополнение к этому ASP.Net поддерживает достаточно новую концепцию или модель
разработки программ. Вы, наверное, слышали о ней, как о технологии «тонкого»
клиента. Основная суть этой модели — предоставление кода пользователю не в виде
инсталлируемого продукта, а в виде временной услуги (service).
Код, который
создан на основе среды разработки .Net Framework, носит название управляемого
кода
{managed code)
в отличие от обычного, неуправляемого кода
(unmanaged
code).
В режиме .Net компиляторы рассмотренных языков производят метаданные
(metadata),
которые сопровождают сам код. Это означает, что они генерируют
дополнительную информацию, описывающую типы данных, объекты и ссылки. Библиотека
времени исполнения (Common Language Runtime) использует метаданные для поиска
и загрузки объектов, запуска функций, передачи параметров, размещения объектов
в памяти.
Важной функцией,
которую выполняет библиотека времени исполнения, является автоматическое освобождение
памяти, занимаемой объектами, которые более не используются. Это нововведение
призвано повысить надежность как отдельных компонентов, так и всего разрабатываемого
приложения. Данные, время жизни которых управляется таким образом, называются
управляемыми данными
(managed data).
Если ваш код является управляемым
(managed code),
то вы можете пользоваться управляемыми данными, но можете
и не использовать их. Более того, вы можете и не знать, являются ли ваши данные
управляемыми.
Общая библиотека
времени исполнения (CLR) упрощает создание приложений и их составляющих, которые
разработаны на разных языках и настроены (target) на использование CLR. Эти
модули могут быть интегрированы в одном проекте и взаимодействовать между собой
так, как будто они были созданы на одном языке. Например, вы можете декларировать
класс, а затем создать производный от него класс уже на другом языке. Можно
и просто пользоваться методами класса в рамках модуля, написанного на другом
языке. Такая интеграция стала возможной потому, что компиляторы и инструменты
разных языков пользуются общей системой типов, определенной в CLR, а также новыми
правилами игры, принятыми при ее разработке.