本文也是转摘,不过看到它的时候,我想起了discuz的URL解析,discuz在做rewrite的时候,并没有主动都对模版中的链接进行更换,而是在输出前,对于符合规则的那些链接使用rewrite的规范进行了一次批量替换。
这次我转摘的文章也是用了类似的方法,只是他又是.NET处理的,我也不翻译了。知道了原理就行了(和discuz一样,不过这种方法应该只适合做语言包)
原文:
一直以来多语言问题都是个让人头疼的问题,不是这个问题有多难,而是很繁琐,而我们目前的这个项目有点特殊,我希望最大限度的化繁为简,以下是我解决这个问题的方案。
我们的项目有这样两个前提:
1、要支持多语言但最多三种语言,一般情况下就两种语言,所以并没有随时切换语言的要求。
2、我们希望有一种可以初期不用管语言问题,之后统一翻译的方案
基于这么两点,我们提出了这样的方案:
1、初期写程序时不用关心多语言的翻译工作,只要将所有使用到中文的地方都用{}扩上
2、在数据库中Chinese会设置为唯一约束
3、所有的翻译工作会在BasePage中的Render方法中作
4、所有的页面会继承BasePage
5、翻译时会根据当前的语言设置构建以language表中Chinese做key,相应的语言为value的字典,然后查找需要翻译的字符串是不是在字典中,如果不在就生成这一行。
数据库设计四个字段
ID,Chinese,English,Other
BasePage源码:
这样设计的
优点
1、初期写程序时不用关心多语言的翻译工作,只要将所有使用到中文的地方都用{}扩上
2、省去了大量命名相应文字的工作
3、直接用中文标示要显示到页面的文字,容易理解
缺点
1、如果中文是一样的翻译,而其他语言翻译却不一样时不好解决,但这种情况似乎不常见
————————END————————
缺点就是我说的,只能用来做语言包,呵呵。
刚看到这个题目的时候,是不是觉得很奇怪?为什么这样的标题,它的TAG却是项目管理?事情要从博客园的某个博客说起,开始的时候我也以为是小孩治病方面的问题,后来才看出,确实是项目管理方面的。
仔细想想,确实和项目管理还有程序开发有关。说和做,提出方案和解决方案确实需要有一个全局把控的人。不能因为说A数据库不好,我们就换成B数据库,结果换到B数据库后还是不行;其实不是B数据库不行,而是不会配置B数据库而己。
原文地址:http://www.cnblogs.com/caidehui/archive/2008/12/18/1357692.html
内容如下:
孩子病了,腹泻。去了儿童医院,开了药,吃了几天,没用。去了医大二院,也没用。昨天再去医大二院,换一大夫。大夫仔细的询问了病的情况,药的情况。
开一方,无药,只有吃法。空腹、25ml水,服后半小时吃东西。其效入神,立时止泻。
同样的药,效果确实截然不同的。这世上,庸医,良医原来只是这点不同。
企业所面临的问题,也是如此。
Review是经过业界多年,上千项目验证了的好东西。我们引进来也有年月了,可很多项目做的实在不到位,为什么呢?
非项目之过也,实乃开方的人没有考虑如何有效的发挥作用也。
基于EV的进度管理,这个最佳实践,是进度管理中最重要的实践之一。我们引进后,还没有起到我想像中的作用。什么原因?非工具之过、使用者之过,乃我之过也。
还有很多类似的情况,东西是好的,到了我们的手上就发挥不了作用,那是因为我们并没有真正的掌握其用法。
对于那些怀疑药的作用的人来说,则是另外一个范畴的了。
好多年前,中国的思想领域也是经历了一番挣扎的。现代的社会制度,多来之于国外的研究与实践。现代的经济体系,也多来之于国外。于是有守旧者埋怨有些人认为:外国的月亮比中国的圆;也有人高呼,其实外国的月亮不圆。
这二者,我想其中应该有很大一部分不是谁比谁圆的问题,而是拿来以后如何应用的问题。既有遵循原来的精髓,又要在中国的环境中发挥作用的问题。
OO、RUP来到中国的时候,不也是讥讽有之,尊崇有之吗?
现在的中国社会看起来更成熟了一点,更开放了一点,更能容纳各种不同的思想了一点(这里不是指意识形态的问题)。所以类似的争论就少了,如何有效的应用的讨论就多了。
-------------------------------------------------
膘叔的话:你看完了,怎么想呢?你又会怎么做呢?从自身找原因?从别人身上找?唉。。不是你的项目,你管不了?总之,解决方案你自己心里有数吗?