eclipse插件开发中“资源”的启示

本文探讨了在Eclipse环境下进行插件开发的经历,重点介绍了如何使用面向接口编程来提高代码的可维护性和扩展性。文章还讨论了接口在资源管理和降低包深度方面的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近一直在从事基于eclipse的插件开发工作,其实本身就开发过程来讲是异常的痛苦。一直以来都在用java写业务逻辑,而很少涉及到有关UI方面的编程,可能很久以前有用过swing的相关内容,看过一点点swt/jface的东西,但是都没有深入了解,以至于一个简单的TreeView的展现也研究了半天。当然,这些都不是主要内容,是想要谈一下有关资源和面向接口编程的内容。

在较早前的时候有看过一些有关面向接口编程的概念,但是大规模应用面向接口的编程还是都没有特别的使用过。在eclipse的资源管理中,大量采用了接口的方式,如IResource、IFolder、IFile、IPath等内容。除看来是一种令人头大的设计,因为接口就意味着可能很多内容需要自己来实现,灵活性的代价就是复杂度。但是仅仅在eclipse这个应用环境中,我们需要做的事情几乎是操作一个现有的资源,抑或者是通过已有的API来创建类似的资源,于是这个时候,接口表现出来很强势的特性,接口本身:仅仅描述了某个资源的能力,通过接口的多实现能力(multi-implementation),大大降低了java只支持单继承对我们造成的诸多不便

在操作的时候,我们通过一些eclipse框架相关的API获取到资源的实例,而操作这些实例的句柄(引用)则是一个个的接口,实际上,这个过程会变得更加清晰。

之前看过一本书,有讲到继承(extends)和实现(implements)的优劣,后来就会有看到一个概念,就是利用接口来作为功能的标志,接口的多实现是平面的,而继承则是垂直的,合理的使用接口,将能够有效地控制整个系统的(或者工程)的包深度,这对维护是一个很大的好处。这一类的代码其实很多地方都有使用,包括swt/jface库,甚至是在java的源码中,也都大量采用。

有些具体的代码在以后有可能会贴上来一起学习,有些内容还需要琢磨。

继续……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值