DP学习——享元模式

学而时习之,温故而知新。

享元模式

名词解析

有必要解释下"享元"两字,英文原文是flyweight pattern------轻量级模式,但是翻译过来的"享元"两字太牛逼了------褒贬不一,翻译的他妈都不认识。

享元的高雅在于:

享:共享/共用

元:元数据

合在一起------享元:共享元数据。

至于元数据是啥,看个人理解------对象,结构体、内存块等都可以。

点评下:看了享元模式,我个人觉得可以按照原本英文 Flyweight pattern翻译为通俗的"轻量级模式"或者"共享模式"。个人粗俗理解。因为不得不吐槽下,"享元"两字把人给吓住了------这是啥?肯定很难!很多人放到最后学习,最后一看,日了狗了,核心思想不就共享对象模式么?"享元""享元",谢谢你的翻译哇!!

角色

所以角色,也没那么多必要了,核心就是共享资源,共享对象,一般是3个角色,享元抽象类,享元子类,享元工厂类。

为的是共用对象。

只要共用对象,也不必要非得这样,弄个简单的管理也可以的,就一个享元类和管理享元类就够了,爱咋咋地。

应用场景

共享对象,节省内存,首先想到的是内存管理,你看一般内存管理都是维护2个链表------空闲链表和已使用链表------这不就是典型的使用场景么?

这个思想就是享元模式思想。只不过把这些早就存在的代码提炼出来,起个名字吧!------轻量级模式?这个原版英文的翻译太普通了,不能装逼!------共享模式?太通俗了,大家见名知意,很快就会了,我就不能装逼了,不行不行。共享、共享、共享啥呢?有个元数据的翻译?结合下?共享元数据模式?还是太通俗了,大家一看就懂,知识这么廉价的么?古代写书都是越看不懂越高深!(统治阶级愚民政策)那提炼下------"享元"模式。very very very good!oh,

no,太俗了,应该是pretty pretty pretty good!

思考/启发

现在我越来越觉得,设计模式就是不同场景下代码(或者类)的组织形式、武功招式或者兵法。

不得不说的吐槽点

建议翻译技术类的书,不要整的那么"高雅",高大上,这是看技术翻译书的大多数人的心声。

对比英文原版,尼玛,一句话的事,翻译过来的看不懂,像linux内核中文版书,和原版英文,那意思差了十万八千里------这种臭毛病是来自于中国传统出书------古代的书因为统治需要,"玄之又玄,众妙之门",书中越"玄"越牛逼。

从繁体字到简体字,从文言文到白话文,是为啥?为了增加大家的识字学习负担??为了让你高知识分子没事了在这耽误大家?

翻译技术类的书,又不是写作文,让你在这拽字呢?这些技术书背后是代码,公式等之类的,你增加大家的学习难度呢?!

还有学校技术类的书,几十年不变,这个算了涉及太多利益。

相关推荐
燕双嘤4 分钟前
LLM:RAG,设计模式,Agent框架
人工智能·机器学习·设计模式
阿拉斯攀登15 分钟前
设计模式:构建者模式
设计模式·建造者模式·构建者模式
山沐与山1 小时前
【设计模式】Python工厂模式与依赖注入:FastAPI的Depends到底在干嘛
python·设计模式·fastapi
.简.简.单.单.2 小时前
Design Patterns In Modern C++ 中文版翻译 第十一章 享元模式
c++·设计模式·享元模式
BD_Marathon2 小时前
设计模式——类图
设计模式
JavaBoy_XJ2 小时前
结构型-代理模式
享元模式
山沐与山3 小时前
【设计模式】 Python代理模式:从入门到实战
python·设计模式·代理模式
范纹杉想快点毕业3 小时前
C语言设计模式:从基础架构到高级并发系统(完整实现版)
c语言·开发语言·设计模式
她和夏天一样热4 小时前
【实战篇】设计模式在开发中的真实应用
java·开发语言·设计模式
.简.简.单.单.4 小时前
Design Patterns In Modern C++ 中文版翻译 第十章 外观模式
c++·设计模式·外观模式