Ох уж эти переменные
Добрый день,
Сегодня хотелось бы поднять тему наименования переменных.
Да конечно, в каждом проекте главный разработчик изобретает свою конвенцию, и
насилу заставляет работать остальных. Странно? Ведь главный на то и главный,
чтобы делать так, чтобы его решения удовлетворяли максимальное количество людей.
И основной религизной темой является использование типа в наименовании. Закалённые
в боях разрботчики конечно же воспримут духом при упоминании бузворда <<Венгерская
нотация>>. Но всё таки на дворе XXI век и стоит посмотреть какой ветер дует.
Итак. Тип в наименовании - это:
* iCounter,
* strName,
* Collection.AddCourse(Course a)
* _field
* ITS_CONSTANT
Это пережитки прошлого, когда код печатался на бумаге, когда редакторы были текстовые,
когда не было всплавающего разнообразия, когда... когда... и к тому же нас учили
так в институте :)
Мы живём в мире ООП, TDD и рефакторинга (!). А эти вещи говорят
1. Переменная должна отражать НАМЕРЕНИЕ
2. Переменная должна показывать РОЛЬ, а не тип
3. Если вам трудно понять что есть что, то приглядитесь а не слишком ли у вас
большой класс, что вы заблудились в трёх соснах
4. Пользуетесь IDE
Ваше мнение?
С Уважением,
Agile-фанатик
denis miller
Литература:
1. Refactoring Workbook By William C. Wake
2. Kent Beck. Implementation Patterns