Apa Pengertian Server Side Scripting
Apa pengertian server side scripting. Pada saat ini, sebagian besar situs web menggunakan server side scripting / skrip sisi server untuk menampilkan secara dinamis semua data yang diminta oleh klien di layar.
Data ini biasanya dikumpulkan dari database yang disimpan di server dan dikirim ke klien (browser). Klien sekarang dapat melihat ini melalui kode skrip lain seperti JavaScript dan HTML.
Apa Pengertian Server Side Scripting
Daftar Isi
Manfaat penting dari skrip sisi server adalah memberikan akses ke pembuatan konten situs web kepada pengguna individu. Situs web dinamis dapat menyoroti atau menampilkan konten yang paling relevan bagi pengguna.
Proses ini bergantung pada kebiasaan dan riwayat pengguna. Keuntungan lain adalah dapat menyimpan informasi pribadi Anda. Untuk klarifikasi lebih lanjut, bila detail kartu kredit yang disimpan digunakan untuk pembayaran di masa mendatang.
Skrip sisi server memungkinkan Anda untuk berinteraksi dengan pengguna, dan mengirim pemberitahuan dan pembaruan melalui email atau saluran lainnya. Semua fitur ini memberikan pengalaman pengguna yang jauh lebih dalam.
Apa itu skrip?
Sebelum kita berbicara tentang skrip sisi server, pertama-tama kita perlu mengetahui beberapa dasar sebelum kita menyelami. Pertama, kita perlu tahu apa itu scripting? Kedua, apa perbedaan antara skrip sisi server dan skrip sisi klien?
Mari kita mulai dengan teksnya. Apa arti dari kata ini? Skrip berarti semua rangkaian perintah yang dapat dijalankan tanpa kompilasi (mengubah (dapat dibaca) kode sumber menjadi kode mesin).
NB. Semua bahasa scripting adalah bahasa pemrograman, tetapi tidak semua bahasa scripting adalah bahasa pemrograman!
Apa Pengertian Server Side Scripting
Sekarang, Anda mungkin bertanya pada diri sendiri, bagaimana mengubah bahasa tingkat tinggi menjadi bahasa tingkat rendah untuk implementasi? Namun, kompilasi tidak terjadi dalam bahasa scripting. Jawabannya adalah melalui interpretasi. Jawaban ini dijelaskan oleh skrip sisi server. Jadi apa artinya ini?
server side scripting berarti apa pun yang terjadi di server. Browser web berkomunikasi dengan server web melalui sesuatu yang disebut Hypertext Transfer Protocol (HTTP).
Pada saat Anda melakukan beberapa tindakan di browser Anda, seperti mengetik beberapa URL dan menekan tombol enter, permintaan HTTP dikirim dari browser Anda ke server target. kemudian server menunggu permintaan klien; Permintaan ini dikirim melalui apa yang disebut metode POST, GET, atau DELETE.
Server kemudian memproses permintaan saat tiba dan mengirimkan sesuatu yang disebut respons HTTP ke browser; Respons ini berisi string status yang menunjukkan apakah permintaan berhasil (misalnya, “HTTP/1.1 200 OK” untuk berhasil).
Badan respons permintaan akan berisi konten yang diminta, mungkin gambar, halaman HTML, atau yang lainnya. Dengan demikian, kita dapat mengatakan bahwa skrip server dijalankan dan diproses di server.
Client side scripting vs server side scripting
Mari kita jelaskan sisi server lebih detail dengan membandingkan sisi server dan sisi klien. Pertama, mari pelajari sedikit tentang skrip sisi klien. Skrip sisi klien mengacu pada eksekusi skrip seperti JavaScript di komputer klien, biasanya di browser. Karena JavaScript didukung secara luas, semua jenis skrip akan berjalan di sisi klien jika ditulis di dalamnya.
Bahasa skrip lain hanya diperbolehkan jika browser pengguna diperlukan. Berikut adalah contoh yang membahas keseluruhan proses.
Bayangkan Anda memiliki formulir validasi pengguna di mana formulir tersebut memvalidasi input pengguna, misalkan pengguna memasukkan nama pengguna dan kata sandinya, lalu mengklik tombol kirim.
Permintaan dari sisi klien (yaitu formulir dan browser web) akan masuk ke sisi server, dan kemudian skrip server akan memvalidasi input pengguna dan membandingkannya dengan data yang disimpan di database server.
Jika data yang dimasukkan benar, maka server akan merespon dengan status cascade dan mengirimkan teks respon cascade ke sisi client (web browser).
Jika tidak, itu akan merespons dengan baris status yang gagal, dan teks respons akan menjadi seperti ini (harap masukkan data dengan benar). Masih belum jelas? Mari kita ambil contoh lain.
Halaman web statis dan halaman web dinamis
Kami memiliki dua jenis halaman web di Internet: halaman web statis dan halaman web dinamis. Kami akan mengambil halaman web statis sebagai contoh skrip sisi klien dan halaman lain sebagai contoh skrip sisi server.
Halaman web statis sederhana, itu dikenal sebagai halaman web datar atau statis. Mereka diunduh dengan cara yang persis sama seperti di server web, ke browser klien.
Halaman web ini berisi informasi statis. Ditulis dalam bahasa seperti (HTML, CSS, JS, Bootstrap…). Konten hard code tidak dapat diubah oleh pengguna, hanya dari dalam kode itu sendiri.
Pada halaman statis, ketika server menerima permintaan apa pun dari browser menggunakan permintaan HTTP “GET”, ia mengirimkan respons ke sisi klien yang berisi dokumen dan status keberhasilan (200 OK) tanpa melakukan tindakan lebih lanjut.
Jika dokumen file tidak dapat dipulihkan karena alasan apa pun, status kesalahan dikembalikan. Dengan demikian, tidak ada interaksi antara browser dan data di server, dan tidak ada proses yang berjalan di sisi server.
Sekarang Anda mungkin berpikir halaman web statis itu luar biasa. Tapi apa yang Anda tidak tahu adalah bahwa ia memiliki manfaat! Beberapa situs yang lebih besar memiliki halaman statis. Keuntungannya:
Halaman web statis cocok untuk konten yang jarang perlu diperbarui atau diubah.
Tingkatkan keamanan untuk situs web yang kompleks. (Jika ada kerentanan keamanan, situs web canggih rentan terhadap serangan web shell.)
Efisiensi pengguna akhir ditingkatkan dibandingkan dengan situs web dinamis.
Menggunakan penyimpanan cloud alih-alih lingkungan yang dihosting akan menghemat uang Anda.
Sangat mudah untuk mengatur pengaturan keamanan, yang membuatnya lebih aman.
Di sisi lain, halaman web dinamis lebih kompleks daripada halaman statis. Halaman web dinamis berisi konten dinamis yang tidak di-hard-code tetapi dapat diubah oleh pengguna di sisi klien.
Ditulis dalam bahasa seperti (AJAX, PHP, ASP.NET…). Saat konten di situs web berubah secara teratur, seperti harga saham atau prakiraan cuaca, halaman web dinamis digunakan.
Konten halaman dinamis dihasilkan secara dinamis hanya jika diperlukan atau diizinkan untuk dibuat. Itu dibuat dari database di server. Misalnya, saat Anda melihat semua postingan yang dibuat oleh teman Facebook Anda di timeline Anda.
Apa yang terjadi adalah server menerima permintaan jenis “GET” dan banyak permintaan untuk hasil tertentu dari database server, kemudian menempatkan hasil tersebut ke placeholder HTML untuk hasil tersebut, dan kemudian menampilkan hasil yang dihasilkan di browser di sisi klien.
Jadi halaman timeline Facebook bersifat dinamis. Situs dinamis akan mengembalikan data URL yang berbeda berdasarkan input pengguna atau pengaturan yang disimpan, dan melakukan operasi lain sebagai bagian dari respons.
Jenis halaman web dinamis
1. Server-Side Dynamic Web Page / Halaman web dinamis server
Halaman web yang dibuat menggunakan skrip sisi server dan dikelola oleh server aplikasi. Pengaturan menentukan bagaimana setiap halaman web baru dibuat, termasuk bagaimana pemrosesan sisi klien tambahan diatur dalam skrip sisi server.
2. Client-Side Dynamic Web Page / Halaman web dinamis sisi klien
Halaman web dinamis sisi klien menggunakan skrip HTML untuk memproses halaman saat dimuat di browser. HTML di halaman yang dihasilkan diuraikan menjadi Model Objek Dokumen, atau DOM, yang mewakili halaman web yang dimuat seperti yang ditentukan oleh JavaScript dan bahasa skrip lainnya.
DOM kemudian dapat dimodifikasi secara dinamis atau disetel menggunakan metode yang sama di sisi klien. Meskipun halaman web bersifat dinamis di sisi klien, halaman tersebut masih dapat dihosting di host statis seperti Halaman GitHub atau Amazon S3 selama tidak berisi kode sisi server apa pun.
Teknologi dan bahasa yang digunakan klien dan server
1. Bahasa skrip client
Klien menggunakan browser seperti Chrome, Safari, Firefox, dll. Dan menggunakan bahasa seperti HTML, CSS, dan JavaScript.
HTML: Ini adalah dasar dari sebuah situs web dan salah satu blok bangunan terpenting dari pemrograman web. Menjelaskan bagaimana materi disusun.
CSS: Menyediakan cara untuk menata elemen grafis yang membantu membuat aplikasi web terlihat lebih menarik.
JS: Meskipun JavaScript dikembangkan khusus untuk tujuan ini, sekarang digunakan sebagai metode skrip sisi server oleh banyak Frameworks.
Bahasa skrip sisi server bertanggung jawab atas tiga komponen: server, basis data, API, dan aplikasi web sisi server. Saat browser meminta situs web yang menyertakan skrip sisi server, server web memproses skrip tersebut sebelum mengembalikan halaman ke browser.
Mengambil informasi dari database, melakukan perhitungan dasar, atau memilih bahan yang diperlukan untuk tampilan sisi klien adalah semua contoh pemrosesan skrip.
Skrip dijalankan dan hasilnya dikirim ke browser. Saat konten disajikan, server web menyingkirkan skrip pengguna akhir, membuat data dan kode sumber lebih aman.
2. Bahasa skrip server
Sejak diperkenalkannya CGI, banyak bahasa pemrograman untuk skrip sisi server telah muncul, termasuk PHP, Python, Ruby, ColdFusion, C#, Java, C++, dll. Beberapa di antaranya tercantum di bawah ini:
PHP: PHP adalah bahasa sisi server paling populer di web dan digunakan untuk mengambil dan mengedit data dari database. Ini banyak digunakan dengan database berbasis SQL.
PHP dibuat khusus untuk web dan saat ini menjadi salah satu bahasa pemrograman yang paling populer. Mudah diatur dan digunakan, bersaing dengan banyak framework modern dan berfungsi sebagai dasar untuk berbagai sistem manajemen konten. WordPress, Wikipedia dan Facebook adalah semua situs di PHP.
Python: Python adalah bahasa pemrograman cepat dengan lebih sedikit baris kode, yang membuatnya ideal untuk memasarkan produk dengan cepat. Python berfokus pada keterbacaan dan aksesibilitas, yang membuatnya cocok untuk pemula.
Ini adalah bahasa skrip tertua dan juga yang paling kuat. Jadi ini sangat ideal untuk proyek berorientasi objek. YouTube, Google, dan The Washington Post hanyalah beberapa contoh situs web berbasis Python.
Ruby: Bahasa pemrograman Ruby adalah pilihan yang bagus jika Anda mengharapkan logika kompleks di sisi database situs web Anda. Namun Ruby, tidak seperti Python, adalah kombinasi kesederhanaan dan kerumitan dengan kode pendek, dikombinasikan dengan lebih banyak fleksibilitas dan sumber daya tambahan.
Ruby menggabungkan fungsionalitas back-end dan database yang tidak dapat disediakan oleh PHP dan SQL saja, membuatnya ideal untuk startup dan situs web dengan lalu lintas tinggi dengan pemeliharaan rendah.
C#: C# adalah bahasa Microsoft .NET Framework, dan merupakan lingkungan yang paling banyak digunakan di web. Ini termasuk fitur terbaik dari C dan C++ untuk kinerja dan kemudahan penggunaan.
Bahasa ini bagus untuk membangun aplikasi Windows, dengan dukungan untuk teknologi lintas platform seperti Xamarin. Selain itu, bahasa ini juga dapat digunakan untuk mengembangkan aplikasi untuk smartphone iOS dan Android.
Ada juga kerangka kerja sisi server untuk bahasa seperti:
Ruby on Rails: Sistem Ruby adalah cara paling umum untuk menggunakan Ruby. Permatanya mencakup plugin dan pustaka kode yang mempermudah pengembangan.
Django: framework Python ini dibuat untuk membantu pengembang bekerja di lingkungan yang berubah dengan cepat. Pinterest, NASA, dan Pitchfork semuanya adalah halaman Django.
ASP.NET: Platform Microsoft ini adalah framework perusahaan yang paling banyak digunakan karena mendukung banyak bahasa pemrograman untuk satu proyek.
Hasilnya, aplikasi yang sama dapat dibangun menggunakan CLI di C# dan C++ (Common Language Interface). Pembaruan terbaru untuk ASP.NET 5 kini tersedia untuk pertama kalinya pada platform non-Windows.
Apa manfaat menggunakan kerangka kerja untuk pengembangan sisi server?
Anda dapat merancang dan membangun seluruh situs web dengan kode yang seluruhnya ditulis dalam bahasa pemrograman. Itu mungkin, tetapi akan memakan waktu lebih lama.
Ini membutuhkan pengkodean yang ekstensif dan banyak waktu. Kerangka / framework diperlukan untuk mengurangi jumlah kode yang ditulis dan membuat pengkodean untuk aplikasi server lebih mudah dan lebih intuitif.
Kerangka kerja adalah kumpulan sumber daya, layanan, dan perpustakaan yang membuat pengembangan web lebih mudah.
Beberapa kerangka kerja server memiliki fitur yang disebutkan di bawah ini yang memberi mereka keunggulan atas kerangka kerja lain dan memungkinkan mereka membuat kode seluruhnya dalam bahasa pemrograman.
Bagaimana cara memilih teknologi yang tepat untuk digunakan?
Produktivitas: Seberapa cepat Anda dapat menyelesaikan pekerjaan? Ini adalah elemen penting ketika memilih sistem.
Jika Anda mengantisipasi masalah umum atau masalah yang dekat dengan yang pernah Anda temui, Anda dapat menggunakan sistem kepercayaan diri. Kerangka kerja ini kemudian akan memberikan solusi siap pakai. Aspek sederhana seperti ini akan meningkatkan kinerja tim secara keseluruhan.
Framework dan kinerja bahasa. Keberhasilan framework dan bahasa yang mendasarinya merupakan faktor yang mempengaruhi keputusan. Selain itu, kerangka kerja yang lebih besar cukup cepat untuk mengakomodasi ukuran rata-rata, jadi “kecepatan” tidak terlalu menjadi masalah.
Skalabilitas. Aplikasi yang sedang dikembangkan untuk platform server harus dapat diskalakan. Pengukuran vertikal dan horizontal adalah dua jenis pengukuran. Saat situs web Anda menjadi populer, Anda dapat meningkatkannya dengan berpindah ke perangkat yang lebih canggih secara vertikal.
Jika Anda kehabisan cache, Anda dapat menskalakan program yang sama untuk menyebarkan situs Anda ke beberapa server web dan berbagi muatan.
Keamanan: Keamanan dan privasi data adalah yang terpenting. Beberapa sistem lebih aman daripada yang lain. Anda dapat memilih kerangka kerja berdasarkan seberapa stabil kebutuhan sistem Anda.
Dukungan masyarakat dan dokumentasi. Sistem yang Anda pilih harus memiliki komunitas pengguna dan dokumentasi yang luas. Itu memudahkan programmer lain untuk menemukan pengetahuan yang tepat dan membuat proses pembelajaran lebih lancar. Ini juga berguna saat Anda sedang mengerjakan proyek dan mengalami masalah.
Perbedaan utama antara skrip sisi server dan skrip sisi klien
Server side script digunakan di sisi server, tempat kode sumber situs web sisi klien disembunyikan. Di sisi lain, skrip sisi klien digunakan di ujung depan yang dapat dilihat pengguna di browser mereka.
Saat skrip sisi server berjalan, ia mengirimkan permintaan ke server. Di sisi lain, skrip sisi klien tidak memerlukan interaksi dengan server.
HTML, CSS, dan JavaScript adalah contoh bahasa skrip sisi klien. Di sisi lain, bahasa pemrograman seperti PHP, ASP.net, Ruby, ColdFusion, Python, C#, Java, C++, dll.
Skrip sisi server membantu menyesuaikan halaman web dan membuat perubahan dinamis pada situs web. Di satu sisi, skrip klien secara efektif mengurangi beban di server.
Bagaimana proses server bekerja dalam arsitektur tanpa server?
Proses front-end dan back-end berjalan di server, bukan di mesin klien dalam komputasi tanpa server, tetapi tidak diterapkan di server atau grup server tertentu.
Proses internal dibagi menjadi fungsi yang berjalan sesuai permintaan dan menskalakan secara otomatis. Dalam arsitektur tanpa server, developer tetap dapat membuat semua fungsi yang berjalan normal di server.
1. Menyimpan informasi dan mengirimkannya secara efisien
Pertimbangkan berapa banyak produk yang ada di Amazon dan berapa banyak postingan yang dibuat di Facebook. Tidak praktis membuat halaman statis terpisah untuk setiap produk atau artikel.
Alih-alih menyimpan informasi dalam folder, pemrograman sisi server membantu menghasilkan dan mengembalikan file HTML dan file lainnya secara dinamis (seperti PDF, gambar, dll.).
Data (JSON, XML, dll.) juga dapat dikembalikan untuk dirender oleh framework web sisi klien yang sesuai. Server tidak terbatas pada transfer data dari database.
Itu juga dapat mengembalikan hasil dari perangkat lunak atau data dari layanan komunikasi. Targetnya bisa berupa jenis komputer klien yang menerima konten.
Karena data disimpan dalam database, maka dapat dengan mudah ditukar dan dimodifikasi dengan sistem bisnis lain (misalnya saat menjual produk secara online atau di toko, toko dapat memperbarui database inventarisnya).
2. Pengalaman pengguna individu
Informasi pengguna dapat diproses dan digunakan oleh server untuk memberikan pengalaman pengguna yang lebih personal dan relevan. Beberapa situs web, misalnya, menyimpan informasi kartu kredit sehingga pelanggan tidak perlu memasukkannya lagi.
Situs seperti Google Maps dapat memberikan informasi rute berdasarkan lokasi tersimpan atau saat ini, serta penelusuran atau riwayat perjalanan, untuk menyorot bisnis lokal di hasil penelusuran.
Pemahaman yang lebih dalam tentang preferensi pengguna dapat digunakan untuk memprediksi keinginan mereka dan lebih lanjut menyesuaikan respons dan peringatan, seperti daftar tempat yang pernah dikunjungi atau diketahui di peta yang mungkin ingin Anda periksa.
3. Akses terkontrol ke konten
Situs dapat menggunakan pemrograman sisi server untuk membatasi akses ke pengguna resmi dan hanya memberikan informasi yang dapat mereka lihat.
Contoh dunia nyata meliputi:
Pengguna jejaring sosial seperti Facebook memiliki kendali penuh atas informasi mereka, tetapi hanya teman mereka yang dapat melihat atau mengomentarinya.
Otorisasi adalah aspek penting dari pengalaman pengguna karena membatasi siapa yang dapat melihat data mereka dan, akibatnya, siapa yang muncul di feed mereka.
Pengguna situs web freelancer juga memiliki kendali penuh atas informasi mereka, karena tidak ada orang lain selain pemilik profil yang dapat melihat saldo mereka.
4. Simpan informasi sesi
Pengembang dapat menggunakan sesi untuk pemrograman sisi server, sebuah proses yang memungkinkan server untuk menyimpan informasi tentang pengguna situs saat ini dan mengirimkan respons yang berbeda berdasarkan informasi tersebut.
Proses ini memungkinkan situs web untuk mengenali pengguna yang masuk sebelumnya dan menampilkan tautan tertentu atau riwayat pesanan mereka, atau cukup menyimpan status permainan untuk kembali ke situs dan melanjutkan dari bagian terakhir yang mereka tinggalkan.
5. Pemberitahuan dan komunikasi
Server dapat mengirimkan pembaruan umum atau khusus melalui Situs Web, email, SMS, pesan instan, obrolan video, atau sarana komunikasi lainnya.
Berikut beberapa contohnya:
Facebook dan Twitter mengirimi Anda email dan pesan SMS untuk memberi tahu Anda tentang pesan baru atau pemberitahuan baru.
Amazon mengirimi Anda email produk harian yang menyarankan produk yang mirip dengan yang telah Anda beli atau lihat yang mungkin Anda minati.
Server web dapat mengirim pesan peringatan ke administrator situs jika server kehabisan memori atau perilaku pengguna yang tidak biasa terdeteksi.
6. nalisis data
Situs web dapat mengumpulkan banyak informasi tentang pengunjungnya, seperti apa yang mereka telusuri, apa yang mereka beli dan lihat, dan berapa lama mereka menghabiskan waktu di setiap halaman. Berdasarkan analisis data ini, pemrograman server dapat digunakan untuk memperbaiki jawaban.
Amazon dan Google, misalnya, mendukung produk berdasarkan pencarian (dan pembelian) Anda sebelumnya.