ПРОГРАММИРОВАНИЕ
Cреди многих новшеств модернизированной платформы Microsoft для разработчиков (.NET Framework 2.0 и Visual Studio 2005), выпуск которой ожидается до конца текущего года, внимание программистов наверняка привлечет возможность гибкого управления пользовательским интерфейсом в процессе исполнения приложений с помощью внешних конфигурационных файлов.
Конечно, сам по себе такой метод параметризации визуальных интерфейсов известен давным-давно, со времен появления дисплеев. Я широко использовал его при создании оконного интерфейса еще во времена MS-DOS. А познакомившись в начале 90-х с первой версией Visual Basic, был сильно разочарован тем, что код представления форм жестко встраивается в код приложения, что не позволяло динамически изменять состав и параметры визуальных компонентов без перекомпиляции программ.
Правда, до версии VB 6.0 описание форм и элементов управления записывалось в отдельных модулях исходного кода - текстовых файлах .FRM. И хотя мало кому приходило в голову напрямую корректировать эти данные в текстовом редакторе (лучше все же для этого подходит визуальная среда разработки), сам анализ содержимого таких описаний был очень полезен, особенно начинающим программистам, для лучшего понимания внутреннего механизма настройки интерфейса.
Управление параметрами пользовательского интерфейса с
помощью подключения к проекту файла ThisConfigEditor.csи
Разумеется, все параметры оконных компонентов можно было бы вынести во внешние файлы путем написания соответствующего кода (но возможности такого управления компонентами были все равно сильно ограничены - он в основном определяется в ходе компиляции), и целый ряд третьих фирм предлагали для этого свои готовые наборы функций. И вот теперь, спустя почти 15 лет после выхода VB 1.0, Microsoft решила включить такие средства в состав своего инструментария. Реализуется это с помощью нового набора классов пространства имен System.Configuration в составе .NET Framework 2.0 и редактора конфигураций форм в Visual Studio 2005. Их можно применять как для Windows-, так и для Web-приложений.
Определенные функции внешнего управления параметрами приложения имелись еще в первой версии .NET Framework, но они ограничивались вводом символьных данных. Например: int maxConnections = ApplicationSettings.AppSettings.Key ["MaxConnections"]; Теперь же можно будет применять любые типы данных и корректировать их значения в среде разработки. Но самое главное то, что новый API позволяет более четко разделить собственно исполняемый код приложения и пользовательские параметры. Чтобы применить этот метод (в Visual Studio он называется Scopes), к программному проекту нужно подключить новый компонент - ThisConfigEditor.cs (см. рисунок), который задействует новый редактор свойств, хранимых в файлах app.config и Settings.cs.
Механизм такой настройки пользовательского интерфейса достаточно прост, но может быть очень полезен. Правда, в настоящее время неизвестно, будет ли он реализован и в новой версии .NET Compact Framework для программирования мобильных устройств.