Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Стандарди за кодирање #1

Open
goce-smilevski opened this issue Apr 9, 2016 · 0 comments
Open

Стандарди за кодирање #1

goce-smilevski opened this issue Apr 9, 2016 · 0 comments
Assignees

Comments

@goce-smilevski
Copy link
Collaborator

goce-smilevski commented Apr 9, 2016

Општо за сите проекти:

Проект не треба да има непотребни референци. а еве и зошто
(рачното бришење е доволно, не ни треба дополнителна алатка)

Истото важи и за Service References (ако проектот не користи надворешни сервиси нема потреба и од вакоф фолдер).

.cs file не треба да има непотребни using директиви
десен клик на било која линија во using секцијата Organize Usings / Remove Unused Usings (ако ги избриши сите, обично е паметно да остани "using System;").

Стилски фигури:

  • празен ред пред секој метод
  • за автоматските property-ја get / set во истиот ред (за пократок код и поголема читливост):
public string Vaka { get; set; }
public string ANeVaka
{ get; set; }
  • Меѓу секои два методи да има само по една празна линија.
  • Пред првиот и после последниот метод во една да нема празна линија.
  • Меѓу последната линија код во метод и последната заграда која го затвора истиот метод не треба да има празни линии (непотребни се).
  • Обично Ctrl + K + D го форматира цел .cs документ автоматски во поглед на табулатори, загради, празни места и сл.

Стандардизирање на информациите кои се заеднички за сите assembly-ја се постигнува вака
Пример за ова има во Product.zip (solution фолдерот Solution Items и Properties фолдерите на сите проекти)

Domain проект:
Сите domain object класи се public (за да можи да се гледаат надвор од проектот, во останатите слоеви (DAL, BLL, UI) и во тестовите)

Нема потреба од конструктори со сите можни вредности за property-јата како параметри. Доволен е еден конструктор без параметри, кој ќе ги доделува default вредностите на property-јата (ако има некоја посебна логика надвор од она шо веќе го прај C#). Ако негде во кодот треба да се конструира објект со одредени вредности, си има property-ја, секое ќе се додели одделно. Како алтернатива, постои нешто шо се вика object initializer. Целта е да не мора при додавање на ново n+1-во property да се додава и нов конструктор или да се сменва сегде кодот кај шо се повикува постоечкиот конструктор со n параметри.

Класите за колекции ги имплементираат двата конструктори на основната Collection класа.
MSDN

Името на domain object класата е во еднина (на пример, Prijavi е во множина и треба да е Prijava).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant