写点什么

左耳听风 - 编程范式「读书打卡 day 12」

  • 2024-01-20
    北京
  • 本文字数:777 字

    阅读完需:约 3 分钟

左耳听风 - 编程范式「读书打卡 day 12」

你好!我是 Java 工程师蔡姬,此蔡姬非彼菜鸡!很高兴和大家一起共读陈皓老师的《左耳听风》一书,并在这里分享自己的感悟。


我的读书打卡将会分为两部分——笔记 + 打卡

  • 笔记部分,我会整理在读书过程中感悟比较深的内容,和你一起分享。

  • 打卡部分,我会就一个点阐述个人的思考。


话不多说,让我们开始吧!

笔记

编程范式

  • 命令式:使用流程化的语句和过程直接控制程序的运行和数据状态。

  • 函数式:通过数学函数表达式的方式来避免改变状态和使用可变的数据。

  • 面向对象:把一组字段和作用在其上的方法抽象成一个对象。

  • 声明式:定义计算的逻辑而不是定义具体的流程控制。

  • 比起编程范式本身,其背后蕴含的设计思想和利弊权衡对程序员而言更有价值。作为资深程序员,通过了解和对比多种编程范式,我们可以建立对程序世界的全局视野,从而找到契合个人理念与公司业务的编程方式。

打卡:分享一个日常工作中涉及的编程范式背后的设计思想和利弊权衡过程。

面向对象的编程范式,是我最常用的编程范式之一。


熟悉面向对象编程的小伙伴们都知道,它所具有的“封装”、“继承”和“多态”三个特性,可以很好地增强程序的灵活性和可维护性。


但我认为,面向对象最大的好处是思路易于理解。正如书中所说,它符合人类的直觉。我认为这是它能欣欣向荣的重要原因。


但话又说回来了,没有完美的技术,面向对象的特点也伴随着一些劣势,比如:

  • 封装通过屏蔽细节使问题变得简单,但我们也因此难以捕捉一些细节。

  • 继承可以支持子类通过重写方法实现对父类的扩展,但这也使得子类和父类高度耦合在一起。


在享用一个技术带来便利的同时,我们也需要忍受它的副作用。好在,我们不只有面向对象这一个选择,我们可以通过多种编程范式的组合,来尽可能地扬长避短。


以上便是今日份的笔记和打卡内容。欢迎你在评论区留言,我们一起探讨,共同进步。


我是 Java 工程师蔡姬,期待和伙伴们有更多交流和思维碰撞,明天见!

发布于: 刚刚阅读数: 5
用户头像

公众号「有理想的菜鸡」感谢关注 2020-07-28 加入

一枚专注「职业发展」与「个人成长」的软件工程师。

评论

发布
暂无评论
左耳听风 - 编程范式「读书打卡 day 12」_读书笔记_Java 工程师蔡姬_InfoQ写作社区