首页 > 代码库 > Tiny1.2.0-SNAPSHOT全面开源

Tiny1.2.0-SNAPSHOT全面开源

感谢

感谢OSChina为我们提供了这么好的共享与交流平台。

感谢红薯及OSChina管理团队所有打过没打过交道同仁对Tiny一直以来的支持与帮助。

感谢所有鼓励和批评我的同学们,鼓励者为我们添加勇气,批评者让我们弥补不足。

感谢那些关注或点击过我的同学们,你们每一次的点击都会给我们力量,让我们坚信我们做的是有意义的;也感谢那些从来没有点击过我的同学们,因为你们让我知道我们还需要做得更多,更努力,更扎实。

当然尤其要感谢我的团队,正是我的团队们几年来对我的强力支持,才使我的梦想慢慢一步步变成现实。

一些时间节点及数字

让我们回顾一下,我们的几个重要时间与数字:

我们把源码库迁入OSC Git的时间是2014-2-21日,到目前为止,主工程已经有1014个commits,算上其它工程,commits应该在2000以上。

加入OSChina的时间是2013-08-09,到目前为止,写的博客是124篇 ,其中被OSC推荐的有32篇,其它的没有被推荐,但并不妨碍它们大多数都是精品。

到目前为目在OSC上的项目已经有18个之多,一部分是开放的,一部分是私有的,总共代码行数已经接近30万行,我们自己写的大概有28万行左右。

我们入驻SourceForge的时间是:2013-06-20 09:30:18 ,从开始到我们迁入OSChina,我们一共有3451个commits

代码复杂度:2.5 /method,15.1 /class,17.5 /file

代码重复率:2.8%

Sonar质量规则完成度:80.8%,如果去除我们引入的第三方的代码,应该在90%左右

以上质量数据可以与任何高质量项目相比较。

2014-3-1 Tiny

2013-6-30 Tiny框架有了第一个客户,

2012-3-14,Tiny框架正式开始启动编码

2011-6-4,Tiny框架正式开始启动,并逐步开始验证其中的技术难题

当然,再向前推进一点,那就是我策划并开发一个公司的J2EE的开发平台,虽然取得了相当的成绩,但是我总是感觉它距离我理想的框架还有相当的距离,但是由于项目是在公司体系下开发的,有时候想改变,却有心无力,而此时开源氛围愈加深厚,于是就催生了我通过开源方式来构建一个开发平台的想法。

我心目中理想的开源框架

  • 她应该是小的、简单的,满足Simple Is Beautiful
  • 她应该是成长性好的,随着不断的扩展,她可以越来越丰满
  • 她应该是有良好工具支持的,为什么要花时间做工具可以完成的事情呢?
  • 她应该是自组装的,也就是尽可能的脱离配置,而是用一种依赖即可用,取消依赖即消失的全自动处理模式
  • 她应该是模块化的,所有的内容都可以被打入jar包而作为一个整体进行发布,并且能支持热部署的,可以开着车儿换轮胎的
  • 她应该是支持水平部署的,想加服务器就加,想减服务器就减
  • 她应该是有良好知识积累体系的,使得使用Tiny框架的人们越用越强,越用越爽
  • 她应该是便于企业降低开发成本的,便于技术经理控制开发进度的,便于开发人员快速上手的
  • 她应该是避免重复劳动的,所有软件参与者都不应该做重复的事情
  • 她应该是自管理的,最好不要让程序员配置这个配置那个
  • 她应该是让人有种"众里寻他千百度,蓦然回首,那人却在,灯火阑珊处”的开发框架

Tiny框架

  • 虽然整体体量比较大,但是它的每个模块都分得非常小,因此非常容易掌握
  • 它的各种组件都可以方便的进行扩展,通过扩展可以不断的提升系统的处理能力
  • 它的工具已经非常强大,而且它还是变得更加强大。
  • 不管是管理台还是过滤器、Servlet,不管是流程组件还是UI组件,还是UI组件包等等都是可以自组装的
  • 在Tiny的世界中Web工程只是个集合,除了配置文件和Pom依赖,不应该有其它东西
  • 支持水平扩展,同时可以支持7*24小时运行
  • 开始团队由金字塔向哑铃型转变,高低水平者各司其职
  • 绝大多数情况下,要做的只是依赖,而不需进行配置
  • "众里寻他千百度,蓦然回首,那人却在,灯火阑珊处”,这一点是我们永远追求的目标

使用Tiny的理由

  • 架构者十几年平台架构经验,避免了N多已经走过的坑
  • 工程结构细化使得一切都可以非常容易理解及掌握
  • 高内聚、低耦合、高质量的代码
  • 完善的文档,快速入门在130页左右,全部文档接近600页,还在不断增加当中
  • 与第三方平台的良好集成能力,想用什么就用什么,有非常低的侵入性
  • 核心、前台、后台、UI、工具一应俱全
  • 可以提供一站式应用开发支持,大多数的情况下都已足够
  • 专职的团队,可以保持项目持续不断的前进
  • 基于架构者设计的开发框架及Tiny上的产品的销售额累计有5个亿左右的销售额
  • 正在构建的Tiny生态圈,上百个UI组件及流程组件已经足够你日常使用,还会有更多被不断加入

Tiny框架适用对象

  • 在校学生,经常会做毕业论文啥的,如果需要搞点有深度的,到Tiny框架中挖挖,可以有不少猛料
  • SOHO一族,整合SSH/I之类框架来做做应用一般是够的,但是Tiny框架依然可以给你不一样的选择
  • 个体或小型企业,很明确,光是SSH/I已经不足让你的方案看起来高大上,也不足以支持业务数据量比较大的时候的应用场景,也不足以支撑居高不下的软件开发实施成本。
  • 中型企业,个体或小型企业碰到的问题你都会碰到,尤其还要考虑是的多系统集成、体系化规范建设、人员复用、资产复用等等诸多问题,自己创建团队需要解决合适的人、巨大的成本,巨大的风险。

质疑的声音

我相信,肯定也会有诸多质疑的声音,这是非常正常的,不过在质疑之前,请先参考一下如下事实:

  • Tiny构建了远超过Velocity性能和功能的模板引擎
  • Tiny构建了基于JDBC Driver的数据库分区分表引擎
  • Tiny构建了高性能的XmlParser、HtmlParser
  • Tiny构建了网络爬虫
  • Tiny构建了DBF读写程序
  • Tiny构建了高效、强大的中文分词引擎
  • Tiny构建了虚拟文件系统,简单、高效、且不存在内存泄露(Apache VFS中存在)
  • Tiny解决了模块化问题,可以把一切资源放入Jar包,甚至JSP
  • Tiny解决了前端UI组件化问题,所有js,css,img都可以打入jar包,而让程序员避免关心UI组件的依赖关系
  • Tiny解决了每次升级的数据库脚本升级问题,程序员可以告别编写升级脚本的生活
  • Tiny解决了缓冲从业务代码中完全剥离的难题
  • Tiny解决了服务的一次开发到处使用难题,WebService,JSON,XML,etc统统不是问题
  • Tiny解决了流程编排全自动排列问题(此项已申请专利)
  • Tiny解决了业务单元热部署的难题
  • Tiny解决了业务对象自动构建
  • Tiny解决了还有许多的技术难题

所以,我要说的是,我们和一般的二货还是有差别的。

常用连接

当然,这里总结的比较粗,详细的介绍请查阅Tiny框架介绍PPT,如果有任何问题,请回贴提问。

Tiny官网

Tiny源码Git仓库

TinyAdmin在线演示网站

Issue填写

Tiny的博客里有许多精彩的文章,不一样的内容,一样的精彩,欢迎前来观看,保证不会让您失望。

当然,也可以看看下面的快速入门文档,了解一下Tiny的开发模式。

Tiny快速入门手册

Tiny快速入门之服务开发

Tiny快速入门之Web界面快速开发实践

Tiny快速入门之控制层开发

总结

Tiny框架目前的版本号是1.2.0-SNAPSHOT,现在正式对外开放,Tiny社区正在构建当中,将于近日开放。

经过社区验证一段时间之后,将正式发布Tiny2.0。

亲,你还在等什么?

 



Tiny1.2.0-SNAPSHOT全面开源