- 浏览: 233910 次
- 性别:
- 来自: 青岛
最新评论
-
石头茨:
请问下楼主,用的什么工作流引擎?
也来show一下我的EXT成果 -
dongdyj:
看完这篇文章犹如看到知音,描述的很好啊。
答复: 如何在敏捷开发中进行数据库设计 -
freezingsky:
这个解决方案极好,之前也曾想过这类问题的解决方法。但明显不如此 ...
将Grails的Flash Scope移植到Struts2 -
xzcgeorge:
将Grails的Flash Scope移植到Struts2 -
yongtree:
liuxuejin 写道例子还不错。但是你说的情景。我真不懂。 ...
基于MongoDB MapReduce的统计分析
文章列表
为什么要写这篇文章呢?其实这是我很长时间来的一个观点,一直没有作为专题拿出来讲。昨天参加了一个项目的讨论会,项目人员都是以前从事企业内部系统设计开发的,现在要做一个偏互联网运营的产品,但是给我的感觉 ...
最近发生了一件本来我可以参与的大事,但是我却侥幸逃脱。前几天,我所办公的大楼着火了,就在我们下一层。着火的前一刻,我们下楼去济南参加软件架构培训。我们很庆幸,火灾面前我们逃过了一劫;但我们又非常遗憾,火灾面前,我们没有经历那种感人至深的场面,缺少了一种经历。下面一段话是我引用我同事的一段话:
突如其来的火灾,让我们措手不及,在危急关头我们22人拧成一股绳,感谢所有楼下与我们电话沟通的同事,我们的成功脱险与你们是密不可分的!B座的同事们,我们应该感谢这场火灾,让我们的阅历变得更加丰富,如再遇到困难与险境,我们会拥有常人所没有的心态与反应,火灾就当是考验,爬楼就当健身,我们是浴火重生的凤 ...
在前段时间的博客《如何提高团队的工作效率》中,我说过,提高工作效率和团队战斗力最好的方式就是将团队打造成创业型的团队,那什么样的团队是创业型的团队呢?可能这个有很多人关心,因为很多人并不想一直领一份工资浑天度日、终老此生,而是成就一份属于自己的事业,只是我们还不具备自主创业的资本和条件,而加入一个创业型的团队便是一个很好的选择。我也一直再想,如果我要加入一个创业型的团队,它应该是个什么样的团队呢?我想它应该是这样的吧。
1、我认为的创业型团队有两种,一种是自主创业,白手起家;一种是依托于一个平台或组织,进行二次创业或者孵化创业项目。对于第一种,我想能促使我加入的是强烈的目标和团队的认 ...
上周五老板召集我们几个负责人讨论“如何提高团队的工作效率和技能”,大家说的都非常好,每个人都有自己的见解和思路,我也说了我的一些想法,由于讨论太突然,没有特别认真的准备,思路不是非常调理。这两天我又好好思考了一下,把自己的思路整理一下,与大家分享。
看到这个命题,我非常的高兴,因为这才是如何提高创造价值能力的根本,而非利用高强度的工作压力,高饱和的工作时间。加班赶进度这样的情况应该是偶尔才会发生的,长期如此必然是有问题(初创公司的主动加班排除)。只有提高工作效率和工作的技能,我们便能持续不断的获取创造高价值的能力,这才是可持续发展的根本。
以下是我的一些思路和方法,这些思路和方法需要一 ...
为什么采用freemarker?
1、模板技术,不依附于语言和框架,前端和后端解耦,便于分工协作,更好的协同。
2、页面相应速度快
3、前端非常的灵活,采用自定义标签可以在不更改后端的基础上很容易的构造前端逻辑,可适应多变的网站。
为什么要自定义标签?
答案在第一个问题的第三点,我们需要一个前端灵活的架构,在不更改后端逻辑的基础上,很容易的改造前端逻辑。
在SSH的架构中,自定义标签已经可以方便的实现(struts2的标签也是基于freemarker的自定义标签),但是用起来还是不够爽,需要大量的配置,繁琐的依赖注入等。用了jfinal以后,发现自定义freemarker标签在 ...
【管理部分】
谈谈互联网产品开发的特点
互联网的产品大都是面向海量用户的服务,且用户分布区域广泛,其教育水平、习惯也大多不同,具有高度不确定性,我们必须非常关注用户的行为和反馈。因而,在互联网产品服 ...
题外话:程序的架构依赖于系统的架构,系统运行的环境决定了程序设计的方式,单单以集群为例,在程序的开发上与集中化部署就有很大的不同,架构的意义就在
于发现这些不同,设计合理和容易扩展的结构以更小代价的适应未来的这种变化,分层的设计其实也是规避环境变化而造成系统整体的变动的一种方法。
Session应该是web开发独有的,必须要面对的。Session让web程序的会话保持变得如此的简单,但是也带来了很多问题,比如:有很多开发人
员享受了session的便利,把大部分东西往session中放,滥用session,造成服务器资源的浪费;跨域session丢失的问题等等。
今天就谈一下 ...
在做OECP平台的登陆页面时,需要选择相应的公司进行登陆,公司的选择是树形结构的,而extjs的下拉combobox为列表结构,为了让页面操作更加简单,决定将下拉列表改造成下拉树。在这里主要用到了Extjs的extend的语法,扩展比较简单,直接上代码吧。
js 代码
Ext.ns("OECP.ui");
/**
* 下拉列表选择树
* <br>
* 依赖EXTJS3版本
* @class OECP.ui.ComboBoxTree
* @extends Ext.form.ComboBox
* @author yong ...
在今年的年会上,总裁高瞻远瞩,站在企业运营和架构的绝对高度上一语道破未来企业信息架构的发展趋势:云计算、集成(优化)、商业智能。这三个方面对应着企业信息架构的三个层面:
1、
在信息化基础 ...
每个MongoDB的document都有一个_id字段作为它的第一个属性,这个值通常是一个BSON对象id,因此,这个id对于集合中的每个成员都是唯一的,如果用户插入一个document没有提供一个id,数据库将自动生成一个id,并存储在_id字段。 The BSON ObjectId Datatype 一个BSON ObjectID是由12个字节组成:4字节时间+3字节机器id+2字节进程id+3字节的数字{ "_id" : ObjectId("4c691e72ed2a47b462dfa806") }有时候我们的应用中需要自增长的数字型主键 ...
每个软件企业和组织都希望自己的组织能成为成熟的软件组织,都希望在成长的过程中一点点的完善起来,以达到优化工作方式和开发流程,降低长期发展中的成本消耗,获取最大的利润回报,而CMMI(能力成熟度模型)成为大 ...
前面已经简单介绍了MongoDB在OECP社区的一个应用:动态消息的设计实现。在上次的应用中,我们只介绍了MongoDB最基本的查询的功能,今天我再介绍一下MongoDB更加高级的应用:用MongoDB做统计分析。OECP社区中,我们为了更加准确的分 ...
现在社交网站异常火爆,Facebook、人人、开心网在短短的几年内,引领了互联网的又一个时代—网络社交,如果说,第一个时代是通过门户网站提供的内容,第二个时代是通过搜索引擎来主动获取内容,那么作为第三个时代的SNS,又是通过什么来进行的信息的传播呢?当然是利用的人与人之间的关系形成的网,进行人与人之间的传播,而实现这种病毒式传播的工具就是信息的动态推送。在OECP社区的策划设计时,我们不仅仅要做高质量的内容站点,另外很重要的部分就是要把这些高质量的内容主动的推送给用户,而要达到这种目标的手段就是要有动态信息的推送功能。在一般的SNS系统中,朋友是维系人与人之间关系的纽带,而OECP社区中,维系人 ...
OECP(Open Enterprise Components Platform)社区已于2010年9月5日正式上线公测,希望朋友们多提宝贵意见。 OECP社区的前身是百洋软件研究实验室,百洋软件实验室是百洋医药集团信息化工作者在企业信息化探索的第一次对外延伸,第一次用开放的心态与外界进行交流沟通,从而更好的引领企业的信息化。通过一年的运营,也取得了很好的效果,我们现在已经有注册用户7000余人,发表博客上千余篇,每天独立IP超过一千,作为一个企业信息化的团队,这些成绩已经值得欣喜。 但是,我们的目标远大,胸怀更加的宽广,我们不仅仅只是在技术层面对外的简单交流和沟通, ...
敏捷开发的确要求我们只针对眼前的功能进行设计和开发,但是这并不是不要我们统筹全局。只考虑眼前,而不关注未来,会造成设计不足,导致后期变化难以适应。太看重未来,看得太远,会产生设计过度,用现在的成本来换取未来未知的变化,也是得不偿失的。合理的设计就是要满足现在,并兼顾不久的将来。
如果说变化导致结构或者整个体系都要伤筋动骨,其实是我们设计不足造成的。设计的时候你的模块有没有划分清楚,有没有设计可重用的组件,模块之间如何交互,是不是进行进行低耦合的设计,模块和组件之间的接口设计是否通观全局,是否能满足相对的扩展,模块内部是一个有效的整体,变化会导致结构改变,但是这不会对整个 ...