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

相关文章
|
4月前
|
前端开发 开发者 C#
深度解析 Uno Platform 中的 MVVM 模式:从理论到实践的全方位指南,助你轻松掌握通过 C# 与 XAML 构建高效可维护的跨平台应用秘籍
【8月更文挑战第31天】本文详细介绍如何在优秀的跨平台 UI 框架 Uno Platform 中实施 MVVM(Model-View-ViewModel)模式,通过一个简单的待办事项列表应用演示其实现过程。MVVM 模式有助于分离视图层与业务逻辑层,提升代码组织性、易测性和可维护性。Uno Platform 的数据绑定机制使视图与模型间的同步变得高效简便。文章通过构造 `TodoListViewModel` 类及其相关视图,展示了如何解耦视图与模型,实现动态数据绑定及命令处理,从而提高代码质量和开发效率。通过这一模式,开发者能更轻松地构建复杂的跨平台应用。
59 0
|
5月前
|
Rust 前端开发 JavaScript
IM跨平台技术学习(十三):从理论到实践,详细对比Electron和Tauri的优劣
本文主要介绍了目前比较流行的桌面应用跨平台开发技术及其架构,并以实战的方式对比了 Electron 和 Tauri 的优势和劣势,以及桌面跨平台应用开发的技术趋势。
78 0
|
6月前
|
算法 安全 Java
技术经验分享:JavaSecurity:Java加密框架(JCA)简要说明
技术经验分享:JavaSecurity:Java加密框架(JCA)简要说明
|
7月前
|
前端开发 测试技术 数据处理
安卓开发中的MVP架构模式深度解析
【4月更文挑战第30天】在移动应用开发领域,模型-视图-呈现器(Model-View-Presenter, MVP)是一种广泛采用的架构模式。它旨在通过解耦组件间的直接交互来提高代码的可维护性和可测试性。本文将深入探讨MVP在安卓开发中的应用,揭示其如何促进代码的模块化,提升用户界面的响应性,并简化单元测试过程。我们将从理论概念出发,逐步过渡到实践案例,为读者提供一套行之有效的MVP实施策略。
|
7月前
|
存储 人工智能 开发框架
【AI大模型应用开发】【AutoGPT系列】0. AutoGPT概念及原理介绍 - Agent开发框架及ReAct方法
【AI大模型应用开发】【AutoGPT系列】0. AutoGPT概念及原理介绍 - Agent开发框架及ReAct方法
214 0
|
7月前
|
前端开发 JavaScript SEO
项目开发架构模型
项目开发架构模型
58 0
|
JavaScript 前端开发 C++
和chatgpt学架构03-引入UI框架(elment-plus)
和chatgpt学架构03-引入UI框架(elment-plus)
|
JavaScript 前端开发 搜索推荐
项目开发时对整个架构模型的选择
项目开发时对整个架构模型的选择是十分重要的,当然这是对公司而言,对于我们开发者自己而言,开心最重要,喜欢什么用什么~
114 0
|
存储 架构师 安全
【企业架构框架】如何使用新的 TOGAF 版本 10
【企业架构框架】如何使用新的 TOGAF 版本 10