Apakah javascript layak dipelajari jika Anda tidak berencana menjadi pengembang web?

26

Saya mendengar Javascript adalah bahasa lengkap seperti c ++. Apakah ini benar? Apa lagi yang baik untuk pemrograman selain hal-hal web?

Mat
sumber
sebenarnya ini hanya baik untuk webstuffs, karena memerlukan beberapa bentuk parser, yang sebagian besar hanya dibangun di browser web. Maksud saya, Anda bisa membuat parser JS Anda sendiri untuk penggunaan desktop, tetapi daripada itu tidak akan menggunakan sebagian besar javascript, yang berinteraksi dengan html pada halaman Anda ...
dkuntz2
3
@ DKuntz2 Saya pikir Chrome V8 JS Engine adalah perpustakaan independen dan Anda dapat menggunakannya kembali di aplikasi desktop. Anda masih harus mengembangkan API Anda sendiri. Tautan: code.google.com/apis/v8/embed.html
Vitor Py
1
Juga spidermonkeyada Mozilla javascriptparser. Ini juga mandiri dan dapat digunakan dalam aplikasi apa pun.
jgauffin
@ dkuntz2 Javascript tidak hanya baik untuk "hal-hal web" - Saya menggunakan node.js sebagai alat skrip tujuan umum, dan untuk mengembangkan aplikasi desktop.
Anderson Green
@VitorBraga Saya pikir mengembangkan aplikasi dengan node.js akan menjadi salah satu pilihan yang baik - ia memiliki satu set perpustakaan yang komprehensif yang berguna untuk tugas-tugas skrip tujuan umum seperti mengedit gambar dan membaca / menulis file.
Anderson Green

Jawaban:

23

Saya pikir ini layak untuk dipelajari karena sangat berbeda dengan bahasa OO Anda saat ini dan paling tidak Anda akan belajar paradigma pemrograman yang berbeda.

Bisakah ini berguna di mana saja selain di browser? Tentu: lihat node.js , yang menggunakan asyncronicity javascript untuk membuat platform dev yang murni non-blocking, dan couchapps , yang memungkinkan Anda membangun seluruh aplikasi web dengan itu.

Jika Anda percaya pada beberapa orang, javascript akan menjadi bahasa utama di masa depan, murni karena penggunaannya yang luas. Ini adalah bahasa yang paling populer di github, dan hampir setiap pengembang memiliki beberapa paparan. Dengan proyek-proyek seperti node.js, javascript memiliki masa depan yang menarik.

Ben Hughes
sumber
6

Sejauh yang saya tahu, selain pemrograman web, JavaScript juga digunakan untuk beberapa lingkungan desktop baru. Sebagai contoh, GNOME 3 (lingkungan desktop untuk Linux) menggunakan JavaScript + CSS untuk memungkinkan pengguna dan pengembang menyesuaikan lingkungan desktop mereka.

Brian Hsu
sumber
KDE dapat mendukungnya juga karena Qt memiliki QtScript tetapi saya tidak yakin akan hal ini.
Vitor Py
3

Walaupun Javascript adalah bahasa lengkap secara sintaksis, berorientasi objek, dll., Sebagian besar Javascript tidak memiliki antarmuka untuk berinteraksi dengan hal-hal yang belum ada di dalamnya. Ini dimaksudkan untuk mengakses dan memodifikasi data XML, misalnya, tetapi tidak benar-benar menyediakan banyak antarmuka ke perangkat keras.

Pertanyaan tentang Stack Overflow ini membahas beberapa contoh di mana ia berada dan dapat digunakan di luar pemrograman web.

Michael
sumber
2

Saya akan mengatakan bahwa bahasa dengan kemampuan dinamis dan fungsional layak untuk dipelajari, tetapi tidak harus berupa Javascript.

LISP mengambil konsep-konsep di atas lebih jauh dari Javascript, dan dengan demikian dianggap sebagai bahasa yang sangat baik untuk dipelajari, bahkan jika Anda tidak perlu menggunakan LISP itu sendiri.

jonathanconway
sumber
2

JavaScript dapat digunakan untuk skrip shell "out of the box" di kedua windows dan mac:

Menurut pendapat saya, pada Windows itu adalah pilihan yang paling enak, karena alternatifnya adalah file VBScript dan BAT (setidaknya jika Anda tidak dapat mengandalkan instalasi tambahan).

Joeri Sebrechts
sumber
Ada juga PowerShell di Windows.
JBRWilkinson
PowerShell tidak diinstal secara default dengan versi windows pra-2008/7 sejauh yang saya tahu.
Joeri Sebrechts
2

Javascript juga digunakan untuk skrip Greasemonkey yang dapat Anda gunakan untuk menyesuaikan atau menambahkan fungsionalitas ke situs yang Anda kunjungi. (Tautan itu menunjuk ke ekstensi Firefox, tetapi juga tersedia untuk peramban lain)

Secara teknis tentu saja ini masih "hal-hal web", tetapi berbeda karena pengembang web bukan (hanya) yang menggunakannya.

Frits
sumber
1

Tidak ada gunanya belajar di luar dasar-dasar.

Bahkan jika Anda bekerja di aplikasi web, tetapi di backend, curahkan sumber belajar Anda dalam mata pelajaran yang lebih terkait dengan bidang Anda. Javascript hanyalah bahasa lain tanpa pesan khusus yang akan memperkaya Anda secara signifikan.

Daftar Sugra
sumber
2
Saya tidak setuju. Ini adalah satu-satunya bahasa berbasis prototipe yang tersebar luas. Selain itu, di antara bahasa yang tersebar luas, ia memiliki salah satu dukungan terbaik untuk penutupan. Jadi seseorang dapat belajar sesuatu yang berharga dengan menggunakannya. Akhirnya, sangat cepat untuk bahasa yang ditafsirkan.
Andrea
@Llistes_Sugra Jika Anda serius memegang dan meyakini pendapat itu, Anda tidak cukup tahu tentang JavaScript. Saya sarankan Anda mempelajari lebih lanjut tentang hal itu dan melihat apakah Anda ingin merevisi pendapat ini; Saya hampir yakin Anda akan
Jay
1

Ada beberapa teknologi lain berdasarkan Javascript yang bisa Anda pelajari sebagai gantinya. Mempelajari mereka setidaknya akan membuat Anda memahami sintaks javascript ketika Anda menjalankannya membaca kode sumber untuk halaman web. Dan akui saja, kita semua mengatakan kita tidak akan pernah melakukan X , tetapi pada akhirnya di beberapa titik kita selalu melakukannya. Setidaknya sedikit.

Bahasa yang mirip javascript untuk memeriksa adalah bahasa QML Qt baru , yang javascirpt seperti sintaks tetapi untuk GUI aplikasi normal. Sangat menarik untuk dimainkan, dan Anda akan belajar beberapa javascript dalam proses tidak-menulis-halaman web.

Wes Hardaker
sumber
1

Saya akan menambahkan ini sebagai komentar pada jawaban yang diterima tetapi kemudian menyadari bahwa mungkin lebih baik disajikan sebagai jawaban yang terpisah. Yang mengatakan, itu dimaksudkan lebih sebagai pelengkap untuk jawaban yang diterima daripada jawaban yang bersaing.

Ekstensi skrip

Ada banyak mesin Javascript yang tersedia untuk sebagian besar bahasa besar yang dapat Anda embed dalam suatu sistem. Hal ini menjadikannya pilihan yang baik untuk memperluas platform Anda dengan kemampuan scripting dan mengalahkan menciptakan bahasa Anda sendiri. Anda langsung mendapatkan semua materi pembelajaran sehingga mendapatkan sumber daya untuk mengonfigurasi dan membuat skrip sistem Anda akan jauh lebih mudah.

Newtopian
sumber
1

Javascript adalah bahasa dasar yang bagus

Ini :

  • kuat
  • mudah untuk dipelajari
  • mendukung paradigma prosedural dan berorientasi objek
  • cepat untuk menulis dan mulai bekerja
  • mempopulerkan banyak konsep bahasa modern - penutup, fungsi anonim, pemrograman asinkron / event-driven, tipe / inferensi dinamis
  • memiliki alat yang hebat (editor, runtime, alat serat, browser)
  • memiliki dukungan online yang luar biasa dengan banyak komunitas aktif
  • dapat melakukan fungsi matematika
  • memiliki kemampuan grafis (via HTML / Kanvas)
  • dapat menggunakannya untuk menulis Aplikasi

Saya pribadi percaya itu layak dipelajari bahkan jika Anda tidak akan menggunakannya setiap hari. Ini akan memperluas pikiran Anda sehingga Anda mempertimbangkan berbagai solusi saat menggunakan bahasa lain seperti C ++ atau C # - misalnya solusi Iteration versus Algorithmic, pengetikan dinamis dan inferensi tipe.

Saya telah melihat orang menggunakannya untuk memecahkan angka / kesedihan data lebih cepat daripada alat profesional, dengan menempelkan data mereka ke area teks HTML pada halaman yang mereka buat dengan beberapa kode JS di belakang untuk mengerjakan data.

Apa lagi manfaatnya?

Menyematkan sesuatu yang lain di dalam:

Semua perusahaan tempat saya bekerja dalam 12 tahun terakhir telah membangun produk komersial dan alat pengembangan internal yang menggunakan JavaScript (atau kerabat dekat - ECMAScript, ActionScript, dll.) Sebagai fondasi karena mudah dipelajari, dengan mudah- implementasi terintegrasi (gratis) siap digunakan (SpiderMonkey dan Microsoft Active Scripting SDK) dan kinerjanya 'cukup baik' untuk memulainya dan terus menjadi lebih baik.

Sebelum jQuery / Prototype dan seluruh gerakan AJAX datang, pilihan JS tampak tidak jelas - mengapa tidak menggunakan VBA (bergidik), sesuatu yang lex + yacc-mampu atau roll bahasa Anda sendiri? Kekuatan JS sebagai bahasa yang dikombinasikan dengan widget / kerangka kerja yang kaya berarti tidak banyak kode yang perlu ditulis, sehingga solusi yang tidak menarik sangat menarik karena lebih banyak upaya dapat dihabiskan untuk sisa produk.

Karena bahasa telah meningkat dalam kemampuan dan kecepatan, taruhan pada JS telah terbayar. Dengan lebih banyak pengembang yang dapat grok JS, perekrutan juga lebih mudah.

JBRWilkinson
sumber