`
文章列表
  近来闲翻《易经》,看到其中的否卦(天地否)和泰卦(地天泰) ,发现这两卦很有意思,联想到一些现代管理,和一些历史文化,特此写出来和大家分享。 首先请大家千万不要被这些卦象符号唬住,卦者,挂也,就是 ...
  mRSA是斯坦福大学的一些密码学研究人员提出的一种RSA算法的变化机制,这种机制,解决了RSA算法面临的一些问题,而且,和传统RSA的应用完全能够兼容起来。   mRSA算法在一种被称为SEM(SEcurity Mediator)的架构下使用,其算 ...
        Java5相比之前的Java版本,在并发编程上,有了非常大的提高,加了很多类,提供了很多可用于并发编程的工具包和工具类。尤其为人们所称道的,就是Java自带的线程池。      Java5线程池的介绍文章,可以说在网上比比皆是,我就不再重复了,只是简单提一下,线程池给并发程序带 来了几个好处:       1、创建和销毁线程的开销    2、保护系统资源,避免创建太多的线程导致系统崩溃    3、简化编程模型   Java5自带的线程池( ThreadPool),用于并发系统的,主要有: 缓存线程池(newCachedThreadPool):每个任务过来后 ...
      继续上一篇未说完的话题,这一篇,提出一些问题,供有志于学习架构的朋友们参考吧。          走在大街上,去观察下面的问题        (1)超市一般选择什么样的外部格局和内部格局?政府办公楼呢?租给IT公司的写字楼又如何?给一般市民的住宅、豪华别墅等等等等?      (2)超市买到的各类食品,一般在包装上的成本是多少?原材料的成本是多少?外形涉及、工艺又是多少?联想到设计软件时在外观、功能、性能上的考虑,呵呵。      (3)一般常见的物品,其功能和形状之间有哪些关联?例如书桌、椅子、茶杯、背包?形状中长、宽、厚度之间的关联又是如何?       ( ...
代码自我审查的一些常见注意点:(0)自认为绝不会出错,并且从来没有审查过的代码。(1)注意else语句,if条件下的子语句通常可能是个正常的流程,而else意味着异常的情况或者特殊的场景,你可能特别注意怎么处理正常的情况,却忽略了else子句的实现细节,如该释放的锁没释放,该递减的计数没有递减,该赋予特殊值却没有赋予等等。(2)注意空的方法,没有方法体的方法,是不需要实现?还是忘了实现?(3)注意switch语句,有没有忘了break?这种错误通过findbugs之类的静态代码检查工具都能避免。(4)注意大块的注释,为什么这么多注释?是代码写的很糟糕?还是遗留的注释?遗留的注释会误导人,要及 ...
      古人作诗,云“功夫在诗外”,这句话说得很有味道。开始也是不太清楚,在软件架构这个领域混了多年,对此有了深切的体会。一门心思深入在软件、计算机技术里,古人对软件架构有很多好处,能得到很多知识,增长能力,但最好是能把眼界放宽,从在在处处学习。我个人觉得这是一个更好的学习方法。      我读了一些计算机专业,讲架构的书,但是发现自己更爱读一些看似无关的书,包括《设计心理学》、《建筑的永恒之道》等等,我发现这些对我后面再做架构师能够起到很好的作用。像《建筑的永恒之道》这本书,当年大大有名,更是直接引发了“模式”这个概念,前几年23种设计模式,更是成为了软件开发领域的时髦词。我当时也 ...
  前一阵子写一个控件,感觉接口有些地方使用返回值控制不大方便使用,所以打算给控件增加上几个事件,结果在网上搜了很久,也看不到合适的方法,网上说的一些东西,在我的VC环境中看的时候,根本就没有办法那么操作(包括VC6和VC2010)。于是找了一个示例程序,反反复复试验了好多次,终于自己的控件能够通过事件回调了,现在把我的试验方法记录下来。(网上说的更多是在建立控件工程时增加事件,如果对于一个建立工程时没有时间支持的控件,根本没有提到的)。   我的试验中提到的内容,不知道是否都是必要的,我也没有在这方面再去尝试。   (1)修改控件类的继承列表,如果需要有事件支持,需要继承以下的类 ...
在上一篇里,简单介绍了windows VFW库的情况,使用VFW处理还是比较简单的,但是也非常不容易控制,而且,即便仔细看文档的介绍,还是要摸着石头过河。在CodeForge网站上搜了好长时间,总算从网上找到一个以前人写的 VFWImage的 ...
.     1、产品(尤其是耗时较长,投入较多的产品)需要面向市场,面向未来,而不是只面向目前的客户需求。2、产品需要把“概念完整性”作为设计中最重要的因素来考虑,各个部分应该拥有一致的概念3、产品应该更多的考虑生命力和可扩展性,保证将来在其基础上生长出新的功能(枝叶),保证在一个较长的时间内,依托现有架构上稍作修补,即能应对各种变化的需求4、产品从需求到设计、代码、测试,包括产品包和文档,需要长期一遍遍精雕细琢,这样才能做出优胜于别人的产品5、一个新产品,必须有自己的亮点(当然,亮点越多越好),应该能够给人耳目一新的感觉---如果一点都没有,那么这个产品还有没有必要做?   附带 ...
    一篇自己写的老的文章,那会儿还有Sun和BEA呢,呵呵,就不改这些文字了,希望对大家有所帮助。   JVM中的服务器软件的稳定性       1       引言   1.1   编写目的          我们的很多产品都是基于Java的服务器软件,这些服务器软件,都需要长期(24×7)稳定运行。这些软件,都是用Java预言开发,基于JVM来运行的。这样来看,这些软件的稳定性,不但受限于我们自己所编写的Java代码,还受限于JVM
     之前看过一个观点“读书需别具慧眼”,当时看过便算,也没有深思,偶然在又听袁阔成先生讲的《三国》时,想起这么个事,刘备让张飞守徐州,醉酒失了徐州,家小失陷,刘备说了一句经典“古人云:‘兄弟如手足,妻子如衣服。衣服破,尚可缝;手足断,安可续?” 这两句被无数人引用,更是被指为旧社会妇女社会地位低下的铁证,且见这些所谓的英雄人物都是些什么样的人,所有的女同事,估计都会害怕遇上刘玄德那样的男人了。       可是后来再继续听,好像到后边有点变味,听到关云长千里走单骑,忽然琢磨,刘备要是真的“妻子如衣服”,那以他的兄弟自居的关二爷为啥为了两个嫂子,不顾“大丈夫宁死不辱”这样的信条,屈身 ...
    记得早年读南怀瑾老先生的一本书,提到《史记-伯夷叔齐列传》大有深意,当时特意翻出来看了两遍,还是没啥感觉,哈哈,后来工作之后,人海沉浮,返回投来再翻,忽然一下子明白了好多,也不知是否合老先生之意 ...
前几年做了很多性能测试和性能优化,也看了很多国内国外的性能优化方面的资料,现在把血泪中得来的经验教训跟大家聊聊,看看对自己的项目是否有用。   性能优化之前首先进行性能测试:   性能测试的要点:   (1 ...
  现在“架构”这个词还是挺火的,什么理解都有,我也来谈谈我的看法。   我觉得架构首先完成一个系统的复杂度切分,架构本身不解决系统的任何问题,只是把系统的复杂度切分到不同的子系统或模块中。架构关系的是系统整体的耦合度。模块切分时的平衡、复杂度切分时是否合理。   这样来看,系统架构的重点是系统的整体。   一个好的系统架构,应该有下面的几种特征:   (1)简单:   如果架构非常复杂,一是说明架构师把本应属于模块内部的复杂度,拿到系统整体架构上了,这样在系统应变的灵活性上要差。架构参与了本应属于子系统或子模块的内容。   (2)低耦合   好的架构,各个子系 ...
  软件需求的一些看法:   需求对售前工程师或采集需求的研发人员来讲,永远都是冰山的一角。在采集需求的阶段,尤其是初期,不管是否同步开始了系统的初步设计,还是也在紧锣密鼓地进行设计、开发、测试,都应该抱有这种态度。   冰山一般是露出来的部分,只是一个尖,一个有经验的需求采集人员,应该从项目中历练出通过这个“尖”,看到冰山藏在水面之下的部分,至少要有这种思维才行,否则,轻率的看待需求,传递到后端,会引发灾难。造成研发人员死在需求上,需求采集人员应该负很大责任。   当然,研发人员在接到前端传递来的需求时,也应该有这种态度来看待,冷静处理,这样,也能最大限度避免灾难。这就是“疾 ...
Global site tag (gtag.js) - Google Analytics