Saya ingin memilih JavaScript sebagai bidang pengembangan utama saya, bersama HTML dan CSS untuk menjadi pengembang yang dikenal sebagai pengembang front-end . Tapi saya tidak tahu bagaimana menjadi seorang profesional JavaScript. Saya telah membaca banyak buku dan mempelajari bagian-bagiannya termasuk tipe data, sintaksis, penggunaan alat (seperti IDE, Debuggers, dll.), JQuery, dll. Tetapi ketika saya melihat beberapa kode JavaScript canggih termasuk perpustakaan terkenal, saya seperti " Saya tidak pernah bisa menulis kode itu ". Ada apa di sini? Langkah apa yang harus saya ambil yang tidak saya lakukan? Saya merasa saya kehilangan sesuatu di sini untuk menjadi pengembang JavaScript profesional. Saya juga menonton film pelatihan, termasuk film Douglas Crockford di Yahoo Theatre.
sumber
Jawaban:
Jawaban Anda adalah pengalaman. Saya khawatir tidak ada cara lain untuk menjadi baik tanpa latihan. Coba dan buat perpustakaan serupa dengan yang Anda lihat sebagai latihan. Teruslah membaca tetapi berlatih, berlatih, berlatih!
sumber
Betulkah? Coba dulu.
sumber
Lucu Anda harus mengucapkan pertanyaan Anda dengan cara ini. Sebagian besar buku tentang javascript dasar tidak membantu Anda memahami mengapa dan bagaimana aspek-aspek tertentu JavaScript harus digunakan untuk mencapai kode hebat. Apa yang BENAR-BENAR membantu saya memahami sisi yang lebih maju dari JavaScript serta praktik pengkodean terbaik adalah tulisan John Resig, insinyur utama JQuery.
http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=John+Resig
Terutama:
Teknik JavaScript Pro
Rahasia Ninja JavaScript
Ini membantu Anda memahami bagaimana fitur JavaScript canggih harus digunakan dan mengapa. Anda mungkin juga ingin membaca tentang Pola dan Prinsip Agile, dan khususnya tulisan-tulisan Martin Fowler untuk pemikiran yang lebih umum tentang praktik pengkodean terbaik.
sumber
Anda harus memprogram ... banyak.
Pelajari kode sumber proyek seperti jQuery, Node.js. Tambahkan CoffeScript atau ClojureScript ke gudang senjata Anda.
Lihatlah JavaScript MVC atau Backbone.js.
Periksa apa yang dibawa Google Penutupan ke tabel.
Dan tentu saja, tandai Jaringan Pengembang Mozilla.
sumber
Jika Anda memilih bidang ini, bersiaplah untuk dibayar lebih sedikit dan dianggap kurang profesional / baik daripada c / c ++ / c # / java / etc.
Ini biasanya terjadi, terutama dalam hal gaji. Sangat mudah untuk menemukan programmer js + html + css yang benar-benar bagus, tetapi agak sulit untuk menemukan programmer c / c ++ / c # yang benar-benar bagus. Ini adalah masalah yang dihadapi perusahaan tempat saya bekerja (sekitar 300 karyawan) sekarang. Bahkan siswa yang memiliki pemahaman yang baik tentang bahasa tersebut dibayar lebih baik daripada pengembang JS berpengalaman.
Sebagian besar pengembang JS belajar dari tutorial dari internet, dan berpartisipasi dalam proyek open-source, yang merupakan hal yang cukup baik - mungkin menemukan beberapa proyek FOSS yang menggunakan JS secara berat (pengembangan front-end untuk gnome 3, untuk memberi Anda contoh) dan berkontribusi padanya. Dengan cara ini Anda bisa mendapatkan pengalaman dengan alat dan bahasa.
Selain itu, temukan beberapa buku yang bagus di Amazon dan bacalah. Tapi ingat, CODING adalah cara Anda belajar, jadi mulailah berkembang, selain membaca;)
sumber
Saya setuju dengan apa yang dikatakan di atas, Anda hanya perlu latihan. Penting juga untuk memahami pola desain yang digunakan dalam kode javascript kelas atas. Saya pikir begitu Anda memahami pola yang digunakan dan mengapa mereka menggunakannya, mungkin akan menjadi jauh lebih jelas. Pola Desain JavaScript Pro oleh Harmes dan Diaz adalah awal yang baik. Lihat juga Pola Desain Esensial Esensial Osmani untuk Pemula .
sumber
Ninja biasanya hanya petani atau petani yang mengenakan pakaian penyamaran identitas yang sederhana namun licik. Tetapi apa yang membuat orang sederhana menjadi ninja sejati adalah tujuan yang bermakna, menariknya dan kemudian tidak terbunuh sendiri. Jadi dengan itu dalam pikiran mengapa Anda tidak menemukan setan samurai javascript, mempertajam Anda coding katana dan melihat apakah Anda dapat mengambil badboy tanpa membunuh diri sendiri. Jika Anda berhasil, Anda akan membuat dunia menjadi tempat yang lebih baik bagi petani kode lainnya dan menemukan bahwa Anda telah menjadi ninja dalam prosesnya. Itu atau kamu akan mati.
Semoga berhasil!
sumber
Saya tidak akan memanggil saya master dalam javascript, tapi cukup bagus. Baca, pahami, dan kode dari seperti buku-buku ini:
http://www.amazon.com/Pro-JavaScript-Techniques-John-Resig/dp/1590597273/ref=sr_1_2?s=books&ie=UTF8&qid=1320176633&sr=1-2
http://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockford/dp/0596517742/ref=pd_sim_b_1
Itu akan mencakup dasar-dasarnya. Kemudian jelajahi seluruh bidang. Cobalah untuk belajar sebanyak mungkin. Pelajari cara men-debug kode di Firebug. Pelajari beberapa kerangka kerja javascript (agak sopan) - Jquery menjadi yang termudah. Mungkin Dojo toolkit, Mootools, dan Prototype. Cobalah membaca dan memahami kode sumber kerangka kerja javascript. Buat plugin di jQuery. Pelajari pola Modul. Banyak yang harus dipelajari ..
Tetapi aturan yang paling penting dari semuanya adalah:
Kode dan cobalah untuk memperbaiki diri Anda setiap hari!
Dan jangan hanya menjadi pecandu kerangka kerja yang membutuhkan plugin atau kerangka kerja terbaru untuk melakukan sesuatu yang baik. Cobalah untuk menguasai bahasa inti dan lakukan plugin atau widget dari bawah ke atas sendiri. Jika Anda tidak bisa melakukan itu, berarti Anda belum terlalu hebat.
sumber
Praktik pasti - tetapi, IMHO, lebih baik tidak hanya melakukan pekerjaan yang sibuk untuk latihan; menemukan masalah nyata untuk dipecahkan. Pikirkan sesuatu yang keren untuk dicapai, dan pergi menulisnya. Temukan seseorang yang ingin beberapa pekerjaan javascript dilakukan secara gratis (seperti untuk amal atau nirlaba) atau dengan cara murah, dan tuliskan kode untuk mereka. Dengan kata lain, praktik terbaik Anda akan terjadi dengan melakukan sesuatu yang bermakna.
Juga - saya pikir javascript adalah bahasa yang sangat menarik dan sebenarnya sangat kuat - tetapi saya belajar lebih banyak tentang pemrograman secara umum di kelas C perguruan tinggi yang saya ambil bertahun-tahun yang lalu daripada dari satu sumber sebelum atau sesudahnya. Belajar C datang dengan belajar tentang bagaimana komputer berpikir, tentang memori dalam bit dan byte, dan saya memiliki guru yang cukup baik yang menekankan beberapa praktik pemrograman dasar yang sangat solid. Orang yang mengatakan belajar bahasa lain tidak sepenuhnya salah - mempelajari bahasa lain sedikit mengubah pandangan Anda tentang pemrograman dan membuat Anda menghargai persamaan dan perbedaan.
sumber
Kode javascript yang Anda temukan dalam aplikasi web biasa cukup mudah, terutama jika Anda menggunakan kerangka kerja seperti jQuery. Menulis plugin khusus sedikit lebih maju, tetapi masih hanya memerlukan beberapa konsep dasar. Ini cukup untuk sebagian besar tujuan - di lingkungan perusahaan Anda dapat benar-benar mengesankan klien dengan beberapa teknik sederhana dari pengembangan internet karena UI yang ada biasanya mengerikan - tetapi tidak benar-benar level ninja.
Jika Anda ingin benar-benar mengetahui javascript, Anda perlu sesuatu yang sedikit lebih menantang di mana Anda akan mengalami keterbatasan sistem dan dipaksa untuk menerapkan teknik yang lebih maju. Anda dapat menemukan beberapa kode semacam ini dalam kerangka kerja yang harus berurusan dengan kompatibilitas browser, tetapi ini sebagian besar merupakan masalah yang dipecahkan, dan juga agak membuat frustrasi untuk bekerja dengannya. Ada banyak opsi yang lebih menarik di sekitar aplikasi html5 - cobalah untuk mengimplementasikan sesuatu yang biasanya tidak dilakukan di browser.
Contoh saya sendiri tentang ini adalah klien git. Javascript tidak menangani data biner dengan sangat baik, dan implementasi naif mengunci UI selama beberapa menit dan mengalokasikan objek baru dengan cukup cepat untuk kehabisan memori sebelum GC dipicu. Mengoptimalkan sesuatu seperti ini mengarah pada pembelajaran dengan tepat apa yang terjadi ketika kode dijalankan, dan karena pemahaman ini tidak mungkin dengan kode yang tidak terstruktur, Anda akan belajar menulis javascript dengan struktur yang jelas yang berlaku untuk aplikasi yang lebih tipikal juga.
sumber
Berlatih di lapangan dan JQuery. Ini adalah saran terbaik yang bisa saya berikan.
sumber
Jangan belajar JavaScript sebagai bahasa pertama Anda, dan jangan mencoba meniru gaya pemrograman yang Anda temukan di perpustakaan JavaScript. Sebagian besar programmer JavaScript adalah hack yang memberi saya bahasa pemrograman nyata seperti C ++, C, Java, dll. Hasilnya adalah bahwa kode JavaScript mereka adalah kumpulan kode spaghetti yang tidak difragmentasi dan tidak dapat diuraikan. Saya tahu, karena saya bekerja sebagai insinyur perangkat lunak C ++ / Java / C # dan sekarang saya masuk ke dunia JavaScript.
Jadi jika Anda ingin menjadi pemrogram perangkat lunak JavaScript yang hebat, pelajari terlebih dahulu beberapa bahasa pemrograman lain dan kemudian kembali ke JavaScript.
sumber