PythonWeb開発の完全ガイド

ブログ:https://somenzz.cn、コンピューターで読む方が便利です。記事のリンクにアクセスして元のテキストを読むことができます。

長い間Pythonを学んだ後、ようやくプログラミング言語は単なるツールだと感じました。テクノロジーを通じて独自の価値を実現したいのであれば、特定のアプリケーションシナリオなしでは実現できません。アプリケーションシナリオは非常に多く、時間とエネルギーは限られています。メイジであろうとジャングラーであろうと、ゲームをプレイするときにヒーローの職業を選択するのと同じように、すべてを学ぶことができるかもしれません。選択できるのは1つだけです。一度選択すると、ゲームが終了するまで変更できません。

それはプログラミングでも同じです。方向を選択し、一生懸命勉強し、深く行き、簡単に変更しないでください。 Pythonの場合、5つの主要なアプリケーション領域、自動テストまたは操作と保守、クロール、データ分析、Web開発、機械学習、または人工知能があります。これらの分野で始めることの難しさは、自動化から機械学習まで、簡単なものから難しいものまでさまざまです。特に機械学習の場合、Pythonの要件は高くありませんが、数学とアルゴリズムに習熟している必要があります。

今日は、Pythonを使用してWeb開発を行うための完全なガイドを共有します。主な内容は次のとおりです。

  1. Web開発とは何ですか? 2. PythonがWeb開発に適しているのはなぜですか? 3.人気のあるPythonWebフレームワークは何ですか? 4. Web開発用のPythonライブラリとは何ですか? 5.Web開発学習ロードマップ6.Pythonを使用して最初のWebアプリケーションを作成します7.PythonWeb開発者になります

**1、 ウェブサイト開発とは何ですか? **

プログラミングに不慣れな人は、Web開発とは何かを知りたいと思うかもしれません。正確な用語を特定することは不可能ですが、Web開発は、Webサイトの構築、作成、および保守として大まかに定義できます。一般に、Web開発には、フロントエンド、クライアントと対話するすべてのもの、およびビジネスロジックを含み、データベースと対話するバックエンドが含まれます。フロントエンドには、html、css、javascript、およびAngular、React、Vueなどの派生ライブラリとフレームワークが含まれます。これらは無限と表現できます。バックエンドは多くの言語で実装できます。ここにPythonがあります。また、非常に豊富なフレームワークもあります。これについては後で説明します。

**2、 PythonがWeb開発に適しているのはなぜですか? **

1つは簡単に習得できます:Pythonは初心者に最も人気のある言語です。JavaやC ++などの他の言語と比較して、コードの記述が少なく、エラーを減らし、効率を向上させることができます。それだけでなく、日常の言語に比較的似ており、コードを簡単に理解できるため、入力の障壁も低くなります。

2つ目は、豊富なエコシステムとライブラリを用意することです。Pythonは、さまざまなライブラリツールとパッケージを提供し、事前に作成された多くのコードにアクセスできるため、アプリケーションの開発時間を短縮できます。たとえば、数学分析にはNumpyとPandasを、グラフ分析にはPygalを、組み合わせ可能なクエリにはSLQALchemyを使用できます。 Pythonは、DjangoやFlaskなどのすばらしいWebフレームワークも提供します。これらについては、後で詳しく説明します。

3つ目は、迅速なプロトタイピングです。他のプログラミング言語と比較して、Pythonはプロジェクトの構築にかかる時間を大幅に節約でき、アイデアをより早く実現できるため、フィードバックをより速く取得し、より速く繰り返すことができます。この効率的な開発により、Pythonは、競争上の優位性を獲得するためにより早く市場に参入できるスタートアップに特に適しています。

4番目は広く普及していることです:Pythonは世界で最も人気のある言語の1つであり、世界中からコミュニティの貢献があり、ほとんどすべての技術的な問題は検索エンジンを介してすばやく見つけることができます。 Python自体は、新しい機能とライブラリ、および優れたドキュメントとコミュニティサポートを提供するために、絶えず更新されています。特に新しい開発者のために、Pythonは広範なサポートとフレームワークを提供します。

**3、 人気のあるPythonWebフレームワークは何ですか? **

Webフレームワークとは何ですか?なぜそれが重要なのですか? Webフレームワークをツールボックスと考えてください。 Webフレームワークは事前に作成されており、標準化されたコードで構成されています。Webアプリケーションの作成に役立ちます。目的は、開発をより迅速かつ簡単にすることです。パッケージとモジュールのコレクションにより、Webアプリケーションの信頼性と拡張が容易になります。言い換えれば、フレームワークは退屈な作業をすることからあなたを救います。

Python Webフレームワークは、サーバー側テクノロジ、URLルーティング、HTTP要求と応答、データベースアクセス、およびWebセキュリティのバックエンドでのみ使用されます。 Webフレームワークを使用する必要はありませんが、より複雑なアプリケーションをより短時間で開発できるため、Webフレームワークを使用することを強くお勧めします。

では、人気のあるPython Webフレームワークは何ですか?

1、 Django

複雑で高品質のWebアプリケーションを短期間で作成するために、多くのWeb開発者はDjangoフレームワークを好みます。 Djangoは、迅速な開発とシンプルで実用的な設計を促進するオープンソースの高レベルフレームワークを提供すると同時に、強力なコミュニティサポートと詳細なドキュメントを提供します。 Djangoは時代に対応し、Web開発のトレンドに応じて機能を比較的更新しています。 Djangoの機能は次のとおりです。

•オープンソースコード•フルスタックフレームワーク(ワンストップサービス、完全なソリューション)•承認•URLルーティング•テンプレートエンジン•DRY(繰り返さないでください)デザインパターン•ORMマッピング•データベースアーキテクチャのサポート、サポート[PostgreSQL] (https://cloud.tencent.com/product/postgresql?from=10680)、[MySQL](https://cloud.tencent.com/product/cdb?from=10680)、SQLite、Oracle•MVC設計アーキテクチャに従ってください

公式ドキュメントは最高のチュートリアルであり、最初のプログラムを最初から作成できます。 Djangoは非常に柔軟性があり、大企業のMVPと連携できます。Djangoを使用する最大の企業には、Instagram、Dropbox、Pinterest、Spotifyなどがあります。

2、 Flask

Flaskは、マイクロフレームワーク、単純なWebフレームワークと見なされます。 「バッテリーを含む」というわけではありません。つまり、Webテンプレートエンジン、アカウントの承認、認証など、Djangoのようなフルスタックフレームワークによって提供される多くの機能が不足しています。その主な機能は次のとおりです。

•軽量のマイクロフレームワーク•比較的低い学習コスト、迅速な入力•JinJa2テンプレートエンジンのサポート•Djangoテンプレート言語の後の最新のテンプレート言語

Flaskは非常にシンプルで軽量です。つまり、コードを作成するときに必要な拡張機能とライブラリを追加できます。 Flaskの背後にある考え方は、アプリケーションの構築に必要なコンポーネントのみを提供するため、開発者は多くの柔軟性と制御を備えているということです。 Flaskは、Netflix、Linkedin、Uberなどの主要企業で使用されている人気のある強力なWebフレームワークでもあります。

3、 Bottle

これは一般に小さなマイクロフレームワークと呼ばれます。主にWebAPIに焦点を当て、すべてを1つのドキュメントにバンドルしようとします。Python標準ライブラリ以外の依存関係はありません。ボトルの特徴は次のとおりです。

•マイクロフレームワーク•元々、単一のソースファイルがapiの構築に使用されていました。つまり、すべてが1つのソースファイルに含まれています。 •URLルーティング。 •テンプレートエンジン。 •ユーティリティ。 •WSGI標準の抽象化。

ボトルは、プロトタイピング、Webフレームワークの構成の学習、および単純なパーソナルアプリケーションの構築に非常に適しています。

4、 CherryPy

CherryPyは、サーバープール、インストールフレームワーク、モジュールフレームワークなど、マルチチェーンサーバーが組み込まれた人気のあるフレームワークです。その特徴は次のとおりです。

•オープンソースのミニマリズム•複数のhtppサーバーを一度に実行•強力な構成と柔軟なプラグインシステム•プロファイリング、カバレッジ、テストの組み込みサポート

5、 Pyramid

PyramidはPylonプロジェクトの一部であり、Python言語で最も柔軟なフレームワークの1つです。このフレームワークにより、開発者は、DBMS、URL構造、テンプレートスタイルなどを選択できます。

6、 Web2Py

Web2Pyを使用すると、デバッガーとコードエディターは、デプロイメントツールを介してコードを編集およびデバッグできます。これにより、開発者はWebブラウザを介してWebアプリケーションを開発、変更、展開、および管理できます。

毎年、新しいフレームワークまたは既存のフレームワークの新しい機能があるかもしれませんが、開発者としてどちらを使用する必要がありますか?

これまでのところ、Djangoが最も人気のあるフレームワークであり、Flaskがそれに続きます。選択方法がわからない場合は、2つのうちの1つを選択してください。

あなたはまた尋ねるかもしれません:私はDjangoまたはFlaskを選ぶべきですか?答えは、それはWeb開発者のスキルレベルに依存するということです。経験がある場合は、より多くの「ベアボーンシステム」を使用してプログラムを開発することを検討してください。また、ジュニア開発者の場合は、より多くのサポートを提供するフレームワーク(Djangoなど)を使用するのが最適です。

さらに、構築に基本的なコードベースを使用しますか、それともコードベースのバックボーンを柔軟に構築しますか?前者の場合はDjangoを使用し、後者の場合はFlaskを選択してください。最終的な分析では、どちらも同じ機能を実現できるため、どちらのフレームワークが優れているかを心配するよりも、コーディングを開始することが重要です。

**4、 Web開発用のPythonライブラリとは何ですか? **

アプリケーションのデータを抽出するためにWebクローラーが必要な場合は、Scrapyが非常に適しています。これは、クロール、データマイニング、自動テストなどに広く使用されているライブラリです。

Zappaは、AWSLambdaでサーバーレスアプリケーションを開発するための強力なライブラリです。

Requestsライブラリは、HTTP要求を簡単に送信して、アプリケーションと通信し、HTMLページデータを取得できます。

もう1つの便利なライブラリはDashです。これは、[データ視覚化](https://cloud.tencent.com/product/yuntu?from=10680)に関連するWebアプリケーションの開発に役立ちます。 Flask上に構築され、チャート、グラフ、ダッシュボードなどの機能を提供します。

5、 Web開発学習ロードマップ

ステップ1:基本的な知識の予備

まず、HTML 5、CSS 3、JavaScript(ES6)の3つの最も基本的なフロントエンドを学習する必要があります。 CSS 3から派生したCanvas(ビットマップ)、SVG(ベクトル図)、WebGL(3D図)などの多くのテクノロジーや、非常に豊富なレンダリング効果を作成できるCSSのさまざまなグラフィック変換があります。そしてアニメーション効果。 ES6は、JavaScriptを新しいレベルに引き上げるだけです。JavaScript言語の能力により、フロントエンド開発者の生産性が大幅に向上し、フロントエンドでより複雑なコードやプログラムを開発できるようになります。

•JavaScriptのコア原則•ブラウザの動作原則•HTTPプロトコル:HTTP / 2、短い接続、長い接続、ストリーム接続、WebSocket

ステップ2:フロントエンドフレームワークとパフォーマンスチューニング

現在、フロントエンドコミュニティには、Angular.js、React.js、Vue.jsの3つの主要なフレームワークがあります。 ReactとVueはより強力で、初心者はVueから学び始めることができます。

フロントエンドのパフォーマンスを最適化するには、次の書籍を読むことができます。

Web Performance in Actionは、CSS、画像、フォント、JavaScriptパフォーマンスチューニングなどを含む非常に優れた本です。

Designing for Performanceは、Webページのパフォーマンスの全体的な最適化を理解するのに役立つ多くのWebページ最適化テクノロジーと関連ツールについて説明しています。

ハイパフォーマンスJavaScriptを使用すると、コードの読み込み、実行、DOMの相互作用、ページのライフサイクルなど、パフォーマンスのすべての側面を改善する方法を知ることができます。 YahooのフロントエンドエンジニアであるNicholasC。Zakas(Nicholas C. Zakas)と他の5人のJavaScriptエキスパートが、ページコードの読み込みに最適な方法とプログラミングスキルを紹介し、より効率的で高速なコードを作成できるようにしました。

ステップ3:バックエンドスキル学習

1つ目は、WSGIやASGIプロトコルなどのサーバー関連プロトコルの理解です。2つ目は、上記のPython関連のWebフレームワークには、Django RESTフレームワーク、FastAPI、FlaskRESTフレームワークなどのAPIフレームワークも含まれています。

さらに、データベース関連の知識、SQL言語を学ぶ必要があり、データベース関連のクエリの最適化も不可欠です。

最後に、nginx、uwsgi、gunicorn、httpsプロトコルなど、サーバーにデプロイされている関連テクノロジーについて学習します。

6、 Pythonで最初のWebアプリケーションを作成する

Flaskを使用して最初のHelloWorldWebアプリケーションを作成し、最初にFlaskをインストールします。

pip install flask

hello.pyファイルを作成し、次のように記述します。

from flask import Flask
app =Flask(__name__)

@ app.route("/")
 def hello():return"Hello World!"if __name__ =="__main__":
 app.run()

コードは非常に単純なので、説明はしません。 python hello.pyを実行してから、http:// locahost:5000 /にアクセスすると、「HelloWorld!」と表示されているWebページが表示されます。

7、 PythonWeb開発者になることを選択する

おめでとう!あなたは徐々にPythonの使用に堪能なWeb開発者になりつつあります。これで、Web開発にPythonを使用する方法を十分に理解できたはずです。この理解は、Web開発学習の過程で失われることはありません。

まとめ

PythonでのWeb開発は主にバックエンド開発であり、JavaやGoLangなどのバックエンド言語には多くのオプションがあります。フロントエンドの知識はhtml、css、javascriptをバイパスできないため、フロントエンドの知識を習得する必要があります。バックエンドの部分はPythonから開始できます。習熟すると、他のバックエンド言語を習得するための予備の容量があります。

Recommended Posts

PythonWeb開発の完全ガイド
Pythonファイル処理の実用ガイド
PythonはユニバーサルWebフレームワークを実装しています
本当のゼロの基本的なPython開発ウェブ
Pythonで地球を作る方法
Python正規表現の簡単な紹介
pythonのWeb開発フレームワークとは何ですか
Ubuntuでpython開発環境を構築する
pythonで辞書を並べ替える方法
PythonでWebページをPDFに変換する方法
Pythonゲームで重力をシミュレートする方法
01.Pythonの概要
python-pythonを使用して小さなショッピングプログラムを作成します
告白プログラムをpythonで書く方法
Pythonの紹介
ローカルWebサーバーを構築するためのCentos8の実装手順
pythonで番号のリストを理解する方法
Ubuntu14.04でPython仮想環境を作成する方法
PythonはFTPを実装して、ファイルをループでアップロードします
Python Webクローラー(練習)
Centos 6.4 python2.6を2.7にアップグレード
python開発[最初の記事]
PythonによるWebスクレイピング
pythonで円の領域を見つける方法