Loading...

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

Simooo93 avatar Simooo93 81 Точки

High-Quality Code - Solid Principle In Software Design[Homework]

Здравейте,

най-накрая домашно, което да ми допадне за писане. Не знам на вас дали ви беше интересно, но лично на мен това ми беше най-приятно. Искам да го споделя с вас и дадете съвети, ако има нещо объркано: 

Logger

Тагове:
3
C# OOP Advanced 27/01/2016 09:29:05
ToniBeliyashki avatar ToniBeliyashki 11 Точки

Здравейте!

Ето и моето домашно. Ще се радвам на всякакви съвети и feedback.

:)
 

1
mishomihaylov avatar mishomihaylov 67 Точки

Здравей Тони! 
Дойде ми на ум да ти напиша едно две неща :) :
1. Не оставяй неизползвани импортнати библиотеки отгоре, не ти трябват най-малкото.
2. В SimpleLayout, метода FormatMessage можеш да приемаш много на брой аргументи, което не е правилно, защото програмата ще се компилира и при един подаден параметър, но при изпълнението ще гръмне, а така или иначе знаеш, че ще използваш само 2. В Append пак приемаш доста аргументи, каква е причината за това ?
3. Мисля, че с тези enum-ерации си усложняваш работата, особено при апендването.

 

1
ToniBeliyashki avatar ToniBeliyashki 11 Точки

Здравей Мишо! 
За библиотеките си прав да... винаги забравям да ги махна.
Относно броя параметри - опитах се да обхвана възможно най-много варианти на Appender-и и Layout-и, тъй като не е казано, че например един бъдещ Appender, няма да може да append-ва освен съобщение, ReportLevel и дата, и някакви други неща. При което, ако сигнатурата на методите в самите ILayout и IAppender е с точно определен брой и точно определен тип параметри, ще се наложи да се бръкне в кода и да се добавят новите параметри. 
Може би не съм разбрал условието правилно.
А това с enum-ерациите го написах за да може да се имплементира другата логика.

Иначе благодаря ти за feedback-a. :)

0
28/01/2016 12:54:59
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.