--
Subscription settings: http://groups.google.com/group/introcsharpbook/subscribe?hl=bg
Със base()
->
С base()
Със base.method(...)
->
С base.method(...)
Със base.field
->
С base.field
Появата на обектно-ориентираното програмиране de facto
->
Появата на обектно-ориентираното програмиране де факто
Не е необходимо да е на латиница
Специално за колекциите и работата с различни типове обекти има
разработена друга парадигма
наречена Generics. Тя позволява създаването на типизирани класове -
например колекция, която
работи само с обекти от тип Lion.
-> За Generics вече е говорено в глава 14. Иначе липсва и запетая пред
"наречена".
Ако не е се хвърля InvalidCastException.
->
Ако не е, се хвърля InvalidCastException.
Пунктуация
Ето един пример, в който извикваме ToString() метода
->
Ето един пример, в който извикваме метода ToString()
Словоред
първо се преобразува до символен низ чрез ToString() метода му
->
първо се преобразува до символен низ чрез метода му ToString()
Словоред
Тоест когато използваме ключовата дума new създаваме нов метод, който
скрива стария и можем
да (????) извикаме само чрез upcast.
->
Тоест когато използваме ключовата дума new, създаваме нов метод, който
скрива стария, и
можем да го извикаме само чрез upcast.
Пунктуация. И можем да извикаме само чрез upcast кое?
Какво става ако в горния пример върнем думата override?
->
Какво става, ако в горния пример върнем думата override?
Пунктуация
Метод, който може да бъде пренаписан се нарича виртуален метод.
->
Метод, който може да бъде пренаписан, се нарича виртуален метод.
Пунктуация
Ако желаем един метод да може да бъде пренаписан можем да укажем това
с ключовата дума
virtual в декларацията на метода.
->
Ако желаем един метод да може да бъде пренаписан, можем да укажем това
с ключовата дума
virtual в декларацията на метода.
Пунктуация
Транзитивност, пример.
africanLion.setMale(true);
->
africanLion.SetMale(true);
PascalCase
за по ясно разбиране на примерите.
->
за по-ясно разбиране на примерите.
Правопис
Нужно ни е само дистанционното, и с малък брой
->
Нужно ни е само дистанционното и с малък брой
Пунктуация
игнорираме всички детайли, които не ни интересуват от даден обект и
->
игнорираме всички детайли, които не ни интересуват от даден обект, и
Пунктуация
Имайки абстрактния тип данни ние можем да работим с него
->
Имайки абстрактния тип данни, ние можем да работим с него
Пунктуация
Това, допълнено от факта,
->
Като прибавим това към факта,
Словоред
Ето как изглежда и класа Lion
->
Ето как изглежда и класът Lion
Членуване
и се специфицира шаблонния клас.
->
и се специфицира шаблонният клас.
Членуване
Написаният код срещу интерфейси е много по-издръжлив срещу промени,
отколкото написаният
срещу конкретни класове.
...
Разбира се, добра практика е да се програмира срещу интерфейси, а не
срещу конкретни класове
(за това вече споменахме в секцията "Абстракция").
-> Написан код срещу интерфейс/класове - това ми звучи адски странно.
Когато програмираме трябва да дефинираме като private (скрит) всеки
метод или поле, които не
искаме да се ползват от друг клас.
->
Когато програмираме, трябва да дефинираме като private (скрит) всеки
метод или поле, които
не искаме да се ползват от друг клас.
Пунктуация
Забележете в горния пример как нормалните методи hide() и run() имат
тяло, а абстрактният
метод CatchPray() няма тяло.
->
Забележете в горния пример как нормалните методи Hide() и Run() имат
тяло, а абстрактният
метод CatchPray() няма тяло.
PascalCase
за абстрактния метод getTypicalSound():
->
за абстрактния метод GetTypicalSound():
PascalCase
Пренаписването на методи се нарича още: припокриване (подмяна) на
виртуален метод.
->
Пренаписването на методи се нарича още: препокриване (подмяна) на
виртуален метод.
Правопис
така и абстрактните методи могат да бъдат припокривани
->
така и абстрактните методи могат да бъдат препокривани
Правопис
Клас, който прави много неща едновременно е труден за разбиране и
поддръжка.
->
Клас, който прави много неща едновременно, е труден за разбиране и
поддръжка.
Пунктуация
Помислете какво се случва, ако друг метод, който извиква sqrt() подава
параметрите си през
същите статични променливи operand и result.
->
Помислете какво се случва, ако друг метод, който извиква Sqrt(),
подава параметрите си през
същите статични променливи operand и result.
Пунктуация + PascalCase
Класовете, реализиращи колекциите са необвързани един с друг.
->
Класовете, реализиращи колекциите, са необвързани един с друг.
Пунктуация
да имат ясен интерфейс и да добра абстракция и да скриват детайлите за
вътрешната си работа.
->
да имат ясен интерфейс и добра абстракция и да скриват детайлите за
вътрешната си работа.
Излишно "да"
Ето един друг пример: Представете си какво щеше да стане,
->
Ето един друг пример: представете си какво щеше да стане,
След двоеточие се пише малка буква
и дали е мъж или жена
->
и дали е мъж, или жена
Пунктуация
какви книги харесва или каква бира харесва.
->
какви книги харесва или каква бира пие.
Има повторение на думата "харесва", което не звучи добре.
В примера в "идентификация на класовете" "дневен отчет за всички
транзакции" думата "отчет"
не е маркирана в сиво.
за класа Student цвета на очите е несъществена характеристика
->
за класа Student цветът на очите е несъществена характеристика
Членуване
Ето как изглежда една sequence диаграма:
->
Ето как изглежда една use case диаграма:
Терминология
Това е полезно ако процесът по създаването е много сложен
->
Това е полезно, ако процесът по създаването е много сложен
Пунктуация
Нека имаме клас, която съдържа графични файлове
->
Нека имаме клас, който съдържа графични файлове
Съгласуване
I)
Въпрос за пунктуацията към Виктория:
> Тоест когато използваме ключовата дума new, създаваме нов метод,
> който скрива стария, и можем да го извикаме само чрез upcast.
> Пунктуация. И можем да извикаме само чрез upcast кое?
Трябва ли да има запетая пред съюза "и" и ако да - защо? Правилото за
запетаята за край на подчиненото изречение е по-силeн от правилото за
липса пред съюза "и"?
II)
> игнорираме всички детайли, които не ни интересуват от даден обект, и
Тук трябва да е същото правило?
III)
> Нужно ни е само дистанционното, и с малък брой
> ->
> Нужно ни е само дистанционното и с малък брой
> Пунктуация
А тук няма, защото не е подчинено второто изречение?
Mихаил
2010/4/24 Виктория Парушева <v_par...@hotmail.com>: