Bagaimana saya belajar Python dari nol hingga pengembangan web? [Tutup]


48

Saya melihat ke dalam belajar Python untuk pengembangan web.

Dengan asumsi saya sudah memiliki beberapa pengalaman pengembangan web dasar dengan Java (JSP / Servlets), saya sudah terbiasa dengan desain web (HTML, CSS, JS), konsep pemrograman dasar dan bahwa saya benar-benar baru dengan Python, bagaimana saya pergi tentang mempelajari Python secara terstruktur yang pada akhirnya akan mengarahkan saya ke pengembangan web dengan Python dan Django?

Saya tidak terburu-buru untuk membuat aplikasi web di Python jadi saya benar-benar ingin mempelajarinya secara menyeluruh agar tidak meninggalkan celah dalam pengetahuan saya tentang teknologi yang melibatkan pengembangan web di Python. Apakah ada buku, sumber daya atau teknik untuk membantu saya dalam usaha saya? Dalam urutan apa saya harus melakukan / membacanya?

MEMPERBARUI:

Ketika saya mengatakan belajar secara terstruktur, maksud saya memulai dari dasar-dasar kemudian mempelajari hal-hal yang canggih tanpa meninggalkan beberapa detail / fitur penting yang ditawarkan Python. Saya ingin tahu cara menerapkan hal-hal yang sudah saya ketahui dalam pemrograman ke Python.


6
+1 karena tidak terburu-buru. Ini adalah cara terbaik untuk belajar bahasa, mencoba berbagai hal tetapi jangan terjun ke proyek produksi untuk belajar bahasa.
Chris

Jawaban:


49

6
Daftar hebat! Saya pernah mendengar Dive Into Python sangat bagus untuk programmer berpengalaman untuk memulai dengan Python.
Terence Ponce

Bekerja melalui Menyelam ke Python saat ini, sangat cepat dan sumber yang fantastis untuk programmer yang ingin belajar bahasa! Saya sarankan bekerja chp 2 & 3 untuk melihat bagaimana kelanjutannya, yang akan mengarahkan Anda dengan sangat baik dengan sintaks dan tipe data :)
invert

@Terence: Saya bisa setuju mengingat ini persis seperti yang saya lakukan. Berasal dari sarjana CSE menggunakan java, c, php (di tempat kerja) dan berbagai bahasa lainnya, buku ini membawa saya dengan cepat.
Chris

+1) untuk TheJangoBook dan videonya. Pemrograman Web Python juga bisa menjadi pilihan yang baik.
ravi404

15

Jangan menganggap ini terlalu serius, tapi ...

  • buat nama file app.pydengan konten berikut:

    from flask import Flask
    app = Flask(__name__)
    
    @app.route("/")
    def hello():
        return "Hello World!"
    
    if __name__ == "__main__":
        app.run()
    
  • asumsi Anda memiliki pip(python paket installer) diinstal melakukan hal berikut:

    $ pip install Flask
    $ python app.py
    * Running on http://localhost:5000/
    
  • Sekarang Anda dapat mengunjungi aplikasi web pertama di bawah localhost, port 5000.

Itu akan menjadi aplikasi web python pertama Anda. Semuanya setelah itu adalah "penyempurnaan" dalam struktur aplikasi, fungsionalitas dan penampilan.


8

Jika pengembangan Web dalam python adalah apa yang Anda cari, maka setelah pemahaman menyeluruh tentang python, saya sarankan Anda melihat pada Flask. Django dan kerangka kerja tumpukan penuh lainnya pasti akan membuat hidup Anda jauh lebih mudah tetapi secara keseluruhan akan meninggalkan Anda dengan perasaan yang tidak lengkap seolah-olah Anda belum belajar banyak. Flask IMHO, adalah kerangka kerja paling mengagumkan di python seperti yang sekarang, tapi ya itu hanya pendapat saya.


4

Saya juga ingin merekomendasikan Python Koans untuk belajar: http://github.com/gregmalcolm/python_koans

Mereka sangat mirip dengan Ruby Koans (banyak yang langsung porting) dan cukup keren.


1
maukah Anda menjelaskan lebih lanjut tentang apa yang dilakukannya dan mengapa Anda merekomendasikannya untuk menjawab pertanyaan yang diajukan? "Jawaban khusus tautan" tidak diterima di Stack Exchange
agas

3

http://learnpythonthehardway.org

Adalah buku online gratis yang berisi serangkaian 52 pelajaran dengan python.

Dengan memulai pelajaran 1 dan mengerjakan pelajaran 52 Anda harus belajar cukup untuk menganggap diri Anda seorang programmer yang kompeten dalam bahasa python.

Setiap pelajaran memiliki contoh kode yang harus Anda luangkan waktu untuk mengetik dan LARI lalu ALTER untuk melihat bagaimana itu mengubah hasil.

Ini adalah proses dimana kebanyakan orang yang saya kenal umumnya belajar pemrograman.


1
maukah Anda menjelaskan hal ini secara lebih rinci - bagaimana dan mengapa itu menjawab pertanyaan yang diajukan? "Jawaban khusus tautan" tidak diterima di Stack Exchange
agas

1
semoga di atas memenuhi kebutuhan Anda. Terima kasih untuk umpan baliknya.
Alex C

1
Anda seharusnya tidak menyalin-menempel latihan karena itu tidak akan membantu Anda belajar sama sekali. Dari bab pertama buku ini: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
Terima kasih Marco. Saya juga menyesuaikan jawaban untuk mencerminkan hal itu.
Alex C

0

Pengembangan web selalu kembali ke satu hal: dan itu adalah browser. Pelajari HTML, CSS, dan JavaScript dengan sangat baik, dan itu akan membantu Anda meskipun ada perubahan bahasa.

Www.w3schools.com adalah tempat yang bagus untuk mempelajari hal-hal ini, tetapi ketika datang ke CSS, seringkali sangat berguna untuk hanya duduk dan bermain dengannya. Temukan desain web yang keren dan implementasikan dalam HTML dengan tangan. Ini adalah keterampilan yang sangat, sangat perlu jika salah satu kode sisi server Anda menghasilkan HTML.

Selanjutnya, saya suka pendekatan logis Anda, tetapi mungkin bukan cara terbaik untuk melakukannya. Pendekatan yang lebih bermanfaat mungkin untuk menetapkan tujuan yang ingin Anda capai, dan belajar di jalan.

Memulai dengan Django mungkin bukan ide terbaik. Banyak keputusan yang mereka buat saat mendesain kerangka kerja hanya masuk akal jika Anda mengalami masalah yang mereka selesaikan secara langsung. Bahasa web pertama saya adalah php, dan cara paling efektif saya memahami praktik terbaik adalah dengan menulis kode yang jelek, rapuh, menyadari bahwa ada masalah, dan mencari solusi. Jika saya meneliti sebuah solusi sebelum saya memahami masalahnya, saya tidak dapat menerapkannya secara efektif.

Jika Anda bersedia meluangkan waktu untuk hal ini, mungkin memulai dengan set teknologi yang kurang abstrak seperti php mungkin merupakan pengalaman belajar yang hebat.


2
Saya pikir Anda merindukan apa yang saya katakan tentang saya sudah memiliki pengalaman dalam pengembangan web dan menjadi akrab dengan konsep pemrograman dasar. Saya sudah tahu HTML, CSS dan Javascript sebelum pindah ke JSP / Servlets. Tentang pendekatan (yang saya inginkan) untuk belajar Python, saya hanya ingin tahu bagaimana menerapkan apa yang sudah saya ketahui dalam pemrograman tanpa melewatkan beberapa detail / fitur yang ditawarkan Python.
Terence Ponce

Mungkin Anda harus mengklarifikasi posting Anda, karena Anda mengatakan bahwa Anda memiliki pengalaman pengembangan web dasar .... CSS, HTML dan JavaScript bisa sangat kompleks dan kuat. Saya hanya mencoba untuk menekankan betapa pentingnya mereka berinvestasi dalam pengembangan web apa pun.

Baik. Maaf soal itu. Saya akan memperbarui pertanyaan saya sekarang.
Terence Ponce
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.