Sumber daya dan alat yang bagus untuk pengembangan JavaScript modern dan berat? [Tutup]

22

Saya tertarik melakukan beberapa proyek yang melibatkan banyak penggunaan JavaScript. Yaitu game kanvas berbasis HTML5, berpotensi menggunakan node.js juga. Saya tertarik untuk mempelajari praktik terbaik, alat, dan sumber daya modern untuk JavaScript.

JavaScript sulit untuk diteliti karena Anda akhirnya mengarungi banyak bahan yang benar-benar ketinggalan jaman, berasal dari saat-saat "JavaScript" adalah kata empat huruf.

Jika Anda sangat terlibat dalam pemrograman JavaScript ...

  • Editor teks atau IDE apa yang Anda gunakan?
  • Kerangka pengujian unit apa yang Anda gunakan?
  • Apakah Anda menggunakan Selenium, atau yang lain?
  • Alat apa lagi yang Anda gunakan?
  • Komunitas apa yang ada yang membahas kemajuan terkini dalam JavaScript?
  • Buku apa yang Anda baca / lihat?
  • Blog apa yang Anda baca?
Matt Greer
sumber
8
jsfiddle.net
davidk01
Sepasang blog hebat yang saya baca: dailyjs.com - Beberapa posting hebat mengenai perpustakaan dan kerangka kerja baru di arena JS dengan fokus besar pada Node.js. perfectionkills.com - Tidak terlalu sering diperbarui tetapi ketika Kangax menulis artikel, dia benar-benar mendalam, Anda akan menyadari betapa banyak JS yang tidak Anda ketahui.
Matt Molnar
Editor web Adobe Brackets: github.com/adobe/brackets - kebanyakan ditulis dalam javascript menggunakan kerangka kerja kromium tertanam. Juga sebuah artikel menarik tentang bagaimana mereka membangun editor Kurung itu (berbicara tentang alat, kerangka kerja yang digunakan): ec2-174-129-28-157.compute-1.amazonaws.com/2012/06/26/…
Czarek Tomczak
Wow, bisakah pertanyaan ini menggunakan pembaruan.
Erik Reppen

Jawaban:

19

Daftar saya adalah:

Buku-buku sudah ketinggalan zaman begitu mereka mencapai rak (biasanya).

RDL
sumber
7
Selain itu, saya juga menambahkan pusat dokumen mozilla di bagian referensi.
Trezoid
2
+1, itu cukup banyak dalam daftar saya, tetapi saya juga akan menambahkan YUI Compressor (atau kompiler Penutupan Google).
Demian Brecht
Pagespeed juga bagus untuk opsi "Profile Deferrable Javascript". Tidak sepenuhnya alat pengkodean JS, tetapi masih sangat berguna.
Ed James
2
@RDL - yang mana, jika ada plug-in javascript untuk vim yang Anda gunakan?
Mike H
Saya perhatikan bahwa tidak ada alat / kerangka kerja pengujian unit yang direkomendasikan di sini, meskipun sangat sangat
ditingkatkan
9

Editor teks atau IDE apa yang Anda gunakan?

Semua memiliki dukungan untuk fitur pengembangan aplikasi web lengkap (javascript, HTML, CSS dll). Pilih Aptana, jika Anda mencari solusi freeware.

Kerangka pengujian unit apa yang Anda gunakan?

  • Selenium

    1. Memiliki multi browser supoort [IE, Firefox, Chrome, Safari, Opera dan Konqueror] di berbagai platform [Windows, Linux, Macintosh dll].
    2. Mendukung banyak bahasa pemrograman untuk menulis test case [HTML, Java, C #, Perl, PHP, Python, Ruby dll].
    3. Eksekusi jarak jauh (kotak uji berada di satu mesin dan eksekusi di browser dapat terjadi di mesin lain).
    4. Anda dapat menjalankan regresi bahkan dalam mode yang diperkecil browser juga

Alat apa lagi yang Anda gunakan?

  • Firebug, IE Dev Tool Bar dll, alat bawaan browser untuk debugging
  • Anda dapat menggunakan beberapa kerangka kerja Perpustakaan UI seperti JQuery, YUI, ExtJS dll untuk pengembangan cepat.
  • Fiddler / HTTP Watch untuk men-debug permintaan dan respons HTTP.
  • JSLint untuk memverifikasi beberapa masalah sintaksis javascript.
  • YUICompressor untuk minifikasi kode HTML, CSS dan Javascript.
  • DynaTrace / YSlow / Page Speed ​​- untuk pengujian kinerja
  • sIEve untuk mendeteksi kebocoran memori
  • Penguji IE untuk menguji aplikasi Anda pada berbagai versi IE.

Buku apa yang Anda baca / lihat?

Lebih

Dhanunjai
sumber
1
Selenium adalah alat pengujian integrasi, bukan pengujian unit! Sisa dari ini cukup tepat menurut pendapat saya: D
Ed James
1
jQuery adalah pustaka lebih dari UI, jQueryUI adalah pustaka yang sepenuhnya terpisah.
StuperUser
@StuperUser terletak. jQuery adalah perpustakaan untuk manipulasi DOM, apa pun yang menggunakannya sebagai palu besar dan "alat emas yang menyelesaikan semua masalah"
Raynos
@ Raynos, jQuery adalah palu besar ketika digunakan untuk manipulasi DOM ketika JavaScript akan melakukannya. Ini tentu saja memperoleh status meme-layak untuk reputasinya sebagai obat mujarab. Seperti yang kami berdua katakan, menyebutnya "Perpustakaan UI" tidak akurat.
StuperUser
@StuperUser: Saya kira dia benar-benar berarti jQuery UI
Lie Ryan
6

Saya masih merasa seperti alat yang tersedia untuk pengembangan JavaScript yang serius jauh di belakang di mana seharusnya mereka berada tetapi di sini ada beberapa yang saya gunakan.

  • Untuk pengembangan saya menggunakan VIM tetapi Anda mungkin menemukan netbeans patut dicoba.
  • Untuk pengujian unit melati itu bagus tapi tidak sempurna.
  • EnvJs dapat memberi Anda cara yang bagus untuk menjalankan tes unit Anda pada baris perintah
  • Saya sangat merekomendasikan bagian webdriver selenium 2
  • Suite penutupan google lengkap sangat berguna
  • Saya juga merekomendasikan Anda tahu cara menggunakan google chrome dan IE untuk debugging di samping firebug karena mereka semua memiliki keistimewaan yang dapat mengirim Anda ke segala macam jalan buntu.
  • Ada beberapa perpustakaan yang luar biasa untuk JavaScript yang cukup penting untuk pengembangan yang serius. Saya akan merekomendasikan Anda mulai dengan jQuery tetapi ada banyak orang lain yang sama baiknya.
  • juga penulis jQuery John Resig memiliki blog yang bermanfaat
Duncan Grant
sumber
pertanyaan yang sama seperti yang saya ajukan untuk RDL: yang mana (jika ada) vim plug-in yang Anda gunakan untuk javascript?
Mike H
@ Mike Saya tidak menggunakan plugin khusus javascript untuk vim. Saya akan merekomendasikan jsctags yang akan diintegrasikan dengan plugin apa pun yang menggunakan ctag
Duncan Grant
5

Yah ... walaupun jauh dari selesai, saya saat ini adalah pengembang utama untuk proyek open source lintas-platform baru:

JS Studio

Ini screenshotnya:

Beberapa fitur lebih lengkap daripada yang lain ... tetapi di sini adalah tujuan yang dimaksudkan:

  • Penyorotan sintaksis (cukup lengkap)
  • Organisasi proyek (sebagian dilaksanakan)
  • Otomatis selesai (termasuk penyelesaian untuk kerangka kerja JS umum seperti jQuery, dll.)
  • Membangun sistem (untuk menggabungkan file, minifikasi, dll.)
  • GUI yang dapat dikembangkan (melalui ekstensi JavaScript)
  • Penomoran baris (semacam selesai), bungkus kata, warna yang dapat dikonfigurasi untuk penyorotan sintaksis

Saya telah menyiapkan build harian untuk Windows dan Anda dapat menemukan build terbaru di sini: http://files.quickmediasolutions.com/jsstudio/

Nathan Osman
sumber
Ini terlihat menarik. Saya telah mencari IDE JavaScript yang bagus. Apakah ada biner yang bisa diunduh? Saya tidak melihat apa pun di halaman web.
Jonas
@Jonas: Sayangnya, pada tahap awal ini, hanya ada biner untuk Ubuntu. Tapi mudah-mudahan saya akan punya waktu untuk membuat biner Windows lebih jauh.
Nathan Osman
@Jonas: Windows build awal di sini - beberapa hal belum berfungsi, tetapi Anda setidaknya dapat membuka / menyimpan file dan beberapa hal lainnya.
Nathan Osman
Adakah perkembangan baru di front ini?
Noctis
@Noctis: Sedihnya, tidak. Saya mengalami beberapa komplikasi dalam mengimplementasikan penyelesaian kode dan proyek ini pada dasarnya tidak digunakan selama satu atau dua tahun terakhir.
Nathan Osman
4

Dalam kategori 'alat lain', saya menggunakan CoffeeScript (bahasa yang mengkompilasi ke JavaScript), karena itu menghilangkan sintaks Javascript sakit memaksakan pada saya.

list.sort (a, b) -> a.isSmaller(b)

melawan

list.sort(function(a, b) { return a.isSmaller(b) });

Orang bisa berargumen, secara teknis itu bukan javascript lagi, tetapi "perasaan" coffescript adalah, bahwa itu hanya lapisan tipis.

keppla
sumber
3

API untuk pustaka jQuery http://api.jquery.com/ dan salinan jQuery In Action yang disorot dengan baik . Baca dari depan ke belakang lalu ikuti http://twitter.com/jquery untuk mendapatkan pembaruan di rilis baru.

Anda telah mengatakan bahwa buku-buku ketinggalan zaman, tetapi Anda harus mendapatkan tingkat dasar pengetahuan untuk membangun, kemudian setelah Anda mempercepat, tetap up to date.

Qunit untuk pengujian unit dan Firebug serta sorotan sintaksis JavaScript untuk Firebug untuk debugging.

StuperUser
sumber
0

Mudah-mudahan tidak akan dinyalakan terlalu banyak untuk ini, tetapi jika hal-hal seperti IDE dan perkakas penting bagi Anda, maka saya sangat menyarankan untuk melihat Google Web Toolkit . Anda menulis kode di Java di Eclipse, yang sangat membantu menulis kode Anda. Ini memberikan penyelesaian kode yang sangat efektif, utilitas refactoring dan bantuan untuk debug dan navigasi melalui basis kode Anda.

Anda masih bisa masuk ke Javascript mentah jika perlu.

Kode Anda kemudian dikompilasi ke dalam JS yang dioptimalkan dan diperkecil. Saya telah menggunakan pendekatan ini dengan sukses di lingkungan JS seperti node.js-DOMless.

Untuk game HTML5, lihat PlayN yang merupakan perpustakaan yang menggunakan GWT untuk hal itu.

funkybro
sumber
Jika Anda akan mengkompilasi ke JavaScript dari bahasa yang berbeda, ada banyak pilihan - Anda tidak harus menggunakan Java sama sekali! Misalnya, kami menggunakan js_of_ocaml di kantor dengan benar sehingga kami dapat menulis kode kami di OCaml dan menjalankannya di browser.
Tikhon Jelvis
0

Saya melakukan banyak pengembangan JavaScript. Banyak yang disebutkan tetapi, inilah yang saya gunakan:

  • Notepad ++
  • Pembakar
  • IE debugger (F12) dan debugger Chrome (F12 pada Windows)
  • Saya menggunakan Stack Overflow terutama untuk pertanyaan. Datang ke sini juga terbukti sangat membantu.
  • Buku pertama yang saya gunakan adalah JavaScript: Panduan Definitif saat kembali. Saat ini saya tidak menggunakan buku sebanyak saya menggunakan situs seperti MDN atau dokumen MSDN.
  • Kami menggunakan beberapa jQuery di tempat-tempat yang membuat hidup kami juga lebih mudah.
  • Untuk pengujian unit, kami membangun alat uji kami sendiri.
Corv1nus
sumber
0

Saya dapat merekomendasikan buletin JavasScript Weekly . Nya

Kumpulan berita dan artikel JavaScript gratis sekali seminggu sekali.

Saya belum membaca buku-buku John Resig, tetapi saya telah mendengar dan membaca umpan balik yang baik. Bukunya yang baru, Secrets of the Ninja Ninja akan segera diterbitkan.


sumber
Bisakah seseorang menjelaskan downvote?