请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

设计模式

最近面试,遇到几个问题,问了设计模式,我看了好几个项目,项目里都没有用到设计模式。
面试官会问,你知道哪些设计模式,在项目里用在哪里。
第一问题,我能答出来,因为跟java差不多,
第二个问题,就不知道了,不知道python的设计模式,在项目中,一般是用在什么地方的

正在回答 回答被采纳积分+3

2回答

Ethreal 2019-09-15 11:02:51

有些库都是封装了 我们只是调用对方的api而已,像工厂模式,单例模式都是可以说的,一般在一些库的源码层面可能会用到某种设计模式,这个上网补充下相关知识,下次被问到就不会担心了,面试都是这样,多次积累经验,下次面试就更加容易

2 回复 有任何疑惑可以回复我~
  • 提问者 骑着乌龟去旅行 #1
    说用别的库不现实,面试官就是想知道,在你自己的项目里,你写了哪些设计模式,用在哪里,因为没有具体的项目经验,所以不知道用在哪里。不能说是第三方库用到
    回复 有任何疑惑可以回复我~ 2019-09-15 11:57:07
  • Ethreal 回复 提问者 骑着乌龟去旅行 #2
    他的问题只是看你知不知道而已,你完全可以在自己项目中利用工厂类去做对象的生成,或者自己实现数据库连接的单例模式,保证只实例化一次,这些都可以在面试中提及,有的时候面试官并不在乎你是否在项目中用过,只是看你对这些点有没有涉及,知识面的广度够不够。
    回复 有任何疑惑可以回复我~ 2019-09-15 13:36:23
bobby 2019-09-17 11:06:20

现在很多设计模式都是通过java讲解的,是因为java这类静态语言限制很大,为了将一些好的经验沉淀下来就总结成了一门设计模式的课程。但是有写设计模式本身是为了解决静态语言的诸多限制而成的,有一些设计模式在python中天然就存在。如果硬要去将这些东西套用设计模式的话,那就证明面试官还是带着静态语言的思维去强行理解动态语言,不过确实有一些设计模式在动态语言和静态语言中都是通用的,比如 组合模式。在django rest framework中基本上整体都是组合模式的优秀代表, python有人专门写过书讲解python 设计模式 https://item.jd.com/12472683.html#none 你可以看看这个

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信