静态语言、动态语言和设计模式

2019-02-21  本文已影响5人  賈小強

简书 賈小強
转载请注明原创出处,谢谢!

在静态语言比如Java中被人熟知的21种设计模式可以谓大名鼎鼎,而为什么到了动态语言比如Python中设计模式不再突出,这篇文章讲进行分析

在静态语言中为了不让代码写死,为可能的变化预留灵活性,从而很多模式都利用接口,高层代码面向抽象编程,只有当实际运行的时候代码高层代码才执行实例化的具体对象的方法,而在动态语言中语言本身就具有动态性,于是不再需要显式的接口

静态语言(Java) 动态语言(Python)
优点:由于显式面向接口,于是在IDE中可以跳转到特定的接口,然后通过接口又可以找到实现这个接口的某些类,建立代码的联系更方便直观 优点:省事,不需要显式专门写个接口。方便的高级数据结构list,dict,set,方便构造json
缺点:费事,需要更多的代码,类型声明,显示接口定义。没有方便的list,dict,set,构造json显得臃肿,不自然 缺点:只有当代码实际运行的时候在知道某个变量到底是什么,于是对某个方法,或者某个类在没运行的情况下不容易理解

Happy learning !!

上一篇 下一篇

猜你喜欢

热点阅读