- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
产品之路随想
HYPERLINK /topic/651601 产品之路的随想(社区版)
?98年从14.4k的modem拨号上网,看到的是网易,邮箱,蓝波BBS,以及痞子蔡的《第一次亲密接触》,这些让我印象非常深刻。当时没能想到web对我的生活和工作产生了这么大的影响。99年开始接触搜索引擎,有位老鸟的话让我记忆犹新:“要把写在手背上,天天能看见”。2000年开始接触php,mysql,linux,apache,一个企业网站能卖5000元,那个时候是个产生泡沫的时代,对我们来说也是个幸福的时光。?在那个年代里,操作系统是windows98,linux还只是勇敢者的工具,广大程序员还热衷于钻研pb、dephi、vb;Web上的开发感觉上还是玩具;仍旧津津乐道于ms的发家史,回味着ms和broland的激烈竞争,至于google,面孔总是一成不变,但它总能返回你检索需要的东西,仿佛是从遥远的地方传来的天籁之音,一切很神秘。???????????? 如果把基于web开发看作一段历史,我和web也逶迤拍拖了10年。如果把Java出生名门的语言叫做大家闺秀,那开源社区推出来的语言就可以称呼为小家碧玉了。大家闺秀和小家碧玉各有风姿,在早期的开发中是各有千秋,一般来说企业应用采取的是java/jsp/ejb等;互联网应用是php/mysql/apache/linux;大家井水不犯河水,各自在自己的领域中用着不同的开发语言。不过随着小家碧玉这几年越发出落得玲珑绰约,大家也争相使用,象spring,hibernate,tomcat都是其中的佼佼者;开发模式也有了极大的改进,从早期model1演变成了随后的model2,再到目前基于框架的快速开发,乃至现在推崇平台开发;工具也从当年的editplus/ ultraedit到后来的jbuilder,直到现在的eclipse一统天下。?
?图1 model 1模式
?图2 model 2模式
??????????? 仿佛是一夜春风来,千树万树梨花开,在java诞生15年后,我们处在一个前所未有的面临选择的境地:各种各样的软件工具,框架,平台纷至沓来;银弹/非银弹争论不休,开发方法论孰是孰非皆无定论,此时此刻只有windows net气定神闲,整体解决方案,全套开发工具,所见即所得界面,开发就这么容易,可惜我选择的是Java路线,结果在选型,搭配上花不少的时间,也走了不少的弯路。?一路走来,项目之中的苦与乐在内心中酝酿发酵,如何抽象组件,如何提炼成平台,如何包装产品,也渐渐有了一点感悟和体会。作项目苦,作项目累,留给自己的只有满身的疲惫;在上线的倒计时中,程序员们在疲惫不堪的编写代码调试bug,项目经理们殚精竭虑计算如何上线,不同的部门之间相互扯皮推诿。几年下来,项目还是手工作坊方式,自己没有什么长进。疲惫啊疲惫,不在项目中锤炼,就要在项目中颓废。如何跳出项目的怪圈呢????????????? 国内的软件公司大体可以分为3类:1作项目;2做作平台/产品,有的公司是兼而有之,以项目养产品;3、做运营。项目导向的公司要做好做强做长久,以下几个步骤是不可缺少的,只是不同的阶段深入的程度有所差异:?
1、业务逻辑组件化
2、基础代码框架化
3、开箱即用平台化
1、组件化:???????????? 公司在项目中已经沉淀了这么多年,已经积累了很多可用的业务组件,包括报表展现、ExtJs图形开发,flex页面设计工具,规则引擎,流程引擎等。应用这些组件,在项目实施中减少了开发时间,提高了工作效率。但这些组件分布在不同的部门,大家各用各,甚至还有些敝帚自珍的想法;有的基础组件是你有我有大家有,重复开发。对于这些组件如何甄别和挑选,不浪费本来就很珍贵的人力资源,则在部门之间应该有个通盘考虑。?就算各个组件都汇聚了,如何互联互通,以及在同一个项目内发挥预期作用,这就考验组件的设计方式了。我们的组件基本上都是围绕数据/表来的,涉及一些增删改查以及前端展现,着重要考虑是事务以及组件之间的关联,因为我们的组件是需要被上层更大的组件,或者模块所调用,如果组件对外暴露的是api接口,就不能假设上层应用对组件之间的调用逻辑顺序。?如何设计一个比较通用的组件?有些地方可能需要注意:?
1、事务的调用,组件内部不能发起事务的开始,这个权利交给了用户,用户或在client显示申明,或是在spring内部声明。
2、组件可能要使用充血模式而不是贫血模式,即在组件内部中维护自身的数据和状态,并同上层的业务系统的数据同时提交或者同步回滚。
3、组件内部的各个类需要自身来维系,比如工厂模式,多例单例,而不能依靠AOP的能力,否则每集成一个组件,都尾大不掉的带一个spring,彼此之间有影响,项目内部可以使用spring
您可能关注的文档
- mvr节能蒸发技术原理和优势.doc
- Na、Mg和其化合物.ppt
- NBA历史上拿三双 四双 五双次数最多球员.doc
- NBA底层球员活法.doc
- NBA球员篮球技巧.doc
- Nero是一个由德国公司出品光盘刻录程序.doc
- NewHolland-M160型拖拉机幻灯片.ppt
- MSS-2000系统简介和对比实验结果-科翔煤岩分析.doc
- mp3与wma音质比较.doc
- occasion用法.doc
- 2025年天津市冷链物流基地配套道路建设可行性研究报告.docx
- 2025年天津市母婴护理会所专业化服务升级路径可行性研究报告.docx
- 2025年成都市私立医院医美抗衰中心创建可行性研究报告.docx
- 2025年成都市淡化海水在城市道路清洗领域的应用可行性研究报告.docx
- 2025年上海市环卫厨余垃圾生物处理技术应用可行性研究报告.docx
- 2025年天津市花西子针对户外运动妆容的可行性.docx
- 2025年上海市生物发电于秸秆炭化还田协同发电的可行性研究.docx
- 2025年天津市物造纸在可降解农用地膜领域的应用可行性研究报告.docx
- 2025年天津市无人值守充电站智能运维可行性研究报告.docx
- 2025年天津市竹荪种植连作障碍防治技术可行性研究报告.docx
文档评论(0)