Tiny框架设计理念

简介:

使用灵活,可以整个使用它,也可以只用它的一个或几个部分

Tiny框架的项目组织不是放在一个大包里面的,而是根据功能进行了细致的模块划分,这样,在使用的时候,可以更加灵活,可以只使用其中的一个公共库,也可以使用其中的一个小的框架,也可以使用它们中的更多,当然也可以整体使用。

学习成本低,上手容易

如果你是想对Tiny进行修改,那么你的学习时间是要长一些的,你要用到的东西越多,要学习的范围也越广;如果你是应用架构人员,那么主要集成中Tiny框架的配置及各模块的作用上;如果你是开发人员,实际上学习成本是非常低的,如果你要开发业务逻辑部分,那么你会Java,会Spring,那么花半个小时大致了解一下即可--实际上你会发现,其实与普通Java应用开发没有任何不同;如果你是Web应用开发人员,目前来说,我们提供的展现引擎是基于Velocity框架做,那么,你需要学习Velocity,当然,也可以用Jsp或FreeMarker或其它展现技术来做界面展现。相对来说,我们不推荐用JSP做展现,因为它在模块化方面有些问题,JSP只能放在WebROOT目录中,这与我们提倡的BU有较大的不兼容性。(也就是说,如果你要用JSP做展现技术,要丧失业务单元给你带来的好处)。实际上,学习一种模板语言也就是1个多小时的事情,所以,学习一下吧。

核心的稳定性,核心部分使用尽量少的第三方框架及包

在Tiny框架中,对使用第三方包,持审慎态度,限制在尽量小的范围。
目前Tiny中直接使用的第一方库有:
必须依赖:
Spring
XStream
Velocity
Apache commons
slf4j
扩展依赖的有:
jcs/ehcache
juel/mvel
这些框架都得到了广泛的应用与验证,并且在Tiny框架中,经过连续1个月的大强度压力下运行,没有发现影响使用的问题。

方便的外延性,不影响对第三方框架的使用

由于集成了Spring,所以与各种第三方框架的集成与使用都是非常方便的。Tiny的原则是,Tiny框架引入第三方库非常审慎,但是绝对不影响使用Tiny框架的开发人员引入第三方库。

现有资产的可延续性,不管以前有什么软件资产,只要愿意,都可以方便的集成、复用

除非是一个新开的项目,否则总是会有7788已经存在的软件资产,这些资产有些可能不再适合进行复用,有些则不同,非常有价值,这个时候就涉及到软件复用的问题。Tiny框架对于集成原有资产的方式,非常多,可以通过Spring集成、可以通过插件集成、可以通过组件集成、可以通过事件处理器集成、可以通过界面组件集成,总有一款适合你。

易于知识积累,真正做到越用越强

Tiny不仅仅是一个开发框架,更是一个体系,为了达到口号中所提的Think big, start small, scale fast的目标,Tiny在集成,扩展,积累,复用方面做了大量的思考与设计。所有基于Tiny框架开发的内容,都可以方便的被其它使用Tiny框架的项目组使用,而不用管它是组织内的还是组织外的。
所以,Tiny的目标实际是构建一个Tiny生态体系,就象Maven一样,Maven的插件可能是由千千万万开发人员开发的,但是都可以通过mvn命令驱动执行,可以融为它的一个部分。关于Tiny生态体系,会有专门的文章介绍。

易于集群与水平扩展,能做到不间断提供服务

Tiny框架支持基于SOA体系构建大型应用系统,可以方便的进行应用集群,可以方便的进行水平扩展,也就是说,系统中哪个地方存在短板,就可以补充哪个地方。在进行扩展的过程中,对现有的环境没有任何影响,在集群环境中,不存在单点故障,也就是只要不是停电,不是网络故障,可以永不停止的对外提供服务。你可以在系统运行过程中,对系统中的各个部分(只要有冗余)进行停机维护、升级。

相关文章
|
6月前
|
机器学习/深度学习 人工智能 测试技术
11种开源即插即用模块汇总 !!(附论文和代码)
11种开源即插即用模块汇总 !!(附论文和代码)
379 1
|
存储 Java API
阿里高级技术专家谈开源DDD框架:COLA4.1,分离架构和组件(下)
阿里高级技术专家谈开源DDD框架:COLA4.1,分离架构和组件(下)
9706 2
阿里高级技术专家谈开源DDD框架:COLA4.1,分离架构和组件(下)
|
搜索推荐 前端开发 架构师
阿里高级技术专家谈开源DDD框架:COLA4.0,分离架构和组件(上)
阿里高级技术专家谈开源DDD框架:COLA4.0,分离架构和组件(上)
2597 0
阿里高级技术专家谈开源DDD框架:COLA4.0,分离架构和组件(上)
|
3月前
|
前端开发 开发者 C#
深度解析 Uno Platform 中的 MVVM 模式:从理论到实践的全方位指南,助你轻松掌握通过 C# 与 XAML 构建高效可维护的跨平台应用秘籍
【8月更文挑战第31天】本文详细介绍如何在优秀的跨平台 UI 框架 Uno Platform 中实施 MVVM(Model-View-ViewModel)模式,通过一个简单的待办事项列表应用演示其实现过程。MVVM 模式有助于分离视图层与业务逻辑层,提升代码组织性、易测性和可维护性。Uno Platform 的数据绑定机制使视图与模型间的同步变得高效简便。文章通过构造 `TodoListViewModel` 类及其相关视图,展示了如何解耦视图与模型,实现动态数据绑定及命令处理,从而提高代码质量和开发效率。通过这一模式,开发者能更轻松地构建复杂的跨平台应用。
54 0
|
5月前
|
算法 安全 Java
技术经验分享:JavaSecurity:Java加密框架(JCA)简要说明
技术经验分享:JavaSecurity:Java加密框架(JCA)简要说明
|
存储 架构师 安全
【企业架构框架】如何使用新的 TOGAF 版本 10
【企业架构框架】如何使用新的 TOGAF 版本 10
|
算法 NoSQL Java
工程化的项目中使用什么作为唯一ID(附代码) | 架构篇
工程化的项目中使用什么作为唯一ID(附代码) | 架构篇工程化的项目中使用什么作为唯一ID(附代码) | 架构篇
工程化的项目中使用什么作为唯一ID(附代码) | 架构篇
关于引入开源技术的一些建议
在产品研发过程中,经常有一些所需的基础组件模块,推测有一定的通用性,于是我们会考虑引入一些开源技术。此时如何引入就需要一些注意点。
525 0
|
移动开发 安全 测试技术
开篇 | 模块化与解耦式开发在蚂蚁金服 mPaaS 深度实践探讨
你理解的模块化与解耦式开发应该是什么样的呢?
3333 0