Подреждане на кода?
Здравейте колеги,
след като написах една от задачите от домашното ми се струва, че би трябвало да се подреди малко по добре - струва ми се малко трудно четима. Какво е вашето мнение и препоръки?
ето линк със задачата --> click
Здравейте колеги,
след като написах една от задачите от домашното ми се струва, че би трябвало да се подреди малко по добре - струва ми се малко трудно четима. Какво е вашето мнение и препоръки?
ето линк със задачата --> click
Отстъпите са ти добре. Разделил си смислените части в кода с празен ред. Променливите ти са с добри имена. Единственото, което може да подобриш, според мен, е преди всяка смислова част дадобавиш коментар какво правиш в кода. На пример //input; //output и т.н.
Поздрави за хубавия код и успехи!
Console.WriteLine("\nFirst Name: {0} \nLast Name: {1} \nAge: {2} \nGender: {3} \nPersonal ID Number: {4} \nEmployee number: {5}", firstName, lastName, age, gender, personalID, emplNumb);
Това може да стане:
Console.WriteLine("\n
First Name: {0} \n
Last Name: {1} \n
Age: {2} \n
Gender: {3} \n
Personal ID Number: {4} \n
Employee number: {5}",
firstName, lastName, age, gender, personalID, emplNumb
);
Или обратното - параметрите да са така направени, както е ковенцията за писане на методи с много параметри.
P.S.: Променливите са много добре наименовани, само ще отворя една скоба, в случая не етакъв проблем, но като цяло - избягвай абревиатурите.
emplNumb разбирам за какво иде реч, не ечак такъв проблем, но ако си го направиш като практика, ще завършиш с имена като "prv" вместо "private", "custId" вместо "customerId" и т.н., аксептъбъл са само най-разпространените абревиатури като например "cnt" вместо "count".
Аз бих декларирал всички променливи в началото, така като поглднеш знаеш какво ще се ползва, също така ползвай TryParse вместо Parse за да не ти хвърля exceptions ако няма да ги хващаш.
string firstName;
string lastName;
byte age;
char gender;
long personalID;
int emplNumb;
Console.Write("Enter your first name: ");
firstName = Console.ReadLine();
Console.Write("Enter your last name: ");
lastName = Console.ReadLine();
Console.Write("Enter your age (0-100): ");
byte.TryParse(Console.ReadLine(), out age);
Console.Write("Enter your gender (f/m): ");
char.TryParse(Console.ReadLine(), out gender);
Console.Write("Enter your personal ID number: ");
long.TryParse(Console.ReadLine(), out personalID);
Console.Write("Enter your employee number : ");
int.TryParse(Console.ReadLine(), out emplNumb);
Не точно. В по-дългите и сложни кодове, всичко ти е изнесено като пропъртита на класа, т.е. отново е предаврително дефинирано. А всички междинни променливи са темп променливи, и като цяло не ги ползваш за нещо по-генерално.