偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

長(zhǎng)見(jiàn)識(shí),讓大家看看什么是垃圾代碼

開(kāi)發(fā) 前端
外界都在說(shuō)Python不適合做大項(xiàng)目,因?yàn)榇a規(guī)模大了以后難以維護(hù)。你們看看下面這段代碼,寫(xiě)成這個(gè)鬼樣子,要容易維護(hù)才有鬼了。

在以前的文章中,在微信群中,我多次強(qiáng)調(diào),寫(xiě)函數(shù)的時(shí)候,不要把所有參數(shù)放到一個(gè)大字典里面作為參數(shù)到處傳,否則時(shí)間久了以后,根本不知道字典里面有哪些數(shù)據(jù):

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

上面這樣寫(xiě),對(duì)原作者來(lái)說(shuō)確實(shí)簡(jiǎn)單,但是如果代碼還有別人來(lái)維護(hù),他就根本不知道這個(gè)字典里面有哪些數(shù)據(jù)。必須要一層一層查找調(diào)用鏈,費(fèi)時(shí)費(fèi)力。

但我是真的萬(wàn)萬(wàn)沒(méi)想到,還有比上面這種寫(xiě)法更傻X的代碼。真的可以稱得上是垃圾中的垃圾。我們來(lái)看看下面這段代碼。

現(xiàn)在有一個(gè)類A,里面有兩千多行代碼。還有一個(gè)類B,里面有三千多行代碼。這兩個(gè)類里面有一些實(shí)例方法,有700多行代碼。這些我都忍了。

更要命的是,初始化類B的時(shí)候,需要傳入一個(gè)字典。這個(gè)字典有80多個(gè)Key。并且,他們是下面這樣寫(xiě)的。

B類在xxx.py文件里面:

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

A類在yyy.py文件里面,它的代碼是這樣寫(xiě)的:

...
class A:
def __init__(self, instance): # instance是類B的實(shí)例對(duì)象
self.__dict__.update(instance.__dict__)
def method_x(self):
print(self.something)
...

A類中,有很多地方就像實(shí)例方法methid_x()一樣,直接調(diào)用了一些看起來(lái)像是實(shí)例屬性的東西,例如上面這個(gè)self.something。這些長(zhǎng)得像實(shí)例屬性的東西,在PyCharm會(huì)直接報(bào)屬性沒(méi)有定義。但是運(yùn)行卻沒(méi)有問(wèn)題。因?yàn)檫@些something是初始化B類的時(shí)候,傳入的那個(gè)字典中的key。

外界都在說(shuō)Python不適合做大項(xiàng)目,因?yàn)榇a規(guī)模大了以后難以維護(hù)。你們看看上面這段代碼,寫(xiě)成這個(gè)鬼樣子,要容易維護(hù)才有鬼了。

我之前就說(shuō)過(guò):

  • 如果是一個(gè)人寫(xiě)項(xiàng)目那用Python又快又好。
  • 如果是很多個(gè)非常厲害的人寫(xiě)項(xiàng)目,用Python也是又快又好。
  • 如果很多人中,但凡有一個(gè)人是拖后腿搗亂的,那還是別用Python了,用Java可以防止這個(gè)人搗亂。
責(zé)任編輯:趙寧寧 來(lái)源: 未聞Code
相關(guān)推薦

2020-05-15 09:55:09

設(shè)計(jì)技術(shù)棧程序員

2021-12-21 18:14:59

戴爾

2017-07-12 09:46:00

5G社會(huì)網(wǎng)絡(luò)

2021-11-30 14:06:37

排序算法代碼

2021-03-04 14:39:33

Python 開(kāi)發(fā)編程語(yǔ)言

2025-04-02 08:00:00

Agent智能人工智能

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函數(shù)

2019-08-14 16:52:23

閱讀源碼工具JDK

2013-02-22 09:43:41

面向?qū)ο?/a>面向?qū)ο缶幊?/a>

2011-05-25 09:30:45

產(chǎn)品經(jīng)理

2011-08-29 16:07:35

Ubuntu

2010-03-19 17:27:10

云計(jì)算

2019-12-25 10:45:30

Java悲觀鎖

2019-12-19 17:00:01

Java線程

2015-03-02 10:08:09

Apple Watch

2020-11-10 09:20:06

垃圾代碼優(yōu)質(zhì)代碼編輯語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)