解惑

解己之惑,解人之惑

2005年6月 (第2页共4页)

为什么blog这么流行?

就我个人而言,blog的最大好处是完全的私人空间,我写的东西不需要别人审核,也不需要非常完整,就像写日记一样,想到什么写什么,而且有一片完全自己的私人空间,可以自己修改定制,实在是发挥个性的最好的体现。据说bbs是第一代系统,blog是第二代系统,而现在有公司在开发第三代系统,实在不知道他们所谓的第三代系统是什么样子?

而Blog之所以能够真的流行的最大的外在因素应该是google这样的搜索引擎的出现,当年个人主页也曾经很流行,但是乏人问津也是很多人渐渐的失去热情的决定性因素,强力的搜索引擎的出现使得只要你写的东西好,那么被别人问津的可能性大大的增加,大家的积极性也就自然得以提升,加之google的广告系统使得只要你的blog的内容比较好,看的人多,那么你就可以顺带赚点小钱,也是对自己的一个肯定吧。

汉化Blog

应该说roller的国际化支持还是比较不错的,但是有些主题是没有国际化的,例如我选择的这个rolling,部分的文字可以直接修改
_sideColumn中的文字,但是有些部分还是不能修改,慢慢找了。

应该严厉打击盗版

也许很多人会骂我的这个观点,没有盗版,中国的个人电脑市场不可能像现在这样发达,充其量也只能达到95年的水平,但是盗版培育了一个市场,但是打击了另外一个市场,盗版导致了硬件市场和网络市场的兴盛,但是对软件行业的打击是非常的大了,这也是为什么中国的个人软件开发者不能养活自己,而是为欧美用户去开发软件,因为欧美用户更愿意掏钱买你的小软件用,因为那个对你足够了。说实话,我经常用盗版,而且更进一步的,我用的都是经过破解的软件,我不喜欢那些使用限制以及广告之类的,但是我宁愿没有盗版可用,因为那样我就会去找我够用而且免费的软件。

SOA,最后的盛宴?

去年到今年网上一个很热门的概念就是SOA(面向服务的架构),它真的是系统构建的最后的盛宴吗?日益复杂庞大的系统要求我们的各个部分都能够非常稳定的工作,在OO之后的组件,然后是构建之类的越来越大的封装,使得我们越来越想构建软件系统像构建楼房一样,但是建筑业经历了几千年的沉淀,其组件的结构和功能相对简单一些,而软件系统,其结构和功能千变万化,而且其需求的易变性往往是建筑不可比拟的,可以说需求随时在变化,使用大型的组件构建系统有它的好处:成熟、稳定,缺点是由于足够大,在可能不满足需求的情况下要进行修改几乎是不可能的;但是选用小的组件,需要学习的内容很多,没有足够的现成的功能,需要自己进行扩展,可能不够稳定,但是好处是在可控的范围内,遇到问题可能自己就可以解决。软件业总的趋势是组件越来越大可能是不可逆转的,但是决不是朝夕之间的事情,而且随着各种规范的出台,基于规范的系统构建将变得简单一些,不再需要对各种组件的不同特性分别学习,而是基于规范进行构建。在这个理想变成现实之前,我们还是需要自己来构建我们的系统,在开发的过程中我们可以有意识的将功能通用化,可以在其它的项目中公用或者给别人使用,apache基金会的做法是值得推荐的,在一些项目的开发过程中产生了很多更小的项目可以为其它的项目所用,jakarta的commons项目系列就是一个很好的例子,但是国内好像做得远远不够,最重要的是似乎并没有意识到这个问题,这个才是最可怕的。就我所参与过的一些项目而言就存在这个问题,而且很严重,每个人在遇到一个他不知道的功能时大部分情况下选择的是自己开发,而不是询问别人是否已经解决了,即使自己完成了,也仅仅是针对自己的问题,没有想到去通用化,即使做得比较通用,也不会写个文档或者邮件告诉别人如何用,在什么情况下用,而别人呢,可能也不大愿意用,这个实在是很多软件开发团队的最大的弊病:重复工作。我们首先应该从思想上解决这个问题,然后是从工具上解决,因为这样的共通功能太多了后如何查找需要的功能就是一个很大的问题。也许JR应该组织开发一个这样的知识管理系统?

又一次错误的修改

由于刚安装的时候中文搜索不太好用,就按照原来的经验将form的method从原来的get修改为post,因为jr原来的中文问题都是这么修正的,但是这次不但没有用,在我们修正了其它的中文问题后这个搜索的问题还是没有解决,今天抱着试试看的心情在本机修改回get后中文搜索好用的,上传到服务器上,果然也没有问题。看了一下代码,原来velocity对form的method进行了扩展,支持了更多的method,get可能也被修改过了。

双子星座

变化速度快如风的星座。双子的双重性格常搞的别人和自己头痛万分,对於事业与爱情,如果肯多花点心思经营,应该会是很好的,但…他们实在是太机灵了。

守 护 星:水星(象徵心灵的交流)
守 护 神:希腊-汉密斯 罗马-墨格利
幸 运 石:翠 玉
幸 运 日:礼拜三
幸运数字:3,4
幸运数字:6,7
幸 运 色:银色、灰色
幸运地点:海平面之上的高地
EQ指数:74—82
神话由来
神话故事中几乎找不到和双子星座有关的传说。在埃及它的名称为「孪子星」,是以这星座中最明亮的两颗星卡斯达…

没有装订的书

现在每天上班坐地铁,其中有大约二十分钟的时间在无聊中度过,虽然有免费的报纸看,但是去晚了就没有,而我就是属于那个每天去晚的人,因为我们不用那么早上班,不得已只能自己买报纸看。今天突然想到要是有没有装订好的书就好了,每天拿一页看一页,慢慢的也就看完了,而且效率可能比较高,因为那个时候精神可以比较集中,不过不知道这样的书的销量有多大。

优化tomcat

主要是修改http Connector的一些参数,我认为比较主要的有:
maxThreads:可以创建的用来处理请求的最大线程数,这个是在服务器负载没有完全发挥出来时可以调整的最重要的参数,默认是200,建议可以开到500左右。
bufferSize:请求的输入流的缓存大小,默认是2K,建议可以开到10K左右,特别是对于发布大文本内容而言。
connectionTimeout:连接超时的时间,默认是60秒,建议修改为20秒

在其它的地方覆盖元素已经有的事件处理

在某些情况下我们可能需要修改某个表单元素的事件处理机制,但是原有的代码可能不能修改,那么我们可以在原有的代码的后面增加新的代码并覆盖以前的事件处理代码:
<script language="JavaScript" for="elementID" event="eventName">
 …
</script>
 
 这段代码应该位于整个文件的末尾,这样才能比较好的保证可以覆盖已有的事件处理,当然使用这个也可以添加事件处理。
这样的坏处是事件处理和对象分离,如果是别人维护你的代码,他可能会不知道你的事件处理代码到底是怎么加的。不过这个技巧对于开发的灵活性是有很大帮助的,而且可以以一种plugin的方式动态的增加事件处理,而不用在原有的生成elements的地方加判断,可以加在其它的不影响代码阅读的地方。

给body添加事件处理

今天发现可以给body或者其它的element添加事件处理器而原来的可以保留,但是ie和netscape的不兼容,就自己写了一个兼容两种方式的:
 function attachWindowEventHandler(event,func)
  {
    if(navigator.appName == ‘Netscape’)
    {
          window.addEventListener(event,func,false);
   }
   else
   {
         window.attachEvent(‘on’+event,func);
   }
 }
 不知道有没有可以兼容IE和Netscape的javascript?不过现在Netscape的使用范围太小了,可能性不大。

更早的文章 更新的文章

© 2025 解惑

本主题由Anders Noren提供向上 ↑