漫画 | 为什么面向对象糟透了!

Posted 码农翻身

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了漫画 | 为什么面向对象糟透了!相关的知识,希望对你有一定的参考价值。

又是周末,编程语言“三巨头”Java, Lisp C语言照例在Hello World咖啡馆聚会。


对于三位老顾客,服务员总是殷勤接待

(码农翻身注:这是一篇很早之前的文章,作者是大名鼎鼎的Joe Armstrong , 也就是Erlang之父。)

原来这是Erlang之父Joe Armstrong写的一篇“战斗檄文”,里边充满了对面向对象的批判。

Java看到C语言这么顽冥不化,决定上代码,给他点儿颜色瞧瞧。

没想到C语言不甘示弱,也把代码搬了出来

Java无语,心说这两个家伙就是胡搅蛮缠。

突然,他心中一动:我怎么忘记多态了!

Java看到C语言已经入套,从口袋里拿出一幅图,准备给他最后一锤。

C 语言沉默了,他还想反击,但一直找不到突破口。

(码农翻身注:C语言实现面向对象的详情可以移步《C语言:春节回家,就我没有对象!》)

C语言点头,编程的关键点就是找到、抽象出稳定的接口,针对这个接口编程,这样就可以让各个模块能够独立地变化。

Java没想到支持函数式编程的Lisp居然给自己出了一道面向对象的题,大为惊讶。

他稍一思考,就在白板上花了一幅图。

Lisp看到Java 掉入了陷阱,心中不由一乐。

Java 低头沉思不语,突然,脑海中想起来了那句话:优先使用组合而不是继承。

怎么使用组合?必须得改变下看待问题的方式,对,应该这样:

(完)

双11期间我的书《码农翻身》和《半小时漫画计算机》做了一个活动,可以『以50元的价格,买到两本书』,活动1000本,很快就一抢而空,很多小伙伴留言说没抢到,挺可惜的。

今天又申请了1000套作为福利,算是双11的返场吧,需要的小伙伴这次千万不要错过! 

截止时间:11月24号下午2点

拼手速了!我的图书策划人说这个应该是今年最后一次粉丝福利,错过了再等一年也未必有了!

以上是关于漫画 | 为什么面向对象糟透了!的主要内容,如果未能解决你的问题,请参考以下文章

漫画 | 面向对象之《葵花宝典》,欲练神功,必先......

“Python太慢了Golang糟透了MongoDB是最好的”:那些关于软件工程的“宗教”辩论

将对象转换为 url 查询参数

php是啥意思

Python面向对象学习 1 (什么是面向对象,面向对象的应用场景)

面向对象 什么是面向对象