PS:这篇博文是一个技术群的码农写的,这哥们真有才,根据我对星座的看法,比喻得很靠谱,特转如下:
计算机语言的实质其实是为了让人类能够更好与计算机打交道,最终结果都是通过编译成二进制代码或通过解释器转译成二进制代码的形式,由计算机来执
行。而二进制就是0和1,假设1代表男人,0代表女人,那么瞬间就可以发现世界就变成了一台大“计算机”。而爱情和情爱也可以看成是1和0组成的二进制机
器码。
假如女人是一种编程语言,也许每个男人心中都有自己最喜欢的那一个吧?我认为女人可分两类,“面向过程”和“面向对象”。“面向对
象”的女人以寻找终身伴侣为目标,而“面向过程”的,则以经历难以忘怀的爱情时光为己任。各位程序猿当然也要按需选择最适合自己的“编程语言”,不要因为
时髦而盲目追求“面向对象“,有时候过程可能比结果更重要。
当然了,“编程”还有多种“范式”(Fashion)可以遵循。各种语言也都有自己独特的“范式”。女人无数种,这里按流行的占星学星座(即不包括蛇夫座)分类,浅表一二。
特别声明:一家之言,仅供娱乐。莫对号入座。
白羊女——Basic语言
这是一种很简单直白的语言,很多80后程序员的启蒙语言。当然也有很多变种,比如VB的初级白痴,QBasic的清朗直率,Small
Basic的小巧精致。和这种“语言”相处,过程很重要,时时保持一个漂亮的“结构化编程”很重要,不要过于追求”面向对象”,最后反而得不偿失。
Basic是很容易“编译”成二进制的语言,虽然没有那么强的“底层”需求但也要防止“乱”代码,遗憾的是这只能靠程序猿自觉了。
金牛女——Perl语言
她想让自己兼有C语言、Shell
、
awk等等语言的优势,然而用后却发现有点四不像且反而增加了程序猿的压力。同时,这是一种有点自伤的语言,将自由给了程序猿却把伤害深深埋在心底。需要
程序猿不断调整“编程”思路,不断更新“编程范式”,给出最佳的解决算法。总而言之,这是一个需要精心照顾的“语言”,永远不要让这只“骆驼”饥渴!
双子女——Shell
脚本
她很强大,某些时候甚至超过C语言。她也很脆弱,也许一个简单的“rm -fr /
usr”(注意那个空格)就能带来毁灭性打击。她可以完成输入输出双向重定向。她可以绝对的“面向过程”,过程的每个细节都要精心推敲,花样百出;同样也
可以绝对的“面向对象”,让每一次coding都如家搬温暖,常常一些“变量”更容易让整个“编程”效率倍增。别忘了Makefile的本质也是一个
Shell脚本,所以增加一个叫做Love:的目标吧,然后在命令行下郑重地运行:
巨蟹女——LISP语言
实话实说,这真的是一个又小众又“闷骚”的语言。也许和它的发明者麦卡锡博士的个性有关。说她小众,是因为使用Lisp进行开发的人少之又少,很多
初学者都会被她敏感的神经吓跑,从Emacs的用户量就可以看出Lisp只能是有特定品味的人的掌上明珠,而一旦掌握Lisp就会发现真的是乐趣无穷而安
全感倍增。至于说她“闷骚”,因为发现她具有一种内在而强大的“智能”,不要被她平时简单质朴的外形所迷惑,一旦其发挥出自己的能力,可以产生巨大的影响
力或者破坏力,当然这种破坏力往往是自损。总之,在她温婉圆滑、如诗般清纯的外表下,是一颗闷骚率性且豪放不羁的心。
狮子女——JAVA
语言
很多人都在使用JAVA
,自从诞生以来就以绝对的霸气让全球的互联网都天天侧漏。而JAVA更是曾经长期霸占编程语言流行榜首位。JAVA的卖点之一是平台无关性,但不要忘了为了运
行JAVA的代码需要一个非常耗费系统资源的虚拟机!最生气的是,必须强制安装平台相关的“虚拟机”才可运行。那么,这样霸气甚至是不讲道理的“语言”何
以如此流行?因为她让那些自视甚高的程序猿找到了一种发泄的渠道,认为一旦征服了JAVA就可以天下无敌了。却没想到其实内心依然是个自卑的人。
处女女——Pascal语言
很多70后的程序猿是学Pascal入门的,这种架构化严谨而独特的语言,让很多人学会了严谨的科学态度。但是不要忘了,这样严谨甚至苛刻的语言,
吓跑了很多向往自由和风格不羁的程序猿。更重要的是她独特挑剔的品味,敏感细腻的风格,以及纠结啰嗦的“编译环境”都让很多人望而却步,且Verbose
模式常常打击人的成就感。在“编译”二进制和“底层”需求方面,她保守而不讲人情,甚至条件苛刻,往往一次莫名其妙的Error仅仅只是因为你糟糕的
Coding Style。
天秤女——Ruby语言
Ruby是红宝石的意思,所以这样的女人也如此,看起来像红宝石一样高贵典雅,其实外强中干。不仅运行性能较差,而且应用领域多限于互联网应用,更
无奈的是她完全“面向对象”,对过程一概忽略。和这样的“语言”相处,最重要的也许是给她以虚幻的红宝石幻象,让她时刻保有高贵典雅的气质,避免暴露出外
强中干的实质,更要防止暴露出她为了提高性能,而提出的过高“底层”需求。
天蝎女——C语言
这是一个令人着迷的“语言”,也是一个难度很大的“语言”,即使是一个Hello
World也是一系列库、源程序经过编译、链接以后的结果。最关键的是,她的魅力就在于其可以通过“指针”直接满足“底层”需求,当她有高涨的”底层需
求”时,绝对不能给她一个“NULL指针”或者是“野指针”,否则她随时会给你”段错误“的!同时她也是一个自由度很高的“语言”,令人完全无从知道她的
真实意思,也许只有真正运行之后才能知晓。所以能够完全驾驭”C语言”的往往都是操作”指针“非常熟练,”底层”需求高涨且频繁,更是保有无尽解谜热情的
程序猿。
射手女——C++
首先她具有以上C语言的全部特征,这还不是最悲剧的。她更强调“面向对象”,如果为了得到她而做得不伦不“类”的话,就只能是一个只满足”底层“需
求的玩物。但是她却有执着不懈的”继承“追求,而为了成为她的”对象“,必须读懂她“封装”的心,和她“多态”的世界,还有无尽的”模板“和“命名空间”
来规范生活,看上去很有品味与追求。她几乎是最难驾驭的,CoolShell的陈皓曾有文章《你真的懂C++吗?》,也许看起来懂了,其实最多只是一知半
解而已,当然她也饱受如此无人理解之苦。而为了驾驭她,各位程序猿前赴后继研究出了STL、Boost、“泛型”在内的多种开发模式,可是效果如何呢?
魔羯女——Lua语言
她是一个可扩展配置的语言,可内嵌在任何宿主之内。可是如果想完全收入心中,要么具有如Angry
Birds那样的创意和娱乐,要么就如魔兽世界这样影响无穷。但她却不肯甘做附属和贤内助,往往要冲上前台一展身手。却暴露了她功能不多,内涵浅薄的弱
点。外加“底层”功能太少,让程序猿只能“撸阿”。
水瓶女——Python语言
她斑斓丰富的世界吸引了很多向往的人,外加需求和品味的独特更是让人格外着迷。不过她古怪的空格式语法让人颇有些摸不着头脑。还有她独特的运行库更
是拖慢了本可以快速运行的“爱情应用”。随着时间的推移,缓慢的效率已经将她清晰意读的性格和丰富多彩的功能,击的粉碎。所以和她相处,不仅要尽量少的与
环境打交道,更重要的是快速拿下,避免夜长梦多。
双鱼女——Go语言
这是一种绝对可以并行使用的“语言”,兼有C语言的特征,而“底层需求”虽然不如C语言那么灵活和精于指针,但绝对“引用”了丰富的“底层”内容。
更重要的是她丰富的“接口”功能,让你在享受“面向过程”的同时向往着“面向对象”的未来。只是她有时显得不合时宜的孩子气和不成熟,会稍有影响整体感
情,不过总是有个未来的盼头的。
再次强调,这只是我个人的理解和看法,每个人都有自己对女人的认识和对计算机编程语言的理解,我这里只是简明说了一些自己的想法而已,不具备任何参考价值。
----------------------------------------------------
最后,祝各位程序媛 Happy Coding, Happy Loving!
转自:http://www.ituring.com.cn/Article/8023
相关推荐
在少儿编程的世界里,Python作为一种普及广泛的编程语言,因其简洁明了的语法特性,成为了启蒙教育的理想选择。本教案旨在引导孩子们通过Python编程,逐步理解计算机语言,提升逻辑思维能力和创造力。课程以“智绘星...
C++是一种多范式、面向对象的通用编程语言,它强调程序的效率和灵活性。本习题集是为Bjarne Stroustrup的《C++程序设计语言(第四版)》配套设计的,旨在帮助读者通过实践来巩固理论知识,提升编程技能。 X.1 引言 ...
作者使用文件名类比和语言类比来帮助读者理解正则表达式的概念和工作原理。在正则表达式中,有元字符的概念,它们代表了特殊的字符或字符序列。例如,在使用egrep工具时,可以运用这些元字符来搜索文本文件中的特定...
在标签中提到的"C#"是一种广泛用于软件开发的编程语言,尤其在构建桌面应用程序、游戏、Web服务和移动应用等领域。在生物信息学中,C#可以用来编写处理和分析生物数据的软件工具,比如解析基因序列、预测蛋白质结构...
以上是试卷中涉及的C++编程语言、数据结构、算法、数据库系统、软件工程以及标准库操作等相关知识点的详细解析。这些知识点是C++程序员应掌握的基础,对于准备计算机等级考试的考生来说至关重要。
Lua虽然不像其他语言一样原生支持面向对象编程,但可以通过表和元表来模拟面向对象的行为。 ##### 创建对象 ```lua function create(name, id) local obj = {name = name, id = id} -- 设置名称 function obj:...
《程序设计基础》期终试题涵盖了C++语言的基础知识点,旨在检验初学者对编程的理解和掌握程度。以下是题目中涉及的C++编程概念的详细解释: 1. **内联函数**:在C++中,内联函数用于替换C中的宏,以减少函数调用的...
编程语言与人工智能 - **Python**:题目指出了Python在人工智能开发中的广泛应用,这反映了该语言在机器学习和数据科学领域的重要性。 ### 27. 动物群居行为 - **群居行为的意义**:题目概述了动物群居行为背后的...
这篇内容并非关于IT知识,而是描绘了一段深情的文学描绘,讲述了南宋诗人陆游在七夕之夜对已故妻子唐婉的深深怀念...如果你需要的是具体的IT知识,比如编程语言、数据库管理、网络安全等,这篇描述并不能提供相关内容。
+ [语言](#语言) * [策略](#策略) + [策略](#策略-1) + [倍增](#倍增) + [二分](#二分) + [调整](#调整) + [随机化](#随机化) + [非完美算法](#非完美算法) + [提交答案题](#提交答案题) + [守恒思想](#...