Akromin apa saja yang wajib diketahui Programmer?

image

Ringkasan

https://sekolahkoding.com/forum/pengertian-crud-di-php-dan-mysql

Akromin apa saja yang wajib diketahui Programmer ?

Akronim yang wajib diketahui Programmer seperti :

-OOP (Obect Oriented Programming)

OOP (Object Oriented Programming) adalah suatu metode pemrograman yang berorientasi kepada objek. Tujuan dari OOP diciptakan adalah untuk mempermudah pengembangan program dengan cara mengikuti model yang telah ada di kehidupan sehari-hari. Jadi setiap bagian dari suatu permasalahan adalah objek, nah objek itu sendiri merupakan gabungan dari beberapa objek yang lebih kecil lagi. Contohnya, dalam sebuah kehidupan sehari-hari seperti rumah yang kita ibaratkan adalah object dan ruangan-ruangan didalamnya adalah obejek yang lebih kecil.

Konsep OOP

Abstrak Class

  1. Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
  2. Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang digunakan untuk menciptakan objek.
  3. Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
  4. Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property).

Encapsulation

  1. Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
  2. Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
  3. Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
  4. Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut.

Inheritance

  1. Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
  2. Penurunan sifat ini bisa dilakukan secara bertingkattingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
  3. Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
  4. Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kodekode itu.

Polymorphism

  1. Polimorfisme merupakan kemampuan objekobjek yang berbeda kelas namun terkait dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama.
  2. Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.
  3. Method overriding.
  4. Method name overloading.

- SDK (Software Developent Kit)

SDK (Software Development Kit) adalah alat bantu dan API (Application Programming Interface) yang berguna untuk mengembangkan berbagai aplikasi platform android dengan bahasa programa Java dan juga merupakan pulgin dari eclipse. Aplikasi ini juga sangat support untuk mengubah handphone menjadi teraplikasi Android di dalamnya dengan menggunakan emulator yang ada. SDK Android terdiri dari :

  • debugger
  • libraries
  • handset emulator
  • contoh kode
  • dokumentasi
  • dan tutorial

Android sudah mendukung arsitektur pada Linux (distribusi Linux apapun untuk desktop modern), Mac OS X 10.4.8 atau lebih, Windows XP atau Vista. IDE yang didukung secara resmi adalah Eclipse 3.2 atau lebih dengan menggunakan pluginAndroid Development Tools (ADT), dengan ini pengembang dapat menggunakan teks editor untuk mengedit file Java dan XML.

- IDE (Integrated Development Environtment)

IDE ( Integrated Development Environment ) adalah program komputer yang memiliki beberapa fasilitas untuk membantu dalam pembangunan perangkat lunak. Tujuan dari IDE adalah untuk menyediakan semua utilitas yang diperlukan dalam membangun perangkat lunak. Sekarang telah banyak IDE yang sudah digunakan secara bebas, seperti MS Visual Basic untuk Basic , MS Visual C++ untuk C , Borland Delphi untuk Delphi , Eclipse dan NetBeans untuk Java , Turbo Pascal untuk Pascal , dan masih banyak yang lainya. Adapun fasilitas-fasilitas yang terdapat pada IDE antar lain:

  • Editor , yaitu fasilitas tempat menuliskanya kode sumber untuk membuat sebuah program.
  • Compiler , yaitu fasilitas untuk mengecek sintaks dari kode sumber kemudian mengubahnya menjadi bentuk binari yang sesuai dengan bahasa mesin.
  • Linker , yaitu fasilitas untuk menyatukan data binari dari beberapa kode sumber yang dihasilkan compiler sehingga data-data binari tersebut menjadi satu kesatuan dan menjadi suatu program komputer yang siap dieksekusi.
  • Debuger , yaitu fasilitas untuk mengecek jalannya program dan mencari bug /kesalahan yang terdapat pada program yang telah dibuat.

- PWA (Progressive Web App)

Progressive Web App adalah suatu teknik bagaimana Anda dapat mengakses dengan cepat pengalaman website dan aplikasi menjadi satu tanpa harus menginstall / memasang aplikasi tersebut. Sederhananya, PWA memungkinkan kita untuk bisa mengakses dengan cepat suatu aplikasi dengan tampilan mobile web pada perangkat smartphone. Terkadang, setiap smartphone mempunyai keterbatasan dalam menginstall aplikasi, sehingga pilihan untuk menginstal aplikasi native menjadi pertimbangan dikarenan resource yang terbatas dan dapat menyebabkan kinerja smartphone menjadi lambat. Menggunakan Progressive Web App (PWA) diharapkan menjadi solusi untuk mengatasi masalah dimana PWA dapat berjalan layaknya seperti aplikasi native yang di instal pada smartphone. PWA didukung dengan sistem yang bernama Service Worker, dimana teknologi ini memberikan fungsionalitas offline, notifikasi, update konten, pergantian konektifitas dan lainnya. Sehingga, dalam koneksi yang lambat atau koneksi yang tidak stabil, Anda dapat mengakses website dengan cepat dan mempunyai tampilan yang sama seperti terakhir anda membuka aplikasinya melalui web browser.

Berikut ini adalah beberapa ciri-ciri website sudah terpasang PWA :

  1. Instant loading
    Hal ini lah yang dinamakan service worker dimana kita dapat mengkases aplikasi / website meskipun dalam keadaan offline sekalipun.
  2. Connectivity Independent
    Masih berhubungan dengan poin sebelumnya, fitur ini dapat mempermudah kita mengakses di kondisi koneksi apapun.
  3. App-like Mode.
    Dengan menggunakan PWA ini, seolah kita membuat aplikasi native pada smartphone yang tidak harus diinstal pada smartphone kita. Ini memungkinkan karena PWA sendiri dibuat dengan model App Shell dalam full screen mode.
  4. Fresh dan Safe
    PWA lebih smooth dan dapat diakses dengan cepat selain itu juga dapat diakses dengan aman melalui perangkat apapun.
  5. Discoverable
    PWA bisa teridentifikasi sebagai “aplikasi” oleh mobile device, dengan menggunakan W3C Web App Manifest dan Service Worker registration scope yang memungkian mesin pencari bisa menemukannya. Padahal kita tidak menginstal aplikasi tapi diakses melalui PWA.
  6. Re-engageable, Installable, dan Linkable
    ketiga poin ini menggambarkan PWA mempunyai fitur yang sangat beragam sehingga akan lebih praktis digunakan. seperti yang kita ketahui, saat kita mengakses suatu website yang terintegrasi dengan PWA, akan memunculkan notifikasi apakah kita ingin menambahkan ke Homescreen, jika iya, maka aplikasi akan muncul di homescreen tanpa harus melewati proses intalasi, dan untuk mengaksesnya tinggal melakukan klik icon aplikasi pada homescreen.

Progressive Web App adalah suatu teknik bagaimana Anda dapat mengakses dengan cepat pengalaman website dan aplikasi menjadi satu tanpa harus menginstall / memasang aplikasi tersebut. Sederhananya, PWA memungkinkan kita untuk bisa mengakses dengan cepat suatu aplikasi dengan tampilan mobile web pada perangkat smartphone.

Terkadang, setiap smartphone mempunyai keterbatasan dalam menginstall aplikasi, sehingga pilihan untuk menginstal aplikasi native menjadi pertimbangan dikarenan resource yang terbatas dan dapat menyebabkan kinerja smartphone menjadi lambat. Menggunakan Progressive Web App (PWA) diharapkan menjadi solusi untuk mengatasi masalah dimana PWA dapat berjalan layaknya seperti aplikasi native yang di instal pada smartphone.

PWA didukung dnegna sistem yang bernama Service Worker, dimana teknologi ini memberikan fungsionalitas offline, notifikasi, update konten, pergantian konektifitas dan lainnya. Sehingga, dalam koneksi yang lambat atau koneksi yang tidak stabil, Anda dapat mengakses website dengan cepat dan mempunyai tampilan yang sama seperti terakhir anda membuka aplikasinya melalui web browser.

Berikut ini adalah beberapa ciri-ciri website sudah terpasang PWA :

  1. Instant loading
    Hal ini lah yang dinamakan service worker dimana kita dapat mengkases aplikasi / website meskipun dalam keadaan offline sekalipun.

  2. Connectivity Independent
    Masih berhubungan dengan poin sebelumnya, fitur ini dapat mempermudah kita mengakses di kondisi koneksi apapun.

  3. App-like Mode.
    Dengan menggunakan PWA ini, seolah kita membuat aplikasi native pada smartphone yang tidak harus diinstal pada smartphone kita. Ini memungkinkan karena PWA sendiri dibuat dengan model App Shell dalam full screen mode.

  4. Fresh dan Safe
    PWA lebih smooth dan dapat diakses dengan cepat selain itu juga dapat diakses dengan aman melalui perangkat apapun.

  5. Discoverable
    PWA bisa teridentifikasi sebagai “aplikasi” oleh mobile device, dengan menggunakan W3C Web App Manifest dan Service Worker registration scope yang memungkian mesin pencari bisa menemukannya. Padahal kita tidak menginstal aplikasi tapi diakses melalui PWA.

  6. Re-engageable, Installable, dan Linkable
    ketiga poin ini menggambarkan PWA mempunyai fitur yang sangat beragam sehingga akan lebih praktis digunakan. seperti yang kita ketahui, saat kita mengakses suatu website yang terintegrasi dengan PWA, akan memunculkan notifikasi apakah kita ingin menambahkan ke Homescreen, jika iya, maka aplikasi akan muncul di homescreen tanpa harus melewati proses intalasi, dan untuk mengaksesnya tinggal melakukan klik icon aplikasi pada homescreen.

Referensi

https://idcloudhost.com/panduan/mengenal-pengertian-dan-konsep-oop/
https://zonaprogramer.wordpress.com/2016/05/17/pengertian-sdk/

- RWD (Responsive Web Design)

Desain Web Responsif adalah pendekatan yang menyarankan bahwa desain dan pengembangan harus menanggapi perilaku dan lingkungan pengguna berdasarkan ukuran layar, platform, dan orientasi.

Praktik ini terdiri dari campuran grid dan tata letak yang fleksibel, gambar, dan penggunaan kueri media CSS yang cerdas. Saat pengguna beralih dari laptop ke iPad, situs web harus secara otomatis beralih untuk mengakomodasi resolusi, ukuran gambar, dan kemampuan skrip. Seseorang mungkin juga harus mempertimbangkan pengaturan pada perangkat mereka; jika mereka memiliki VPN untuk iOS di iPad mereka, misalnya, situs web tidak boleh memblokir akses pengguna ke halaman. Dengan kata lain, situs web harus memiliki teknologi untuk secara otomatis menanggapi preferensi pengguna. Ini akan menghilangkan kebutuhan akan fase desain dan pengembangan yang berbeda untuk setiap gadget baru di pasar.

- MVC (Model View Controller)

MVC adalah kependekan dari Model, View, dan Controller. MVC adalah cara yang populer untuk mengatur kode Anda. Gagasan besar di balik MVC adalah bahwa setiap bagian dari kode Anda memiliki tujuan, dan tujuan itu berbeda. Beberapa kode Anda menyimpan data aplikasi Anda, beberapa kode Anda membuat aplikasi Anda terlihat bagus, dan beberapa kode Anda mengontrol bagaimana fungsi aplikasi Anda.MVC adalah cara untuk mengatur fungsi inti kode Anda ke dalam kotak mereka sendiri, yang tertata rapi. Ini membuat memikirkan aplikasi Anda, mengunjungi kembali aplikasi Anda, dan berbagi aplikasi Anda dengan orang lain menjadi lebih mudah dan lebih bersih.

BAGIAN MVC
Model: Kode model biasanya mencerminkan hal-hal dunia nyata. Kode ini dapat menampung data mentah, atau akan menentukan komponen penting aplikasi Anda. Misalnya, jika Anda membuat aplikasi Agenda, kode model akan menentukan apa “tugas” itu dan apa “daftar” itu - karena itu adalah komponen utama aplikasi todo.

View : Lihat kode terdiri dari semua fungsi yang berinteraksi langsung dengan pengguna. Ini adalah kode yang membuat aplikasi Anda terlihat bagus, dan sebaliknya menentukan bagaimana pengguna Anda melihat dan berinteraksi dengannya.

Controller: Kode pengontrol bertindak sebagai penghubung antara Model dan Tampilan, menerima input pengguna dan memutuskan apa yang harus dilakukan dengannya. Ini adalah otak aplikasi, dan menyatukan model dan tampilan.

ANALOGI
MVC adalah cara untuk berpikir tentang cara kerja aplikasi web. Ini seperti bagaimana Anda membuat makan malam. Anda memiliki kulkas penuh makanan, yang seperti Model. Kulkas (Model) berisi bahan baku yang akan kita gunakan untuk membuat makan malam. Anda juga mungkin memiliki satu atau dua resep. Sebuah resep (dengan anggapan Anda mengikutinya dengan tepat) seperti makan malam Pengendali Thanksgiving. Resep menentukan barang-barang mana di dalam lemari es yang akan Anda bawa, bagaimana Anda akan menyatukannya, dan berapa lama Anda harus memasaknya.

Kemudian, Anda memiliki pengaturan meja, peralatan makan, dll., Yang digunakan teman dan keluarga Anda yang lapar untuk makan malam. Item di atas tabel seperti Lihat. Mereka membiarkan tamu Anda berinteraksi dengan kreasi Model dan Controller Anda.

MVC DI DUNIA NYATA
MVC sangat membantu ketika merencanakan aplikasi Anda, karena memberi Anda garis besar tentang bagaimana ide-ide Anda harus diorganisir menjadi kode aktual. Misalnya, bayangkan Anda membuat aplikasi daftar tugas. Aplikasi ini akan memungkinkan pengguna membuat tugas dan mengaturnya ke dalam daftar. Model dalam aplikasi todo dapat menentukan apa “tugas” itu dan bahwa “daftar” adalah kumpulan tugas. Kode tampilan akan menentukan seperti apa bentuk todo dan daftar, secara visual. Tugas dapat memiliki font besar, atau warna tertentu. Akhirnya, Controller dapat menentukan bagaimana pengguna menambahkan tugas, atau menandai yang lain sebagai selesai. Pengontrol menghubungkan tombol tambah Lihat ke Model, sehingga ketika Anda mengklik “tambahkan tugas,” Model menambahkan tugas baru.

WRAPPING UP
MVC adalah kerangka kerja untuk berpikir tentang pemrograman, dan untuk mengatur file program Anda. Untuk menandakan gagasan bahwa kode Anda harus diatur oleh fungsinya, pengembang akan membuat folder untuk setiap bagian MVC. (Gagasan bahwa aps harus dibagi berdasarkan fungsi dari setiap bagian kode kadang-kadang disebut sebagai pemisahan keprihatinan.) Jika Anda telah melihat kursus Codecademy’s Ruby on Rails, Anda mungkin telah memperhatikan bahwa ada folder untuk setiap bagian MVC dalam setiap aplikasi Rails yang diperkenalkannya. MVC memberi Anda tempat awal untuk menerjemahkan ide-ide Anda ke dalam kode, dan itu juga membuat kembali ke kode Anda lebih mudah, karena Anda akan dapat mengidentifikasi kode mana yang melakukan apa. Selain itu, promosi standar organisasi MVC memudahkan pengembang lain untuk memahami kode Anda. Berpikir tentang bagaimana kode berinteraksi dengan kode lain adalah bagian penting dari pemrograman, dan belajar untuk berkolaborasi dengan pengembang lain adalah keterampilan yang penting. Meluangkan waktu untuk memikirkan bagaimana aplikasi Anda cocok dengan kerangka kerja MVC akan meningkatkan keterampilan Anda sebagai pengembang dengan mengajari Anda berdua. Ini juga akan membuat aplikasi Anda lebih baik!

- SSL (Secure Socket Layer)

Secure Sockets Layer (SSL) adalah teknologi keamanan standar untuk membuat tautan terenkripsi antara server dan klien — biasanya server web (situs web) dan browser, atau server email dan klien email (mis., Outlook). SSL memungkinkan informasi sensitif seperti nomor kartu kredit, nomor jaminan sosial, dan kredensial login untuk dikirimkan secara aman. Biasanya, data yang dikirim antara browser dan server web dikirim dalam teks biasa — membuat Anda rentan terhadap penyadapan. Jika penyerang dapat mencegat semua data yang dikirim antara browser dan server web, mereka dapat melihat dan menggunakan informasi itu.

Lebih khusus lagi, SSL adalah protokol keamanan. Protokol menggambarkan bagaimana algoritma harus digunakan. Dalam hal ini, protokol SSL menentukan variabel enkripsi untuk tautan dan data yang dikirim. Semua browser memiliki kemampuan untuk berinteraksi dengan server web aman menggunakan protokol SSL. Namun, browser dan server memerlukan apa yang disebut Sertifikat SSL untuk dapat membuat koneksi yang aman. SSL mengamankan jutaan data orang di Internet setiap hari, terutama selama transaksi online atau saat mengirimkan informasi rahasia. Pengguna internet telah datang untuk mengaitkan keamanan online mereka dengan ikon kunci yang datang dengan situs web yang diamankan SSL atau bilah alamat hijau yang dilengkapi dengan situs web yang divalidasi dengan Validasi Diperpanjang. Situs web yang dilindungi SSL juga mulai dengan https daripada http.

- HTTP (Hypertext Transfer Protokol)

HTTP adalah singkatan dari Hyper Text Transfer Protocol. Komunikasi antara komputer klien dan server web dilakukan dengan mengirimkan Permintaan HTTP dan menerima Respons HTTP. HTTP adalah protokol jaringan lapisan aplikasi ( application layer ) yang dikembangkan untuk membantu proses transfer antar komputer. Protokol ini berguna untuk mentransfer informasi seperti dokumen, file, gambar, dan video antar komputer.

Sesuai dengan namanya, penggunaan protokol HTTP ( Hypertext Transfer Protocol ) berhubungan dengan hypertext sehingga banyak mengambil sumber daya dari sebuah tautan –sebuah jenis berkas yang bertindak sebagai referensi ke berkas lainnya atau direktori.

Protokol HTTP menyediakan kumpulan perintah di dalam komunikasi antar jaringan. Komunikasi tersebut berlangsung antara web server dengan komputer client atau sebaliknya. Di dalam komunikasi ini, komputer client melakukan permintaan dengan mengakses alamat IP atau domain (URL). Kemudian web server mengelola permintaan tersebut sesuai dengan kode yang dimasukkan. Fungsi HTTP yaitu mengatur format dan bagaimana data ditransmisikan. HTTP juga berfungsi untuk mengatur bagaimana web server dan browser memproses berbagai macam perintah yang masuk.

Ringkasan

https://www.codecademy.com/articles/mvc
https://www.niagahoster.co.id/blog/pengertian-http/
https://www.digicert.com/ssl/

  • RWD (Responsive Web Design)
  • OOP (Object Oriented Programming)
  • SDK (Software Development Kit)
  • MVC (Model View Controller)
  • SSL (Secure Socket Layer)
  • HTTP (Hypertext Transfer Protokol)
  • API (Application Programming Interface)
  • REST (Representational State Transfer)
  • JSON (JavaScript Object Notation)
  • DBMS (Database Management System)
  • SQL (Structured Query Language)
  • HTML (HyperText Markup Language)
  • PHP (Hypertext Processor)
  • JSP (Java Server Page)
  • ASP (Active Server Pages)
  • CRUD (Cread, Read, Update, Delete)
  • CSS (Cascading Style Sheets)