Г. Шилдт - С# 3.0 Полное руководство. 2010 (1160798), страница 190
Текст из файла (страница 190)
В строке способ Указывается, как именно слеДует записы- вать информацию записывает информацию в файл главе по адресу 0В), на который указывает строка иг1. В итоге возвращается ответ Записывает информацию в файл Главе по адресу 0Н, на который указывает объект иг1. В итоге возвращается ответ записывает информацию в файл Глазе по адресу 0В), на который указывает строка иг1. В итоге возвращается ответ. В строке способ указывается, как именно следует записыв- ать информациюю Записывает информацию в файл Глазе по адресу 0Н, на КОтОрЫй уКаЗЫВаЕт ОбЪЕКт и г1. В ИТОГЕ Всэаращдвтоя Отавт.
В строке способ указывается, как именно следует записы- вать информацию Записывает строку 5 с г по адресу 0Н, на который указывает строка иг1. В итоге возвращается ответ Записывает строку 5 Сг ПО адресу 0Н, на котоРый указывает объект иг1. В итоге возвращается ответ Записывает строку 5 Сг ПО адРесу 0В(, на который указывает строка иг1. В итоге воэцзащаетоя ответ.
В строке способ указывается, как именно следует записывать информацию Записывает строку 5 Сг ПО адресу 0Н, на который указывает обьект иг1, В итоге возвращается ответ. В строке способ указывается, как именно следует записывать информацию Записывает значения из коллекции 1 515 по адресу 0В(, на КстОРЫй уКаЗЫВаЕт СтрОКа иг1. В ИТОГЕ ВОЗВращаЕтея ОтВЕт Записывает значения из коллекции У515 по адресу 0В), на который указывает объект иг1. В итоге возвращается ответ Записывает значения из коллекции иа15 по адресу 0В[, на который указывает строка и г1.
В итоге возвращается от- вет. В строке способ указывается, как именно следует записывать информацию Записывает значения из коллекции и515 по адресу 061, на который указывает объект иг1. В итоге возврашдется от- вет. В строке способ укааывается, как именно следует записывать информацию 942 Часть )). Библиотека СЗ ивапч Зувсевт ив1пч Зувкев.иеот ив1пч Зувзев.1От с1азв ИеЬС11епопево ( всас1с ио1б Мвтп() ( ИеЬС11епС ивет = пен ИеЬС11епС()т всг1пч иг1 = УЬССрк//ннн.испхан-н111.сов"т вкг1по Главе = "баса.схС"т сгу ( сспвс1е.игфсеьфпе("загрузка даннык по адресу " + игт + " з файл " + Главе)т инес.понп1оабг11е(ига, Главе)т ) сассь (ИеЬЕхсерсасп ехс) ( Сопво1е.иг1Сепапе(ехс)т ) Сопзо1е.Икакерфпе("Загрузка зазервена.")т ) ) Эта программа загружает информацию по адресу ннн.
мссганп111. сов и помещает ее в файл баса. схс. Обратите внимание иа строки кода атой программы, в которых осуществляется загрузка информации. Изменив символьную строку игб, можно загрузить информацию по любому адресу 11К1, включая и конкретные файлы, доступные по указываемому 1)К1. несмотря на то что классы иеьпек(зевс и иеьпезропзе предоставляют больше возможностей для управления и доступа к более обширной информации, для многих приложений оказывается достаточно и средств класса ИеЬС11епс. Этим классом особенно удобно пользоваться в тех случаях, когда требуется только загрузка информации из вебресурса.
Так, с помощью средств класса ИеЬС11епс можно получить обновленную документацию иа приложение из Интернета. ГЛАВА Создание приложений на основе форм для И~пбоав п одавляющее большинство примеров программ, приведенных в этой книге, ориентировано на консольный ввод-вывод, т.е, они являются консольными приложениями. Такие приложения пригодны как для демонстрации элементов языка С№, так и в качестве некоторых разновидностей сервисных программ, например фильтров файлов.
Безусловно, большинство современных приложений предназначено для работы в среде ЪЪ'шдок з с графическим пользовательским интерфейсом (СШ), и поэтому данная книга была бы неполной, если бы в ней не было показано, как пользоваться средствами С№ для создания приложений для ФЫР з. Именно этим вопросам и посвящена эта, завершающая глава книги.
В прошлом создание приложений для ЪЪчод оп з было непростым делом. Начинающим программистам нередко приходилось целыми неделями изучать основные элементы и архитектуру приложения для %~пг)ока. Правда, это положение изменилось коренным образом с появлением среды .ХЕТ Егашежогй и языка С№.
Так, в среде .НЕТ Егашек ог)г имеется целая подсистема ЪЪг1пцоъ з Еогшз, специально предназначенная для программирования в ЪЪ'1пдоиз. Основная поддержка ЪЪг1пбоъ з Рогшз обеспечивается в пространстве имен зузсеп. нтппонз. гогвз. Благодаря подсистеме ЪНпйоъз Рогшз создание приложений с графическим пользовательским интерфейсом для ЪЪг1пбокз значительно упростилось, а весь процесс их разработки стал более рациональным. Прежде чем приступать к изложению материала этой главы, следует особо подчеркнуть, что программирование для ЪЪГ!пйов з — весьма обширная тема, которой посвящено немало специальной литературы. Все аспекты этого вида программирования просто невозможно осветить в одной главе, как, впрочем, и подробно рассмотреть классы, интерфейсы, свойства и события из пространства имен Бузуев.
нхпоонз. Гогвз, поскольку их слишком много. Материал настоящей главы служит отправной точкой для разработки приложений на основе форм для %шгюк з. В этой главе поясняется, каким образом создаются окна, меню, кнопки и организуется реакция на появляющиеся сообщения. Несмотря на то что эти вопросы весьма поверхностно затрагивают особенности программирования для Мпповз, они закладывают достаточное основание для дальнейшего изучения остальных аспектов разработки приложений на основе форм для %~вдов з. 944 Часть й. Библиотека С№ Краткий экскурс в историю программирования для И1пбоаз Для того чтобы оценить по достоинству преимущества программирования на языке С№ и в среде .НЕТ Ггашетгог!с для %!пк)оьгз, необходимо дать хотя бы самое общее представление о предыстории этого вопроса.
Когда была разработана операционная система %!пк!отчэ, отдельные программы взаимодействовали непосредственно с прикладным программным интерфейсом (АР1), который представляет собой обширный набор методов, определенных в %!пк)отчз для вызова из программ с целью получить доступ к различным функциям этой операционной системы. АР1-ориентированные программы получаются очень длинными и сложными.
Для написания даже скелетного варианта такой программы потребуется не менее 50 строк кода, АР1-ориентированная программа, выполняющая любую полезную функцию, состоит по крайней мере из нескольких сотен строк кода, а реальные приложения — из нескольких тысяч строк кода. Таким образом, на первых порах разрабатывать и сопровождать приложения для %!пк!отгз было нелегко. Для решения этой проблемы были созданы библиотеки классов, инкапсулирующих функции прикладного интерфейса АР!. Наибольший интерес среди них представляет библиотека базовых классов Мтсгозой (МГС).
Многим читателям, вероятно, знакома эта библиотека. Она написана на С+.ь, и поэтому программы, составляемые на ее основе, также пишутся на С.-ь. Благодаря объектно-ориентированным преимуществам библиотеки МГС процесс создания прикладных программ для ЪЪгтпдотчз упростился, но писать МГС-ориентированные программы было по-прежнему нелегко, поскольку они состояли из отдельных заголовочных файлов, файлов исходного кода и файлов ресурсов. Кроме того, библиотека МГС служила лишь в качестве "тонкой оболочки", в которую был заключен прикладной интерфейс АР1, и поэтому для выполнения многих действий на уровне ЪЪгтпт)отгз требовалось значительное количество явно указываемых программных операторов.
Язык С№ и библиотека %!пк!очтз Гоппз среды .!ь!ЕТ Ггашешог1к обеспечивают полностью объектно-ориентированный подход к программированию для %!пк)отгэ, Вместо того чтобы заключать прикладной интерфейс АР1 в оболочку, библиотека %!пк!отгз Гогпкз предлагает рациональный, комплексный и логически согласованный способ управления разработкой приложений для %!пк!отгз. Такой уровень интеграции стал возможным благодаря уникальным средствам языка С№, в том числе делегатам и событиям.
А благодаря применяемой в С№ подсистеме "сборки мусора" удалось практически полностью исключить так называемые "утечки памяти". Если у вас уже имеется некоторый опыт программирования для %!пс!отчз средствами АР1 или МГС, вы найдете в подсистеме %!пс!отгз Гопы замечательный и совершенно новый подход к этому виду программирования. Благодаря ЪЪгтпк!отгз Гогшэ создавать приложения для Ъттгтпботгз стало так же легко и просто, как и консольные приложения.