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



страница45/73
Дата21.07.2018
Размер9.03 Mb.
#76887
1   ...   41   42   43   44   45   46   47   48   ...   73

Упражнения


  1. Избройте основните разлики между стойностните и референтните типове. Кои от следните типове са стойностни и кои референтни?

  1. Дефинирайте клас Student, който съдържа данните за един студент: трите му имена, ЕГН, местоживеене (постоянен и временен адрес), телефон (стационарен и мобилен), e-mail, курс, специалност, ВУЗ, факултет и т.н. Използвайте изброен тип (enumeration) за специ­алностите, ВУЗ-овете и факултетите. Реализирайте стандартните методи, наследени от System.Object: Equals(object), ToString(), GetHashCode() и операторите == и !=.

  2. Добавете имплементация на интерфейса ICloneable за класа Student. Методът Clone() трябва да копира в нов обект всяко от полетата на класа Student.

  3. Дефинирайте структурата от данни двоично наредено дърво за пре­търсване (binary search tree) с операции "добавяне на елемент", "търсене на елемент" и "изтриване на елемент". Не е необходимо да поддържате дървото балансирано (това ще ви спести много усилия). Имплементирайте виртуалните методи ToString(), Equals(object), GetHashCode() от System.Object и опе­раторите за сравнение == и !=. Добавете и реализация на интерфейса ICloneable за дълбоко копи­ране на дървото.

Упътване: За да улесните работата си, използвайте два типа – клас BinarySearchTree (за самото дърво) и клас TreeNode (за елементите на дървото).

  1. Дефинирайте клас ComplexNumber, който съдържа комплексно число. Имплементирайте за него интерфейса IComparable.

  2. Дефинирайте клас BitSet256, който представлява масив от 256 булеви стойности и се съхранява вътрешно като 4 на брой 64-битови полета (UInt64). Реализирайте методи Get(int index), Set(int index, bool value) и индексатор за достъп. Имплементирайте и интер­фейса IEnumerable, като за целта използвате вътрешен клас, който импле­ментира IEnumerator.

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


  1. Светлин Наков, Обща система от типове (Common Type System) – http://www.nakov.com/dotnet/lectures/Lecture-4-Common-Type-System-v1.0.ppt

  2. Jeffrey Richter, Applied Microsoft .NET Framework Programming, Microsoft Press, 2002, ISBN 0735614229

  3. Tom Archer, Andrew Whitechapel, Inside C#, 2-nd Edition, Microsoft Press, 2002, ISBN 0735616485

  4. MSDN Training, Programming with the MSicrosoft® .NET Framework (MOC 2349B), Module 5: Common Type System

  5. Svetlin Nakov, .NET Framework Overview – http://www.nakov.com/ publications/Nakov-DotNET-Framework-Overview-english.ppt

  6. MSDN Library – http://msdn.microsoft.com



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

Лекторите

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

Той е разработчик с дъл­гого­дишен опит, работил по раз­нообразни проекти, реали­зи­рани с раз­лични техноло­гии (.NET, Java, Oracle, PKI и др.) и преподавател по съвре­мен­ни софтуерни технологии в СУ "Св. Климент Охридски".

През 2004 г. е носител на награ­дата "Джон Атанасов" на прези­дента на България Ге­орги Пър­ва­нов.

Светлин Наков ръководи обу­чението по Java технологии в Академията.


» Мартин Кулов е софтуерен инженер и консул­тант с дългогодишен опит в изграждането на решения с платформите на Microsoft.

Мартин е опитен инструктор и сертифициран от Майкрософт разработчик по програмите MCSD, MCSD.NET, MCPD и MVP и меж­дународен лектор в световна­та организа­ция на .NET потре­бителски­те групи INETA.

Мартин Кулов ръководи обу­чението по .NET технологии в Академията.


Академията

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


» НАРС провежда БЕЗПЛАТНО кур­сове по разработка на софтуер и съв­ременни софтуерни тех­нологии в Со­фия и други градове.
» Предлагани специалности:

  • Въведение в програмирането (с езиците C# и Java)

  • Core .NET Developer

  • Core Java Developer

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


» Гарантирана работа! Трудов до­говор при постъпване в Академията.
» БЕЗПЛАТНО!

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



http://academy.devbg.org

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

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


  • Базови познания за архитектурата на .NET Framework

  • Базови познания за общата система от типове в .NET (Common Type System)

  • Базови познания по обектно-ориентирано програмиране с .NET Framework и C#

Съдържание


  • Делегати (delegates). Дефиниране, инстанциране, извикване

  • Single-cast и multicast делегати

  • Събития (events)

  • Разлика между събитие и инстанция на делегат

  • Утвърдени конвенции при дефиниране и използване на събития в .NET Framework

  • Кога да използваме интерфейси, събития и делегати?



Сподели с приятели:
1   ...   41   42   43   44   45   46   47   48   ...   73




©obuch.info 2024
отнасят до администрацията

    Начална страница