IT技术博客大学习 共学习 共进步

标签:Object-Oriented Programming

共 2 篇相关文章

IT 累计浏览 2,760

从面向对象的设计模式看软件设计

这篇文章源于作者之前一篇关于面向对象编程的文章引发的讨论。作者在文中提出了一个颇具颠覆性的核心观点:经典的23个GoF设计模式,其思想与面向对象(OO)编程关系不大,反而与Unix的设计哲学高度契合,OO仅仅是一种实现手段。 作者通过大量生活化的类比(如工厂生产、家庭装修、游戏难度)与Unix系统中的具体实现(如文件抽象、/etc/rcX.d启动模式、进程Fork、锁文件、管道命令),逐一剖析了Factory、Abstract Factory、Singleton、Adapter、Decorator等常见模式。他指出,这些模式描述的是一种通用的问题解决“模式(Pattern)”,完全可以脱离OO语言,用配置文件、命令行工具、进程通信等非OO的方式实现。 文章的最终目的,是帮助读者打破对设计模式的教条认知,认识到它们是超越具体编程范式的通用设计思想,而Unix/Linux系统正是这些思想丰富而优雅的实践范例。

IT 累计浏览 2,566

“另类” 设计模式

这篇讲的是一组对经典设计模式进行趣味解构和戏仿的“另类”模式。作者并没有按部就班讲解严肃的编程规范,反而用一套名字极其相似(比如“Decorator”变成“Decoractor”)、但逻辑完全跑偏的“山寨”模式,来讽刺软件开发中某些过于复杂或脱离实际的设计。 文章最大的亮点在于,它把这23个“另类”模式与真正的经典设计模式并列放置,灰色小字标注的正式名称和旁边光怪陆离的“另类”解释形成了强烈对比。比如,它可能会告诉你某个模式是用来“让代码看起来很忙但实际什么也没做”,这种幽默的视角让人会心一笑。 虽然文章原意是娱乐和讽刺,但换个角度看,它也像一面哈哈镜,映照出我们在追求“模式”时可能陷入的盲目。作者翻译时保留了英文原名,正是为了让这种文字游戏和讽刺效果得以保留。这篇文章和之前流行的《如何写出无法维护的代码》异曲同工,读起来轻松有趣,也让人在笑声中反思我们对“最佳实践”的理解。