DOSEN PENGAMPU
Hero Yudo Martono ST, MT
DISUSUN OLEH
Nisya Nurlaila Novianti
Dengan menyebut nama Allah SWT yang Maha Pengasih lagi Maha
Penyayang. Kami panjatkan puja dan puji syukur atas kehadirat-Nya, yang
telah melimpahkan rahmat, hidayah, dan inayah-Nya kepada penulis,
sehingga pada hari ini makalah yang berjudul “FRONT END DEVELOPER
DAN BACK END DEVELOPER” dapat diselesaikan.
Pada kesempatan ini, kami mengucapkan terima kasih kepada semua pihak
yang telah memberikan kami semangat dan motivasi dalam pembuatan tugas
makalah ini. Kepada kedua orang tua kami yang telah memberikan banyak
kontribusi bagi kami, dosen pengampu, Bapak Hero Yudo Martono ST, MT dan
juga kepada teman-teman seperjuangan yang membantu kami dalam berbagai
hal. Harapan kami, informasi dan materi yang terdapat dalam makalah ini dapat
bermanfaat bagi pembaca. Tiada yang sempurna di dunia, melainkan Allah SWT.
Tuhan Yang Maha Sempurna, karena itu kami memohon kritik dan saran yang
membangun bagi perbaikan makalah kami selanjutnya.
Demikian makalah ini kami buat, apabila terdapat kesalahan dalam
penulisan, atau pun adanya ketidaksesuaian materi yang kami angkat pada
makalah ini, kami mohon maaf. Tim penulis menerima kritik dan saran seluas-
luasnya dari pembaca agar bisa membuat karya makalah yang lebih baik pada
kesempatan berikutnya.
COVER .......................................................................................................... i
KATA PENGANTAR ....................................................................................... ii
DAFTAR ISI .................................................................................................... iii
BAB I : PENDAHULUAN ................................................................................. iv
1.1 Latar Belakang............................................................................... 1
1.2 Rumusan Masalah ......................................................................... 2
1.3 Tujuan Penulisan ........................................................................... 3
BAB II : PEMBAHASAN .................................................................................. v
2.1 Pengertian Front End Developer ................................................... 4
2.2 Tugas dan tanggung jawab Front End Developer .......................... 5
2.3 Skill yang harus dimiliki Front End Developer ................................ 6
2.4 Pengertian Back End Developer .................................................... 7
2.5 Tugas dan tanggung jawab Back End Developer ........................... 8
2.6 Skill yang harus dimiliki Back End Developer ................................. 9
2.7 Perbedaan Front End dan Back End Developer .............................10
2.8 Framework Front End dan Back End .............................................11
BAB III : PENUTUP ........................................................................................vi
3.1 Kesimpulan ....................................................................................12
DAFTAR PUSTAKA ........................................................................................vii
BAB I
PENDAHULUAN
1.1 Latar Belakang
Pada dasarnya, front end adalah salah satu bagian dari website
yang menampilkan tampilan pada para pengguna. Bagian ini dibuat
dengan menggunakan HyperText Markup Language (HTTP), Cascading
Style Sheets (CSS), dan juga JavaScript. Sehingga, suatu URL bisa
bekerja dan menampilkan situs website dengan baik.
Mereka akan membuat gambar, tombol, teks, dan juga menu serta
interaksi antar setiap situs atau aplikasi dengan para pengguna. Oleh
karena itu, mereka juga biasa dikenal dengan client-side.
Front end adalah suatu hal yang tidak dibuat dengan merancang desain
dari suatu situs ataupun aplikasi dari nol. Karena, pada dasarnya hal
tersebut sudah dikerjakan oleh UI designer.
Tugas mereka adalah memastikan semua hal yang dibuat oleh front end
developer ataupun sistem dan server dibalik dibuatnya situs website atau
aplikasi bisa bekerja sebagaimana mestinya. Mereka juga sering disebut
dengan server-side.
2.2 Tugas dan tanggung jawab Front End Developer
1. Memastikan kelayakan teknis desain dari UI/UX
2. Mengoptimalkan kecepatan dari website/aplikasi
3. Menerapkan elemen visual situs web atau aplikasi
4. Menggunakan desain responsif dalam pembuatan antarmuka
pengguna situs web atau aplikasi
5. Menguji situs web atau aplikasi untuk kegunaan
6. Memecahkan masalah kode apa pun yang tidak berfungsi
7. Meningkatkan arsitektur visual situs web atau aplikasi
8. Memastikan bahwa semua kelayakan dari tampilan website sebelum
mengirimkannya ke tim back end
9. Berkolaborasi tim lainnya
HTML dan CSS merupakan skill utama yang harus dikuasai untuk menjadi
seorang front end developer. Hal ini karena CSS (Cascading Style Sheets)
dan HTML (HyperText Markup Language) merupakan landasan dari
pengembangan web. HTML digunakan untuk membuat rangkaian utama
dari sebuah website. Sedangkan CSS digunakan dalam mengatur
tampilan dari website tersebut, seperti, tata letak, warna, font, dan gaya
halaman.
2. JavaScript
4. CSS preprocessors
5. Responsive design
7. Version control
Jika front end menggunakan HTML dan CSS, maka back end lebih sering
menggunakan bahasa pemrograman seperti, Java, Python, PHP. Java
merupakan bahasa pemrograman yang banyak digunakan dalam
mengembangkan back end untuk aplikasi dan situs web. Sedangkan untuk
melakukan pengkodingan terkait server, back end developer biasanya
menggunakan Python dan PHP.
Back end developer akan selalu berhubungan dengan data. Agar dapat
mengelola data, seorang back end developer harus memiliki pemahaman
dasar tentang proses, struktur, dan algoritma yang digunakan untuk
mengimplementasikan dan menampilkan data tersebut. Beberapa di
antaranya termasuk pencarian linier dan biner, implementasi kode hash,
penyortiran data, tumpukan, antrian, dan daftar.
Perbedaan front end dan back end yang selanjutnya yaitu terdapat
pada skill yang dimiliki untuk keduanya. Apabila kamu ingin menjadi
seorang Front End Developer maka kemampuan dasar yang perlu
kamu miliki yaitu minimal menguasai tiga bahasa pemrograman
seperti Javascript, HTML dan CSS. Namun semakin banyak bahasa
pemrograman yang kamu kuasai, maka kesempatan untuk menjadi
seorang front end developer akan
semakin terbuka lebar.
Perbedaan front end dan back end yang ketiga terdapat pada waktu
pengerjaannya. Seorang front end developer baru akan memulai
pekerjaannya saat UX Designer telah menyelesaikan pekerjaannya.
Apabila tidak ada perubahan dari sisi desain UX, maka front end
developer dapat segera mengeksekusi bahasa pemrograman pada
desain user interface.
Setelah front end developer menyelesaikan pekerjaannya, maka
kemudian back end developer mengambil alih pekerjaan. Di mana back
end developer menentukan penggunaan instruksi apa saja yang akan
diaplikasikan pada desain dan bahasa pemrograman yang digunakan.
Perbedaan front end dan back end yang terakhir yaitu mengenai posisi
keduanya di sebuah perusahaan. Meskipun pada dasarnya Front End
Developer dan Back End Developer bekerja secara berdampingan namun
keduanya tidak selalu digabungkan pada satu posisi yang sama.
Di beberapa perusahaan terdapat kebijakan di mana seorang Front End
Developer tidak harus memiliki skill seorang Back End Developer. Karena
itu posisi kerja keduanya selalu dibedakan pada sebuah perusahaan.
Front End Developer bekerja di awal pembuatan aplikasi atau situs. Lalu
Back End Developer bekerja pada akhir tahap penyelesaian aplikasi atau
situs.
Meskipun perusahaan ada yang memilih menggunakan dua orang yang
berbeda untuk mengisi posisi Front End Developer dan Back End
Developer, ada pula perusahaan yang hanya menggunakan satu pekerja
untuk 2 skill tersebut.
Biasanya jika perusahaan mempekerjakan 1 orang untuk mengatasi 2 skill
tersebut maka pekerja yang dipilih pasti seorang yang sebut sebagai full
stack developer. Full stack developer adalah orang yang menguasai skill
yang dimiliki oleh Front End Developer dan Back End Developer.
1. Vue.js
Vue.js adalah front end framework dengan rating tertinggi di
Github. Framework ini diluncurkan pada 2014 lalu oleh Evan
You. Seseorang yang juga merupakan salah satu kreator
framework Angular.
Vue.js adalah framework berjenis MVVM (Model-View
ViewModel) yang dibangun di atas bahasa JavaScript. Front
end framework yang satu ini punya aturan penulisan kode
yang simpel, sehingga mudah digunakan oleh pemula.
Selain itu ukuran Vue.js juga tergolong kecil, hanya 18 KB
saja! Meski begitu, kemampuannya tidak perlu diragukan
lagi. Karena, bisa digunakan untuk membangun web app,
mobile app, hingga progressive web app (PWA).
Fitur-Fitur Unggulan Vue.js:
Virtual DOM (Document Object Model) – Tiruan
dari Real DOM untuk menyimpan dan mereview
perubahan kode sebelum menerapkannya di Real DOM.
Components – Membuat sekaligus mengelola elemen
kustom dalam format HTML, nya sehingga dapat
digunakan berulang-ulang.
Two-way Data Binding – Menjadikan setiap
perubahan kode di JavaScript berpengaruh terhadap
tampilan HTML, begitu pula sebaliknya.
Kelebihan Vue.js:
Dokumentasi yang lengkap dan detail.
Mudah digunakan untuk developer dengan keterampilan
JavaScript.
Sangat fleksibel untuk merancang struktur aplikasi.
Mendukung TypeScript, bahasa pemrograman berbasis
JavaScript.
Kekurangan Vue.js:
Komponen yang tersedia belum stabil.
Komunitas belum terlalu besar.
Kebanyakan plugin dan komponen ditulis dengan
bahasa Mandarin sehingga sulit digunakan.
Gunakan Vue.js Jika:
Vue.js adalah front end framework yang cocok digunakan
untuk membangun proyek berskala kecil dari nol, khususnya
yang berjenis single page application (SPA).
Jangan Gunakan Vue.js Jika:
Vue.js kurang direkomendasikan untuk proyek-proyek
berskala besar, mengingat komponen yang belum stabil serta
dukungan komunitas yang masih minim.
Contoh Penggunaan Vue.js:
Beberapa perusahaan yang telah menggunakan Vue.js antara
lain 9gag, Alibaba, Reuters, dan Xiaomi.
2. React
React adalah front end framework yang dibangun oleh
raksasa teknologi dunia, Facebook (sekarang Meta) pada
2011 lalu. React merupakan framework open source di
bawah lisensi software MIT.
React sebenarnya bukan sebuah front end framework murni,
melainkan sebuah library berbasis JavaScript. Pun demikian,
ia tetap punya berbagai fitur layaknya sebuah framework,
contohnya DOM.
Di samping itu, React juga punya kinerja stabil. Hal tersebut
membuatnya bisa diandalkan untuk membangun PWA dan
SPA yang dipersiapkan untuk menampung banyak trafik.
Fitur-Fitur Unggulan React:
Virtual DOM – Sama seperti Vue.js, React juga
dibekali Virtual DOM yang berguna untuk menyimpan
berbagai perubahan kode.
Libraries Integration – Menjadikan React bisa
digunakan bersama dengan berbagai library berbasis
JavaScript.
JSX (JavaScript XML) – Ekstensi sintaks JavaScript
untuk memudahkan modifikasi DOM dengan kode
berformat HTML.
Kelebihan React:
Komponen bisa digunakan berulang-ulang di berbagai
halaman aplikasi.
Kemudahan untuk menulis komponen tanpa perlu
mengenalkan (deklarasi) Class-nya.
Menyediakan berbagai tools pengembang dengan fitur-
fitur yang melimpah.
Kekurangan React:
Dokumentasi yang berubah-ubah, mengingat frekuensi
update yang terlalu sering.
Agak sulit dipelajari pemula karena JSX yang
cenderung rumit.
Gunakan React Jika:
React paling pas digunakan untuk membangun SPA yang
cenderung kompleks dan membutuhkan banyak komponen
user interface seperti panel navigasi, tombol, dan akordion.
Selain itu, React juga lebih cocok jika dipakai bersama
library lain seperti Redux, karena dapat meningkatkan
kinerja SPA.
Jangan Gunakan React Jika:
React kurang cocok bagi Anda yang pemula dan belum
memahami JavaScript, apalagi JSX yang punya aturan kode
lebih rumit daripada JavaScript biasa.
Contoh Penggunaan React:
Di samping sebagai framework Facebook, React juga telah
dipakai untuk membangun berbagai website populer lain
seperti Netflix, Reddit, dan Pinterest.
3. Angular
4. jQuery
jQuery adalah salah satu front end framework tertua yang
dirilis sejak tahun 2006. Meski begitu, jQuery masih cukup
relevan digunakan untuk membangun website, mobile app,
dan desktop app.
Sama seperti React, jQuery sebenarnya adalah library
JavaScript dan bukan merupakan framework. Nah, jQuery
punya fungsi utama yaitu untuk memanipulasi CSS dan
DOM sehingga menghasilkan website yang lebih interaktif.
Selain itu, jQuery juga menawarkan kemudahan penggunaan
dengan memangkas aturan penulisan kode JavaScript
menjadi lebih ringkas. jQuery juga didukung komunitas yang
luas dan berpengalaman.
Fitur-Fitur Unggulan jQuery:
Versatile Event Handling – Memangkas jumlah baris
kode untuk perintah yang melibatkan aktivitas
pengguna, seperti klik pada mouse.
jQuery Mobile – Framework HTML5 berbasis System-
UI untuk memudahkan developer dalam membangun
mobile app.
Browser Interchangeability – Mampu menjalankan
berbagai fungsi di hampir semua browser tanpa
mengalami kendala berarti.
Kelebihan jQuery:
Mudah dipelajari dan digunakan oleh pemula karena
penulisan kode yang simpel
Mendukung hampir semua browser yang ada di pasaran.
Menyediakan beragam pilihan plugin untuk menambah
fiturnya.
Kekurangan jQuery:
Ukuran yang tergolong besar, satu package jQuery
terdiri atas semua komponen DOM, Events, Effects,
dan AJAX.
Kinerja yang tergolong lambat, mengingat ukuran yang
besar.
Tidak memiliki Data Layer, sehingga proses
memanipulasi DOM jadi lebih rumit.
Gunakan jQuery Jika:
jQuery lebih cocok digunakan untuk membangun aplikasi
desktop berbasis JavaScript. Selain itu, jQuery juga pilihan
yang pas untuk membangun website interaktif untuk
digunakan di berbagai jenis browser.
Jangan Gunakan jQuery Jika:
jQuery tidak sesuai untuk membangun ekosistem website
modern seperti PWA, SPA, atau web app. Hal ini karena
ketiadaan Data Layer yang bisa menyebabkan lambatnya
performa.
Contoh Penggunaan jQuery:
Beberapa perusahaan yang tercatat menggunakan jQuery
antara lain Microsoft, Uber, Twitter, dan Pandora.
5. Svelte
6. Semantic UI
Mirip dengan Svelte, Semantic UI adalah front end
framework yang masih tergolong baru. Framework ini baru
diluncurkan 2014 oleh Jack Lukicthis, seorang full stack
developer.
Nah, Semantic UI adalah framework berbasis CSS. Itulah
sebabnya, front end framework yang satu ini secara bawaan
tidak menggunakan DOM maupun Data Binding sama sekali.
Meski begitu, Semantic UI mendukung integrasi dengan
framework lain, seperti React, Angular, dan Ember.js. Selain
itu, ia juga menyediakan dukungan plugin pihak ketiga untuk
menambah fitur-fiturnya.
Fitur-Fitur Unggulan Semantic UI:
Themes Collections – Menyediakan ribuan tema dan
puluhan komponen untuk mempercantik dan menambah
fitur-fitur terkait interface.
Exchangeable Concepts – Mengadopsi bahasa
manusia ke dalam aturan penulisan kode, contohnya
ketika menulis Class.
Development Toolset – Memudahkan konfigurasi CSS,
JavaScript, dan Font, sehingga bisa digunakan untuk
aplikasi lain cukup dengan sekali tulis.
Kelebihan Semantic UI:
Tersedia berbagai pilihan tema dan komponen UI.
Aturan penulisan kode yang mudah dipahami.
Mendukung berbagai integrasi sehingga banyak fitur
bisa ditambahkan.
Kekurangan Semantic UI:
Ukuran package yang cukup besar.
Dukungan komunitas yang masih tergolong minim.
Fitur dan fungsi-fungsi bawaan yang cenderung
terbatas.
Gunakan Semantic UI Jika:
Semantic UI adalah front end framework terbaik untuk
membangun aplikasi dengan User Interface yang menarik,
responsif, tapi tetap ringan ketika digunakan.
Jangan Gunakan Semantic UI jika:
Semantic UI bukan pilihan yang tepat bagi Anda yang
kurang menguasai JavaScript. Pasalnya fitur bawaannya
cukup terbatas dan baru bisa bekerja maksimal ketika
terintegrasi dengan framework lain.
Contoh Penggunaan Semantic UI:
Semantic UI banyak digunakan oleh beberapa perusahaan
ternama seperti Snapchat, Ovrsea, Kmong, dan Accenture.
https://www.gamelab.id/news/952-apa-saja-perbedaan-
front-end-dan-back-end
https://blog.skillacademy.com/perbedaan-front-end-dan-
back-end
https://www.niagahoster.co.id/blog/front-end-framework/
https://appkey.id/pembuatan-website/backend/framework-
backend/#:~:text=Seperti%20yang%20kita%20ketahui%2C%2
0framework,secara%20default%20di%20dalam%20framework