模块化 - 大脑开始控制复杂的世界的时刻

方法和类是大脑理解和模块化世界的核心。方法是捆绑行为的过程,类是看待对象的框架。

밤치 283
  • 方法和类不仅仅是简单的语法,而是“组装地球的大脑方式”
    我们每天生活在一个非常复杂的世界中。
    但大脑将这个复杂的世界捆绑成几个“单位(模块)”以便理解。

  • 人类通过“单词”模块学习语言

  • 通过“句子”模块表达思想

  • 通过“概念”模块对世界进行分类

博士朴文浩说学习的核心很简单。

“大脑制作模块,只有组装模块才能理解世界。”

在编码中,这些模块就是“方法(method)”和“类(class)”。

一旦理解这一点,
代码不再是简单的指令,
而是开始看起来像是“我们生活的世界的缩影”。


1. 方法(Method): “将思想压缩为一个功能的大脑技术”

方法是大脑将复杂行为捆绑为一个单元的过程。

让我们举个例子。

  • 喝咖啡
  • 走路
  • 摇手

这些都是独立的“行为模块”。
人类通过组合这些模块来度过一天。

编码也是一样的。

方法是将“一个行为”用代码捆绑在一起的块。


学习方法时大脑发生的变化

  • 思维被分割
  • 执行单元变得可调整
  • 可以处理“部分”而不是整体
  • 能够分解复杂问题并解决

这不是简单的语法。
这是大脑结构发生变化的时刻。


方法示例: 创建自己的行为

def greet
  puts "你好!今天也要加油!"
end

greet
greet

发生了什么?

  • def greet ... end之间定义了“打招呼”行为的代码
  • 调用greet会执行该行为
  • 换句话说,定义一次,可以随意调用

这就是“模块化的第一步”,
大脑一旦将行为捆绑为一个模块。


朴文浩式框架解读

  • 形成框架: “可以将行为捆绑为一个单元”
  • 立体化: 大脑立体感知代码块
  • 强化提取: 多次调用greet以自由调用行为
  • 模块化: 可以将更大的程序分解为小功能单元

实践1: 创建3个自定义行为

将每个行为制作为方法:

  1. encourage – 输出鼓励我的句子
  2. goal_today – 输出今天的目标一句话
  3. praise – 输出表扬的句子

然后按照所需顺序组合:

encourage
goal_today
encourage
praise

你刚刚
学会了如何在大脑中创建和组装行为模块。
这就是学习的本质。


2. 类(Class): “第二个大脑看待世界的对象”

如果方法是“行为”,
那么类就是“存在(object)”。

构成世界的是
一个个“实体(对象)”。

  • 人类
  • 汽车
  • 博客文章
  • 用户
  • 购物篮

所有这些都是“对象(object)”,
编码中的类正是设计这些对象本质的模板。


类的重要性

一旦理解类,
大脑就这样说。

“啊,我可以将世界分解为‘对象’,
并为每个对象赋予‘行为’。”

在这一刻,
复杂的世界突然具有了明确的结构。

这就是
朴文浩所说的“立体信息结构”。


类示例: 创建人类对象

class Person
  def initialize(name)
    @name = name
  end

  def greet
    puts "#{@name},今天也要加油!"
  end
end

me = Person.new("夜间编程")
me.greet

代码中发生的“大脑进化”

1) class Person

→ “定义Person这个存在”框架

2) initialize

→ 在对象诞生时执行的构造函数(constructor)

3) @name

→ 每个对象独有的属性(attribute)
(即,大脑中所说的“特征”模块)

4) greet

→ 该对象拥有的“行为模块”

5) me = Person.new("夜间编程")

→ 实际创建“实例”
(在现实世界中诞生了‘一个我’)


朴文浩式框架解读

  • 将世界分解为对象 → “人类”, “汽车”, “文章”, “评论”
  • 对象具有特征@name, @age, @title
  • 对象行为greet, drive, publish
  • 对象相互作用
  • 这样一来,世界开始呈现出结构化·立体化的样子

这不仅仅是简单的编码概念,
而是大脑的世界模型在扩展的过程


实践2: 创建自己的对象

主题: MyGoal(我的目标对象)

尝试按照以下条件自己制作。

类名

MyGoal

属性

  • 目标名称
  • 截止日期

行为

  1. info
    → 输出“目标: OOO, 截止: OOO”
  2. encourage
    → 输出“这个目标,你完全可以实现!”

示例执行流程

g = MyGoal.new("学习Rails", "2025-01-31")
g.info
g.encourage

一旦制作,
“我的目标”不再是抽象的句子,
而是在大脑中存储为一个对象。
这就是学习的本质。


3. 模块化带来的真正变革

— 现在你可以看到“可组装的世界”

方法 → 行为的模块化
类 → 存在的模块化

当这两者相遇时,
你不再是一个列出代码的人。

你是
将世界分解为对象,
赋予对象行为,
组装对象以创建系统的人

在那一刻,心跳加快。
因为从此
从“参与他人创造的世界”中
变成了“创造自己世界的人”

Comments

Add Comment

Your email won't be published and will only be used for reply notifications.

Get notified of new posts

We'll email you when Bamchi Blog publishes new content.

Your email will only be used for new post notifications.