长见识,让大家看看什么是垃圾代码

开发 前端
外界都在说Python不适合做大项目,因为代码规模大了以后难以维护。你们看看下面这段代码,写成这个鬼样子,要容易维护才有鬼了。

在以前的文章中,在微信群中,我多次强调,写函数的时候,不要把所有参数放到一个大字典里面作为参数到处传,否则时间久了以后,根本不知道字典里面有哪些数据:

def parse(data):
name = data['name']
age = data['age']
xxx = data['xx']

上面这样写,对原作者来说确实简单,但是如果代码还有别人来维护,他就根本不知道这个字典里面有哪些数据。必须要一层一层查找调用链,费时费力。

但我是真的万万没想到,还有比上面这种写法更傻X的代码。真的可以称得上是垃圾中的垃圾。我们来看看下面这段代码。

现在有一个类A,里面有两千多行代码。还有一个类B,里面有三千多行代码。这两个类里面有一些实例方法,有700多行代码。这些我都忍了。

更要命的是,初始化类B的时候,需要传入一个字典。这个字典有80多个Key。并且,他们是下面这样写的。

B类在xxx.py文件里面:

class B:
def __init__(self, query_dict):
for key, value in query_dict.items():
setattr(self, key, value)
....

A类在yyy.py文件里面,它的代码是这样写的:

...
class A:
def __init__(self, instance): # instance是类B的实例对象
self.__dict__.update(instance.__dict__)
def method_x(self):
print(self.something)
...

A类中,有很多地方就像实例方法methid_x()一样,直接调用了一些看起来像是实例属性的东西,例如上面这个self.something。这些长得像实例属性的东西,在PyCharm会直接报属性没有定义。但是运行却没有问题。因为这些something是初始化B类的时候,传入的那个字典中的key。

外界都在说Python不适合做大项目,因为代码规模大了以后难以维护。你们看看上面这段代码,写成这个鬼样子,要容易维护才有鬼了。

我之前就说过:

  • 如果是一个人写项目那用Python又快又好。
  • 如果是很多个非常厉害的人写项目,用Python也是又快又好。
  • 如果很多人中,但凡有一个人是拖后腿捣乱的,那还是别用Python了,用Java可以防止这个人捣乱。
责任编辑:赵宁宁 来源: 未闻Code
相关推荐

2020-05-15 09:55:09

设计技术栈程序员

2021-12-21 18:14:59

戴尔

2017-07-12 09:46:00

5G社会网络

2021-11-30 14:06:37

排序算法代码

2021-03-04 14:39:33

Python 开发编程语言

2022-12-04 00:09:07

2011-06-10 12:57:22

seo垃圾链接

2013-07-05 14:07:56

惠普IT管理

2023-05-31 09:00:00

2021-04-16 10:45:02

SQLJava函数

2019-08-14 16:52:23

阅读源码工具JDK

2011-05-25 09:30:45

产品经理

2013-02-22 09:43:41

面向对象面向对象编程

2011-08-29 16:07:35

Ubuntu

2010-03-19 17:27:10

云计算

2019-12-25 10:45:30

Java悲观锁

2019-12-19 17:00:01

Java线程

2020-11-10 09:20:06

垃圾代码优质代码编辑语言

2015-03-02 10:08:09

Apple Watch

2020-09-22 15:21:08

微信设计腾讯
点赞
收藏

51CTO技术栈公众号