自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(337)
  • 收藏
  • 关注

原创 《开源框架那些事儿26》:“最好的模板引擎”Beetl剖析及与Tiny模板引擎对比

查找最好的模板引擎,发现这个搜索词出来的是beetl,于是就仔细学习了Beetl,试图找寻“最好的”三个字表现在哪里?于是搭建环境,阅读代码,与鄙人所做的TinyTemplate进行了粗略的对比,在征得beetl作者@闲.大赋 的同意后,编写了此对比文章。由于时间关系,对Beetl的认知深度还有不足,分析不当之处在所难免,还请广大同学纠正,定当有错误和不当必改。 点滴悟透设计思想,加入框架

2015-08-01 18:28:18 1784 1

原创 《开源框架那点事儿23》:Tiny模板语言(VelocityPlus)初步入门

1 关于用户手册本文主要介绍如何在模板中使用Tiny模板语言,通过查阅本手册,可以对Tiny模板语言 TTL(Tiny Template Language)的用法有一个较全面的认识,并学会如何有效地使用Tiny模板语言。同时,本文提供了较多的例子帮您来学习并掌握它。 2 Tiny模板语言概述Tiny 模板语言是一个参考Velocity语法的模板语言,它对Velocity模板语言中一

2015-09-08 14:55:56 1386 1

原创 专访Tiny框架创始人悠然:好的软件设计是“品”出来的

Tiny是基于Java开发的一款开源框架,主要技术领域为J2EE及应用开发平台领域。日前,笔者采访了Tiny开源框架创始人悠然(罗果)请他分享Tiny的构建之路以及对开源的解读。在他看来,好的软件设计是“品”出来的,信奉好的软件架构一定是简单的。Tiny开源框架创始人 悠然CSDN:和大家认识一下,介绍一下你的技术背景、目前所负责的领域。悠然:大家好!我是悠然,Tiny(官

2015-08-31 10:34:57 1364

《开源框架那点事儿33》极限挑战:用一条循环语句正确输出99表!【前两名奖图书】...

 问题的由来  话说我这里有个小萝莉非要拜我为师,呵呵,对于程序媛我一向——嗯嗯觉得程序不如人好看,再加上该名萝莉大学还没毕业,术语都多半没有听过,于是就想着拒绝,当时嘴一贱,就说了一句:你用一个For循环做个99表出来。  当然,这个对于小萝莉们来说,已经足够形成挑战了,但是对于群里的一众大佬们来说,自然是不在话下,3下5除二就搞定了。我又异想天开一下,如果不用判断语句,是不是也完成呢?粗...

2015-08-23 21:59:13 1610

原创 《开源框架那点事儿33》极限挑战:用一条循环语句正确输出99表!【前两名奖图书一本】

问题的由来  话说我这里有个小萝莉非要拜我为师,呵呵,对于程序媛我一向——嗯嗯觉得程序不如人好看,再加上该名萝莉大学还没毕业,术语都多半没有听过,于是就想着拒绝,当时嘴一贱,就说了一句:你用一个For循环做个99表出来。  当然,这个对于小萝莉们来说,已经足够形成挑战了,但是对于群里的一众大佬们来说,自然是不在话下,3下5除二就搞定了。我又异想天开一下,如果不用判断语句,是不是也完成呢

2015-08-23 21:53:36 994

原创 《开源框架那些事儿27》悠然乱弹:一段SQL引发的性能危机及其背后隐藏的设计缺陷

有个同学,说是系统中出现性能问题了,说是让我帮助诊断一下。本来是不想花这时间的,结果耐不住对方的死缠乱打,只要答应帮看看。  故事发生的背景是,在文件上传的时候,有时间会有人上传了文件,但是最后没有使用上传的文件,这样就会产生一些垃圾文件。原来软件作者就想写一个后台定时任务程序,来清除这些垃圾文件? 由于作者坚定的不让我发她的SQL语句(这个我也理解,这么丑陋的SQL),所以这里就不发

2015-08-13 15:19:07 654

《开源框架那些事儿27》一段SQL引发的性能危机及其背后隐藏的设计缺陷

有个同学,说是系统中出现性能问题了,说是让我帮助诊断一下。本来是不想花这时间的,结果耐不住对方的死缠乱打,只要答应帮看看。 故事发生的背景是,在文件上传的时候,有时间会有人上传了文件,但是最后没有使用上传的文件,这样就会产生一些垃圾文件。 原来软件作者就想写一个后台定时任务程序,来清除这些垃圾文件? 由于作者坚定的不让我发她的SQL语句(这个我也理解,这么丑陋的SQL),所以这里就不发源代码...

2015-08-13 15:19:06 99

原创 《开源公开课分享》:Java开源框架案例分享

缺乏高端技术人才?缺乏开发标准?    代码复用性低?技术风险难于把控?    招聘成本高?培训成本高?    如果想法不够宏伟,那么就会局限于细节;如果一开始就铺非常大的摊子,将会失去控制;如果不能快速扩展,就无法满足应用需要! 因为,再好的框架也有过时的时候,再优秀的架构师也有视野盲区,再NB的写手也无法实现所有的部分!    来吧,聆听《开源公开课1》。让我们一起体验Tiny

2015-08-11 20:24:05 970

原创 《公开课2》:Tiny服务及CEP深入剖析——直播QQ群:228977971

在Java开源框架中,如何定义Service规范?如何通过服务中心提供远程服务调用?如何根据用户的服务自动生成相关服务包装类?Java开源框架的服务体系是如何运行的?来吧!让我们一起来聆听《Tiny公开课2:Tiny服务及CEP深入剖析》!一、主题Tiny服务及CEP深入剖析二、时间2015-8-13(周四晚 20:00整)三、主讲人Atizose

2015-08-11 20:14:19 980

原创 【公开课:Java开源框架服务及CEP深入剖析】直播QQ群:228977971

【公开课:Java开源框架服务及CEP深入剖析】直播QQ群:228977971一、课程简介Java开源框架的服务体系是如何运行的?什么是CEPCore?Java开源框架的服务有哪些关键要点?如何根据用户的服务自动生成相关服务包装类?来吧!一线开源框架资深设计师与你分享Java实战心得,手把手教你Java开源框架设计技巧!二、主题《Tiny服务及CEP深入剖析》三、时

2015-08-04 15:08:11 871

原创 《开源框架那些事儿26》:“最好的模板引擎”Beetl剖析及与Tiny模板引擎对比...

查找最好的模板引擎,发现这个搜索词出来的是beetl,于是就仔细学习了Beetl,试图找寻“最好的”三个字表现在哪里?于是搭建环境,阅读代码,与鄙人所做的TinyTemplate进行了粗略的对比,在征得beetl作者@闲.大赋 的同意后,编写了此对比文章。由于时间关系,对Beetl的认知深度还有不足,分析不当之处在所难免,还请广大同学纠正,定当有错误和不当必改。 点滴悟透设计思想,加入...

2015-08-01 18:41:08 707

转载 Web应用的组件化开发

基本思路1. 为什么要做组件化?  无论前端也好,后端也好,都是整个软件体系的一部分。软件产品也是产品,它的研发过程也必然是有其目的。绝大多数软件产品是追逐利润的,在产品目标确定的情况下,成本有两个途径来优化:减少部署成本,提高开发效率。  减少部署成本的方面,业界研究得非常多,比如近几年很流行的“去IOE”,就是很典型的,从一些费用较高的高性能产品

2015-08-01 18:36:22 864

原创 《开源公开课1》:开源框架实战案例剖析

课程介绍: 缺乏高端技术人才?缺乏开发标准? 代码复用性低?技术风险难于把控? 招聘成本高?培训成本高? 如果想法不够宏伟,那么就会局限于细节;如果一开始就铺非常大的摊子,将会失去控制;如果不能快速扩展,就无法满足应用需要! 因为,再好的框架也有过时的时候,再优秀的架构师也有视野盲区,再NB的写手也无法实现所有的部分! 来吧,聆听《开源公开课1》:开源框架构建与实践。让我们一起体验开源框架的魅...

2015-07-28 13:52:05 146

原创 《开源公开课1》:开源框架构建与实践

课程介绍:    缺乏高端技术人才?缺乏开发标准?    代码复用性低?技术风险难于把控?    招聘成本高?培训成本高?    如果想法不够宏伟,那么就会局限于细节;如果一开始就铺非常大的摊子,将会失去控制;如果不能快速扩展,就无法满足应用需要! 因为,再好的框架也有过时的时候,再优秀的架构师也有视野盲区,再NB的写手也无法实现所有的部分!    来吧,聆听《开源公开课1》:

2015-07-27 23:56:32 603

《开源框架那点事儿25》:对框架模板引擎实现方式的改造实录

点滴悟透设计思想,Tiny模板引擎优化实录!加入框架设计兴趣小组:http://bbs.tinygroup.org/group-113-1.html Tiny模板引擎的实现方式原来是采用的编译方式,最近发生了一些问题,因此我觉得有必要把编译方式调整为解释方式,为此就开始了此次实现活动。 编译方式存在的问题当时采用编译方式,主要是考虑到编译方式在运行时不必再去遍历...

2015-07-26 21:49:10 115

原创 《开源框架那点事儿25》:对框架模板引擎实现方式的改造实录

点滴悟透设计思想,Tiny模板引擎优化实录!加入框架设计兴趣小组:http://bbs.tinygroup.org/group-113-1.html Tiny模板引擎的实现方式原来是采用的编译方式,最近发生了一些问题,因此我觉得有必要把编译方式调整为解释方式,为此就开始了此次实现活动。 编译方式存在的问题 当时采用编译方式,主要是考虑到编译方式在运行时不必再去遍历语法树

2015-07-26 21:44:56 885

《开源框架那点事儿24》:开着跑车换轮胎

开着跑车换轮胎,这样的情形您能想象吗?最近,一段拍摄于沙特阿拉伯的视频就记录了这样的超牛特技。地址给大家分享一下:http://www.douban.com/group/topic/52087839。从短片中可以看到,这辆汽车在沙漠中前进,一名男性就站在车门外,在几个大转弯之后,汽车成功地侧翻了约45度,仅靠2个轮子贴在地上行驶着。画面显示五个戴着头巾的男子探身从一辆正在行驶的银色跑车里爬出来...

2015-07-22 13:02:22 366

原创 《开源框架那点事儿24》:开着跑车换轮胎

开着跑车换轮胎,这样的情形您能想象吗?   最近,一段拍摄于沙特阿拉伯的视频就记录了这样的超牛特技。地址给大家分享一下:http://www.douban.com/group/topic/52087839。从短片中可以看到,这辆汽车在沙漠中前进,一名男性就站在车门外,在几个大转弯之后,汽车成功地侧翻了约45度,仅靠2个轮子贴在地上行驶着。画面显示五个戴着头巾的男子探身从一辆正在行驶的银色跑车里

2015-07-22 12:34:47 1208

《开源分享1》:前端开发必备《Html-CSS中文手册》

一直想做一些优秀的资源分享内容,今天尝试整理了一下,以后会每天抽点时间发一些自认为不错的资料出来。帮助大家提高学习效率。 今天分享的内容:前端开发:《Html-CSS中文手册》!本手册针对的是已有一定网页设计制作经验的读者。其目的是提供完整清晰的样式表内容的快速索引及进阶帮助。所以对于网页制作和样式表的基础知识,仅简单介绍,恕不赘述。 手册提供了完整的 CSS2.0 的属性(...

2015-07-19 09:15:47 131

原创 前端开发:《Html-CSS中文手册》分享啦!

前端开发:《Html-CSS中文手册》分享啦!本手册针对的是已有一定网页设计制作经验的读者。其目的是提供完整清晰的样式表内容的快速索引及进阶帮助。所以对于网页制作和样式表的基础知识,仅简单介绍,恕不赘述。    手册提供了完整的 CSS2.0 的属性(Properties)、规则(At-Rules)、伪类(Pseudo-Classes)、伪元素(Pseudo-Eleme

2015-07-19 08:58:57 636 1

开源完整版:《开源框架实战宝典电子书V1.0.0》内测版下载地址!

经过一个多月的整理,《J2EE开源框架实战宝典》——Tiny文档PDF电子书开始发放,共有将近600页,为喜爱Tiny、热爱Java开源框架的朋友提供更加体贴的文档服务!下载地址:http://bbs.tinygroup.org/group-112-1.html(加入查看下载地址)下面是部分目录的截图。     1.jpg (62.15 KB, 下载次数:...

2015-07-18 12:59:39 87

原创 开源完整版:《开源框架实战宝典电子书V1.0.0》内测版下载地址!

经过一个多月的整理,《J2EE开源框架实战宝典》——Tiny文档PDF电子书开始发放,共有将近600页,为喜爱Tiny、热爱Java开源框架的朋友提供更加体贴的文档服务!下载地址:http://bbs.tinygroup.org/group-112-1.html(加入查看下载地址)下面是部分目录的截图。1.jpg (62.15 KB, 下载次数: 0

2015-07-18 12:57:52 890

原创 《开源框架那点事儿23》:采用TinyDB组件方式开发

采用TinyDB组件方式开发步骤Icon 前文介绍四则运算的流程编程开发时,说过流程编排在开发重复功能时,可以利用已有的组件库快速开发。对于开发人员而言只需要简单配置流程就可以完成工作了。开发增删改查的组件接口。本来这部分很花费时间,如果采用组件复用的话,就可以实现一次开发,终生受益。配置curd.beans.xml和tinydb.xml。使用流程编辑器定制组件流程curd....

2015-07-13 20:33:55 150

原创 《开源框架那点事儿23》:采用TinyDB组件方式开发

采用TinyDB组件方式开发步骤Icon 前文介绍四则运算的流程编程开发时,说过流程编排在开发重复功能时,可以利用已有的组件库快速开发。对于开发人员而言只需要简单配置流程就可以完成工作了。开发增删改查的组件接口。本来这部分很花费时间,如果采用组件复用的话,就可以实现一次开发,终生受益。配置curd.beans.xml和tinydb.xml。使用流程编辑器定制组件流程curd.p

2015-07-13 20:31:08 889

《开源框架那些事儿22》:UI框架设计实战

UI是User Interface的缩写,通常被认为是MVC中View的部分,作用是提供跟人机交互的可视化操作界面。MVC中Model提供内容给UI进行渲染,用户通过UI框架产生响应,一般而言会由控制层调用业务逻辑进行处理,并把处理结果以Model方式返回View,再次渲染。UI框架的大致过程就是如此,按实现方式可以分为RIA和瘦客户端方式,目前基于B/S的瘦客户端方式比较流行。UI框架套路上...

2015-07-09 11:57:56 130

原创 《开源框架那些事儿22》:UI框架设计实战

UI是User Interface的缩写,通常被认为是MVC中View的部分,作用是提供跟人机交互的可视化操作界面。MVC中Model提供内容给UI进行渲染,用户通过UI框架产生响应,一般而言会由控制层调用业务逻辑进行处理,并把处理结果以Model方式返回View,再次渲染。UI框架的大致过程就是如此,按实现方式可以分为RIA和瘦客户端方式,目前基于B/S的瘦客户端方式比较流行。UI框架套路上

2015-07-08 23:21:29 830

原创 《开源框架那些事儿21》:巧借力与借巧力

同样做前端UI,为什么有人花了一点力气,就可以做好?而有的人费尽全力,仍然错误百出?我们可以先看看几个故事。故事1:巧借力,乌鸦也可以吃核桃有一个盛产核桃的村子,每年秋末冬初,成群的乌鸦总会来到这里,到果园里捡拾那些被果农们遗落的核桃。核桃仁虽然美味,但是外壳那么坚硬,乌鸦怎么才能吃到呢?原来乌鸦先把核桃叼起,然后飞到高高的树枝上,再将核桃摔下去,核桃落到坚硬的地面上,被撞破了,于...

2015-07-06 20:53:02 84

原创 《开源框架那些事儿21》:巧借力与借巧力

同样做前端UI,为什么有人花了一点力气,就可以做好?而有的人费尽全力,仍然错误百出?我们可以先看看几个故事。故事1:巧借力,乌鸦也可以吃核桃有一个盛产核桃的村子,每年秋末冬初,成群的乌鸦总会来到这里,到果园里捡拾那些被果农们遗落的核桃。核桃仁虽然美味,但是外壳那么坚硬,乌鸦怎么才能吃到呢?原来乌鸦先把核桃叼起,然后飞到高高的树枝上,再将核桃摔下去,核桃落到坚硬的地面上,被撞

2015-07-06 20:51:32 671

《开源框架那点事儿20》:自己动手写前端框架

以前发表过一篇文章:TinyAdmin前端展现框架,其在线演示路径为:http://www.tinygroup.org/tinyadmin/,应该说有许多人还是感觉兴趣的,但是由于这个是基于SmartAdmin框架改写的,虽然我们自己买了SmartAdmin的授权,但是广大用户如果要用的时候,就会有授权相关的问题,这会大大影响一些人的使用决策--尤其是会再发行的朋友。 再一个原因是SmartA...

2015-07-01 23:36:45 7935

原创 《开源框架那点事儿20》:自己动手写前端框架

以前发表过一篇文章:TinyAdmin前端展现框架,其在线演示路径为:http://www.tinygroup.org/tinyadmin/,应该说有许多人还是感觉兴趣的,但是由于这个是基于SmartAdmin框架改写的,虽然我们自己买了SmartAdmin的授权,但是广大用户如果要用的时候,就会有授权相关的问题,这会大大影响一些人的使用决策--尤其是会再发行的朋友。 再一个原因是SmartA

2015-07-01 23:34:44 2054

《开源框架那点事儿19》:特斯拉建“桩”与开源的生命力

在美国的硅谷,在中国的中关村,许多的技术先驱者怀揣梦想,用激情不懈地追求着他们宏远的目标和巨大的个人财富。开源,正在成为这个时代目前最火热的名词之一。开源精神,作为一种合作协同的驱动力,正在发展为一种更具竞争力的产品开发模式。 我们可以从几个典型故事说起。一、特斯拉建“桩”2014年5月份,苹果与三星的专利侵权案做出判决,三星向苹果赔偿约1.2亿美元,巨头公司们再次向世人展示“...

2015-06-26 12:02:07 428

原创 《开源框架那点事儿19》:特斯拉建“桩”与开源的生命力

在美国的硅谷,在中国的中关村,许多的技术先驱者怀揣梦想,用激情不懈地追求着他们宏远的目标和巨大的个人财富。开源,正在成为这个时代目前最火热的名词之一。开源精神,作为一种合作协同的驱动力,正在发展为一种更具竞争力的产品开发模式。

2015-06-26 11:57:40 556

《开源框架那点事儿18》:为什么要先从测试用例编写和文档编写开始?

有一个同学,问我一个问题:加入Tiny是否必须从写单元测试用例和文档作起?此问题引发我诸多感触,故形成乱弹一篇。作为一个新加入者,多看、少说,是正点。而这个时候,写写测试用例、文档,就是个不错的选择。这样入手比较容易,也比较容易体现水平。可以说好的程序员,测试和文档都是写得好的。测试和文档一定写不好的,一定不是好的程序员。同时,在看代码,写测试用例、写文档的过程中,还可以这样思...

2015-06-23 22:05:56 360

原创 《开源框架那点事儿18》:为什么要先从测试用例编写和文档编写开始?

有一个同学,问我一个问题:加入Tiny是否必须从写单元测试用例和文档作起?此问题引发我诸多感触,故形成乱弹一篇。 作为一个新加入者,多看、少说,是正点。而这个时候,写写测试用例、文档,就是个不错的选择。这样入手比较容易,也比较容易体现水平。可以说好的程序员,测试和文档都是写得好的。测试和文档一定写不好的,一定不是好的程序员。同时,在看代码,写测试用例、写文档的过程中,还可以

2015-06-23 21:55:17 433

《开源框架那点事儿16》:缓存相关代码的演变

问题引入上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。当然去看相关实现代代码的时候,大致是下面的样子。[java] view plaincopyprint?public void saveSo...

2015-06-18 17:30:22 283

原创 《开源框架那点事儿16》:缓存相关代码的演变

问题引入上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。 该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。 当然去看相关实现代代码的时候,大致是下面的样子。public void saveSomeObject(SomeObject someObject){

2015-06-18 17:25:14 772

原创 《开源框架那点事儿15》:借船下海还是造船下海

    1.借船与借力     三国时期,曹操率大军想要征服东吴,孙权、刘备联合抗曹,“草船借箭”即来源于此,意即运用智谋,凭借他人的人力或财力来实现自己的目标。我们来看看这个故事的几个关键环节。    为了筹集十万支箭,诸葛亮找到鲁肃。诸葛亮说:“这件事要请你帮我的忙。希望你能借给我20只船,每只船上30个军士,船要用青布慢子遮起来,还要一千多个草把子,排在船两边。”第三天四更时候,诸葛亮邀...

2015-06-17 11:21:36 176

原创 《开源框架那点事儿15》:借船下海还是造船下海

1.借船与借力    三国时期,曹操率大军想要征服东吴,孙权、刘备联合抗曹,“草船借箭”即来源于此,意即运用智谋,凭借他人的人力或财力来实现自己的目标。我们来看看这个故事的几个关键环节。    为了筹集十万支箭,诸葛亮找到鲁肃。诸葛亮说:“这件事要请你帮我的忙。希望你能借给我20只船,每只船上30个军士,船要用青布慢子遮起来,还要一千多个草把子,排在船两边。”第三天四更时候,诸葛亮邀请

2015-06-17 11:04:15 978

原创 《开源框架那点事儿14》:教计算机程序解数学题

周末,看关于专家系统方面的书,其中有关于规则方面的内容,忽然就想,能不能模仿人的学习方式来提升计算机程序的计算能力呢?  试想,一个小孩子,他一开始什么也不会,首先,你要告诉他什么是数字,然后告诉他什么是加、减;然后告诉他什么是乘、除,还要告诉他有乘、除要先计算乘除,然后又引入了括号说,有括号永远要先计算括号。如此,随着告诉他的技能越多,他的解题能力也就越强。 于是就想着试验一下。  第一...

2015-06-16 15:03:01 81

原创 《开源框架那点事儿14》:教计算机程序解数学题

周末,看关于专家系统方面的书,其中有关于规则方面的内容,忽然就想,能不能模仿人的学习方式来提升计算机程序的计算能力呢?  试想,一个小孩子,他一开始什么也不会,首先,你要告诉他什么是数字,然后告诉他什么是加、减;然后告诉他什么是乘、除,还要告诉他有乘、除要先计算乘除,然后又引入了括号说,有括号永远要先计算括号。如此,随着告诉他的技能越多,他的解题能力也就越强。 于是就想着试验一下。

2015-06-16 14:35:16 1112

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除