文章列表
[转载自 Gossip@caterpillar]
个人翻译为简体中文, 供自己学习使用
scala中的by-name parameter介绍:
到目前為止,所定义的带参数的函数,必须先根据参数的表达式计算出值,然后才能调用该函数。例如:
def sum(a: Int, b: Int) = a + b
println(sum(1 + 2, 3 + 4)) // 显示10
在调用函数sum之前,1+2和3+4都会先被计算出结果,然后以sum(3, 7)的方式来调用sum函数,a 和 b 这两个参数称为传值参数(By-value paramenter)。
考虑另一种情况, 如 ...
-- 以下为转载内容 ---
在《GoF 23种设计模式模式解析附C++实现源码》和《设计模式解析之—Visitor模式》中,我给出了Visitor模式的诠释和示例实现源码。
个人觉得例子和解析还是能够比较清晰地为学习和掌握Visitor模式提供一些信 ...
最近重新研究java基础, 看到了java中Object类的equals()方法。java中比较两个对象相等性有两个方法,一个是==, 另一个是俄quals()方法(当然基本类型不能直接调用,需要包装类包装)。常问的问题就是这两个方法的区别,很多人会说出好几条区别,比如==比的是对象的引用,equals比较的是对象的值。其实这是一种误解,看看Object类中equals()方法的源代码。
public boolean equals(Object obj) {
return (this == obj);
}
就这么简单, 原来equals调用的就是==。那么上述的论断来 ...
看过上次对企业开发现状的简单描述,我们希望能够找到改变现状的方法。作为一种高姿态的做法,首先应该从自身来找到原因。我们是程序员,既然如此,技术就是不可不谈的原因。
随着计算机行业的发展,编程 ...
企业级web应用是广大程序员最主要的工作内容。提起企业级开发,不难想到SSH这个经典而又臭了街的框架;无数的混在程序员队伍中的Copyer们不懈一顾的表情;靠熬年头混上去满嘴喷着吐沫星子说企业级开发没有技术含量的领导;不懂技术天天骂街的产品经理;将应用越改越烂而不得不离职的程序员们;等等等等。。。。
这些现象和论调已经存在不是一天两天了,而且是一种极其普遍的现象。不管你走到哪里,都可能看到这样的人,听到这样的话。有些人凭着自己是公司新人的热情与动力,想努力去做好自己的工作,但是,用不了多久,你就会发现你根本无法对抗这种无形中的力量,慢慢地,被同化的人留了下来,成为了公司 ...
不管是面向过程还是面向对象。软件开发中,我们都不能脱离“函数”。
什么是函数?不同的人有不同的理解。下面我就谈谈我的理解:
y=f(x)这就是函数。x是参数,y是函数的返回结果,f是函数名。软件 ...
记得当年从对编程一窍不通到入门似乎是在一夜之间,似乎在那一刻,我突然顿悟,从此便走进了软件编程技术的大门。从此我就顺利了开始了java开发的工作与生活。
5年时间转眼过去,做了很多个项目,看了很多的书,自己也从初级程序员进步为中级程序员。可是我却感觉到自己每天的进步越来越慢。我总感觉到有一种无形的墙挡住了前进的道路。重构了自己代码多次,总感觉没什么本质性的提升。考虑了多种设计方案,却感觉都毫无新意。看来到此,我再次遇到了进步的瓶颈。
如何穿过这道瓶颈?
算法?!
设计模式?!
面向对象的函数式编程?!
我不知道,只有继续的努力,继续的 ...
工作5个年头的今天,我又走向了新的工作岗位。换了岗位,也换了心情。想起来,自己已经做了5年的java开发,虽然工作的行业不同,但是所用的技术都是一样的。从开始的小弟,到后来的项目组长,再到小弟。这一个轮回正好反映了我这5年的发展。看似不进反退的职业生涯,工资却在稳步的提升。现在的我已经是小弟中的极品,垃圾中的战斗机了。
曾经无数的前辈们告诫我们,跳槽是一件危险的事情,对以后的发展不利。但是这取决于你是否跟对了公司,跟对了领导。长时间工作与一家公司,确实能在技术,业务和人脉上都有提高和积累。但是,生活是残酷的,当你工作过了几年还拿着3千块钱满街跑的时候,你就知道这都是 ...