Я нахожусь на начальных этапах проекта Blackberry/J2ME, и наряду с другими ограничениями, присущими этой замечательной платформе, отсутствие поддержки отражения и языковой уровень 1.3 означают, что подавляющее большинство существующих контейнеров IoC непригодно для использования. (У Google есть Guice для Android без AOP, но даже для этого требуется поддержка аннотаций).
Таким образом, пространство контейнеров IoC в J2ME довольно ограничено. Одна структура, которая привлекла мое внимание, называется Signal Framework, и она выглядит довольно многообещающе. Он пытается оставаться концептуально близким к IoC Spring Framework, реализуя небольшое подмножество его функций, и делает это, не полагаясь на модификацию байт-кода или вызывая синтаксический анализ xml во время выполнения. Вместо этого он обрабатывает XML-файлы конфигурации во время сборки для создания Java-кода, реализующего эту функциональность IoC.
Вообще говоря, генерация кода во время сборки кажется очень мудрым подходом к мобильным приложениям — и если моему приложению приходится меньше анализировать XML на устройстве пользователя, это тоже здорово!
Итак, каков ваш опыт реализации IoC на J2ME/CLDC и как вам удалось избавиться от горького привкуса во рту?