Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Grunge
Зарегистрирован: 13.09.2005 Сообщения: 1
|
Добавлено: Вт Сен 13 2005 21:09 Заголовок сообщения: Закрытие полей в классах - в чем удобство? |
|
|
В общем, вопрос такой:
Для чего рекомендуется делать поля private даже если в программе всего один класс и работает всего один разработчик? |
|
Вернуться к началу |
|
|
DmitryShm
Зарегистрирован: 17.11.2003 Сообщения: 211 Откуда: Казань
|
Добавлено: Ср Сен 14 2005 07:44 Заголовок сообщения: правила хорошего тона |
|
|
Это правила хорошего тона, которые прививают хороший стиль в программировании на С++. Почитай книги Грейди Буча или Андрея Александреску. _________________ love IT |
|
Вернуться к началу |
|
|
Kefir
Зарегистрирован: 16.04.2005 Сообщения: 443 Откуда: Пермь
|
Добавлено: Ср Сен 14 2005 09:23 Заголовок сообщения: |
|
|
Если класс всего один, то смысла в нем нет. Закрытые же свойства и методы необходимы для сокрытия реализации класса. Пишите вы класс и запоминаете не всю его реализацию, а лишь его интерфейс. После вы можете менять реализацию класса сохраняя интерфейс. Конечно, для одного разработчика делать скрытые свойства и методы необходимости нет, т.к. он не станет обращаться к свойствам к которым не должен, но для группы разработчиков еще как пригождается. |
|
Вернуться к началу |
|
|
kolobok0
Зарегистрирован: 22.04.2005 Сообщения: 253 Откуда: Мсква
|
Добавлено: Ср Сен 14 2005 13:29 Заголовок сообщения: Re: Закрытие полей в классах - в чем удобство? |
|
|
Grunge писал(а): | В общем, вопрос такой:
Для чего рекомендуется делать поля private даже если в программе всего один класс и работает всего один разработчик? |
Если Вы возьмёте "альма матэр" от Ричи. И вникните в суть советов там изложенных, то закрыв глаза увидите си плас плас. Или по другому, в данной книге рекомендуеться распологать данные и способ их обработки локально, изолировано и т.д. и т.п.. В принцепе в си плас плас эта концепция уже развилась и вошла в сам язык.
Область видимости не создана для разграничения доступа со стороны многих шаловливых рук. А скорее убивает тех зайцев, которые будут рождаться в процессе эксплуатации данного класса.
Ну например...
Породили Вы некую сущность. Прошло время (иногда час, иногда год - когда как). И Вам потребовалось существенно изменить способ хранения данных(например). И что прикажите ? Если Вы делали тук-тук явно....то Вы приплыли. Во всех местах придёться подправлять. Если у Вас есть правила обращения (интерфейс) к данному классу, и они идут от бизнес задач, то изменений в коде будет МИНИМУМ. Более того они буду носить ЛОКАЛЬНЫЙ характер.
с уважением
(круглый) |
|
Вернуться к началу |
|
|
|