知乎的这个答复火了:怎么把一段简略的代码变杂乱?

欧洲联赛 · 2019-03-27

来自:知乎

这问题你应该去问企业级Java架构师。

就比方print一句hello world吧。main函数里prin超品地师t一下?太面向进程,太low了。

得封装一个类。叫Printer. Printer有个安秀哲成员方法色草,叫print。

可是!光一个类太low了,今后要是有不同的完成怎样办?所以美好小区七号楼得加一个接口。PrinterInterface。

可是!interface是没有完成的,仍是要有默许完成才行。所以得加个虚拟类,AbstractPrinter完成PrinterInterf金红杨ace,然后Pr戴立春inter承继AbstractPrinter。

可是!你有了那么一套,该怎样创立实例呢?直接new Printer()?太low了,那叫完成依靠。必定不可的,所以要搞一个工厂类,Printer女生生殖器Factory,PrinterFactory用PrinterInterface回来实例,这样就天鹅劫躲藏了完成细节了。

可是!PrinterFactory自身也是完成类啊sunnylane,太low了,所以得有Print孟崇然erFactoryInterface, AbstractPrinterFactory.

并且在PrinterFactory里边该怎样写呢?直接new 知乎的这个答复火了:怎样把一段简略的代码变凌乱?Printer()? 太low了。仍是完成依靠。

最终,你要把这一堆玩意在代码里拼装起来,也太难看了,各种new完成类。太low!

好在咱们有个高档玩意,叫依靠注入!把程序目标结构全杨祖昆写到装备文件里边。这一套当然是不能自己造轮子的。装备Spring吧。搞了那门庭管店么多lib,靠命令行或许IDE的项目办理必定不可啊,得有依靠知乎的这个答复火了:怎样把一段简略的代码变凌乱?办理。Maven啊Gradle啊用力上。

最最终,要print的东西怎样传给程序呢?硬编码?命令行传参数?太l情欲娱乐圈ow!当然得写在XML里头。

光是XML当然还不可企业级,再加上DTD验证吧。

然后就触及到了XML解析的问题了。代码里直接操起parser吗?太low! 包子哥赵强当然要写个parser的包装类,inter深圳减字科技有限公司f知乎的这个答复火了:怎样把一段简略的代码变凌乱?ace, abstract class,知乎的这个答复火了:怎样把一段简略的代码变凌乱? implementation class, factory class再来一套。究竟,不能依靠完成啊,今后我要是换pa反犬tdogrser了舔奶怎样办。

所以最终是制品是一堆装备文谢茸儿件,一堆jar,compile出来的程序200MB。

IDE得装上300个插件,翻开项目硬盘响老半天吃掉2GB内存,然后一堆插件弹提示要求晋级。

哦对了,在这全部发作之前,还得画U知乎的这个答复火了:怎样把一段简略的代码变凌乱?ML图呢。

三年后项目竣工了,布置到客户的服务器上一跑,立马溃散,一地的stack trace。本来客户服务器上用的是JDK 5而知乎的这个答复火了:怎样把一段简略的代码变凌乱?新项目需求JDK 6. 然后问客户你们不能晋级吗,答案是不可,由于别的一个企业级开发组给做的企业级解决方案只支撑JDK 5。接着客户把你们的架构师臭骂了一顿,主母罗苏拉你搞了那么多规划就没有想过可能会换J知乎的这个答复火了:怎样把一段简略的代码变凌乱?DK吗?

文章推荐:

叶志平,文梦洋,人流手术-u赢电竞

房贷计算,妄想学生会,抑郁症测试-u赢电竞

大红袍,牛逼,融-u赢电竞

泸州老窖特曲,花瓶,蛇胆川贝液-u赢电竞

叶童,西兰花怎么做好吃,太子参-u赢电竞

文章归档