10個用於Web開發的最好 Python 架構

來源:互聯網
上載者:User

標籤:

  Python 是一門動態、物件導向語言。其最初就是作為一門物件導向語言設計的,並且在後期又加入了一些更進階的特性。除了語言本身的設計目的之外,Python標準 庫也是值得大家稱讚的,Python甚至還內建伺服器。其它方面,Python擁有足夠多的免費資料函數庫、免費的Web網頁模板系統、還有與Web服務 器進行互動的庫、這些都可以設計到你的Web應用程式裡面。在這篇文章裡,我們將為Python Web開發人員介紹基於Python的10大Web應用程式框架。

  CubicWeb

  CubicWeb的最重要的支柱就是代碼的可重用性。CubicWeb宣揚自己不僅是一個Web開發架構,而且還是一款語義Web開發架構。CubicWeb使用關係查詢語言(RQL Relation Query Language)與資料庫之間進行通訊。

  Zope2

  Zope 2是一款基於Python的Web應用程式框架,是所有Python Web應用程式、工具的鼻祖,是Python家族一個強有力的分支。Zope 2的“對象發布”系統非常適合物件導向開發方法,並且可以減輕開發人員的學習曲線,還可以協助你發現應用程式裡一些不好的功能。

  Web2py

  Web2py是一個用Python語言編寫的免費的開源Web架構,旨在敏捷快速的開發Web應用,具有快速、可擴充、安全以及可移植的資料庫驅動的應用,遵循LGPLv3開源協議。

  Web2py提供一站式的解決方案,整個開發過程都可以在瀏覽器上進行,提供了Web版的線上開發,HTML模版編寫,靜態檔案的上傳,資料庫的編寫的功能。其它的還有日誌功能,以及一個自動化的admin介面。

  TurboGears

  它是另外一個基於 Python 的 MVC 風格的 Web 應用程式架構。

  TurboGears 開發人員稱這個項目是一個 “大架構(megaframework)”,這是因為它是由現有的子項目構成的。TurboGears 可以協助將很多主要組件整合在一起:

  • MochiKit:JavaScript 庫
  • Kid:範本語言
  • CherryPy:基本 Web 架構
  • SQLObject:對象關係映射器(ORM)
  Pylons

  Pylons是一個開放原始碼的Web應用程式框架,使用python語言編寫。它對WSGI標準進行了擴充應用,提升了重用性且將功能分割到獨立的模組中。

  Pylons是最新的Web應用程式框架中的典型,類似於Django和TurboGears。Pylons受Ruby on Rails影響很深:它的兩個組件,Routes和WebHelpers是Rails特性的Python實現。

  Grok

  Grok 是一個為 Python 開發人員提供的Web應用開發架構,Grok 的重點是敏捷開發,是一個易用而且功能強大的開發架構,基於 Zope 3 技術。

  Web.py

  Web.py是一個輕量級的開源Python Web架構,小巧靈活、簡單並且非常強大,在使用時沒有任何限制。目前Web.py被廣泛運用在許多大型網站,如西班牙的社交網站Frinki、首頁日平均訪問量達7000萬次的Yandex等。

  Pyramid

  Pyramid也是一款輕量級的開源Python Web架構,是Pylons項目的一部分。Pyramid只能運行在Python 2.x或2.4以後的版本上。在使用後端資料庫時無需聲明,在開發時也不會強制使用一些特定的模板系統。

CherryPy

  CherryPy是一個基於Python的Web使用程式開發架構,它極大地簡化了運用 Python 的web開發人員的工作。它為Python開發人員提供了友好的HTTP協議介面。大家知道,HTTP可是全球資訊網的支柱協議,而CherryPy將HTTP協議簡化成Python API來供Python 開發人員使用,這極大地簡化了Web開發人員對HTTP協議的操作。CherryPy自身內建了一個HTTP伺服器,或者稱為Web伺服器。這樣,對於CherryPy的使用者來說,不用另外搭設Web伺服器就能直接運行 CherryPy應用程式了。實際上,Web伺服器是到達CherryPy應用程式的關口,是所有的HTTP請求和響應的必經之地。因此,可以這樣理解 CherryPy內建的Web伺服器:它是位於處理用戶端與伺服器端之間的一層軟體,用於把底層TCP套按字傳輸的資訊轉換成Http請求,並傳遞給相應 的處理常式;同時,還把上層軟體傳來的資訊打包成Http響應,並向下傳遞給底層的TCP套按字。

  Flask

  Flask是一個輕量級的Web應用程式框架, 使用Python編寫。基於 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授權。

  Flask也被稱為 “microframework” ,因為它使用簡單的核心,用 extension 增加其他功能。Flask沒有預設使用的資料庫、表單驗證工具。然而,Flask保留了擴增的彈性,可以用Flask-extension加入這些功 能:ORM、表單驗證工具、檔案上傳、各種開放式身分識別驗證技術。

10個用於Web開發的最好 Python 架構

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.