http://www.j-hi.net
趋势
在当今的企业级开发过程中随着开源框架的不断成熟(稳定性与可维护性已不是问题),如何快速提高开发效率,降低开发成本已成为急待解决的问题。为了解决上述问题各各大型的软件公司或是有五年以上经验积累的中、小型软件公司都会有各自的解决方案。或是制定完整的开发方案;或是有一个带一些业务的框架;或是有自己的开发工具。在这个大环境的驱动下也不乏一些专做开发平台的公司应运而生。究其原因,这是一种趋势,我们认为软件行业正在走着一条硬件的老路,在此我们先回顾一下硬件的发展道路
通过图不言自明,硬件正是通过是独立的单元不断向更大的集成的趋势,每个上一环节都是下一环节的单位,而下一环节是上一环节更大规模的集成。从本质上来看软件也与硬件的道路差不太多,如图:
Java就好比是硬件的二极管,是所实现所有事情的根源与基础,而目前各各主流框架(如Struts、hibernate、ibatis、webwork、Spring等)都是站足在某个技术点上对Java功能的二次集成与功能扩展,这就象硬件中的集成电路,即本身是自封闭的各电路之间的通讯与融合还需另外元器件桥接。各主流框架也是一样它们只关注于各自技术领域本身,而不提供任何业务模型,框架与框架之间的集成工作也要手动配置。在谈业务开发平台之前说一下SOA,应用企业随着业务系统的增加,各系统之间的互通已是主要问题,而SOA就象internet让各应用系统间不成为信息孤岛。而J-Hi平台本身就定位在“大规模集成”这一环节上,虽然在业务开发平台这个环节中也有很多相关的产品,但J-Hi与这些平台在理念上有很大的差别,它的目的是将主流的框架集成到该平台当中,为您呈显一个开放的(开源)、高效(学习曲线)、稳定、可复用、低耦合、通用化并且功能齐全、用户体验友好的套件产品。
融合
如果从严格的意义来说J-Hi没有什么创新点,技术创新不过是在前人的基础上多前进那么一小步,因此即便是有创新点也只是对各种技术的融合。有人说这叫“造轮子”,我们不想造轮子,也不想提出自己的开发规范。J-Hi的关注点主要制力于对优秀的框架与技术进行融合,使其更适合方便的使用。因此J-Hi是开放的,不同与其它以模型驱动的业务平台产品有自己的开发规则、脚本语言与操作方式成为了一个自封闭的系统。又因为J-Hi的开放性,利用的都是主流框架的开发规则(这些框架大家都耳熟能详,基础知识已不是问题),从而降低开发人员的学习曲线,提高了开发速度。平台的开放性也注定了它会不断的融入进的元素,加入新的框架。不断的求新、求变、保证性能的稳定与功能的完善是它追求的目标。嗨!~~,象打个招呼这般简单实用是它的源动力(J-Hi名字的由来)。
尊重传统的开发模式
程序开发是一种习惯,看惯了代码、写惯了coding,程序员很难接受无编码的开发形式,没了设计感觉扼杀了自己的创造力。而J-Hi完全尊重传统的开发模式,可以说是对传统开发模式的有益补充,补充在代码生成与组件的可移植性上。首先,是生成可以使您从枯燥的复重劳动中解放出来使您将精力更多的用于把握客户的业务需求;其次,所有代码无论是生成的还是底层代码都是对您可见的,您可以充分发挥你的创造力与创新精神,采用设计模式写出优质的代码;最后,平台的组件化更便于您与其它系统的整合(例如您在OA里做了一个报销管理,您可以通过发布器方便的将它移植到ERP系统或任何采用平台开发的系统中去)。
所有的一切只是为了提高速度降低成本
Hi平台的宗旨无非八个字“提高速度,降低成本”,在提高开发速度方面:
1)
Hi平台采用模式代码生成的方式会生成从数据库脚本、JAVA代码、JSP页面到相关配置文件所有文件,从而使您从枯燥繁琐的编辑配置文件写模式代的JAVA代码中解放出来。
2) 平台本身提供了很多通用的、可配置的功能模块(如权限管理、附件、枚举管理……)我们称之为通用组件。因为这些通用组件都是十分常用的,可以说在一个系统中它们无处不在,所以利用通用组件可以大大加快项目的开发速度。
3) Hi平台底层是一个设计良好的框架,可以说融入了当今大多数主流的开源框架。通过向导的形式平台可以提供对不同框架间的一站式快速搭建。
4)
除之以外如何快速响应客户的需求的不断变化一直是做软件项目的一场噩梦,而Hi平台在这方面有一些自己的经验与尝试,即使是增、改数据库表字平台本身也有自己的解决方案。
在降低成本方面:
1)
风险成本,为了提供开发速度降低项目的经济成本采用平台或工具(即使是采用一些开源框架)这已是业界不可逆转的趋势。随着平台化产品的不断涌现,如何选择好的产品以降低风险已是作为决策层首当其冲考虑的问题。在这方面可以说Hi平台在同类的产品中风险是最低的,一、它是开源的没有任何瓶劲;二、它是代码生成的所有的一切均可见,J-Hi平台不发现制造规范只是java世界中主流规范的执行者,本身没有任何技术陷阱;三、可以说J-Hi平台是程序员为程序员开发的一个工具,它的开发模式与传统开发模式完全相同
2)
人力成本,快速开发本身就意味着人力成本的降低,对于企业来说通过平台可以将人员分出梯次从而进一步的控制人力成本。对于个人来说通过对J-Hi开源平台的学习(因为可以说平台本身就是目前很多主流框架的一个容器),可以快速的提升自己的技能,特别是在企业级开发上,从而自身价值的提升。
3)
管理成本,人员的流动尤其是核心人员的流动一直是企业面临的棘手问题,而对应该问题的最好方式是在项目管理与开发上的标准化。J-Hi平台为开发的标准化提供了一个基础,原因在于代码生成无论是代码样式、风格及配置文件的规则完全相同。这样就保证无论人员如何流动这套标准是不会变化的。