`
bianku
  • 浏览: 72452 次
  • 性别: Icon_minigender_1
  • 来自: 常州
社区版块
存档分类
最新评论
文章列表
程序员是一个比较特殊的群体,他们因为长期和电脑打交道所养成的性格和脾气也是比较相近的。当然,既然是人,当然是会有性格的,也是会有脾气的。下面,让我来看看十件能把程序惹毛了的事情。一方面我们可以看看程序 ...
深入浅出单实例Singleton设计模式 陈皓 前序 单实例Singleton设计模式可能是被讨论和使用的最广泛的一个设计模式了,这可能也是面试中问得最多的一个设计模式了。这个设计模式主要目的是想在整个系统中只能出现一个类的实例。这样做当然是有必然的,比如你的软件的全局配置信息,或者是一个Factory,或是一个主控类,等等。你希望这个类在整个系统中只能出现一个实例。当然,作为一个技术负责人的你,你当然有权利通过使用非技术的手段来达到你的目的。比如:你在团队内部明文规定,“XX类只能有一个全局实例,如果某人使用两次以上,那么该人将被处于2000元的罚款!”(呵呵),你当然有权这么做。但是如 ...
基于JVM的语言正在开始流行 赵锟 总结: 这是Reuven Lerner在去年写的一篇博文,文章主要介绍了一些新兴的基于JVM的脚本语言。结合本文可以对Bruce的博文《C++和JAVA传统中积极的一面》有一个很好的理解。译者认为:语言始终都是一门工具,软件设计最重要的东西是来自于设计者的创造性,但是随着Java语言的出现,他的半动态的特性,ClassLoader,反射,动态代理,都是提高开发者创造性的前提,正是因为这些特性,才会出现新的的编程模式和范式——反转控制和依赖注入,面向方面的编程(AOP)。试想如果Java不提供ClassLoader,反射,动态代理机制的API, ...
C++和Java传统中积极的一面 作者:Bruce Eckel译者:赵锟、陈皓 译者注: 本文翻译自Bruce Eckel(《Thinking in C++》& 《Thinking in Java》作者)的博文,该博文于2009年03月14日发表于: http://www.artima.com/weblogs/viewpost.jsp?thread=252441 ...
在这个世界上,有数百万的人热衷于软件开发,他们有很多名字,如:软件工程师(Software Engineer),程序员(Programmer),编码人(Coder),开发人员(Developer)。经过一段时间后,这些人能够成为一个优秀的编码人员,他们非 ...
《华尔街日报》3月18日报导有消息说IBM要以65亿美金收购Sun(原文),虽然消息未经证实,但已引起轩然大波。据Business Joural报道,周二,Sun的股票一下子涨了68%,从之前$4.97一下涨到了$8.36,但IBM的股价下跌4%到了$89.46。 而网上 ...
我个人认为,这是一篇不错的文章,虽然我不是Program Mananger,但是我几乎在做着和这个职位很相似的工作。在这里,我把这篇文章推荐给所有的程序员,我相信,这篇文章会让你明白,只有技术是远远不够的,因为没有Program Mana ...
本文同时也发表于:酷壳(http://www.cocre.com/?p=77 ) 结对编程的利与弊 陈皓 http://blog.csdn.net/haoel 结对编程(Pair-Programming)可能是近年来最为流行的编程方式。所谓结对编程,也就是两个人写一个程序,其中,一个人叫Driver,另一个人叫Observer,Driver在编程代码,而Observer在旁边实时查看Driver的代码,并帮助Driver编程。并且,Driver和Observer在一起时可以相互讨论,有效地避免了闭门造车,并可以减少后期的code review时间,以及代码的学习成 ...
本文同时也发表于:酷壳(http://www.cocre.com/?p=67 )   Java 书籍 Top 10 陈皓 http:// blog.csdn.net/haoel 下面是Java Inside上推荐的十本Java书籍(文章来源),我把中文版的也列了出来。 1)Java Language Specification, Third Edition (by James Gosling)
我始终认为,对一个初学者来说,IT界的技术风潮是不可以追赶的,而且也没有能力去追赶。我时常看见自己的DDMM们把课本扔了,去卖些价格不菲的诸如C#, VB.Net 这样的大部头,这让我感到非常痛心。而许多搞不清指针是咋回事 ...
 排序有很多种方法,常用的有三种:冒泡排序、选择排序、插入排序等,下面我们就对这三种方法做一下分析和比较,以便大家能够更好的理解和应用。   一、冒泡排序   1、冒泡排序的基本思想:对于n个数进行排序(现假定是从大到小排序,以下均按此进行),将相邻两个数依次比较,将大数调在前头:也就是说第一个数和第二个数比较,大数放前,小数放后,第二个和第三个进行比较,大数放前、小数放后,然后依次类推。。。经过第一轮比较以后,我们找到一个最小数在最下面(沉底)。然后进行下一轮比较,最后一个数就不用再参加比较了,所以本轮就可以少比较一次。   很显然,需要用双重循环来设计这个问题,外层循环控制进行的轮数, ...
C++ 对象的内存布局(下)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />       陈皓   http://blog.csdn.net/haoel     <<<点击这里查看上篇   重复继承     下面我们再来看看,发生重复继承的情况。所谓重复继承,也就是某个基类被间接地重复继承了多次。     下图是一个继承图,我们重载了父类的f()函数。    
C++ 对象的内存布局(上)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />       陈皓   http://blog.csdn.net/haoel         点击这里查看下篇>>> 前言     07年12月,我写了一篇《C++虚函数表解析
Java NIO 类库Selector机制解析(续)       陈皓   http://blog.csdn.net/haoel         在前些天的《Java NIO类库Selector机制解析》文章中,我们知道了下面的事情:     1)Sun的JVM在实现Selector上,在Linux和Windows平台下的细节。 2)Selector类的wakeup()方法如何唤醒阻塞在
用GDB 调试Java程序       陈皓   http://blog.csdn.net/haoel     背景     想要使用GDB调试程序,就需要用GNU的编译器编译程序。如:用GCC编译的C/C++的程序,才能用GDB调试。对于Java程序也是一样的,如果想要用GDB调试,那么就需要用GNU的Java编译器——GCJ来编译Java程序。
Global site tag (gtag.js) - Google Analytics