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

博文视点Broadview

共 1477字,需浏览 3分钟

 · 2021-11-29

又是周末,编程语言“三巨头”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 低头沉思不语,突然,脑海中想起来了那句话:优先使用组合而不是继承


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

(完)


作者图书推荐

▊《半小时漫画计算机(全彩)》

刘欣 著,刘奕君 绘


  • 用有趣的漫画讲故事,幽默的故事讲技术

  • 爆款书《码农翻身》作者再次为大家破解操作系统、编程、网络等硬核技术

  • 打开本书,遇见不一样的知识


本书用生动有趣的漫画讲解了计算机的基础知识,一共分为5章,每一章都有不同的风景。 

在第1章,你可以花上几两银子,体验一下大明王朝TCP/IP 和HTTP。与此同时,张大胖会在和朋友的聊天中逐步"发明”HTTPS。你还能看看那些可爱的网卡、CPU,内存是怎么从零开始上网的,以及一张身份证是怎么在网络中被切割和传输的。到了第2章,可以看看操作系统是怎么"骗人”的,"一切皆文件”到底是怎么回事,程序员最喜欢的Hello World在执行时有什么秘密。第3章则能看到跑得飞快的CPU阿甘一天有趣的生活,不断打仗的黑毛部落和秃头部落居然促成了通用计算机的诞生,以及两段"相声”:从1加到100和函数调用的秘密。第4章展示了数据库帝国的一次危机和内部斗争。第5章你可以用一个奇特的天平去称一称编程语言的重量,还可以"欣赏”一下字节码王国的兴起和扩张,顺便看看上帝是怎么教会人类面向对象编程的。

用一句话来总结 :有趣且硬核的技术漫画,肯定不会辜负的大家的期待!

(扫码了解本书详情)


▊《码农翻身:用故事给技术加点料

刘欣(@码农翻身) 著


  • 用故事给技术加点料,网上海量传阅的技术故事

  • 帮你理解技术起源和本质

书中用一个个精彩纷呈的故事,绘声绘色且深入浅出地演绎晦涩枯燥的编程知识学习优秀的架构师是如何思考、如何抽象、如何成长的,从操作系统、Java语言到Web技术,每个主题都深入浅出。

(扫码了解本书详情)




如果喜欢本文
欢迎 在看留言分享至朋友圈 三连


 热文推荐  




浏览 29
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报