Java inner classes
Правила форума
Пожалуйста, ознакомьтесь с правилами данного форума
Пожалуйста, ознакомьтесь с правилами данного форума
- Mel'nik
- Завсегдатай
- Сообщения: 407
- Зарегистрирован: 22 май 2007, 19:09
- Откуда: Burnaby
Java inner classes
Вот сижу тут и думаю, Inner classes - зло или не очень? Просто нашел тут у нас 3500 строк кода с 17!!! иннер классами и одним енамом внутри. Какие будут мнения аудитории?
- Весенняя
- Завсегдатай
- Сообщения: 286
- Зарегистрирован: 10 окт 2008, 21:15
Re: Java inner classes
Почему зло? Не зло. И удобно иногда. А 3500 строк -- это зло 

- Marmot
- Графоман
- Сообщения: 39293
- Зарегистрирован: 17 фев 2003, 17:58
- Откуда: Caulfeild
- Контактная информация:
Re: Java inner classes
Нормально, если по делу, хорошо читается и понятно, что делаетMel'nik писал(а):Вот сижу тут и думаю, Inner classes - зло или не очень? Просто нашел тут у нас 3500 строк кода с 17!!! иннер классами и одним енамом внутри. Какие будут мнения аудитории?

Короче, как и любая другая языковая особенность...
- Проф. Преображенский
- Графоман
- Сообщения: 20276
- Зарегистрирован: 08 ноя 2006, 11:10
Re: Java inner classes
Считается так:
Ну а как на самом деле - депенс.Non-static nested classes (inner classes) have access to other members of the enclosing class, even if they are declared private.
There are several compelling reasons for using nested classes, among them:
* It is a way of logically grouping classes that are only used in one place.
* It increases encapsulation.
* Nested classes can lead to more readable and maintainable code.
- Дима
- Маньяк
- Сообщения: 1455
- Зарегистрирован: 15 авг 2006, 10:21
- Откуда: Минск->Vancouver->Victoria
Re: Java inner classes
Теоретически могу себе представить об'ект, у которого есть 17 достаточно уникальных свойств, которые никому больше не нужны
На практике же думаю, что это издержки плохого дизайна. Может, попросим код ? 


- Mel'nik
- Завсегдатай
- Сообщения: 407
- Зарегистрирован: 22 май 2007, 19:09
- Откуда: Burnaby
Re: Java inner classes
Да я бы и рад, но по бумажке неположено. Просто млин 17 классов это уже маленький пакедж. Уже не говоря о том что юнит тест под ету штуку ой как непросто писать. А дизайн там да, просто улетныйДима писал(а):. Может, попросим код ?

- Marmot
- Графоман
- Сообщения: 39293
- Зарегистрирован: 17 фев 2003, 17:58
- Откуда: Caulfeild
- Контактная информация:
Re: Java inner classes
Ну классы классам рознь, у меня был случай: писалось что-то вроде FSM, внутре была куча (>20) inner Runnables возвращаемых для запуска в thread pool-e...Mel'nik писал(а):Да я бы и рад, но по бумажке неположено. Просто млин 17 классов это уже маленький пакедж. Уже не говоря о том что юнит тест под ету штуку ой как непросто писать. А дизайн там да, просто улетныйДима писал(а):. Может, попросим код ?
Хотя каждый из этих Runnables просто дергал соответсвующий метод внешнего класса...
Так что, как я и сказал, все зависит от конкретного кода, абстрактные рассуждения о вреде или полезности - не катят...