写在前面的话:
一直以来深觉自己太懒,哪怕是自己在家学习也只愿意看一些理论或基础的东西,而不愿意深入技术细节。诸如easy ui或者spring mvc等很火热的技术,虽然都有所了解,但是除非项目中需要用到,否则绝不去碰的。直到最近深深头疼于现在使用的项目框架,想要做出一些让java企业应用开发更加便捷的尝试,却感觉很多想法由于自己对很多技术细节不了解,只能悬在空中,无法脚踏实地。必须要做点什么了!
好了,废话不多说,进入正题。从我08年开始工作以来,也曾换过几个单位,但是很不幸,一直在所谓的企业应用的圈子里面打转。而项目的架构变来变去,不管采用什么技术和框架实现,基本都大同小异。开始的时候或者觉得比较得心应手,随着项目的规模和代码级别的膨胀,就会让人感觉深陷泥沼,束手束脚。更恐怖的是,这样的架构从一开始就不是基于原型开发去设计的,当需求变更时,我们的架构决定了我们无法快速的按照变更后的需求产出原型,对需求变更的响应时间大大延长。我们能不能做到更灵活一些,对变化的响应更敏捷一些?
在此处我无意讨论敏捷开发,只是想从具体的架构说起。毕竟敏捷开发这种东西,想要真正用起来,牵涉太多,而且每个公司都有自己不同的理念和见解。也不用多说单元测试,用不用TDD都随意。我想做的,也不是类似于脚手架之类的东西,例如play!。
我真正想要做出的东西,是能够真正以原型为驱动、以前端为驱动,真正解除前端与后台之间的耦合,借助于前端MVC框架和RESTful,可以让团队在前期真正将精力集中在需求、原型和前端展现,而对于后台只需要实现原先设定的业务逻辑即可。在这个过程中,可以实施敏捷、TDD,也可以沿袭原先的项目开发方式。最终的项目架构必须能够快速响应、拥抱变化。
相关推荐
在每章的讲解中,它会让你通过一系列示例项目逐步掌握Android中的各种新功能和技术,助你取得最圆满的学习效果。本书所介绍的各个应用实例简明扼要且极具实用价值,它们覆盖了Android 1.0的所有基本功能和高级功能...
经过四年的磨练成长,于渊又拿出第二版的书稿《Orange'S:一个操作系统的实现》,这本书是属于真正 Hacker的。我虽然已经有多年不写代码了,但看这本书的时候,让我又重新感受到做程序员的乐趣:用代码建设属于自己...
经过四年的磨练成长,于渊又拿出第二版的书稿《Orange'S:一个操作系统的实现》,这本书是属于真正 Hacker的。我虽然已经有多年不写代码了,但看这本书的时候,让我又重新感受到做程序员的乐趣:用代码建设属于自己...
在Oracle应用程序的开发过程中,访问数据库对象和编写SQL程序是一件乏味且耗费时间的工作,对数据库进行日常管理也是需要很多SQL脚本才能完成的。Quest Software为此提供了高效的Oracle应用开发工具-Toad(Tools of ...
在某一应用程序中使用: 把tinyxml.cpp,tinyxml.h, tinyxmlerror.cpp, tinyxmlparser.cpp, tinystr.cpp, 和 tinystr.h 添加到你的项目和makefile中。就这么简单,它可以在任何合理的C++适用系统上编译。不需要...
及ease由扩声系统设计软件向声学设计软件方向发展的趋势,最后给出该软件在工程上的一个应用实例。 [关键词] 声学设计 模拟软件 ease [abstract] [key words] 1 引言 ease是the enhanced acoustic simulator for ...
第三章 编写第一个应用程序 .20 3.1 Welcome 程序 .20 3.2 代 码 分 析 .20 3.3 运 行 程 序 .23 .4 添 加 注 释 .25 3.5 小 结 .27 第二部分 C#程序设计基础.28 第四章 数 据 类 型 .28 4.1 值 类 型...
mod_perl与Perl一样强大,只是更快一些。 二、PHP入门 PHP站点的在线教程已经很棒了。在那里还有一些其他教程的链接。而本文的该部分将让你对PHP熟悉一点。我不可能做到没有任何遗漏,我的目的只在于能让你迅速...
和智慧,让你能够真正掌握接口或抽象类的应用,从而在原来的 Java 语言基础上跃进一步,更重要的是,GoF 的设计模式反复 向你强调一个宗旨:要让你的程序尽可能的可重用。 这其实在向一个极限挑战:软件需求变幻...
如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。 一般界面是这样的: Manddrake Linux release 9.1(Bamboo) for i586 renrel 2.4.21-0.13mdk on i686 / tty1 localhost login:root ...
·为了使更多的算法可以更早地在书中出现,第1版中有关数学背景知识的三章内容从第一部分移到了附录中,即现在的第八部分。 ·新增了40多个思考题和超过185个练习题。 ·明确地使用循环不变式来证明算法的正确性。...
行讲解,希望这样做能帮助读者更快、更准确地把握各模块的工作流程及其本质。本书大部分章节中都专门撰写了“拓展思路”的内容,希望这部分内容能激发读者对Android代码进行深入研 究的热情。 本书面向的读者...
这条主线的一个题外话就是对无线应用协议(Wireless Application Protocol, WAP)的讨论,它与第14章中XML在无线标记语言(Wireless Markup Language, WAL)中的使用有着关系。WAP所关心的大部分内容是如何把XML的...
XML的parser发展为两类:一种是"非确认类paeser",只检测文档是否遵守XML语法规则,是否用元素标识建立了文档树。另一种是"确认类paeser",它不但检测文档语法,结构树,而且比较解析你使用的元素标识是否遵守了相应...
Delplli是Borland公司推出的可视化开发工具,它拥有世界上最快的编译器,并提供了丰富的组件集、强大的代码自动生成功能和丰富的数据库管理工具等,使用它的集成开发环境,编程人员可以更快地建立应用程序。...
只有两种方法:一是优化JS程序段,使它的运行时间减少,也就是在茫茫数据海洋中搜索的时间减少,一些不需要的程序给去掉;二是减少从数据库中的读取量以及读取次数,这样子在通过任何语言进行数据处理的量都比原先的...
在某个Linux网站上面有这样的话:"如果你问一下Linux爱好者最喜欢什么,他可能会回答正则表达式;如果你问他最害怕什么,除了繁琐的安装配置外他肯定会说正则表达式。" 正如上面说的,正则表达式看起来非常复杂,...
最小的影响:ESET NOD32节约内存和硬盘上的资源,让它们为更重要的应用服务, 本软件只有11M,平均占用23M的内存(根据检测状态会有变化)。Threatsense ®每次更新(包括启发式逻辑和病毒特征码)通常都只有20KB到50...