Книгата упражнеия след глава 2
Здравейте! Опитах се да си направя упражненията след глава 2 в книгата, но срещнах някои затруднения. Например ползвам if else, за да избегна грешни данни, но не мога да накарам програмата да се върне назад. Ето кода на задачите:
Това с Gender го опитах и с chat тип, но беше по-зле. Там проверяваше дали GenderTry е 'm' или 'f'. Та идеята е като изпише грешката в третия случай Console.WriteLine("Error! Enter your gender again"); да го върна обратно на : Console.WriteLine("Enter your gender (male or female): "); Това искам да го направя и за следващата задача за номера. Там ползвам и една помощна булева променлива Validnumber освен числовата PersonalNumberTry и май стана много сложно, а сигурно има и по-лесен начин.
Прочетете правилата на форума преди да пускате нова тема.
Това задължителни условия ли са или са препоръчителни. Защо една променлива трябва да започва с малка буква особенно ако е име - като променливата Ivo например.
Не са задължителни. Както виждаш кодът ти и така ще работи. Тук става въпрос за общоприети правила, които се спазват с оглед качество на кода. Уеднаквяването на практиките при именуване помагат за по-лесното четене и разбиране на кода от различни хора. Можеш да потърсиш повече информация за конвенциите за именуване в C#. Като за начало, основното е:
camelCase за променливите (няма значение дали имената им са имена, виж по-долу за имената имена)
PascalCase за методи и класове
достатъчно (но не прекалено) описателно име за променливите
В този смисъл Ivo не е добро име за променлива, първо защото ако това го прочете някой, който не е българин, няма да разбере какво значи ivo. Второ, като видя променлива Ivo някъде из кода, няма никакв шанс да разбера тази променлива какъв й е случаят. Когато кодът ти е 10-20-50 реда, няма да е много трудно, но представи си, че става въпрос за програма от няколко стотин (да не говорим хиляди) реда код. Още нещо, ако този Ivo стойността му впоследствие стане Gosho? Използването на имена за имена на променливите (nameception!!!) не е добра практика.
Дотолкова мога да помогна аз, все пак съм съвсем начинаещ в програмирането. Повече информация по този въпрос можеш да намериш в лекцията "Примитивни типове данни и променливи" (ако не си присъствал, можеш да я гледаш примерно от тук), в книгата "Основи на програмирането със C#", глава 2, както и тук и тук. Препоръчвам ти лекцията, в нея Богомил добре обяснява основните насоки.
В Ниво 2 има и цял курс, който се казва "Качествен програмен код" или КПК. Предполагам, че там надълго и нашироко ще обсъждаме тези въпроси. Ако имаш интерес, можеш да намериш материалите от курса тук (не съм ги гледал, но предвид, че са в Ниво 2 предполагам, че може да има доста терминология, която да е сложна за начинаещите като нас).
Поздрави!