Задължително капсулиране
Задължително ли е да капсулираме полетата в един обект, ако не е зададено изрично по условие? Защото имам коментари по домашните, че трябва да се капсулира всичко, но в условието на задачата не е казано.
Задължително ли е да капсулираме полетата в един обект, ако не е зададено изрично по условие? Защото имам коментари по домашните, че трябва да се капсулира всичко, но в условието на задачата не е казано.
Да. Това са добрите практики, които учим от самото начало. Добре е също и да правиш валидация на входните данни срещу тъп/зъл user .
Публични полета ако имаш - не е добре. Ако нямаш валидации може да имаш автоматични пропъртита, без да декларираш полетата, но ако впоследствие решиш да валидираш ще се наложи да направиш и полетата.
Валидациите също са важни - да смяташ с отрицателна лихва за отрицателен период не е коректно поведение на един клакулатор за лихва например.
Всяко нещо, което е 'public', е доста опасно. Константните полета без проблем може да са такива.
Не е задължително, но е много лошо да не се възползваш от капсулацията. Представи си, че работиш в някакъв проект. Имаш един публичен метод, който се ползва на 100 места. Представи си какво следва ако го промениш. Не напразно е наложено като правило това нещо.