这些日子,注意到很多人对设计模式相当热衷。或许一向如此吧,就像.Net和Java比较那种月经贴。不过昨天看到一篇趣文,不是趣在有新意,趣在上来作者发表的模式宣言:
这个引用一下,就不评论了。只说自己,虽然园子里N个设计模式系列了(偶只看过TerryLee和吕震宇的系列)。眼前有景道不得啊!这里只解决现实问题吧。
很现实-面试。老经典得让狗嘴长得出象牙的问题-你用过哪些设计模式?
按一般思维,罗列几个名词,可面试官岂是如此容易打发得了的?接着他挑出一两个追根究底一轮轰炸,对于高手们自然不在话下,兵来将挡水来土淹。偶这种书没看,编码经验又少,又没啥设计能力,只会纸上谈兵的心理素质差劲者,稍不留神就会露出马脚。所以,最好是一下子把对方镇住,免得节外生枝。
于是偶答道:设计模式是面向对象设计思想在应用中总结出的在不同场合下的具体实践方案。一般来讲,编程语言越高级,对面向对象支持越好,运用设计模式就越容易。比如.Net平台本身,就实现了许多设计模式。
这时要略停顿一下,面试官一定按捺不住,问“那都有哪些模式呢?”就算义务教学吧,偶滔滔不绝起来:比如项目中添加服务引用,会自动生成服务代理类,实现了典型的代理模式;.Net中对WebRequet、Stream等抽象类的继承扩展,运用了装饰模式;Asp.Net运行时初始化HttpApplication,运用了单例模式;.Net可以通过IEnumerable接口,包含了迭代器模式,而该接口的GetEnumerator方法定义,又是抽象工厂模式的应用……
轮到面试官受不了了,只好打断你的话,三次皆不例外。“好了好了,那咱们再谈谈比尔盖茨吧,他是属牛还是鸡的呢……?”
分类:
模式
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库