Pemrograman Web dan Perangkat Bergerak


Perbedaan Web Server dan Web Service


Web Server

Apa itu Web Server?

Web Server merupakan sebuah software yang memberikan layanan berbasis data dan berfungsi menerima permintaan dari HTTP atau HTTPS pada klien melalui web browser dan mengirimkan kembali hasilnya dalam bentuk beberapa halaman web dan pada umumnya akan berbentuk dokumen HTML.

Web Server bisa berfungsi sebagai hardware dan software, yaitu apabila sebagai hardware maka web server akan berperan dalam penyimpanan data dalam beragam bentuk diantaranya seperti JavaScript, CSS, HTML, gambar, dokumen, foto, dan video. Lain hal nya apabila web server berfungsi sebagai software maka akan berperan dalam mengatur dan juga memproses segala aktivitas permintaan yang diterima dan dibaca pada halaman browser.

Disamping itu, mengenal webserverjuga memiliki beberapa fungsi lainnya loh, diantaranya seperti :

  1. Dapat membersihkan berbagai cache yang terdapat pada penyimpanan serta semua modul yang tidak terpakai lagi.
  2. Dapat melakukan pemeriksaan terhadap sistem keamanan yang berasal dari permintaan HTTP berdasarkan kiriman dari browser.
  3. Menyediakan data berdasarkan permintaan yang masuk agar dapat menjamin sistem keamanan berjalan dengan lancar.

Siapa yang membutuhkan Web Server?

Secara umum, web server digunakan oleh perusahaan hosting web dan pengembang aplikasi web profesional. Akan tetapi, sebenarnya siapa pun yang memenuhi salah satu kategori di bawah ini dapat menggunakannya, yaitu:
  • Orang yang memiliki situs web (untuk membuat salinan lokal pada sistem mereka menyerupai apa yang ada di internet).
  • Orang yang ingin menggunakan teknologi sisi server, seperti, PHP atau ColdFusion, juga dapat menggunakan server web.

Beberapa contoh web server yang paling banyak digunakan diantaranya adalah:

  • Apache.
  • Apache Tomcat.
  • Nginx.
  • Lighttpd.
  • Litespeed.
  • Microsoft Internet Information Services (IIS).

Web Service


Pengenalan Web Service?

Web service merupakan aplikasi sekumpulan data (database), perangkat lunak (software) atau bagian dari perangkat lunak yang dapat diakses secara remote oleh berbagai piranti dengan sebuah perantara tertentu.  Secara umum, web service  dapat diidentifikasikan dengan menggunakan URL seperti hanya web pada umumnya (misal : www.namaweb.com). Namun yang membedakan web service dengan web pada umumnya adalah interaksi yang diberikan oleh web service. Berbeda dengan URL web pada umumnya, URL web service hanya menggandung kumpulan informasi, perintah, konfigurasi atau sintaks yang berguna membangun sebuah fungsi-fungsi tertentu dari aplikasi.

Web pada umumnya digunakan untuk melakukan respon dan request yang dilakukan antara client dan server. Sebagai contoh, seorang pengguna layanan web tertentu mengetikan alamat url web untuk membentuk sebuah request. Request akan sampai pada server, diolah dan kemudian disajikan dalam bentuk sebuah respon. Dengan singkat kata terjadilah hubungan client-server secara sederhana.
Sedangkan pada web service hubungan antara client dan server tidak terjadi secara langsung. Hubungan antara client dan server dijembatani oleh file web service dalam format tertentu. Sehingga akses terhadap database akan ditanggani tidak secara langsung oleh server, melainkan melalui perantara yang disebut sebagai web service. Peran dari web service ini akan mempermudah distribusi sekaligus integrasi database yang tersebar di beberapa server sekaligus.
Sebagai salah satu bagian terpenting dari website, web service memiliki kegunaan atau peran penting untuk memberikan layanan terbaik ke semua sistem. Bentuk layanan yang dimaksudkan adalah sebagai berikut :
  • Salah satu kegunaan web service adalah pada interoperabilitas tinggi dan dapat diakses oleh pengguna dimanapun serta kapanpun selama tersedia koneksi internet.
  • Web service juga dapat diakses melalui protocol terbuka dan memanfaatkan web melalui SOAP atau singkatan dari Simple Object Acces Protocol. Selain itu web service juga menggunakan bahasa Web Services Description Language (WSDL) serta terintegrasi dalam Universal Discovery Description and Integration (UDDI).
  • Format penggunaan pada web service dibuat terbuka untuk semua platform sehingga mempermudah dalam penggunaan serta lebih menyeluruh. Keamanan nya juga lebih terjamin.
  • Masih banyak kegunaan – kegunaan lain yang bisa didapatkan dari web service meliputi routing dan pengiriman, management dan monitoring, akselerasi dan pastinya tidak mahal untuk pengimplementasian nya.

Tool Paket Installer Untuk Beberapa Bahasa Program


Package Manager memudahkan kita meng-install, update, dan menghapus, mengatur versi package-package yang dibutuhkan pada proyek yang kita kerjakan
  1. PIP - Phyton
    Apa itu PIP? PIP merupakan program untuk manajemen paket di Python. Tugasnya untuk menginstal, menghapus, upgrade paket Python, dll.
    Paket Python itu apa?
    Paket Pyhon itu merupakan sebuah modul yang berisi kode-kode python dan isi paket ini bisa kita impor ke dalam program kita.
  2. Composer - PHP
    Composer adalah program untuk manajemen proyek PHP. Composer bisa kita suruh untuk:

    • Menginstal library yang dibutuhkan ke project
    • Menjalankan sebuah scipt
    • Melakukan testing
  3. Maven - Java
    Maven adalah salah satu build tool yang sering digunakan dalam proyek aplikasi Java.
    Dengan Maven kita bisa:
    1. Kompilasi source code dengan mudah;
    1. Melakukan Testing;
    1. Menginstal library yang dibutuhkan;

    Selain digunakan untuk Java, Maven juga dapat digunakan untuk mengelola project dengan bahasa Kotlin, C#, Ruby, Scala, dan sebagainya.
    Maven adalah program berbasis teks yang digunakan pada command line. Namun, bisa juga digunakan dalam IDE. Karena sebagian besar IDE Java seperti Intellij, Eclipse, dan Netbeans sudah mendukungnya.

Tool Code Editor Dan IDE Untuk Bahasa Program


Text Editor menjadi perangkat lunak yang digunakan oleh seorang programmer dalam menulis sebuah kode program. Pada umumnya text editor memiliki macam-macam fitur. Seperti, syntax highlightingsearch dan replace syntax,  code foldingline numberline markingsnippet, dan lainnya. Selain fitur, text editor juga memiliki penampilan yang berbeda-beda yang disesuaikan oleh karakter-karakter programmer untuk menulis sebuah kode.

Notepad++

Notepad++ adalah sebuah text editor dan source code editor yang berjalan di sistem operasi Microsoft Windows. Notepad++ menggunakan komponen bernama Scintilla untuk dapat menampilkan dan juga menyunting teks serta berkas kode sumber ke dalam berbagai bahasa pemrograman.
Notepad ++ memiliki fitur tab, sehingga membuat penggunanya bisa melakukan perubahan kode dengan memasukkan banyak file dalam satu jendela yang sama. Selain itu, perangkat lunak ini sangat ringan dan amat mudah digunakan. Kemudahan Notepad ++ sebagai text editor semakin tak diragukan setelah terintegrasi dengan protokol jaringan http.

Visual Studio Code

Visual Studio Code adalah text editor yang dikembangkan oleh Microsoft untuk Windows, Linux dan macOS. Visual Studio Code mampu digunakan untuk debugging, Git control, syntax highlighting, intelligent code completion, snippets, and code refactoring. Visual Studio Code juga mampu dikostumisasi oleh pengguna.
Seperti halnya Notepad ++, bahwa Visual Studio Code juga didukung dengan berbagai jenis bahasa pemrograman seperti Java, JavaScript, PHP, C++, C#, JSON, dan Go. Hal tersebut lantas membuat perangkat lunak ini bisa mengidentifikasi jenis bahasa pemrograman secara otomatis.
Meski demikian, banyak fitur milik Visual Studio Code yang tidak terekspos melalui menu atau layar antarmuka para penggunanya. Sebaliknya, fitur tersebut hanya mampu diakses melalui palet perintah atau melalui file .json yang mampu mengubah preferensi penggunaan.

Atom

Atom adalah text editor yang berbasiskan free dan open-source. Text editor ini mampu digunakan untuk macOS, Linux, dan Microsoft Windows. Text editor ini menggunakan Node.js dalam pembuatan setiap plugin dan fitur dan dikembangkan oleh aplikasi berbasis website, GitHub.
Sejak dikenalkan pada 2014 lewat slogan free open-source, Atom menjadi amat populer. Hampir seluruh developer di dunia menggunakan Atom untuk melakukan perubahan koding. Selain itu, Atom juga mampu melakukan syntax highlighting dalam banyak bahasa pemrograman.
Hal terakhir yang membuat Atom banyak digunakan adalah adanya fitur kostumisasi tema. Pengguna Atom tidak hanya bebas memilih tema, tapi juga mampu mencari yang diinginkan dengan kriteria karena banyaknya tema yang disediakan oleh Atom.

Brackets

Brackets adalah text editor dengan fokus utama pada pengembangan web. Dibuat oleh Adobe Systems, mereka adalah perangkat lunak berbasis free dan open source yang berada di bawah MIT License. Untuk saat ini mereka dikembangkan melalui GitHub oleh Adobe untuk macOS, Windows, dan beberapa kelas Linux.
Salah satu fitur andalan Brackets adalah live preview, yang memungkinkan untuk melihat perubahan pada CSS dan HTML di layar pengguna secara langsung. Selain itu, mereka juga memiliki fungsi untuk melihat dimana seharusnya CSS selector digunakan untuk melakukan perubahan atau penambahan tampilan.
Fitur lain yang menjadi keunggulan Brackets adalah kemampuannya untuk mengambil dan juga membaca file PSD buatan Adobe Photoshop dan menampilkannya dalam file CSS. Hal ini tentu menjadi keuntungan bagi para web designer dan kemudian membuat mereka menjadikan Brackets text editor favorit.

Sublime

Sublime menjadi salah satu text editor terbaik untuk melakukan perubahan pada bahasa pemrograman. Selain ringan dan mudah digunakan, mereka tersedia bisa dipakai untuk banyak bahasa pemrograman dan tersedia pada tiga sistem operasi terbesar, yaitu Windows, Linux, dan macOS.
Bagi para programmer, Sublime dipilih karena memiliki tampilan antarmuka yang simpel dan tidak terlalu banyak aturan. Selain itu, mereka juga memberikan banyak fitur berupa plugin-plugin dan pratinjau melalui sebuah kotak simpel yang terletak di sisi layar pengguna.
Meski demikian, di balik keunggulannya, Sublime juga dinilai tak terlalu meyakinkan. Sebagai text editor, mereka tidak gratis. Kekurangan Sublime tidak hanya itu saja, mereka juga jarang di-update oleh pengembang, Jon Skinner, Will Bond. Sublime versi yang paling terkini saja bahkan sudah berusia 10 tahun.
Apa Yang Dimaksud Dengan IDE “Integrated Development Environment” ?

IDE (Integrated Development Environment) adalah program komputer sebagai lingkungan pengembangan aplikasi atau program komputer yang mempunyai beberapa fasilitas yang dibutuhkan dalam pembangunan perangkat lunak (Software). Tujuan dari IDE yaitu untuk menyediakan semua utilitas yang dibutuhkan untuk membangun perangkat lunak. Menjadi seorang programmer diharuskan untuk mengetahui berbagai Integrated Development Environment untuk pembangunan perangkat lunak.
Selain itu, IDE merupakan sebuah perangkat lunak aplikasi yang memberikan fasilitas kepada programmer komputer pada saat membuat program. Biasanya IDE terdiri dari source code editor build automation tools dan debugger.
Biasanya sebuah IDE, atau secara umum bisa diterjemahkan sebagai Lingkungan Pengembangan Terpadu, setidaknya memiliki fitur seperti :
  • Editor, fasilitas ini diperuntukan menuliskan kode atau fungsi-fungsi yang bisa diterjemahkan oleh mesin komputer sebagai kode programming.
  • Compiler, Berfungsi untuk menjalankan bentuk kode program yang di tuliskan di Editor dan mengubah dalam bentuk binary yang selanjutnya akan ditampilkan sesuai perintah-perintah kode mesin.
  • Debuger, Berguna untuk mengecek dan juga mengetes jalannya kode program untuk mencari atau mendebug kesalahan dari program.
  • Frame/Views, fasilitias yang satu ini berguna untuk menujukan atau menampilkan hasil dari perintah-perintah kode program yang dieksekusikan oleh Compiler dari Editor.

Berikut adalah beberapa IDE yang biasanya digunakan oleh Developer beserta penjelasannya, diantaranya :
1. Intelijs IDE
Intelljs IDE, definisinya sama dengan Netbeans yang mana Intelijis ini juga yang didukung oleh Android Platform, Desktop, Web. IDE ini bisa mengintegrasikan 3 platform yang didukungnya dalam satu pengembangan suatu perangkat lunak (Software)
2. Netbeans IDE
NetBeans IDE untuk perangkat lunak yang memiliki beberapa bahasa pemrograman yang bisa didukung dari beberapa platform seperti Desktop Apps, Web App. Akan tetapi, IDE ini belum memiliki atau didukung oleh iOs Platform dan Androidpada versi windows. Biasanya programmer develop aplikasi untuk setiap platform secara terpisah. Maksudnya, tidak bisa diintegrasikan seperti ke-3 platform yang disebut di atas.
3. Nodejs
Node.js adalah suatu platform yang berbasis WEB yang bisa mendukung React.js untuk mengintegrasikan ke-4 platform yang disebut pada React.js. platform ini berfungsi mengembangakan web service sebagai Back End dari Reack.js agar dapat memfasilitasi ke-4 platform untuk mengakses satu server database.
4. Reactjs
React.js, Teknologi yang satu ini telah memiliki kemampuan yang bisa didukung oleh ke-4 platform yaitu iOs platformAndroid platformDesktop, dan juga Web platform. React.js ini bisa mengintegrasikan 4 platform ini dalam sekali pengembangan dan bisa menggunakan satu Database server oleh ke-4 platform tersebut. Lalu, bagaimana bisa menggunakan satu server database? Sedangkan Android Platform dan iOs Platform tidak bisa menggunakan Database Server.

Komentar