我正处于Blackberry / J2ME项目的开始阶段 - 除了这个精彩平台附带的其他限制外,缺乏对反射和1.3语言级别的支持意味着绝大多数现有的IoC容器都是无法使用。 (谷歌有Guice for Android,没有AOP,但即使这需要支持注释)。
因此J2ME上的IoC容器空间非常有限。引起我注意的一个框架称为Signal Framework,看起来非常有前景。它试图在概念上接近Spring Framework的IoC,实现其功能的一小部分,并且不依赖于字节码修改或导致运行时xml解析。相反,它在构建时处理配置XML以生成实现此IoC功能的Java代码。
一般来说,构建时的代码生成对于移动应用程序来说似乎是一种非常明智的方法 - 如果我的应用程序必须在用户的设备上进行较少的XML解析,那也很棒!
那么,您在J2ME / CLDC上实施IoC的经历是什么,以及您如何能够消除口中的苦味?
答案 0 :(得分:3)
我们在TomTom使用了Spring ME。它运作得很好。
答案 1 :(得分:2)
在J2ME中,您需要尽可能减少使用的类的数量,以减小jar文件的大小。这导致许多设计妥协,其中最重要的是灵活性。
当你必须抛出你所学到的东西(并且高度重视)窗外的OO时,调整到J2ME开发并不容易。事实上,如果您想要能够在各种手机上运行的应用程序,您需要对设备的约束非常敏感。
因此我认为IoC框架不会满足许多人对J2ME开发的需求。
答案 2 :(得分:1)
您可能有兴趣查看FallME。即使我没有亲自使用它,它似乎是一个专门为J2ME平台构建的无意义框架。
答案 3 :(得分:1)
我在荷兰JUG会议期间遇到Spring ME(没有任何经验)。
答案 4 :(得分:0)
更新:不幸的是,Signal现在非常不熟,因此我将使用Israfil IOC添加自定义添加。