Кратко съдържание

Том 1

Кратко съдържание

Съдържание

Предговор

Глава 1. Архитектура на платформата .NET и .NET Framework

Глава 2. Въведение в C#

Глава 3. Обектно-ориентирано програмиране в .NET

Глава 4. Управление на изключенията в .NET

Глава 5. Обща система от типове (Common Type System)

Глава 6. Делегати и събития

Глава 7. Атрибути

Глава 8. Масиви и колекции

Глава 9. Символни низове (Strings)

Глава 10. Регулярни изрази

Глава 11. Вход и изход

Глава 12. Работа с XML

Глава 13. Релационни бази от данни и MS SQL Server

Глава 14. Достъп до данни с ADO.NET

Том 2

Глава 15. Графичен потребителски интерфейс с Windows Forms

Глава 16. Изграждане на уеб приложения с ASP.NET

Глава 17. Многонишково програмиране и синхронизация

Глава 18. Мрежово и Интернет програмиране

Глава 19. Отражение на типовете (Reflection)

Глава 20. Сериализация на данни

Глава 21. Уеб услуги с ASP.NET

Глава 22. Отдалечено извикване на методи (Remoting)

Глава 23. Взаимодействие с неуправляван код

Глава 24. Управление на паметта и ресурсите

Глава 25. Асемблита и разпространение

Глава 26. Сигурност в .NET Framework

Глава 27. Mono - свободна имплементация на .NET

Глава 28. Помощни инструменти за .NET разработчици

Глава 29. Практически проект

Заключение

 


Програмиране за .NET Framework

 

Светлин Наков и колектив

 

Александър Русев

Александър Хаджикръстев

Антон Андреев

Бранимир Ангелов

Васил Бакалов

Виктор Живков

Галин Илиев

Георги Пенчев

Деян Варчев

Димитър Бонев

Димитър Канев

Ивайло Димов

Ивайло Христов

Иван Митев

Лазар Кирчев

Манол Донев

Мартин Кулов

Михаил Стойнов

Моника Алексиева

Николай Недялков

Панайот Добриков

Преслав Наков

Радослав Иванов

Светлин Наков

Стефан Добрев

Стефан Захариев

Стефан Кирязов

Стоян Дамов

Тодор Колев

Христо Дешев

Христо Радков

Цветелин Андреев

Явор Ташев

 


 

Българска асоциация на разработчиците на софтуер

София, 2004



Програмиране за .NET Framework

 

© Българска асоциация на разработчиците на софтуер (БАРС), 2005 г.

© Издателство "Фабер", 2005 г.

 

 

Настоящата книга се разпространява свободно при следните условия:

Читателите имат право:

-        да използват книгата и учебните материали към нея или части от тях за всякакви цели, включително да ги да променят според своите нужди и да ги използват при извършване на комерсиална дейност;

-        да използват сорс кода от примерите и демонстрациите, включени към книгата и учебните материали или техни модификации, за всякакви нужди, включително и в комерсиални софтуерни продукти;

-        да разпространяват безплатно непроменени копия на книгата и учеб­ните материали в електронен или хартиен вид;

-        да разпространяват безплатно оригинални или променени части от учебните материали, но само при изричното споменаване на източника и авторите на съответния текст, програмен код или друг материал.

Читателите нямат право:

-        да разпространяват срещу заплащане книгата, учебните матери­али или части от тях (включително модифицирани версии), като изключе­ние прави само програмният код;

-        да премахват настоящия лиценз от книгата или учебните материали.

 

Всички запазени марки, използвани в тази книга, са собственост на техните притежатели.

 

 

Официален сайт:

www.devbg.org/dotnetbook/

 

ISBN 954-775-505-6


Национална академия по разработка на софтуер

Лекторите

 

» Светлин Наков е преподавател по съвременни софтуерни технологии в СУ "Св. Климент Охридски".

Той е автор на десетки на­учни и технически публи­ка­ции и ня­колко книги, свър­­зани с раз­работката на соф­ту­ер, заради което е търсен лектор и консултант.

Светлин е разработчик с дъл­гогодишен опит, работил по разнообразни проекти, реали­зирани с раз­лични техноло­гии (.NET, Java, Oracle, PKI и др.).

През 2004 г. получава наг­ра­дата "Джон Атанасов" от прези­дента на България Ге­орги Пър­ва­нов за приноса му към разви­тието на инфор­ма­ци­он­ните технологии и ин­формаци­он­ното общество.

 

» Мартин Кулов е из­пълнителен директор на фир­ма "КодАтест", в която ръко­води раз­работката на системи за управление на качеството и автоматизация на софтуер­ното производство.

Мартин е опитен лектор и сертифициран от Майкрософт разработчик по програмите MCSD и MCSD.NET.

 

» Други инструк­тори с  богат опит като преподавате­ли и програмисти.

Академията

 

» Национална академия по раз­ра­ботка на софтуер (НАРС) е център за професионално обу­чение на соф­ту­ерни специалисти.

 

» НАРС провежда задълбочени кур­сове по разработка на софтуер и съв­ременни софтуерни тех­нологии.

 

» Предлагани специалности:

.NET Enterprise Developer

Java Enterprise Developer

 

» Качествено обу­чение с много практически упраж­нения

 

» Завършвате само за 3 месеца.

 

» Гарантирана работа след успеш­но завършване!

 

» Професионална сертификация!

 

» БЕЗПЛАТНО!

Учите безплатно, плащате след като завършите и започнете работа.

Стипендии от софтуерни фирми.

http://academy.devbg.org



 

 

 


 

 

www.devbg.org

 

 

Българска асоциация на разработчиците на софтуер (БАРС) е нестопанска организация, която подпомага про­фе­сионалното развитие на българските софтуерни специ­а­листи чрез образо­вателни и други инициативи.

БАРС работи за насърчаване обмяната на опит между раз­работ­чиците и за усъвършенстване на техните знания и умения в областта на проектирането и разработката на софтуер.

Асоциацията организира специализирани конференции, семи­нари и курсове за обучение по разработка на софту­ер и софту­ерни технологии.

БАРС организира създаването на Национална академия по раз­работка на софтуер – учебен център за професионал­на подго­товка на софтуерни специалисти.

 


Отзив от Теодор Милев

за книгата "Програмиране с .NET Framework"

 

Свидетели сме как платформата Microsoft .NET се налага все повече в света на софтуерните технологии. Тази тенденция се наблюдава и в България, където прогресивно нараства броят на проектите, реализирани на базата на .NET. С увеличаване на .NET разработчиците расте и нуждата от качествена техническа литература и учебни материали, които да бъдат използвани при обучението на .NET специалисти.

"Програмиране за .NET Framework" е първата чисто българска книга за Microsoft .NET технологиите. Тя представя на читателя в последователен, структуриран, достъпен и разбираем вид основните концепции за разработка на приложения с .NET Framework и езика C#. Книгата обхваща в детайли всички основни .NET технологии като набляга върху най-важните от тях – ADO.NET, ASP.NET, Windows Forms и XML уеб услуги.

По качество на изложения материал книгата се отличава с високо професионално ниво и превъзхожда повечето преводни издания по темата. Тя е отлично структурирана, а стилът на изложението е лесен за възприемане. Информацията е поднесена с много примери, а това е най-важното за един софтуерен разработчик.

Книгата е написана от широк екип доказани специалисти, работещи в партньорските фирми на Майкрософт – хора с опит в разработката на .NET приложения. Основният автор и ръководител на проекта, Светлин Наков, е изтъкнат .NET специалист, лектор в множество семинари и конференции, търсен консултант и преподавател. Негови са заслугите за курсовете по програмиране за платформа .NET във Факултета по математика и информатика на Софийски университет. Негови са и основните заслуги за целия проект по изготвяне на изчерпателно учебно съдържание и книга по програмиране за .NET Framework.

Светлин Наков е носител на най-голямото отличие в областта на информационните технологии – наградата "Джон Атанасов" на Президента Георги Първанов за принос към развитието на информационните технологии информационното общество. Той е автор на десетки статии и книги за програмиране, а настоящото издание е поредната му добра изява.

Настоящата книга е отлично учебно пособие както за начинаещи, така и за напреднали читатели, които имат желание и амбиции да станат професионални .NET разработчици.

 

Теодор Милев,

Управляващ директор на "Майкрософт България"



Отзив от Божидар Сендов

за книгата "Програмиране с .NET Framework"

 

Книгата е оригинално българско творение, с нищо неотстъпващо по качество и обем на световните бестселъри с компютърна тематика. Материалът е поднесен достъпно и е богато илюстриран с примери, което я прави не само отлично въведение в платформата .NET за начинаещия, но и отличен справочник за професионалиста-програмист на C#. Читателят може да се запознае в детайли не само с общите принципи, но и с редица тънкости на програмирането за .NET. Широко застъпени са редица "универсални" теми като обектно-ориентирано програмиране, регулярни изрази, XML, релационни бази данни, програмиране в Интернет, многозадачност, сигурност и др.

Книгата се отличава със стегнат и ясен стил на изложението, като е постигнато завидно педагогическо майсторство. Това не бива да ни изненадва – авторите са водещи специалисти с богат опит не само като професионални софтуерни разработчици, но и като преподаватели във Факултета по математика и информатика (ФМИ) на СУ "Св. Климент Охридски". Самата книга в значителна степен се основава на работни лекции, използвани и проверени в поредица от курсове по програмиране за .NET Framework във ФМИ. Сайтът на книгата съдържа над 2000 безплатни слайда, следващи стриктно съдържанието й, а книгата е напълно безплатна в електронния си вариант, което максимално улеснява използването й в съответен курс по програмиране.

Не на последно място, заслужава да се отбележи систематичният опит за превод на всички термини на български език, съобразен с вече наложилата се българска терминология, но и с оригинални идеи при новите понятия.

Работата, която авторите са свършили, е наистина чудесна, а книгата е задължителна част от библиотеката на всеки с интерес към езика C# и изобщо към водещата платформа на Майкрософт .NET.

 

доц. д-р Божидар Сендов

Факултет по математика и Информатика,

Софийски Университет "Св. Климент Охридски"



Отзив от Стоян Йорданов

за книгата "Програмиране с .NET Framework"

 

"Програмиране за .NET Framework" е уникално ръководство за платформата .NET. Въпреки, че не е учебник по програмиране, книгата е изключително подходяща както за начинаещия програмист, сблъскващ се за пръв път с .NET, така и за опитния разработчик на .NET приложения, целящ да систематизира и попълни знанията си. Всяка тема в "Програмиране за .NET Framework" започва с основите на разглежданите в нея технологии, но към края на темата читателят е вече запознат с детайлите и тънкостите, необходими за успешното им прилагане в практиката.

Обхващайки най-важните аспекти на .NET Framework, книгата започва от основите на езика C# и .NET платформата и постепенно достига до сложни концепции като уеб услуги, сигурност, сериализация, работа с отдалечени обекти, манипулиране на бази данни чрез ADO.NET, потребителски интерфейс с Windows Forms, ASP.NET уеб приложения и т.н. Информацията е поднесена изключително достъпно и подкрепена с многобройни примери и илюстрации. Всяка тема включва и упражнения за самостоятелна работа – неотменим елемент за затвърдяване на придобитите от нея знания.

Авторският колектив включва утвърдени специалисти от софтуерните среди. Въпреки, че авторите са над 30, "Програмиране за .NET Framework" не е просто сборник от статии; напротив – всеки от тях е допринесъл с опита и труда си, за да може книгата да бъде това, което е – добре структурирано и изчерпателно ръководство.

Учебник за студента или справочник за специалиста – "Програмиране за .NET Framework" е задължителна за библиотеката на всеки който има досег с .NET.

 

Стоян Йорданов,

Software Design Engineer,

Microsoft Corpartion (Redmond)

 * Мнението е лично на автора му и не обвързва Microsoft Corporation по никакъв начин


Национална академия по разработка на софтуер

Лекторите

 

» Светлин Наков е преподавател по съвременни софтуерни технологии в СУ "Св. Климент Охридски".

Той е автор на десетки на­учни и технически публи­ка­ции и ня­колко книги, свър­­зани с раз­работката на соф­ту­ер, заради което е търсен лектор и консултант.

Светлин е разработчик с дъл­гогодишен опит, работил по разнообразни проекти, реали­зирани с раз­лични техноло­гии (.NET, Java, Oracle, PKI и др.).

През 2004 г. получава наг­ра­дата "Джон Атанасов" от прези­дента на България Ге­орги Пър­ва­нов за приноса му към разви­тието на инфор­ма­ци­он­ните технологии и ин­формаци­он­ното общество.

 

» Мартин Кулов е из­пълнителен директор на фир­ма "КодАтест", в която ръко­води раз­работката на системи за управление на качеството и автоматизация на софтуер­ното производство.

Мартин е опитен лектор и сертифициран от Майкрософт разработчик по програмите MCSD и MCSD.NET.

 

» Други инструк­тори с  богат опит като преподавате­ли и програмисти.

Академията

 

» Национална академия по раз­ра­ботка на софтуер (НАРС) е център за професионално обу­чение на соф­ту­ерни специалисти.

 

» НАРС провежда задълбочени кур­сове по разработка на софтуер и съв­ременни софтуерни тех­нологии.

 

» Предлагани специалности:

.NET Enterprise Developer

Java Enterprise Developer

 

» Качествено обу­чение с много практически упраж­нения

 

» Завършвате само за 3 месеца.

 

» Гарантирана работа след успеш­но завършване!

 

» Професионална сертификация!

 

» БЕЗПЛАТНО!

Учите безплатно, плащате след като завършите и започнете работа.

Стипендии от софтуерни фирми.

http://academy.devbg.org


Съдържание

Том 1

Кратко съдържание. 2

Съдържание. 13

Предговор. 33

За кого е предназначена тази книга? 33

Необходими начални познания. 34

Какво представлява .NET Framework? 34

Какво обхваща тази книга? 34

Фокусът е върху .NET Framework 1.1. 35

Как е представена информацията? 35

Защо C#? 36

Поглед към съдържанието на книгата. 37

Глава 1. Архитектура на .NET Framework. 37

Глава 2. Въведение в езика C#.. 38

Глава 3. Обектно-ориентирано програмиране в .NET. 38

Глава 4. Обработка на изключения в .NET. 38

Глава 5. Обща система от типове. 39

Глава 6. Делегати и събития. 39

Глава 7. Атрибути. 39

Глава 8. Масиви и колекции. 39

Глава 9. Символни низове. 40

Глава 10. Регулярни изрази. 40

Глава 11. Вход/изход. 40

Глава 12. Работа с XML. 41

Глава 13. Релационни бази от данни и MS SQL Server 41

Глава 14. ADO.NET и работа с данни. 41

Глава 15. Графичен потребителски интерфейс с Windows Forms. 42

Глава 16. Изграждане на уеб приложения с ASP.NET. 42

Глава 17. Многонишково програмиране и синхронизация. 43

Глава 18. Мрежово и Интернет програмиране. 43

Глава 19. Отражение на типовете (Reflection) 43

Глава 20. Сериализация на данни. 44

Глава 21. Уеб услуги с ASP.NET. 44

Глава 22. Отдалечено извикване на методи (Remoting) 44

Глава 23. Взаимодействие с неуправляван код. 45

Глава 24. Управление на паметта и ресурсите. 45

Глава 25. Асемблита и разпространение (deployment) 45

Глава 26. Сигурност в .NET Framework. 45

Глава 27. Mono - свободна имплементация на .NET. 46

Глава 28. Помощни инструменти за .NET разработчици. 46

Глава 29. Практически проект. 46

За използваната терминология. 47

Конвенция за кода. 47

Константите пишем с главни букви. 47

Член-променливите пишем с префикс "m". 48

Параметрите на методите пишем с префикс "a". 48

Именуване на идентификатори. 48

Именуване на контроли. 49

Конвенции за базата данни. 49

Как възникна тази книга? 49

Курсът по програмиране за платформа .NET в СУ (2002/2003 г.) 50

Проектът на Microsoft Research и БАРС. 50

Курсът по програмиране за .NET Framework в СУ (2004/2005 г.) 51

Курсът по програмиране за .NET Framework в СУ (2005/2006 г.) 51

Проектът за настоящата книга. 51

Авторският колектив. 53

Александър Русев. 53

Александър Хаджикръстев. 53

Антон Андреев. 53

Бранимир Ангелов. 54

Васил Бакалов. 54

Виктор Живков. 54

Деян Варчев. 55

Димитър Бонев. 55

Димитър Канев. 55

Галин Илиев. 55

Георги Пенчев. 56

Иван Митев. 56

Ивайло Димов. 56

Ивайло Христов. 56

Лазар Кирчев. 57

Манол Донев. 57

Мартин Кулов. 57

Михаил Стойнов. 58

Моника Алексиева. 58

Николай Недялков. 58

Панайот Добриков. 59

Преслав Наков. 59

Радослав Иванов. 59

Светлин Наков. 60

Стефан Добрев. 60

Стефан Кирязов. 60

Стефан Захариев. 61

Стоян Дамов. 61

Тодор Колев. 61

Христо Дешев. 61

Христо Радков. 62

Цветелин Андреев. 62

Явор Ташев. 62

Благодарности. 63

Светлин Наков. 63

Авторският колектив. 63

Българска асоциация на разработчиците на софтуер. 63

Microsoft Research. 63

SciForge.org. 64

Софийски университет "Св. Климент Охридски". 64

telerik. 64

Други. 64

Сайтът на книгата. 65

Лиценз 65

Общи дефиниции. 65

Права и ограничения на потребителите. 66

Права и ограничения на авторите. 66

Права и ограничения на БАРС. 67

Права и ограничения на Microsoft Research. 67

Глава 1. Архитектура на платформата .NET и .NET Framework. 69

Необходими знания. 69

Съдържание. 69

В тази тема ... 69

Какво представлява платформата .NET? 71

Визията на Microsoft 71

Архитектура на .NET платформата. 72

.NET Enterprise Servers. 72

.NET Framework и Visual Studio .NET 2003. 74

.NET Building Block Services. 74

.NET Smart Clients. 74

Какво е .NET Framework? 75

Компоненти на .NET Framework. 76

Архитектура на .NET Framework 76

Операционна система. 77

Common Language Runtime. 77

Base Class Library. 77

ADO.NET и XML. 77

ASP.NET и Windows Forms. 77

Езици за програмиране. 78

Common Language Runtime. 78

Задачи и отговорности на CLR. 78

Управляван код. 80

Управление на паметта. 82

Intermediate Language (IL) 82

Компилация и изпълнение. 83

Архитектура на CLR. 85

Как CLR изпълнява IL кода?. 86

Асемблита. 88

Проблемът "DLL Hell". 88

Метаданни. 89

IL код. 89

Ресурси. 89

Разгръщане на асемблита. 90

.NET приложения. 90

Преносими изпълними файлове. 91

Application domains 92

Интеграция на езиците за програмиране. 92

Common Language Specification (CLS) 93

Common Type System (CTS) 93

Common Language Infrastructure (CLI) 94

.NET езиците. 95

Framework Class Library. 97

Пакетите от FCL. 98

Visual Studio .NET. 99

Писане на код. 99

Създаване на потребителски интерфейс. 100

Компилиране. 101

Изпълняване и тестване. 102

Проследяване на грешки. 102

Създаване на инсталационен пакет. 103

Получаване на помощ.. 104

VS.NET е силно разширяема среда. 104

Упражнения. 104

Използвана литература. 105

Глава 2. Въведение в C#. 107

Необходими знания. 107

Съдържание. 107

В тази тема... 107

Какво е C#. 108

Принципи при дизайна на езика C#. 108

Компонентно-ориентиран. 108

Всички данни са обекти. 108

Сигурност и надеждност на кода. 109

Всичкият код е на едно място. 111

Програмите на C#. 112

Нашата първа програма на C#.. 112

Как работи програмата?. 112

Създаване на проект, компилиране и стартиране от Visual Studio.NET. 114

Запазени думи в C#. 116