Професионална програма
Loading...
+ Нов въпрос
ivanlutov avatar ivanlutov 5 Точки

Мнение за 03.Wild Farm от Polymorphism

Колеги още не съм стигнал ООП-то но гледам някакви видеа и се старая малко да напредвам с материала преди да го вземем (в C# Advanced съм в момента). Та направих Wild Farm по условието както я разбрах аз. Ако може някой да даде мнение дали има грешки и кое може да се пооправи ето ми кода (кода дава 100/100 иначе), а тука е условието . Доколкото съм разбрал попринцип методите в отделните класове трябва, които връщат стринг е добре да се печата в Main метода ( вместо директно Console.WriteLine() в самия метод) и ако нещо не е валидно в метода да хвърлят Exeption с определено съобщение, който да се прихване пак в Main. И друго добре ли е ако някой field не го проверяваме за невалидни стойности, директно да го се направи на property, както предлага resharpe-ра или е хубаво да си има private field и отделно property.

 

Тагове:
0
C# OOP Basics 12/06/2017 18:07:55
Sim0o0na:
Получен е отговор.
RoYaL avatar RoYaL Trainer 6847 Точки
Best Answer

Здравей,

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

1
Sim0o0na avatar Sim0o0na Trainer 567 Точки

Относно печатането - това е нещо, което ще видиш в OOP Advanced, а именно създаването на отделен клас (например Writer), който извършва печатането и по аналогия Reader - за четене. В методите за съответното действие, поместваш работата с I/O от/на конзолата.

Основно правило за ООП е полетата ти да са private (protected ако ще наследяваш и ти трябват и за децата) за класа и да осигуряваш достъп до тях посредством методи, ако е нужно - т.е да имаш максимално малко публична информация от класа, видима за външния свят.  Винаги проверявай за невалидни стойности в сетъра на някое поле, за да не се получи верига от проблеми и по другите методи в класа.

:)

0
12/06/2017 18:07:20