跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 关于面试问设计模式
未分類
2 5 月 2020

关于面试问设计模式

关于面试问设计模式

資深大佬 : zxc1234 17

面试官问,工作中用到哪些设计模式 我:单例模式用的比较多,用内部类实现 面试官问:还有呢 我:……(尴尬,没有了)

如果面试官问知道哪些设计模式,那还可以继续聊得下去,但是设计模式在工作的中应用就。。。。 想问下你们工作中都有用到哪些啊,我这边怎么感觉工作中用的不多啊

大佬有話說 (35)

  • 資深大佬 : janxin

    比较多的单例,工厂,建造者,组合,装饰器,适配器,代理

    这些应该基本上经常会用的吧

  • 資深大佬 : twoconk

    实际工作中可能需要经过多次刻意练习使用,才能回答好这个问题,不然确实是不好回答

  • 資深大佬 : wushigejiajia01

    单例,工厂,策略,代理

  • 資深大佬 : MinQ

    设计模式?啥是设计模式?

  • 資深大佬 : Cmdhelp

    用好了提高代码结构,用不好 写出四不像,画蛇添足,,,,,,,作为一名老咸鱼,用到的设计模式也挺少

  • 資深大佬 : geekvcn

    入门知识真的很便宜,都有明码标价
    https://item.jd.com/10079261.html

  • 資深大佬 : Junh

    我也被问到了,能说出几个,不过问我观察者模式和发布订阅者模式的区别的时候懵了(因为印象中好像没啥区别,后来查资料知道是有些区别的),我面的小公司,前端

  • 資深大佬 : kmyzzy

    要我我就直接说,这些没卵用

  • 資深大佬 : iFlicker

    用到的多啊。。。单例 工厂 观察者 代理 建造者

  • 資深大佬 : alamaya

    不如反问一下面试官,为啥 java 有这么多设计模式

  • 資深大佬 : findmyself

    @kmyzzy 可以用于扯淡

  • 資深大佬 : wellsc

    货物崇拜编程

  • 資深大佬 : guaiZhang

    @kmyzzy 不然怎么造火箭

  • 資深大佬 : aguesuka

    spring-beans,单例工厂,spring-mvc mvc 过滤器,spring-aop 代理。把用到的框架的设计模式讲出来就行

  • 資深大佬 : xingheng

    个人认为你只回答了一个“单例用的比较多”确实是减分的,首先“单例”并不是一个很好的常用的设计模式,不应该被大量使用,这个问题在 SO 上有一个很大关注度的讨论,可以去看看。

    了解设计模式是有必要的,它跟语言和框架都有关系,好的框架大都是在主流的设计模式上建立起来的,设计模式在通用性和测试的问题上会有比较大的帮助。

    至于有哪些设计模式,我觉得你应该搜索“<lang> design patterns”,不同语言下结果会有一些差异。

    不用设计模式?单纯的面向过程式或者 OOP 是非常 ugly 的,其实很大程度上我觉得你已经用过一些了,只是不知道会有对应的名字而已。。。

  • 資深大佬 : leafShimple

    = = 看了书 知道 我只能吹吹 我才用过 5 6 种,大部分遇见问题都是按照那种抽象一层或者几层的思路来解决问题

  • 資深大佬 : useben

    @janxin +1

  • 資深大佬 : guyeu

    #15 老哥提到的讨论是这个 https://stackoverflow.com/questions/137975/what-is-so-bad-about-singletons

  • 資深大佬 : vvvvww

    面试官可能更希望考察你对多态的理解和运用,而单例这种创建型的设计模式不太能体现到

  • 資深大佬 : Jrue0011

    工厂、策略、代理、门面、建造者、适配器、责任链,写企业应用的话倒是经常有用到。。。

  • 資深大佬 : across

    是不是看书学的还是容易区分的。刚接触到的只会告诉你说这个模式代码或 UML 图结构是什么样的。
    实践要点是,什么时候用,什么时候不适合用。像上面有人提到,单例有很大的副作用。面试官挖深一点,完全可以问你,为了避免使用单例,还可以选用什么设计方案解决问题····

  • 資深大佬 : nicebird

    其实一般来说用过很多的,只是你没有识别出来。

    模式不是特意创造的,而是实践过程中总结的。

  • 主 資深大佬 : zxc1234

    @xingheng 单例有什么缺点呢?怎么解决?还有,请问 SO 是什么?

  • 主 資深大佬 : zxc1234

    @across 为什么要避免使用单例呢?不用单例,用什么呢?

  • 資深大佬 : xingheng

    SO=”Stack Overflow

    https://stackoverflow.com/questions/137975/what-is-so-bad-about-singletons

  • 資深大佬 : across

    @zxc1234 第一次初始化时机也不确定,基本整个运行周期都不会销毁。 单例哪里都可以调用,很方便,代价就是多了后代码耦合就降不下来,容易被小白无脑调用。

  • 資深大佬 : cheng6563

    语言不支持的功能就得靠设计模式补

  • 資深大佬 : ciki

    说设计模式无用的,说明不适合在这个行业混下去,用过设计模式你会发现你的编码能力提升的不是一点两点

  • 資深大佬 : laobingge

    像 Spring 这类开发框架非常强大,极大地降低了我们的工作难度,可以像填空一样做应用开发。

    但是,这也让我们沦为生产线工人,每天都是 CRUD,知其然,但不知其所以然,最后就变成可以被轻易取代的人。

    因此,最好是去剖析我们常用的这些开发框架,那些经典的设计模式、架构模式都被封装在里面了。知道这些不仅有助于我们更好地使用框架,也可以提升我们的能力,有机会还可以自己做一些框架,有利于职业发展进阶。

  • 資深大佬 : hitmanx

    如果这个代码不是你一个人写的话,很可能里面已经用了一些设计模式了,只是不熟悉设计模式本身的话你不知道这是个设计模式。

    我觉得这种感觉是最好的,你先熟悉了一个模式的用法,再去了解它的理论,很容易有恍然大悟的感觉。而看书的话基本上是倒过来的,这样理解容易流于表面:打开书,马冬梅,合起书,马什么梅

  • 資深大佬 : skypyb

    只要是稍微有一点点点点封装的项目, 别的花里胡哨的设计模式不说
    起码代理、建造者、门面、装饰器、模板方法、工厂、策略 这几个都是可以轻松找出来的吧?
    怎么可能会有没用过
    可能只是你看着别人写的代码不知道人家写的什么…

  • 主 資深大佬 : zxc1234

    @vvvvww 如果是考查多态,是希望我说哪些设计模式呢

  • 主 資深大佬 : zxc1234

    @iFlicker 项目中什么地方用到代理呢

  • 資深大佬 : james122333

    会写的好的就是会写的好
    不会写的好的就不会写的好
    不懂一样可以写的精美
    重要的还是语言特性
    面向过程有面向过程的写法
    搞得文皱皱的不代表代码质量

  • 資深大佬 : iFlicker

    @zxc1234 之前是写 SDK 的 ,负责的策略代理接口用过,还有个可参考的就是 Android Framework 中 ams

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具