Tiny1.2.0预览版全面开源

简介:

感谢

感谢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。

亲,你还在等什么?

 

相关文章
|
11月前
|
机器学习/深度学习 存储 人工智能
人工智能在医疗领域的应用与挑战
【10月更文挑战第21天】 本文深入探讨了人工智能(AI)在医疗领域的应用现状与面临的挑战。随着科技的飞速发展,AI技术正逐步渗透到医疗行业的各个环节,从疾病诊断、治疗方案制定到患者管理等方面发挥着重要作用。然而,在推动医疗进步的同时,AI也面临着数据安全、隐私保护以及伦理道德等方面的严峻挑战。本文旨在全面分析AI在医疗领域的应用前景,并针对其面临的挑战提出相应的解决策略,以期为未来医疗行业的发展提供有益的参考。
364 6
|
8月前
|
监控 数据可视化 数据挖掘
项目管理精细化:如何提高执行效率?
在竞争激烈的商业环境中,高效的项目管理至关重要。本文探讨了如何优化项目管理流程,包括明确目标、制定可执行计划、建立沟通机制、应对风险及利用可视化工具(如看板)提升效率。通过持续复盘与优化,团队能不断提升执行力,确保项目按时按质交付。
300 19
|
10月前
|
机器学习/深度学习 人工智能 算法
探索AI在医疗诊断中的应用与挑战
【10月更文挑战第21天】 本文深入探讨了人工智能(AI)技术在医疗诊断领域的应用现状与面临的挑战,旨在为读者提供一个全面的视角,了解AI如何改变传统医疗模式,以及这一变革过程中所伴随的技术、伦理和法律问题。通过分析AI技术的优势和局限性,本文旨在促进对AI在医疗领域应用的更深层次理解和讨论。
331 31
|
9月前
|
存储 人工智能 安全
阿里云 Confidential Al 最佳实践
本次分享的主题是阿里云 Confidential AI 最佳实践 ,由阿里云乾越分享。 1. 需求背景介绍 2. 大规模场景下面临的系统及安全风险 3. 计算栈的共享职责模型与用户信任边界的冲突 4. 传统计算、存储和网络安全技术中存在用户信任成本较高的问题 5. Confidential AI 方案实施模式 6. 基于CAI技术的阿里云Confidential Cloud Computing架构 7. Confidential AI on EGS DEMO 8. 阿里云全面应用Confidential AI 9. 完备的机密计算远程证明过程 10.发布《机密计算保障人工智能系统安全研究报告
339 1
|
前端开发 测试技术 API
现代前端开发中的跨平台挑战与解决方案探讨
随着移动设备和桌面端用户体验的日益融合,现代前端开发面临着跨平台兼容性的重大挑战。本文将探讨这些挑战的根源,并介绍一些创新的解决方案,帮助开发人员更好地应对不同平台之间的差异,提升应用程序的用户体验和性能。
|
机器学习/深度学习 算法 PyTorch
【从零开始学习深度学习】40. 算法优化之AdaGrad算法介绍及其Pytorch实现
【从零开始学习深度学习】40. 算法优化之AdaGrad算法介绍及其Pytorch实现
|
运维 Cloud Native 持续交付
【阿里云云原生专栏】从零到一搭建云原生应用:阿里云云原生应用平台实战教程
【5月更文挑战第24天】本文档是一份阿里云云原生应用平台的实战教程,介绍了如何从零开始搭建云原生应用。内容涵盖云原生应用的特点(容器化、微服务、CI/CD和自动化运维)以及阿里云提供的服务,如容器服务、服务网格和CI/CD工具。教程详细讲解了创建容器集群、编写Dockerfile、构建镜像、部署应用、配置服务网格和设置CI/CD的步骤。通过本文,读者将学会利用阿里云平台开发和管理云原生应用。
1220 0
|
机器学习/深度学习 人工智能 自然语言处理
揭开AI的神秘面纱:人工智能简介
这是一篇人工智能简介,从人工智能的定义,起源,分类,相关技术,应用前景与存在的挑战几个方面介绍人工智能
EMQ
|
存储 监控 网络协议
工业物联网数据桥接教程:Modbus 桥接到 MQTT
通过将 Modbus RTU 或 TCP 转换为 MQTT 消息,可以轻松地将设备数据发送到云端,并在需要时进行远程控制和监控。
EMQ
1260 0
工业物联网数据桥接教程:Modbus 桥接到 MQTT
下一篇
oss教程