Python編程語言與Zpoe之間不解的情緣
Python編程語言在目前的使用中有很多語言都會和他有多融合。其中Zope和Python編程語言如影隨形。下面我們就來看看Python編程語言合Zope之間的不解之緣。
十年過去了,這個趨勢還未見停下來的意思。不管最新的關(guān)鍵字如何層出不窮—比如RESTful web編程、標準化接口,可插入組件或?qū)嵱玫氖芟迗?zhí)行環(huán)境(practical restricted-execution environments),Zope很久以來一直在靜悄悄地引路,不負眾望地走在所有人前面。不僅僅作為技術(shù)概念,還引領(lǐng)和服務(wù)于用戶。
然而奇怪的是,在眼下Python編程語言開發(fā)中,Zope所扮演的角色在Python開發(fā)者中間的知名度和認可度都不很高。經(jīng)常的情形是在Python社區(qū)中一些新的、被過分吹捧的開發(fā)技術(shù)—特別是在web應(yīng)用程序和對象安全平臺方面—是一些Zope已經(jīng)做了很多年的東西。#t#
Python編程語言社區(qū)中的這種奇怪盲區(qū)讓我困惑不已。即使是當我告訴人們Zope早已完成了他們所一直忙活的東西,我所得到的反應(yīng)通常是一副茫然的面孔,或者壓根沒反應(yīng)。這就好像在其他一些人把它們重做出來之前Zope的創(chuàng)新并不存在一樣。事實上,這種現(xiàn)象讓我不由自編了一句諺語:
那些不研究Zope的人將注定去做重復(fù)發(fā)明。(Those who do not study Zope, are condemned to reinvent it.)
實際上,如果你沒有計劃去使用Zope,那關(guān)系還不大。坦白說我也有些年沒用Zope了。但我從Zope那里得到的教訓(xùn)是,我得經(jīng)常用它。研究Zope—特別是Zope3—毫無疑問將使你成為一名優(yōu)秀的程序員。
當然,“優(yōu)秀的程序員”并沒有回答“如何才能優(yōu)秀?擅長哪一方面?”的問題。
Zope公司(最初是Digital Creations, LLC)創(chuàng)造了Zope,利用它可以更高效地處理合約事務(wù),可以讓他們?yōu)榭蛻舯3忠粋€不斷壯大的包含可復(fù)用解決方案的工具包,以降低這些應(yīng)用程序的開發(fā)和維護成本。其目的是實現(xiàn)“編寫一次,廣泛使用(write once, use many)”:一個經(jīng)濟高效的增效器。
如果這就是你的事業(yè)軌跡,你能夠從研究如何使用Zope來完成這個之中受益,但僅此而已,無論你是否是實際出于這個目的使用Zope。
如果你在為Python編程語言開發(fā)任何一項全新的或者劃時代的技術(shù),你會從這般捫心自問中受益:“Zope是不是已經(jīng)有了或者與之類似的東西?要是沒有,Zope會如何使用它?”當我開發(fā)Python Eggs, setuptools甚至是WSGI(Python網(wǎng)絡(luò)服務(wù)器網(wǎng)關(guān)接口,Python Web Server Gateway Interface)時,我都這樣問過自己。這些項目的成功都是我自問WWZD:Zope(利用這個思想)會怎樣做?的直接寫照(What Would Zope Do (with this idea)?)。
那是因為對Zope有好處的東西通常對Python編程語言也有好處。這不是從語言的角度說得—Python的“慈善的獨裁者(Benevolent Dictator)”和“Zope教皇(Zope Pope)”在語言應(yīng)如何變革這個問題上經(jīng)常意見迥然。
我的意思是,使Zope成為一個優(yōu)秀的平臺的那些工具也會使Python編程語言成為一個優(yōu)秀的平臺。而且你若能認真研究Zope,你大概會慢慢理解這其中的緣故。
特別是當有了新點子的時候,也許(注意只是也許)你發(fā)現(xiàn)你開始有一點走在其他程序員的前面了…但希望不要太超前,那樣他們也將裝做你不存在一樣!