如果编程语言是一种刀
下面这个图是把编程语言看做是一种刀,那么会是什么样的。这个图我个人感觉很有意思。
对于这个图,最好不要解释,意会就好。不过,我却有点想不解风情,忍不住想解释一下。
C++,C,Pascal 都是瑞士军刀,说明是用来做细活的工具。C语言的刀上有个USB,说明是可以做硬件操作的。C++的刀是什么都有,说明C++是一种功能繁多的语言。(图 中C++的那把瑞士军刀很强大,不要以为其是虚构的,这把刀是真实存在的,叫Wenger巨人刀,
http://www.wenger.ch/giant-knife-wenger-swiss-army-knife (这个网页上有个Youtube视频,可以爬墙去看),淘宝上有卖的,价格在1万4左右。)
Java/C#是一把塑料餐刀,这说明,Java和C#语言是带虚拟机的,而且其语法和使用并不像C++那么复杂,其泛型编程可以有很多种玩法,而Java和C#的泛型编程是比较单一的。
Python是把电锯,人挡杀人,佛招杀佛,威力很大,面对大型的物体的修整,比C++/C/Java什么的得心应手得多得多,但是对于一些精细的调优工作,明显不行。这和Ruby很像。
PHP没有MySQL,明显是被幽默了一把。不过最近对PHP的批评越来越多,不过,facebook的PHP的引擎HiPo已经很牛B了。
Perl是一本日本武士刀,是忍者玩的语言。
VB,就是一个玩具。你见过用塑料玩具勺当刀的吗?Haskell感觉是外星来的。呵呵
千万别惹程序员
下图一张昨天我公司内部被传递的图片。经典的SQL注入式攻击。千万别惹程序员
![SQL-injection-attack(adjusted)](http://img.cnbeta.com/newsimg/120221/1044291699656438.jpg)
这是一个有技术含量的号牌遮挡。我们先不说其是不是能奏效,不过,这个创意相当的NB啊。当你驾车通过某些路口时,被摄像头捕捉到你的车牌,通过 OCR变成文本,然后插入数据库,于是,上图的这个车牌就成了SQL注入。(不要以为车牌的OCR技术还不行,这项目技术已经非常成熟了,无论是国内还是 国外)。这张图片就如同“Web开发中应该知道的事”中说的一样——永远不要相信用户的输入。
文章出处:http://coolshell.cn/articles/6639.html