Apakah Javascript berkembang melampaui apa yang semula dirancang untuk dilakukan?


10

Saya telah berbicara dengan seorang teman tentang tujuan Javascript, kapan dan bagaimana itu harus digunakan, dll. Dia mengutip bahwa:

JavaScript dirancang untuk menambah interaktivitas ke halaman HTML

[...]

JavaScript memberi desainer HTML alat pemrograman

  • Penulis HTML biasanya bukan programmer, tetapi JavaScript adalah bahasa scripting dengan sintaks yang sangat sederhana! Hampir semua orang dapat memasukkan "potongan" kecil kode ke halaman HTML mereka. JavaScript dapat bereaksi terhadap peristiwa
  • JavaScript dapat diatur untuk dieksekusi ketika sesuatu terjadi, seperti ketika halaman selesai memuat atau ketika pengguna mengklik elemen HTML, JavaScript dapat membaca dan menulis elemen HTML
  • JavaScript dapat membaca dan mengubah konten elemen HTML. JavaScript dapat digunakan untuk memvalidasi data
  • JavaScript dapat digunakan untuk memvalidasi data formulir sebelum dikirimkan ke server. Ini menyelamatkan server dari pemrosesan ekstra
  • JavaScript dapat digunakan untuk mendeteksi browser pengunjung - JavaScript dapat digunakan untuk mendeteksi browser pengunjung, dan - tergantung pada browser - memuat halaman lain yang dirancang khusus untuk browser tersebut.
  • JavaScript dapat digunakan untuk membuat cookie - JavaScript dapat digunakan untuk menyimpan dan mengambil informasi di komputer pengunjung.

Namun, sepertinya Javascript mulai melakukan lebih banyak daripada hari ini. Teman saya juga menganjurkan agar tidak menggunakan fungsionalitas OOP Javascript, dengan mengklaim bahwa "Anda tidak boleh memproses data, hanya memvalidasi." Apakah Javascript benar-benar terbatas untuk memvalidasi data dan membuat grafik mencolok pada halaman web?

Dia kemudian mengklaim "Anda seharusnya tidak mencoba mengakses database melalui javascript" dan juga mengatakan "secara umum Anda tidak ingin melakukan pekerjaan berat Anda dalam javascript". Saya tidak bisa mengatakan saya setuju dengan pendapatnya, tetapi saya ingin mendapat masukan lebih banyak tentang ini.

Jadi, pertanyaan saya: Apakah Javascript berevolusi dari definisi di atas ke sesuatu yang lebih kuat, apakah cara kita menggunakannya berubah, atau apakah saya salah? Sementara saya menyadari ini adalah pertanyaan subjektif, saya tidak dapat menemukan informasi lebih lanjut tentang itu, jadi beberapa tautan akan baik, jika tidak ada yang lain. Saya tidak mencari perdebatan, hanya sebuah jawaban.


Saya juga bertanya-tanya "siapa" yang mendorongnya untuk melakukan itu dan mengapa?
NoChance

1
Saya akan menempatkan bahan sumber untuk memahami teman Anda tentang JavaScript sekitar tahun 1998.
Erik Reppen

Jawaban:


21

Orang yang menganggap JavaScript bukan bahasa pemrograman adalah orang yang berpendapat tentang JavaScript yang tidak seharusnya Anda hormati.

JavaScript adalah bahasa yang tumbuh secara organik terinspirasi oleh semantik Skema dan sintaksis Jawa. Tujuan awalnya bukan umum tetapi sekarang telah berkembang menjadi begitu.

JavaScript sebagai bahasa cocok untuk melakukan tugas apa saja jika cocok untuk itu. Lihatlah contoh-contoh seperti node.js di mana JavaScript memiliki akses ke lingkungan host yang terdiri dari fungsi IO yang memungkinkannya digunakan untuk pemrograman sisi server generik

Teman saya juga menganjurkan agar tidak menggunakan fungsionalitas OOP Javascript, dengan mengklaim bahwa "Anda tidak boleh memproses data, hanya memvalidasi." Apakah Javascript benar-benar terbatas untuk memvalidasi data dan membuat grafik mencolok pada halaman web?

Tidak, JavaScript adalah bahasa pemrograman, jika Anda ingin mewakili struktur data, algoritme, dan logika, gunakan alat yang ditawarkan bahasa. Secara khusus fungsi dan prototipe kelas 1 adalah alat yang ampuh.

Dia kemudian mengklaim "Anda seharusnya tidak mencoba mengakses database melalui javascript" dan juga mengatakan "secara umum Anda tidak ingin melakukan pekerjaan berat Anda dalam javascript". Saya tidak bisa mengatakan saya setuju dengan pendapatnya, tetapi saya ingin mendapat masukan lebih banyak tentang ini.

Salah, Di browser kami memiliki database yang disebut indexedDB yang kami akses dengan JavaScript. Ini adalah database yang dipanggang langsung ke dalam browser dan jika Anda ingin menggunakannya (dan Anda harus) maka Anda menggunakan JavaScript.

Perhatikan juga bahwa mongodb dan couchdb memungkinkan Anda untuk menggunakan javascript untuk menjalankan kueri adhoc pada database secara langsung.

Adapun angkat berat, dia sebagian benar. Jika Anda melakukan angkat berat, Anda harus melakukannya di C atau erlang. Meskipun perhatikan bahwa istilah "angkat berat" tidak jelas, misalnya saya tidak akan menyandikan atau mendekode video dalam JavaScript, saya tidak akan melakukan pemrosesan gambar dalam JavaScript (gunakan C). Saya tidak akan menemukan angka dalam JavaScript (gunakan fortran).

Apakah Javascript berevolusi dari definisi di atas menjadi sesuatu yang lebih kuat, memiliki cara kita menggunakannya berubah, atau apakah saya hanya salah

JavaScript ditulis dalam jangka waktu 2 minggu hanya untuk menampar fungsionalitas skrip kecil ke dalam HTML. Sejak itu telah tumbuh sangat parah. Sejak ES3 (1999) telah menjadi bahasa pemrograman tujuan umum yang kuat.


Itu juga yang saya pikirkan. Sekarang saya hanya perlu memikirkan bagaimana menyampaikannya kepada teman saya.
Elliot Bonneville

@ ElliotBonneville Bolehkah saya menyarankan busa cluebat besar ?

Hahaha, ya mungkin. :) Itu lucu.
Elliot Bonneville

"bahasa pemrograman tujuan umum yang kuat" yang penuh dengan gotcha yang akan bertahan selamanya karena kompatibilitas ke belakang: codeproject.com/Articles/182416/...
Den

@Den ya punya beberapa gotcha, tapi begitu juga C, C ++, PHP dan Java.
Raynos

9

Visi teman Anda secara efektif sangat usang, dan merindukan segala sesuatu yang terjadi sejak Google merilis GMail.

Sekarang, apakah ini berarti Javascript berkembang melampaui apa yang awalnya dirancang untuk dilakukan? Semacam. Tapi jangan lupa bahwa desainnya berubah sementara, dan akan berubah di masa depan sesuai dengan kebutuhan baru dari pengembang. Ini juga berlaku untuk bahasa populer lainnya. Misalnya, ketika versi pertama C # dirilis, tidak ada yang berharap untuk mengizinkan kode dinamis dalam desain. Sekarang DLR tersedia untuk beberapa tahun.


2

Bahasa selalu melampaui apa yang kita pikirkan di awal. Berbicaralah dengan siapa pun di awal C (atau C ++), apakah seseorang mengira bahwa bahasa akan ditemukan hampir di mana-mana sekarang. Saya kira tidak.

Setiap bahasa menang untuk dipelajari lebih lanjut / mendorong lebih jauh.

Saya setuju bahwa Javascript adalah / masih bahasa yang kurang dihargai, teman Anda bukan satu-satunya. Masalahnya bukan berpikir bahwa bahasa X atau Y buruk / tidak berguna, masalahnya adalah menyimpan ide ini selamanya. Dalam Ilmu Komputer / TI, semuanya berubah dengan cepat, dan itu masih akan banyak berubah di masa depan.

Itu sebabnya penting untuk terus belajar / berpikir di luar kotak ...


Saya tidak berpikir banyak orang bisa mengatakan bahwa JavaScript masih merupakan bahasa yang kurang dihargai. Bahkan, saya pikir itu bahasa paling populer di dunia.
Jim G.
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.