自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(124)
  • 收藏
  • 关注

通向架构师的道路(第二十五天)SSH的单元测试与dbunit的整合

一、前言在二十三天中我们介绍了使用maven来下载工程的依赖库文件,用ant来进行war包的建立。今天我们在这个基础上将使用junit+dbunit来进行带有单元测试报告的框架的架构。目标:每次打包之前自动进行单元测试并生成单元测试报告生成要布署的打包文件即war包单元测试的代码不能够被打在正式的要布署的war包内,单元测试仅用于unit test用使用模拟数据对dao层进...

2012-12-03 15:31:00 270

四个程序员的一天

你,一个DotNet程序员,刚刚加入一个新项目组。除了你之外,其他的成员包括:Ceer,一直从事C项目的程序员,他刚刚转入C#不到一个月; Jally,整天抱着本Design Pattern(没错,就是GoF的那本)在啃的前Java程序员;以及Semon,你对他完全不了解,只是听PM介绍说他是搞Scheme的(传说中的第二古老的语言LISP的方言之一)。不过你也没在意,毕竟计算机这玩意,老东西是不...

2012-11-26 08:40:00 252 1

通向架构师的道路(第二十四天)之Oracle性能调优-朝拜先知之旅

前言这次,我们将在Linux下来动手完成Oracle数据库的安装与使用。Oracle本身是可以免费下载的包括 它的企业版以及被它收购的Weblogic和Sun中的几乎任何东西你都可以拿来下载和使用,不像IBM和Tibco一些其它厂商,只有“试用版”给你下载,Oracle的东西没有时间限制,你拿来做练习,搭实验环境都是没有任何的问题的。但是,如果你出了问题,需要用到Oracle的补丁或者是...

2012-11-23 16:33:00 551

成为高效程序员的搜索技巧

对于缺乏编程知识的人来说,完全有可能编写一个网页或小程序。 如果在用Google搜索相关示例时幸运的话,可以搜到现成的代码。 即使是经验丰富的程序员,通常也会为了节省时间和精力而在网上搜索解决方案。如果不借助搜索技术、网络及集体智慧,现代化高效编程是难以想象的。 因此,搜索技巧对高效程序员变得愈发重要。『继续阅读:程序员怎样提高写代码的速度』现在,我们不需要了解和记住如何解决众...

2012-11-23 15:49:00 147

千万要避免的五种程序注释方式

你是否有过复查程序时发现有些注释毫无用处?程序注释是为了提高代码的可读性,为了让原作者以外的其他开发人员更容易理解这段程序。我把这些让人郁闷的注释方式归为了五类,同时把写出这些注释的程序员也归为了五类。我希望读了这篇文章后你感觉自己不属于其中的任何一种类型。如果你有兴趣的话可以读一下另外一篇文章五种程序员(英文),和这篇讲到的五种程序员对比一下。1. 高傲的程序...

2012-11-20 13:36:00 122

通向架构师的道路(第二十三天)maven与ant的奇妙整合

一、前言我们在《万能框架spring》前四天中都用到了maven,接下去要讲述在SSX这样的架构下我们的“单元测试”是怎么进行的,但是在此之前我们再来深入入解一下maven,因为我们的单元测试需要用到的是junit+ant+junitreport这样的组合。而。。。。。。由于我们已经使用了maven,那么我们如何可以延续经典的junit+ant这样的单元测试的组合呢?其答案就是把maven和an...

2012-11-19 12:04:00 277

通向架构师的道路(第二十二天)万能框架spring(四)使用struts2

一、前言SSH有了,现在我们要把我们的struts层从原来的1.3替换成struts2.x,引入了struts2.0后我们会发觉我们的代码和框架的变化还是不小的二、Struts2的好处1)在struts2的方法里,一切变量是线程安全的,而原有的struts1不是的;2)在struts2中如果你声明了如下这样的代码: privater String studentName=””;...

2012-11-16 23:51:00 164

千万不要把 bool 当成函数参数

我们有很多 Coding Style 或 代码规范。 但这一条可能会经常被我们所遗忘,就是我们经常会在函数的参数里使用bool参数,这会大大地降低代码的可读性。 不信?我们先来看看下面的代码。当你读到下面的代码,你会觉得这个代码是什么意思?widget->repaint(false);是不要 repaint 吗?还是别的什么意思?看了文档后,我们才知道这个参数...

2012-11-15 14:19:00 250

代码之谜(五)- 浮点数(谁偷了你的精度?)

****光棍节加长版****如果我告诉你,中关村配置最高的电子计算机的计算精度还不如一个便利店卖的手持计算器,你一定会反驳我:「今天写博客之前又忘记吃药了吧」。你可以用最主流的编程语言计算0.2 + 0.4,如果你使用的是 Chrome、FireFox、IE 8+,可以按 F12 键,然后找到 「控制台」,输入上面的表达式0.2 + 0.4,回车。然后再用最简陋的计算器...

2012-11-13 12:27:00 139

通向架构师的道路(第二十一天)万能框架spring(三)之SSH

一、前言我们有了Spring+JdbcTemplate和Spring+iBatis并结合maven的基础,搭建一个SSX这样的框架现在就和玩一样的简单了,今天我们将搭建一个使用Struts1.3,Srping3, Hibernate3的SSH1的开发框架,大家跟着我一步步走,会发觉在程序跑通后自己再动手搭建一遍这个框架,只需要30分钟。二、SSH框架仔细看这个框架,稍微有点不一样了...

2012-11-12 13:55:00 125

代码之谜(四)- 浮点数(从惊讶到思考)

在『代码之谜』系列的前几篇文章中,很多次出现了浮点数。 浮点数在很多编程语言中被称为简单数据类型,其实,浮点数比起那些复杂数据类型(比如字符串)来说, 一点都不简单。单单是说明 IEEE浮点数 就可以写一本书了,我将用几篇博文来简单的说说我所理解的浮点数,算是抛砖引玉吧。一次面试记得多年前我招聘 Java 程序员时的一次关于浮点数、二分法、编码的面试, 多年以后,他已经...

2012-11-06 13:33:00 238

精通one,学习another,关注next

Tip 1 要方法而不是记忆我的一个程序员朋友常跟我说记住超过200个C++函数是多么的有帮助。 “我从来不必去查找函数的定义,因此我可以比其他程序员编程快上50%。” 他自豪的说。可结果是什么?难道他不知道编译器的代码自动完成功能可以节约大量查找函数及输入函数的时间吗,另外当C#发布出来后,他在记忆函数上面的努力就白费了。当然,编程中对函数的熟记是一件必需的事情,但是你应...

2012-11-02 11:49:00 130

程序员成熟的标志

程序员在经历了若干年编程工作之后, 很想知道自己水平到底如何? 自己是否已经成为成熟的程序员? 虽然程序员会对自己有一个自我评价, 但是, 自己的评价和社会的评价、专业的评价会有差异, 所以程序员自己并不能肯定这个评价。现实中, 除了各种证书之外, 很少有人会专门给出一个程序员的成熟度的评价。 人们往往是偶发性地就事论事地对程序员的工作作出好与不好, 行与不行的评论。 因此, 程序员对...

2012-11-02 11:47:00 783

如何评价『黑客与画家』

传送门:黑客与画家:硅谷创业之父Paul Graham文集一本好的书,让我们收获的不单单是某种技巧,或者某种方法论,他教给我们的是一种严密的思维方式,是一种学会把自己的眼光放得更加长远的决策习惯,他促使我们养成独立思考的习惯。他没有送给我们一条大鱼,却把捕捉大鱼的方法交给了我们,授人以鱼,不如授人以渔。我一直觉得把一个我们所熟知的很普通的问题讲的非常透彻而且非常清楚是一种相当了...

2012-11-02 11:36:00 106

代码之谜(三) - 运算符

从最简单的运算符加号(+)说起,加号(+)是个二元运算符——也就是说,加号只把两个数联接起来,从来不把第三个或者更多的联接起来。因此,“1加2加3” 在计算机中被表述为:(1 + 2) + 3 // a或者1 + (2 + 3) // b虽然我们通常写做1 + 2 + 3,但是并不意味这它和我们数学中的 1+2+3 是等价的。那么数学...

2012-10-30 10:57:00 166

代码之谜(二) - 语句与表达式

虽然文章标题是『语句与表达式』,在这篇文章中,我将陈述一个观点每个表达式都有一个值。 在此之外,也会继续表述这个『代码之谜』系列的主题——数学与计算机之间被经常忽略的矛盾。简单的讲“表达式”(expression)是一个单纯的运算过程,总是有返回值;“语句”(statement)是执行某种操作,没有返回值。使用表达式也是函数式编程语言所提倡的,而传统命令式编程语...

2012-10-30 10:53:00 144

自己动手设计 PHP MVC 框架(一)——URL

在框架盛行的今天,MVC 也不再是神话。 经常听到很多程序员讨论哪个框架好,哪个框架不好, 其实框架只是工具,没有好与不好,只有适合与不适合,适合自己的就是最好的。每次我面试应届生时都会问他使用过什么框架,并谈谈对这些框架的理解。 当面试有经验的程序员时,会让他自己写一个框架出来。 其实也不是让他编码,只要有思路就 OK 了。 我觉得,如果一个有一年经验的程序员连一个 Framewor...

2012-10-29 12:48:00 102

通向架构师的道路(第二十天)万能框架spring(二)maven结合spring与ibatis

一、前言上次讲了Struts结合Spring并使用Spring的JdbcTemplate来搭建工程框架后我们面临着jar库无法管理,工程发布不方便,jar包在工程内太占空间,jar包冲突,管理,甚至漏包都问题。于是我们在讲“万能框架spring(二)”前,传授了一篇番外篇,即讲利用maven来管理我们的jar库。从今天开始我们将结合“万能框架spring(一)”与番外篇maven来更进一步...

2012-10-29 00:59:00 159

通向架构师的道路(第十九天)使用maven构建Spring工程

一、前言上次大家拿了我上传的工程后,有些人自己通过spring3,struts1.3,hibernate3的download的包自行去装配jar包到工程的WEB-INF\lib目录下。有些是通过我上传的alpha_lib包把里面的jar文件一股脑的copy到了工程的WEB-INF\lib目录下去。有时经常还会发生少包了,ClassNotFound这样的错误,或者是一些因为缺包还引起的各...

2012-10-25 13:04:00 150

你为什么薪水那么低(二)之 生产力

在上一篇文章中提到,升薪的关键在于『你可以做别人做不了的事』。程序员,就是整天与机器打交道的那群人。 在计算机并不普及的年代,这样的描述毫无疑问。然而,这些年来,得益于计算机成本的不断下降,软件使用门槛的不断降低, 如今,昔日昂贵而又神秘不可莫测电脑,已经成了随处可见、人人能用的办公器材。 一句话:人机交互,不再是程序员的专利。大家都可以用电脑干活,只不过,程序员用电脑...

2012-10-22 13:02:00 119

通向架构师的道路(第十八天)万能框架Spring(一)

一、前言前一阵列刚换了个新的工作环境,然后自己的baby也刚出生,一直没有时间去做工作以后的其它事了,担搁了一段日子。今天儿子满一周了,我内人她家帮着照顾着,总算我可以喘口气休息一下,因此决定将这个系列的博文继续下去,同时也将此篇献给我刚出生一周的儿子和幸苦了10个月的爱人。二、基本概念Spring,作为一个流行框架它给我们在日常工程中的框架搭建提供了太多的便利了,它就像一个骨架一...

2012-10-22 01:19:00 206

代码之谜(一) - 有限与无限 (从整数的绝对值说起)

一、引子开始本章之前我先提个问题:“如果一个整数的绝对值等于它自己,那么这个数是几?”如果你回答是 0 和 所有正数,那么请你耐心读完这篇文章吧。本章是我『代码之谜』系列的第二篇,前一篇『代码之谜 - 开篇/前言/序』简单介绍了计算机与数学的不同。数学中有许多复杂深刻的矛盾,数学家的工作就是解释或者反驳这些矛盾, 例如有限与无限、连续与离散、存在与构造、逻辑与直观、具体...

2012-10-15 16:35:00 145

『转』为什么中国的程序员总被称为码农?

今天在知乎看到这个问题。涛吴给出了一个答案,看完收益颇丰。编程活动和机械电子一样可以视为一种工艺(craftsmanship),从事此类工艺活动的人可以叫做工匠或者工程师。经历过工业革命的欧美国家,有深厚的工程根底,从机械到电子再到软件,都是国家产业的支柱,滋养着社会中坚力量的中产阶级。工程师的社会地位普遍比较高,他们有工艺的传承,有文化圈,有产业的历史。而国内目前的软件工业和制造业非常相似,以来...

2012-09-28 08:15:00 107

代码之谜(零) - 其实,你不懂代码

2012年9月28日 13时32分 新增最近看本文评论,争议很多,我先说说这篇文章的前世今生吧。我原文标题是『代码之谜 - 开篇/前言/序』,副标题是『其实,你不懂代码』,本来打算用“其实,代码中的运算符不等价于数学符号”。原文我写于2010年底,当时写在 evernote 中,用了”群“、”域“、”集合“、”关系“的概念解释了计算机中用二进制表示的离散的数和现实中连续的数之间...

2012-09-26 09:45:00 220

你为什么薪水那么低

在SCDN回复了我的博客的回复(有点拗口):程序员之路, 因为回复字数有限制, 觉得没有说尽兴, 故写了一篇博文.写的有点简单了.拖控件, copy代码, 或者做几个小程序的人太多了(俗称“鼠标编程”). 但是如果你所能做到的, 别人也能做到, 你如何去竞争.我觉得升薪的关键在于『你可以做别人做不了的事』.当然了, 你比别人做的快也行(也许你有N年工作经验), ...

2012-09-21 12:56:00 165

程序员之路——一个老程序员对刚上大学的学弟学妹的忠告

始终认为,对一个初学者来说,IT界的技术风潮是不可追赶。 我时常看见自己的DDMM们把课本扔了,去买些价格不菲的诸如C#, VB.Net 这样的大部头,这让我感到非常痛心。 而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可以不用指针等等则让我觉得好笑。C#就象当年的ASP 一样,“忽如一夜春风来,千树万树梨花开”,结果许多学校的信息学院成了“Web 学院”。 96, 97级...

2012-09-20 09:46:00 3020 3

上帝的归上帝,程序的归程序 (卓有成效的程序员)

程序员,就是整天与机器打交道的那群人。在计算机并不普及的年代,这样的描述毫无疑问;然而,这些年来,得益于计算机成本的不断下降,软件使用门槛的不断降低, 如今,昔日昂贵而又神秘不可莫测电脑,已经成了随处可见、人人能用的办公器材。 一句话:人机交互,不再是程序员的专利。 大家都可以用电脑干活,只不过,程序员用电脑写程序,其他人用电脑干其它事。结果,普通人抱怨的问题,程序员也在抱怨:...

2012-09-03 11:41:00 95

人有多大懒,才有多大闲 (评论『卓有成效的程序员』)

《卓有成效的程序员》给我的震撼很大,程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得做着重复单调的工作。在看这本书之前,我属于勤奋的人,而看完这本书以后,我要努力变成懒惰的人。不要在去庞大的开始菜单里面一项一项搜索自己的应用程序,也不要在自己的桌面上放置眼花缭乱的快捷图标白白降低了系统的速度。 用 Launchy ...

2012-09-03 11:40:00 76

程序员的九阳真经

1. 不要为过去买单不要活在过去,今天才是最最重要的,明天更重要。不要弥补过去,那样会错过今天和明天,更会把自己迷失在过去的阴影中,会造成总是犯错,又总是为过去改过,于是生活在一个怪圈之中。2. 量化目标,把目标具体化千万别把一些:掌握,熟悉,高级,专家等一些非常抽象的标准作为你的目标,仔细想一想:什么叫掌握,什么叫熟悉, 什么叫高级什么又叫专家呢? 这些东西不同的人会...

2012-08-31 12:58:00 130

程序猿的九重天

每个职业在成长中,都会属于某一阶段,有着困惑和希望,作为程序员的你,对比一下到哪种境界了,本文给你对对看。第一重:在哪本电脑杂志上看见软件工程师这个职业介绍,或者走在大街上看见某某软件培训机构鼓吹培训完就能年薪10万的广告,有些羡慕那些编程序的,自己有些蠢蠢欲动。第二重:用控制台或者说SDK之类的东西写了一个“HELLO WORLD!”,感觉编程这个东西,太简单没难...

2012-08-31 12:51:00 76

关于网页前端框架art.dialog的一些问题

今天有人在群里发问:“art.dialog. texterea 里面 onkeyup 怎么不起作用啊?artdialog 如何给textarea 添加事件?”。我最近用artDialog时也发现了几个问题,后来发现新版的有问题,如果使用旧版本则没有这个问题,我链接到一个页面,会有一个弹出,然后自动关闭。当我们写下如下代码:function aa(){var haha = 1;a...

2012-08-30 15:43:00 116

百度628和822大K站:每个站长挥之不去的阴影

6月28日和8月22日,对国内大部分站长和已SEO为主营收入的公司来说,无疑是最黑暗的一天,突然间感到天昏地暗。不少站长纷纷抱怨:“百度是不是脑子进水了,怎么这么多被K的”。我的站是从7月份开始优化,很庆幸躲过了628的那场劫难,每天发文章,发外链,没过多久,外链数居然从几十一下飙升到了几千,很快的http://www.hualai.net.cn站在天津网站建设这个关键词中排到了第二页,很是欣...

2012-08-29 09:35:00 83

网站设计中很重要的概念div+浮动

在网站建设中,总会遇到html和css各种各样的问题,打开网站http://www.hualai.net.cn首页,查看源代码,满屏全是html标签,不下几十个div。html中包括两种元素 内联元素(行内元素) 和 块元素 ,怎么理解呢?行内元素就是不换行的元素,并且大小可以自适应. 例如 a img font span,当我们建设一个网站的时候,里面的文字内容就是行内元素。块元素就...

2012-08-24 09:23:00 90

网站建设中的Ajax请求与浏览器缓存

Ajax请求与浏览器缓存在现代Web网站建设中,前端代码充斥着大量的Ajax请求,如果对于Ajax请求可以使用浏览器缓存,那么可以显著地减少网络请求,提高程序响应速度。1. Ajax Request使用jQuery框架可以很方便的进行Ajax请求,示例代码如下:$.ajax({ url : 'http://www.hualai.net.cn', dataTy...

2012-08-24 09:23:00 95

建设网站必备的12款jQuery插件

jQuery插件能够增强网站的可用性,有效地改善用户体验,还可以大大减少建设一个新网站的开发时间,http://www.hualai.net.cn网站就用到了不少jquery的插件。现在的jQuery插件很多,尽可以根据您的项目要求来选择,不过也有一些插件很好用,几乎建设任何类型的网站都能够用得上。这里就为您介绍12款网站开发中最常用的jQuery插件。1.jQuery BBCode Edit...

2012-08-24 09:20:00 78

程序员怎么才能提高代码编写速度?

这里编写速度指的是把代码敲入编辑器的速度,而不包括程序构思过程。我现在感觉自己敲代码很慢,10 个字母里面会出现 2 个字母打错。尤其是一些特殊符号,比如 < >,我使用的是搜狗,搜狗和英文切换是 shift 键,但有时候极容易弄错所处状态,很少去观察是中文状态还是英文状态,因为切换的太频繁了,比如经常会把 < 打成《,> 打成 》。中文环境下打字,很快,几乎不会出现按...

2012-08-23 12:57:00 966

网站建设中关于eclipse启动参数的优化

在网站建设中,经常用到eclipse,每次启动都是很费时间的,那么如何对它进行优化呢?版本:Eclipse3.6参数配置文件:eclipse.ini结果:修改后启动速度直观上有比较明显的加快注意:重点是后面红字部分的设置首先建立评估体系,比如,我们需要建立一个网站http://www.hualai.net.cn,首先将workspace里所有的项目clo...

2012-08-23 09:46:00 80

计算机端口详细介绍(整理版)

我们常常会在各类的网络或者网站方面的技术文章中见到诸如135、137、139、443之类的“端口”,可是这些网络端口究竟有什么用呢?它会不会给我们的计算机带来潜在的威胁呢?究竟有多少端口是有用的?端口:0服务:Reserved说明:通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口,当你试图使用通常的闭合端口连接它时将产生不同的结...

2012-08-23 09:46:00 212

通向架构师的道路(第十七天)IBM Websphere集群探秘-WASND

一、IBMWebsphere集群IBM WebSphere的发行版分为单机版和NetworkDeployment版,我们把Network Deployment称为ND即可作集群的版本。WAS的集群和Weblogic的集群一样,它也可以作垂直和横向两种集群。而WASND的集群是在所有的集群中最强大的,因为它可以:通过各个node组成一个个cell,又可以把这一个个cell组成一个个...

2012-08-23 01:16:00 441

设计Web应用程序时要注意可伸缩性

Max Indelicato是一位软件开发主管和前首席软件架构师,他最近发表了一篇关于如何设计具备可伸缩性的web应用程序 的文章。他提出要选择正确的部署和存储解决方案,选择可伸缩的数据存储和模式,并且使用抽象层。适合工作的工具Indelicato的第一个建议是“为工作选择正确的工具”,想要达到这个目的,就要选择下列架构解决方案中的一种:使用云部署解决方案使用可伸缩的数据存储解决方...

2012-08-22 09:37:00 89

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除