PythonをゼロからWeb開発まで学ぶにはどうすればよいですか?[閉まっている]


48

私は、Web開発のためのPythonの学習を検討しています。

すでにJava(JSP /サーブレット)の基本的なWeb開発経験があると仮定すると、Webデザイン(HTML、CSS、JS)、基本的なプログラミングの概念に精通しており、Pythonを初めて使用する場合、どうすればよいですか構造化された方法でPythonを学習し、最終的にはPythonとDjangoを使用したWeb開発につながりますか?

PythonでWebアプリケーションを作成するのが急いでいないので、PythonでのWeb開発に関連する技術の知識にギャップを残さないように、徹底的に学びたいと思います。私の努力に役立つ本、リソース、またはテクニックはありますか?それらをどの順番で読むべきですか?

更新:

構造化された方法で学習するということは、基本から始めて、Pythonが提供する重要な詳細/機能の一部を残さずに高度なものを学習することを意味します。プログラミングで既に知っていることをPythonに適用する方法を知りたいです。


6
急いでいない場合は+1。これは、言語を学習し、物事を試してみるのに最適な方法ですが、言語を学習するために本番プロジェクトに飛び込むことはありません。
クリス

回答:


49

6
素晴らしいリスト!Dive Into Pythonは、経験豊富なプログラマがPythonを使い始めるのに最適だと聞いています。
テレンスポンセ

現在Dive into Pythonで作業しているため、ペースが速く、言語を学びたい既存のプログラマーにとって素晴らしいリソースです!私はそれが行く方法を確認するためにCHP 2&3の作業、それは構文とデータ型と非常によくあなたを向けるだろう示唆:)
反転

@Terence:これがまさに私がやったことだと考えると同意できます。java、c、php(職場)およびその他のさまざまな言語を使用してCSEの学部生から来たこの本は、私をすぐに理解させてくれました。
クリス

+1)TheDjangoBookおよびビデオ用。Python Webプログラミングも良い選択です。
ravi404

15

これをあまり真剣に受け取らないでください...

  • app.py次の内容のファイル名を作成します。

    from flask import Flask
    app = Flask(__name__)
    
    @app.route("/")
    def hello():
        return "Hello World!"
    
    if __name__ == "__main__":
        app.run()
    
  • pip(pythonパッケージインストーラー)がインストールされていると仮定して、以下を実行します。

    $ pip install Flask
    $ python app.py
    * Running on http://localhost:5000/
    
  • これで、ローカルホストのポート5000で最初のWebアプリにアクセスできます。

これが最初のpython Webアプリケーションになります。その後のすべてが、アプリケーションの構造、機能、および外観の「洗練」です。


8

pythonでのWeb開発がお探しの場合は、pythonを完全に理解した後、Flaskをご覧になることをお勧めします。Djangoと他のフルスタックフレームワークは間違いなくあなたの人生をはるかに楽にしますが、全体的には多くを学んでいないかのような不完全な感覚を残します。Flask IMHOは、現時点でpythonの最も素晴らしいフレームワークですが、はい、それは私の意見です。


4

また、学習にはPython Koansをお勧めしますhttp ://github.com/gregmalcolm/python_koans

これらはRuby Koansによく似ており(その多くは直接移植されています)、とてもクールです。


1
それが何をするのか、そして尋ねられた質問に答えるのになぜそれをお勧めするのか、もっと説明してもらえますか?「リンクのみの答えは」かなりスタック所で歓迎されていません
ブヨ

3

http://learnpythonthehardway.org

Pythonの52のレッスンのシリーズを含む無料のオンラインブックです。

レッスン1から始めてレッスン52に進むことで、Python言語の有能なプログラマーであると考えるのに十分なことを学ぶ必要があります。

各レッスンにはコード例があり、時間をかけて入力し、実行してからALTERして結果がどのように変化するかを確認する必要があります。

私が知っているほとんどの人が一般にプログラミングを学ぶプロセスです。


1
これについてさらに詳しく説明してもらえますか-尋ねられた質問にどのように、なぜ答えるのですか?Stack Exchange では、「リンクのみの回答」は歓迎されません
-gnat

1
上記があなたのニーズを満たすことを願っています。フィードバックをお寄せいただきありがとうございます。
アレックスC

1
エクササイズをコピーアンドペーストすることは絶対にしないでください。まったく学習に役立たないからです。本の最初の章から:You must type each of these exercises in, manually. If you copy and paste, you might as well just not even do them. The point of these exercises is to train your hands, your brain, and your mind in how to read, write, and see code. If you copy-paste, you are cheating yourself out of the effectiveness of the lessons.
marco-fiset

1
ありがとうマルコ。また、その点を反映するように回答を調整しました。
アレックスC

0

Web開発は常に1つのことを思い出します。それがブラウザーです。HTML、CSS、およびJavaScriptを非常によく学べば、言語が変わっても役立ちます。

Www.w3schools.comはこれらのことを学ぶのに最適な場所ですが、CSSに関しては、座って遊んでみると非常に便利です。クールなWebデザインを見つけて、手作業でHTMLで実装します。サーバー側のコードのいずれかがHTMLになる場合、これは非常に必要なスキルです。

次に、私はあなたの論理的なアプローチが好きですが、それを行うための最良の方法ではないかもしれません。よりやりがいのあるアプローチは、達成したい目標を設定し、途中で学習することです。

ただし、djangoから始めるのは最良のアイデアではないかもしれません。フレームワークを設計するときに彼らが下した決定の多くは、それらが直接解決する問題を経験した場合にのみ意味があります。私の最初のWeb言語はphpであり、ベストプラクティスを理解する最も効果的な方法は、くだらない壊れやすいコードを書き、問題があることを認識し、ソリューションを再検討することでした。問題を理解する前に解決策を研究する場合、効果的に適用することができませんでした。

これに時間をかける気があるなら、恐らくphpなどの比較的抽象度の低いテクノロジーセットから始めることは、素晴らしい学習経験になるでしょう。


2
Web開発の経験があり、基本的なプログラミングの概念に精通しているということについて、私が言ったことを逃したと思います。JSP /サーブレットに移る前に、HTML、CSS、およびJavascriptをすでに知っていました。Pythonを学習するためのアプローチ(私が望んでいた)については、Pythonが提供しなければならない詳細/機能のいくつかを逃さずに、プログラミングで既に知っていることを適用する方法を知りたいだけです。
テレンスポンセ

おそらく、あなたは基本的なWeb開発の経験があると言っているように、あなたの投稿を明確にする必要があります。私は単に、ウェブ開発に投資することの重要性を強調しようとしていました。

はい。ごめんなさい 今すぐ質問を更新します。
テレンスポンセ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.