[Homework Evaluation] Control Flow, Conditional Statements and Loops Homework


1

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

"...
Солюшънът не билдва, понеже има 35 грешки. Много от нещата си стоят на ниво условие, задачите са доста далече от завършени.
... "




Отговори



1

Абсолютно съм съгласен с теб. Вчера получих оценка, че не работи кода и че съм го предал в txt file. Е в какво да предам една if конструкция? Някои хора са решили да пишат код и явно това че други не са го направили, според тях не е решение на задачата, а реално задачите поне според мен не изискваха имплементация а да се приложат принципите предавани на лекции.


от ktsvetanov (705 точки)


1

Какво имаш предвид? Че е ок да има 35 build грешки ли? Да се рефакторира кода значи ли задачите да бъдат направени завършени? Сериозно питам, защото се чудех доста докато правих това домашно. До каква степен трябва да пренаименоваме, форматираме, извеждаме зависимости и абстракции? Може ли да се направи адекватен Control flow без допълнителни класове, интерфейси и т.н.?

Написах  няколко manual теста за готвача и получих коментар, че да си кръстя тестовия готвач Uti или Zvezdev било лошо наименуване. Аз мисля, че са ок имена на тестовите променливи. Вие какво мислите?  

P.S. Guys, като оценявате домашни, имайте предвид че не всички сме от мъжки род... :D


от nhristova (506 точки)


0

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

На Task1 няма нужда да правим някакви мокнати обекти само за да се билдне solution.a, а трябва:

"Refactor the following class using best practices for organizing straight-line code:

За Task2 и Task3 няма смисъл да се говори въобще за асембли, което да се билдва...


от tinman (481 точки)

2

Със сигурност задачата за миничките може би изисква абстракции, класове и тн..., но специално домашното от темата не изисква абсолютно никаква имплементация. Ето един пример:

Potato potato;
//... 
if (potato != null)
   if(!potato.HasNotBeenPeeled && !potato.IsRotten)
    Cook(potato);

Абсолютно достатъчно е да му се сложат { } и да се смени !potato.HasNotBeenPeeled на potato.IsPeeled за да се приеме задачата за вярна защото:

- Приложен е принципа че дори и един ред код да има в if конструкция трябва да е в {}

- Променен е метода да е с положителен въпрос а не да се получава двусмислица от ! и not

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

P.S. Радвам се че досега изпитите ги оценяваха трейнърите, понеже има хора които искат да видят своето решение едно към едно, и ако то не е такова за тях нещата не работя.


от ktsvetanov (705 точки)