Object Oriented Programming Systems
Object Oriented Programming Systems (OOPS) adalah paradigma pemrograman yang mengorganisir kode menjadi objek-objek yang saling berinteraksi dan berkomunikasi. Dalam OOPS, kode dipandang sebagai sebuah kumpulan objek yang memiliki sifat dan perilaku masing-masing.
Setiap objek memiliki atribut yang menyimpan informasi tentang objek tersebut, dan metode yang menggambarkan perilaku objek tersebut. Dalam OOPS, objek-objek ini saling berinteraksi dan bekerja sama untuk mencapai tujuan yang diinginkan.
Salah satu keuntungan dari OOPS adalah memungkinkan pengembangan aplikasi yang lebih modular dan mudah dipelihara. Dalam OOPS, kode dapat dibagi menjadi bagian-bagian kecil yang independen satu sama lain, dan dapat digunakan kembali di berbagai bagian aplikasi.
Object
Object dalam OOP (Object-Oriented Programming) adalah instance (representasi) dari sebuah class. Objek dibuat berdasarkan definisi class dan memungkinkan untuk menyimpan data dan memanggil metode yang terkait dengan class tersebut.
Dalam OOP, class adalah sebuah template atau cetak biru yang mendefinisikan sifat dan perilaku dari objek yang akan dibuat. Sedangkan objek adalah instance konkret dari class tersebut, yang memiliki data dan perilaku (metode) yang sesuai dengan definisi class tersebut.
Sebagai contoh, jika kita memiliki sebuah class “Mobil”, maka objek mobil dapat dibuat berdasarkan definisi class tersebut. Setiap objek mobil akan memiliki atribut seperti “warna”, “merek”, dan “tahun produksi”, serta metode seperti “maju”, “mundur”, “belok kiri”, dan “belok kanan”. Setiap objek mobil memiliki data dan perilaku yang unik, meskipun mereka didasarkan pada definisi class yang sama.
Dalam OOP, objek dapat digunakan untuk merepresentasikan entitas dunia nyata atau konsep abstrak. Objek juga dapat saling berinteraksi dan bekerja sama untuk mencapai tujuan yang diinginkan. Hal ini memungkinkan pengembangan aplikasi yang modular, mudah dipelihara, dan efisien.
Class
Class dalam OOP (Object-Oriented Programming) adalah sebuah blueprint atau cetak biru yang digunakan untuk membuat objek. Class mendefinisikan sifat dan perilaku yang dimiliki oleh objek-objek yang akan dibuat berdasarkan definisi class tersebut.
Dalam class, terdapat definisi dari atribut (data) dan metode (fungsi) yang terkait dengan objek yang akan dibuat. Atribut merupakan variabel yang merepresentasikan data yang dimiliki oleh objek, sedangkan metode merupakan fungsi yang memungkinkan objek untuk melakukan tindakan tertentu atau memanipulasi data.
Dalam OOP, class dapat digunakan kembali (reusable) untuk membuat objek-objek yang sama atau mirip. Hal ini memungkinkan pengembangan aplikasi yang modular dan efisien. Class juga dapat memiliki hubungan antara satu sama lain, seperti inheritance, dimana sebuah class baru dapat dibuat dengan mewarisi atribut dan metode dari class yang sudah ada, dan polymorphism, dimana objek dari class yang berbeda dapat digunakan secara interchangeable dengan metode yang sama dengan perilaku yang berbeda.
Inheritance
Inheritance (pewarisan) dalam OOP (Object-Oriented Programming) adalah konsep dimana sebuah class baru (child class) dapat dibuat dengan mewarisi sifat dan perilaku dari class yang sudah ada (parent class). Class yang diturunkan (child class) akan memiliki semua atribut dan metode dari class induk (parent class), serta dapat menambahkan atribut dan metode baru atau mengubah perilaku dari metode yang diwarisi.
Dalam inheritance, class induk sering disebut sebagai superclass atau base class, sedangkan class turunan disebut sebagai subclass atau derived class. Subclass dapat mengakses atribut dan metode yang diwarisi dari superclass dengan menggunakan keyword “super” atau nama class induk.
Contoh penggunaan inheritance adalah ketika kita ingin membuat beberapa class yang memiliki sifat dan perilaku yang sama, namun memiliki beberapa perbedaan. Sebagai contoh, jika kita memiliki class “Mobil”, maka kita dapat membuat subclass seperti “Sedan”, “SUV”, atau “Pickup” yang mewarisi atribut dan metode dari class “Mobil”, namun memiliki atribut dan metode tambahan yang sesuai dengan jenis mobil tersebut.
Dengan menggunakan inheritance, kita dapat membuat kode yang lebih efisien dan mudah dipelihara, karena tidak perlu menulis ulang kode yang sama pada setiap class turunan. Hal ini juga memungkinkan pengembang untuk membuat class yang lebih modular dan fleksibel, karena dapat menambahkan atau mengubah perilaku dari class turunan tanpa memengaruhi class induk.
Polymorphism
Polymorphism (bentuk banyak) dalam OOP (Object-Oriented Programming) adalah kemampuan suatu objek untuk memiliki banyak bentuk. Dalam Java, polymorphism dapat dicapai melalui dua cara: overloading dan overriding.
Overloading adalah kemampuan untuk memiliki beberapa method dengan nama yang sama, namun dengan parameter yang berbeda. Java dapat membedakan method tersebut berdasarkan tipe dan jumlah parameter yang diterima. Contoh penggunaan overloading adalah sebagai berikut:
Overriding adalah kemampuan untuk mengubah perilaku method yang diwarisi dari superclass pada subclass. Dalam overriding, subclass dapat menimpa method yang diwarisi dari superclass dengan versi yang baru. Contoh penggunaan overriding adalah sebagai berikut:
Abstraction
Abstraction (abstraksi) adalah salah satu konsep utama dalam OOP (Object-Oriented Programming) yang mengacu pada kemampuan untuk menyembunyikan detail dan kompleksitas suatu objek dan hanya menampilkan informasi penting yang relevan. Konsep ini memungkinkan pengembang untuk memisahkan antara bagaimana suatu objek bekerja dan bagaimana suatu objek digunakan. Dalam Java, abstraction dapat dicapai melalui dua cara: abstract class dan interface.
Abstract class adalah class yang tidak dapat diinstansiasi (tidak dapat dibuat objeknya), tetapi dapat diwarisi oleh subclass. Abstract class memiliki method abstract, yaitu method yang hanya memiliki deklarasi tanpa implementasi. Implementasi method abstract harus dilakukan oleh subclass yang mewarisi abstract class tersebut. Contoh penggunaan abstract class adalah sebagai berikut:
Interface adalah sebuah kontrak yang menggambarkan perilaku yang harus dimiliki oleh suatu objek, tetapi tidak memberikan detail implementasi. Interface hanya mendefinisikan method yang harus ada pada class yang mengimplementasi interface tersebut. Implementasi method-interface dilakukan oleh class yang mengimplementasi interface tersebut. Contoh penggunaan interface adalah sebagai berikut:
Encapsulation
Encapsulation (enkapsulasi) adalah salah satu konsep utama dalam OOP (Object-Oriented Programming) yang mengacu pada kemampuan untuk menyembunyikan data dan detail implementasi suatu objek dari pengguna objek lain. Konsep ini memungkinkan pengembang untuk membuat program yang lebih aman dan mudah dipelihara.
Dalam Java, encapsulation dapat dicapai melalui access modifier yaitu public, private, dan protected.
- Public: memberikan akses terbuka ke suatu variabel atau method dan dapat diakses dari kelas manapun.
- Private: memberikan akses terbatas ke suatu variabel atau method dan hanya dapat diakses dari kelas yang sama.
- Protected: memberikan akses terbatas ke suatu variabel atau method dan dapat diakses dari kelas yang sama atau kelas turunan (subclass).
Contoh penggunaan encapsulation adalah sebagai berikut:
Coupling & Cohesion
Coupling dan Cohesion adalah dua konsep penting dalam OOP (Object-Oriented Programming) yang berhubungan dengan keterkaitan antara kelas dan metode dalam program.
Coupling mengacu pada derajat ketergantungan antara kelas atau modul dalam program. Jika kelas atau modul terlalu bergantung pada kelas atau modul lain, maka program dapat menjadi sulit untuk dimengerti, dipelihara, dan diuji. Semakin tinggi tingkat coupling, semakin sulit untuk membuat perubahan pada program tanpa memengaruhi kelas atau modul lain. Sebaliknya, semakin rendah tingkat coupling, semakin mudah untuk membuat perubahan pada program tanpa memengaruhi kelas atau modul lain.
Cohesion mengacu pada derajat keterkaitan antara metode atau fungsi dalam suatu kelas. Jika metode dalam suatu kelas memiliki satu tujuan tertentu dan terkait dengan satu topik tertentu, maka kelas tersebut dikatakan memiliki tingkat cohesion yang tinggi. Semakin tinggi tingkat cohesion, semakin mudah untuk memahami dan menggunakan kelas tersebut. Sebaliknya, jika metode dalam suatu kelas memiliki berbagai tujuan dan tidak terkait satu sama lain, maka kelas tersebut dikatakan memiliki tingkat cohesion yang rendah.
Penting untuk memperhatikan tingkat coupling dan cohesion dalam desain program OOP karena dapat memengaruhi kualitas, keandalan, dan keterbacaan program. Tujuannya adalah untuk meminimalkan coupling dan meningkatkan cohesion dalam program. Hal ini dapat dicapai dengan menggunakan prinsip-prinsip seperti SOLID, DRY, dan KISS, serta dengan menerapkan pola desain yang baik dan teknik-teknik refactoring.
Framework Frontend Website
Framework website adalah seperangkat alat, standar, dan konvensi yang digunakan oleh pengembang web untuk membangun aplikasi web dengan lebih cepat, mudah, dan efisien. Framework ini dapat membantu pengembang dalam mengelola kompleksitas aplikasi web dengan menyediakan arsitektur, pola desain, dan kelas-kelas yang sudah terdefinisi.
Dalam framework website, pengembang dapat memanfaatkan kelas-kelas CSS dan JavaScript yang sudah tersedia untuk membangun tampilan web, memvalidasi input pengguna, melakukan komunikasi dengan server, dan lain-lain. Pengembang juga dapat memanfaatkan pola desain yang sudah terdefinisi dalam framework untuk membangun tampilan web yang estetis dan responsif.
Selain itu, framework website juga membantu pengembang dalam memenuhi standar web seperti aksesibilitas, keamanan, dan kecepatan. Dengan memanfaatkan framework website, pengembang dapat mempercepat waktu pengembangan, mengurangi risiko kesalahan, dan memperbaiki kinerja aplikasi web. Ada banyak jenis-jenis framework yang dapat digunakan dalam proses pengembangan website dengan karakteristik dan perannya masing-masing, seperti untuk menangani tampilan, menangani API, dan lain-lain. Berikut adalah beberapa framework yang dapat digunakan dalam pengembangan sebuah website.
React JS
React JS adalah sebuah framework berbasis bahasa JavaScript yang fokus pada pengembangan antarmuka pengguna (user interface atau UI) pada aplikasi web. Framework ini membantu pengembang untuk membuat komponen UI yang dapat di-update secara efisien dan responsif terhadap perubahan data pada aplikasi.
Salah satu kelebihan utama dari React adalah Virtual DOM (Document Object Model). Virtual DOM adalah struktur data yang merepresentasikan struktur HTML DOM dari aplikasi React. Ketika terjadi perubahan data pada aplikasi, React membandingkan Virtual DOM dengan DOM aktual, kemudian melakukan update pada DOM yang diperlukan. Proses ini membuat pengembangan aplikasi React lebih cepat dan efisien, terutama untuk aplikasi yang memiliki banyak interaksi dan perubahan data.
Pengembangan React dilakukan dengan membagi antarmuka pengguna menjadi komponen-komponen yang lebih kecil dan terpisah, masing-masing memiliki kode HTML, CSS, dan JavaScript yang terkait. Setiap komponen diimplementasikan sebagai fungsi atau kelas JavaScript yang mengembalikan elemen-elemen HTML yang dirender pada tampilan aplikasi. Komponen dapat diatur hierarkis dan dapat menerima input dalam bentuk properti (props) dan menghasilkan output dalam bentuk state.
React juga menyediakan berbagai fitur dan library pendukung yang memudahkan pengembangan aplikasi seperti React Router untuk manajemen navigasi, Redux untuk manajemen state, dan Axios untuk akses API. React juga bersifat open-source, sehingga memiliki komunitas pengembang yang besar dan aktif, serta banyak tutorial dan dokumentasi yang tersedia secara online. Oleh karena itu bagi para pemula sangat mungkin untuk dapat menguasai framework ini. Karena kelebihan-kelebihan tersebut, React telah digunakan oleh banyak perusahaan besar seperti Facebook, Instagram, dan Airbnb dalam mengembangkan aplikasi web mereka.
Angular JS
Angular pertama kali dirilis pada tahun 2010 oleh Google dengan tujuan untuk memudahkan pengembangan aplikasi web dengan menggunakan pola arsitektur Model-View-Controller (MVC). Angular menyediakan banyak fitur dan fungsionalitas yang membantu pengembang untuk membangun aplikasi web yang kompleks dengan mudah. Beberapa fitur utama Angular antara lain:
- Data Binding: Angular menyediakan data binding dua arah (two-way data binding) yang memungkinkan perubahan data pada tampilan aplikasi terupdate secara otomatis pada model data, dan sebaliknya. Fitur ini memudahkan pengembang untuk memanipulasi data tanpa perlu menulis banyak kode JavaScript.
- Dependency Injection: Angular menyediakan fitur Dependency Injection (DI) yang memungkinkan pengembang untuk menyediakan objek yang dibutuhkan oleh suatu komponen secara otomatis. DI membantu mengurangi kerumitan dan memudahkan pengembangan aplikasi yang kompleks.
- Routing: Angular menyediakan fitur routing yang memungkinkan pengembang untuk mengatur navigasi pada aplikasi web dengan mudah. Routing dapat digunakan untuk menentukan tampilan yang ditampilkan pada aplikasi web ketika pengguna mengklik tautan atau melakukan navigasi pada halaman.
- Directives: Angular menyediakan fitur Directives yang memungkinkan pengembang untuk menambahkan perilaku khusus pada elemen HTML. Direktif dapat digunakan untuk mengubah perilaku elemen HTML seperti mengulang data pada tampilan, menampilkan atau menyembunyikan elemen, dan banyak lagi.
Angular juga menyediakan banyak library pendukung dan alat bantu seperti Angular CLI, yang memudahkan pengembangan aplikasi dengan menyediakan alat untuk mengatur proyek, membuat komponen dan layanan baru, dan banyak lagi.
Vue JS
Vue.js adalah sebuah framework JavaScript open-source yang dirancang untuk memudahkan pengembangan aplikasi web interaktif dengan menggunakan pola arsitektur Model-View-ViewModel (MVVM). Vue.js didesain untuk memudahkan pengembang untuk membangun antarmuka pengguna yang responsif , dengan fokus pada fleksibilitas dan kecepatan. Vue.js memiliki beberapa fitur utama seperti:
- Data Binding: Vue.js menyediakan fitur data binding dua arah (two-way data binding) yang memudahkan pengembang untuk memanipulasi data pada tampilan aplikasi dan model data secara otomatis terupdate, serta sebaliknya. Fitur ini memudahkan pengembang untuk membuat aplikasi web yang responsif dan mudah dikelola.
- Komponen: Vue.js memungkinkan pengembang untuk memecah tampilan aplikasi menjadi komponen-komponen yang lebih kecil dan terpisah, sehingga memudahkan untuk mengelola kode dan mempercepat pengembangan aplikasi. Setiap komponen diimplementasikan sebagai sebuah file JavaScript dengan kode HTML, CSS, dan JavaScript yang terkait.
- Directives: Vue.js menyediakan fitur directives yang memungkinkan pengembang untuk menambahkan perilaku khusus pada elemen HTML. Directives dapat digunakan untuk mengubah perilaku elemen HTML seperti menambahkan kelas CSS, menampilkan atau menyembunyikan elemen, dan banyak lagi.
- Routing: Vue.js menyediakan fitur routing yang memudahkan pengembang untuk mengatur navigasi pada aplikasi web. Routing dapat digunakan untuk menentukan tampilan yang ditampilkan pada aplikasi web ketika pengguna mengklik tautan atau melakukan navigasi pada halaman.
Selain itu, Vue.js memiliki ukuran file yang kecil, sehingga memungkinkan aplikasi web yang dibangun dengan Vue.js untuk lebih cepat dimuat dan dijalankan pada browser. Vue.js juga memiliki dokumentasi yang lengkap dan aktif, serta komunitas pengembang yang besar dan aktif di seluruh dunia.
Bootstrap
Bootstrap adalah sebuah framework front-end open source yang digunakan untuk membangun tampilan dan antarmuka pengguna (user interface/UI) pada website dan aplikasi web. Bootstrap dikembangkan oleh tim Twitter dan pertama kali dirilis pada tahun 2011. Bootstrap didesain untuk memudahkan pengembang dalam membuat tampilan website yang responsif (responsive), dengan sistem grid yang sudah disediakan.
Bootstrap juga menyediakan kumpulan komponen UI seperti tombol, form, navigasi, tabel, dan lain-lain yang sudah diatur dengan CSS dan JavaScript yang dapat digunakan untuk mempercepat pengembangan website. Komponen-komponen tersebut sudah dikustomisasi dan bisa diatur dengan mudah sesuai dengan kebutuhan pengembang. Selain itu, Bootstrap juga menyediakan berbagai tema yang dapat digunakan untuk memperindah tampilan website dengan mudah.
Bootstrap menggunakan teknologi HTML, CSS, dan JavaScript sehingga kompatibilitasnya tinggi dengan browser modern. Bootstrap juga sudah diadopsi oleh banyak perusahaan besar, situs web dan aplikasi web, sehingga menjadi salah satu framework front-end yang populer saat ini.
Materialize CSS
MaterializeCSS adalah sebuah framework front-end open source yang didesain untuk memudahkan pengembang dalam membuat tampilan website yang modern dan responsif dengan gaya Material Design. Material Design adalah sebuah desain UI/UX yang dikembangkan oleh Google, yang memadukan desain minimalis dengan elemen tiga dimensi dan efek animasi halus.
Serupa dengan bootstrap MaterializeCSS juga menyediakan kumpulan komponen UI seperti tombol, form, navigasi, slider, kartu, dan lain-lain yang sudah diatur dengan CSS dan JavaScript. Selain itu, MaterializeCSS juga menyediakan kumpulan ikon yang dapat digunakan untuk memperindah tampilan website.
Framework ini menggunakan teknologi HTML, CSS, dan JavaScript sehingga kompatibilitasnya tinggi dengan browser modern. MaterializeCSS didesain untuk mudah dipelajari dan digunakan oleh pengembang web baik yang pemula maupun yang berpengalaman. MaterializeCSS juga menyediakan dokumentasi yang lengkap dan dukungan komunitas yang aktif.
MaterializeCSS juga menyediakan fitur responsif, yaitu dapat menyesuaikan tampilan website pada berbagai ukuran layar perangkat, seperti desktop, tablet, dan ponsel pintar. Fitur responsif ini sangat penting untuk membuat tampilan website yang mudah diakses dan mudah digunakan pada berbagai perangkat.
Next JS
Next.js adalah sebuah framework open-source yang digunakan untuk membangun aplikasi web dengan menggunakan React library. Next.js memungkinkan pengembang untuk membangun aplikasi web yang cepat dan responsif dengan fitur-fitur seperti rendering server-side, rendering client-side, pre-rendering, static-site generation (SSG), serta kemampuan untuk menangani halaman dinamis.
Next.js menyediakan banyak fitur dan pengaturan yang sudah disiapkan untuk memudahkan pengembangan aplikasi web, seperti:
- Server-side rendering (SSR): Next.js memungkinkan aplikasi web untuk melakukan rendering server-side, sehingga pengguna dapat melihat konten awal lebih cepat.
- Pre-rendering: Next.js dapat melakukan pre-rendering pada halaman-halaman yang statis, sehingga meningkatkan kinerja aplikasi web.
- Static-site generation (SSG): Next.js memungkinkan pengembang untuk membuat aplikasi web yang sepenuhnya statis, sehingga dapat mempercepat waktu muat.
- Automatic code splitting: Next.js dapat melakukan code splitting secara otomatis, sehingga dapat mempercepat waktu muat halaman web.
Next.js juga menyediakan berbagai fitur seperti routing, styling, dan data fetching yang sudah terintegrasi secara native dengan React. Next.js dapat digunakan dengan berbagai teknologi seperti TypeScript, CSS Modules, dan lain-lain.
Ember JS
Ember.js adalah sebuah framework JavaScript open source yang digunakan untuk membangun aplikasi web. Ember.js menggunakan konsep “convention over configuration” untuk mempermudah pengembangan aplikasi web dengan cara menstandardisasi konfigurasi dan tata letak file yang digunakan dalam aplikasi. Ember.js juga menawarkan banyak fitur dan alat untuk memudahkan pengembangan aplikasi web, termasuk sistem routing, manajemen state, template engine, dan lain-lain.
Salah satu fitur unggulan Ember.js adalah Ember CLI, sebuah alat baris perintah yang menyediakan proses pengembangan dan konfigurasi otomatis untuk aplikasi Ember.js. Ember CLI menyediakan banyak perintah untuk membangun, menjalankan, dan menguji aplikasi web. Ember CLI juga menyediakan banyak plugin dan addon yang dapat digunakan untuk meningkatkan fungsionalitas aplikasi Ember.js.
Ember.js juga menyediakan fitur “two-way data binding” yang memungkinkan perubahan pada elemen UI dan model data dilakukan secara real-time, tanpa perlu menuliskan kode JavaScript yang kompleks. Hal ini membuat pengembangan aplikasi web dengan Ember.js menjadi lebih cepat dan mudah.
Ember.js memiliki komunitas yang aktif dan mendapatkan dukungan dari perusahaan-perusahaan besar seperti LinkedIn, Netflix, dan Apple. Ember.js juga memiliki dokumentasi yang lengkap dan terus diperbarui untuk memudahkan pengembang dalam menggunakan dan mempelajari framework ini.
Tailwind CSS
Tailwind CSS adalah sebuah framework CSS yang dirancang untuk memudahkan pengembangan tampilan dan layout web dengan menggunakan kelas-kelas CSS yang sudah tersedia. Dalam Tailwind CSS, setiap kelas CSS sudah terdefinisi dengan nilai-nilai tertentu, sehingga pengembang tidak perlu menuliskan kode CSS secara manual.
Dengan Tailwind CSS, pengembang dapat membuat tampilan web dengan cepat dan mudah. Tailwind CSS menyediakan banyak kelas CSS untuk membangun layout, warna, typography, border, shadow, dan lain-lain. Pengembang dapat menggabungkan kelas-kelas CSS yang ada untuk membuat tampilan web yang sesuai dengan kebutuhan aplikasi.
Salah satu fitur unggulan Tailwind CSS adalah konfigurasi yang mudah. Pengembang dapat menyesuaikan konfigurasi Tailwind CSS sesuai dengan kebutuhan aplikasi dengan mudah, tanpa perlu menulis kode CSS tambahan.
Selain itu, Tailwind CSS juga mendukung pemrograman responsif, yang memungkinkan pengembang untuk membuat tampilan web yang responsif pada berbagai ukuran layar dengan mudah. Tailwind CSS juga mendukung pembuatan tema, sehingga pengembang dapat membuat tampilan web yang konsisten dan mudah dikelola.
Tailwind CSS memiliki komunitas yang aktif dan dokumentasi yang lengkap. Karena fitur-fiturnya yang mudah digunakan dan konfigurasi yang mudah, Tailwind CSS menjadi salah satu pilihan populer untuk pengembangan tampilan web pada berbagai industri seperti e-commerce, media, dan teknologi.
Bulma
Bulma adalah sebuah framework CSS open source yang digunakan untuk membangun tampilan dan layout web dengan cepat dan mudah. Dalam Bulma, pengembang dapat membuat tampilan web dengan menggunakan kelas-kelas CSS yang sudah tersedia.
Bulma menyediakan banyak kelas CSS untuk membangun layout, warna, typography, border, dan lain-lain. Pengembang dapat menggabungkan kelas-kelas CSS yang ada untuk membuat tampilan web yang sesuai dengan kebutuhan aplikasi. Bulma juga mendukung pemrograman responsif, yang memungkinkan pengembang untuk membuat tampilan web yang responsif pada berbagai ukuran layar.
Salah satu fitur unggulan Bulma adalah fleksibilitasnya. Bulma memungkinkan pengembang untuk menyesuaikan tampilan web sesuai dengan kebutuhan aplikasi dengan mudah, tanpa perlu menulis kode CSS tambahan. Selain itu, Bulma juga memiliki tampilan yang estetis dan modern.
Bulma memiliki dokumentasi yang lengkap dan mudah dipahami, sehingga pengembang dapat dengan mudah mempelajari dan menggunakannya. Bulma juga memiliki komunitas yang aktif dan banyak plugin yang dapat digunakan untuk meningkatkan fungsionalitas aplikasi.
Karena fitur-fiturnya yang mudah digunakan dan fleksibel, Bulma menjadi salah satu pilihan populer untuk pengembangan tampilan web pada berbagai industri seperti e-commerce, media, dan teknologi.
Polymer
Polymer adalah sebuah framework front-end open-source yang digunakan untuk membangun aplikasi web dengan menggunakan Web Components. Web Components adalah sebuah teknologi web yang memungkinkan pengembang untuk membuat komponen web yang dapat digunakan dan diubah oleh pengembang lain.
Dalam Polymer, pengembang dapat membuat komponen web dengan mudah, baik itu custom element, shadow DOM, maupun HTML imports. Komponen web yang dibuat dapat digunakan pada berbagai aplikasi web dengan cara yang sama seperti menggunakan elemen HTML biasa.
Polymer menyediakan banyak fitur dan kelas-kelas yang memudahkan pengembangan aplikasi web. Misalnya, Polymer menyediakan kelas untuk mengambil data dari REST API, kelas untuk membangun tampilan web yang responsif, dan kelas untuk membuat animasi pada komponen web.
Polymer juga memiliki alat pengembangan yang lengkap, seperti Polymer CLI dan Polymer Designer, yang memudahkan pengembang dalam membuat dan mengelola aplikasi web.
Polymer memiliki dokumentasi yang lengkap dan mudah dipahami, serta komunitas yang aktif. Karena fitur-fiturnya yang inovatif dan teknologi yang digunakan, Polymer menjadi salah satu pilihan populer untuk pengembangan aplikasi web modern pada berbagai industri seperti e-commerce, media, dan teknologi.
Semantic UI
Semantic UI adalah sebuah framework front-end open-source yang digunakan untuk membangun tampilan dan layout web dengan mudah dan cepat. Framework ini didesain untuk mempermudah pengembangan aplikasi web dengan memanfaatkan kelas-kelas CSS yang sudah tersedia dan intuitif.
Semantic UI memiliki fitur yang memudahkan pengembang dalam membangun tampilan web yang estetis dan responsif. Dalam Semantic UI, pengembang dapat memilih dari banyak kelas CSS yang sudah tersedia, seperti warna, typography, form, dan lain-lain. Selain itu, Semantic UI juga menyediakan komponen web yang sudah jadi seperti dropdown, modal, dan popup yang dapat digunakan tanpa perlu menulis kode tambahan.
Salah satu fitur unggulan Semantic UI adalah fleksibilitasnya. Pengembang dapat mengubah tampilan komponen web sesuai dengan kebutuhan aplikasi dengan mudah, tanpa perlu menulis kode CSS tambahan. Semantic UI juga mendukung pemrograman responsif, yang memungkinkan pengembang untuk membuat tampilan web yang responsif pada berbagai ukuran layar.
Semantic UI memiliki dokumentasi yang lengkap dan mudah dipahami, serta komunitas yang aktif. Karena fitur-fiturnya yang mudah digunakan dan fleksibel, Semantic UI menjadi salah satu pilihan populer untuk pengembangan tampilan web pada berbagai industri seperti e-commerce, media, dan teknologi.
Penerapan dari Salah Satu Framework
Seperti yang kita ketahui prodi Teknik Informatika sudah memilki website dengan tautan http://if.unila.ac.id/. Website tersebut dibangun menggunakan wordpress yang merupakan salah satu platform content management system. Akan tetapi penggunaan cms seperti wordpress, terkadang menyebabkan adanya hal-hal yang tidak dapat dilakukan atau bersifat terbatas. Terlebih lagi apabila hanya menggunakan wordpress default (nonpremium) pastinya sangat sulit sekali untuk pengembangan sebuah website. Namun kita dapat dapat menggunakan suatu framework yang dapat memudahkan dalam pengembangan website, salah satunya yaitu Bootstrap. Bootstrap adalah sebuah framework front-end yang memudahkan dalam pembuatan tampilan website atau aplikasi dengan cepat dan responsif. Untuk mengintegrasikannya pada project manual, yaitu dibangun menggunakan HTML, CSS, dan Javascript cukup dengan memasukkan link cdn dari Bootstrap dan siap untuk digunakan. Bootstrap juga dapat diintegrasikan dengan wordpress, dengan menginstal plugin seperti WP Bootstrap 4, WP Bootstrap Starter, WP-Bootstrap Navwalker, dan Shortcodes Ultimate. Apabila website http://if.unila.ac.id/ dirancang dengan menggunakan framework ini, maka ada beberapa hal yang didapat dalam proses pengembangan antara lain:
- Desain responsif: Seperti yang kita ketahui bahwa bootstrap memberikan kemudahan dalam membuat tampilan responsif untuk website atau aplikasi. Hal ini karena Bootstrap menyediakan class-class CSS yang sudah siap digunakan untuk membuat tampilan yang responsif pada berbagai ukuran layar. Sehingga nantinya website http://if.unila.ac.id/ dapat diakses dengan baik dari berbagai device, karena framework ini dapat menyesuaikan tampilan berdasarkan device yang digunakan oleh pengguna.
- Komponen siap pakai: Bootstrap juga menyediakan berbagai komponen siap pakai seperti tombol, form, navigasi, modal, dan masih banyak lagi. Komponen-komponen ini dapat digunakan dengan mudah tanpa perlu membuat dari awal. Sehingga pengembangan website http://if.unila.ac.id/ akan lebih mudah untuk memenuhi kebutuhan pengguna karena komponen yang diperlukan telah tersedia. Serta dapat memaksimalkan pengalaman pengguna dengan memanfaatkan komponen-komponen yang ada.
- Grid system: Bootstrap memiliki grid system yang memudahkan dalam membuat layout website atau aplikasi. Grid system ini membagi layar menjadi 12 kolom sehingga dapat membuat tampilan yang rapi dan proporsional. Tentunya hal ini juga sangat berguna karena website http://if.unila.ac.id/ tidak hanya menggunakan satu kolom saja untuk penyajian konten website akan tetapi menggunakan banyak kolom dalam pengembangannya. Terlebih lagi sistem grid dalam bootsrap ini responsive mengikuti dimensi layar device yang digunakan.
- Kustomisasi: Meskipun Bootstrap menyediakan banyak class-class siap pakai, framework ini juga memberikan kemudahan dalam melakukan kustomisasi. Hal ini dapat dilakukan dengan mengubah nilai-nilai CSS pada file custom CSS. Jika pengembangan tidak menggunakan cms maka kita dapat mengubah nilai dari atribut suatu class atau komponen yang tersedia. Jadi kita dapat mengubah komponen menyesuaikan design website http://if.unila.ac.id/ yang telah ditentukan.
- Dukungan browser: Bootstrap mendukung browser modern seperti Google Chrome, Mozilla Firefox, Microsoft Edge, dan Safari. Hal ini membuat website atau aplikasi yang menggunakan Bootstrap dapat diakses dengan baik pada berbagai jenis browser. Jadi tidak perlu khawatir website http://if.unila.ac.id/ yang telah dibuat tidak dapat diakses dengan baik, karena browser yang digunakan oleh mayoritas pengguna tidak kompatibel dengan framework bootstrap.
- Integrasi dengan JavaScript: Bootstrap juga menyediakan berbagai plugin JavaScript seperti slider, tooltip, dan popover. Plugin-plugin ini dapat diintegrasikan dengan mudah pada website atau aplikasi yang menggunakan Bootstrap. Dengan adanya integrasi dengan JavaScript akan memabuat website http://if.unila.ac.id/ menjadi lebih proper, karena dengan javascript dapat membuat website bertindak berdasarkan suatu kejadian atau event yang terjadi. Hal ini tentunya akan menambah rasa pengalaman dari pengguna.
- Animasi dan efek: Bootstrap menyediakan berbagai animasi dan efek yang dapat menambahkan interaksi dan pengalaman pengguna yang lebih baik pada website atau aplikasi. Beberapa animasi yang tersedia antara lain fade, slide, dan bounce. Hal tersebut terjadi dikarenakan sudah terintegrasi dengan JavaScript, sehingga framework ini powerfull dalam hal animasi dan efek.
- Font dan ikon: Bootstrap menyediakan berbagai jenis font dan ikon siap pakai yang dapat digunakan pada website atau aplikasi. Hal ini memudahkan dalam membuat tampilan yang konsisten dan estetis.
- Pengujian cross-browser: Bootstrap telah diuji pada berbagai jenis browser dan perangkat, sehingga dapat memastikan konsistensi tampilan pada berbagai platform. Hal ini mengurangi risiko kesalahan tampilan atau performa pada browser tertentu.
- Dokumentasi yang lengkap: Bootstrap memiliki dokumentasi yang lengkap dan mudah dipahami. Hal ini memudahkan dalam mempelajari dan menggunakan Bootstrap untuk membuat tampilan website atau aplikasi yang responsif dan modern.
Itulah hal-hal yang akan diperoleh apabila pengembangan website http://if.unila.ac.id/ diintegrasikan mengguakan Bootstrap. Dari sepuluh poin diatas dapat disimpulkan bahwa penggunaan framework bootstrap ini dapat memudahkan dalam proses pengembangan suatu website karena sudah memiliki banyak fitur yang sangat berguna di dalamnya, terlebih lagi framework ini sudah kompatibel dengan banyak browser mainstream yang banyak digunakan oleh pengguna.
KUIS PENGETAHUAN LINGKUNGAN
Nama : Ridho Ahmad Fauzi
NPM : 2115061001
Prodi : S1 Teknik Informatika
Kelas : PSTI A
Dosen Pengampu : Rio Ariestia Pradipta, S.Kom, M.T.I
KEMISKINAN DI BANDAR LAMPUNG
Kemiskinan adalah suatu keadaan saat ketidakmampuan untuk memenuhi kebutuhan dasar seperti sandang, pangan, papan, pendidikan, dan kesehatan. Kemudian untuk mengukur kemiskinan menggunakan konsep kemampuan memenuhi kebutuhan dasar, sehingga kemiskinan dipandang sebagai ketidakmampuan dari sisi ekonomi untuk memenuhi kebutuhan dasar dari sisi pengeluaran. Jadi Penduduk miskin adalah penduduk yang memiliki rata-rata pengeluaran perkapita perbulan dibawah garis kemiskinan.
Pada Provinsi Lampung angka kemiskinan menunjukkan kenaikan selama pandemi covid-19. Data Badan Pusat Statistik (BPS) mencatat jumlah penduduk miskin lampung sebelum datang pandemi pada september 2019 berjumlah 1.041.480 jiwa atau 12,3% dari total penduduk. Namun pada Maret 2020 angkanya meningkat menjadi 1.049.320 jiwa (12,34%). Peningkatan angka kemiskinan terus berlanjut sampai pada Maret 2021, angkanya menjadi 1.083.930 jiwa (12,62%).
Penyebab Kemiskinan
Kemiskinan yang terjadi pada Provinsi Lampung disebabkan oleh harga komoditas bahan pokok yang belum terkendali. Salah satunya disebabkan gagal panen akibat bencana alam banjir yang terjadi di sejumlah wilayah di Lampung. Kenaikan harga bahan pokok juga turut andil dalam menaikkan angka kemiskinan seperti yang terjadi pada Maret 2020. Hal ini mengindikasikan bahwa tingkat pendapatan sebagian penduduk miskin khususnya mereka yang berada di sekitar garis kemiskinan, belum mampu mengimbangi kenaikan harga pada saat garis kemiskinan mengalami kenaikan.
BPS Lampung mencatat, pada Maret 2020 komoditi makanan yang memberikan andil terbesar pada naiknya garis kemiskinan baik di perkotaan maupun di pedesaan yakni beras. Beras menyumbang garis kemiskinan sebesar 19,48% di perkotaan dan 26% di pedesaan. Selain itu terdapat rokok kretek, telur ayam, gula pasir, tempe, dan bawang merah yang andil dalam naiknya angka garis kemiskinan.
Datangnya pandemi juga berpengaruh terhadap angka kemiskinan Provinsi Lampung. Berdasarkan data dari BPS penduduk Provinsi Lampung yang terdampak covid-19 pada September 2020 mencapai 655,9 ribu jiwa (10,25%). Hal tersebut menyebabkan naiknya angka kemiskinan Provinsi Lampung, di mana ada sebanyak 52 ribu pekerja menjadi penganggur karena PHK dan 549,7 ribu pekerja mengalami pengurangan jam kerja.
Siapa Yang Terdampak
Dalam hal ini yang terdampak tentunya penduduk Provinsi Lampung yang tidak dapat memenuhi kebutuhan pokoknya yang dikarenakan tidak memiliki uang yang cukup. Penduduk yang dimaksud adalah penduduk yang tidak memiliki penghasilan atau penduduk yang tidak memiliki pekerjaan (menganggur). Oleh karena itu, penduduk tersebut tidak dapat memenuhi kebutuhannya. Selain itu penduduk yang sudah memiliki keluarga dan memiliki anak maka kebutuhan anak akan pendidikan sulit terpenuhi mengingat untuk kebutuhan pangan saja sulit terpenuhi. Selain tidak dapat memenuhi kebutuhan pokoknya penduduk tersebut juga tidak dapat mendapatkan akses kesehatan yang memadai, serta yang terburuk penduduk tersebut tidak dapat memenuhi kebutuhan gizi dengan baik. Selain itu juga akan berdampak pada Pemprov Lampung karena dianggap tidak mampu untuk mengatasi permasalahan kemiskinan yang terjadi pada provinsi Lampung.
Solusi Permasalahan
Pemerintah harus berupaya untuk meningkatkan kualitas hidup masyarakat dengan mengadakan pembinaan sumber daya manusia seperti, peningkatan dan pemerataan pendidikan, pelayanan kesehatan, serta teknologi dan ilmu pengetahuan. Kemudian juga menyediakan program-program pelatihan usaha yang lebih berkompetitif di seluruh kabupaten/kota Provinsi Lampung, sehingga diharapkan mampu meningkatkan indeks pembangunan manusia guna menekan tingkat kemiskinan di Provinsi Lampung.
Kemudian pemerintah harus dapat mendistribusikan pendapatan daerah secara adil dan merata sehingga seluruh lapisan masyarakat Lampung termasuk masyarakat miskin dapat merasakan hasil dari pembangunan ekonomi supaya dapat mendorong pertumbuhan ekonomi wilayah Lampung dan peningkatan pendapatan masyarakat Lampung.
Terakhir Pemerintah dapat menyediakan lapangan pekerjaan bagi masyarakat Lampung serta menerapkan kebijakan yang dapat menarik minat masyarakat Lampung untuk menjadi wirausaha mandiri, sehingga mereka dapat menyelesaikan kemiskinan yang terjadi pada keluarganya serta juga dapat membuka lapangan kerja bagi masyarakat sekitar.
Pihak Yang Berperan
Untuk menyelesaikan solusi yang telah dicanangkan diperlukan peran dari berbagai pihak yaitu masyarakat maupun pemerintah. Pemerintah Lampung baik daerah kabupaten/kota dalam hal ini dapat menyelesaikan masalah kemiskinan dengan baik yaitu membuat kebijakan yang tepat. Kemudian masyarakat Lampung harus mendukung kebijakan-kebijakan yang dibuat oleh pemerintah Lampung untuk menyelesaikan kemiskinan, karena kebijakan akan berjalan baik apabila semua pihak dapat menjalankannya.
Referensi:
https://lampung.bps.go.id/pressrelease/2020/07/15/860/profil-kemiskinan-provinsi-lampung-maret-2020.html
https://www.gramedia.com/literasi/kemiskinan/
https://www.gatra.com/detail/news/503772/ekonomi/penduduk-miskin-lampung-meningkat-akibat-pandemi
http://databoks.katadata.co.id/datapublish/2021/07/29/kemiskinan-lampung-meningkat-selama-pandemi-covid-19
JURNAL 1 PENGETAHUAN LINGKUNGAN
Pada kesempatan kali ini saya akan membahas suatu forum dunia yang bergerak dalam menangani permasalahan-permaslahan yang terjadi di dunia, forum tersebut ialah Group of Twenty (G20) dan Conference of the Parties ke-26 (COP26), berikut paparan mengenai forum tersebut.
Group of Twenty (G20)
G20 adalah suatu forum kerja sama multilateral yang terdiri dari 19 negara utama dan Uni Eropa (EU). Forum G20 ini merepresentasikan lebih dari 60% populasi Bumi, 75% perdagangan global, dan 80% PDB dunia. Anggota dari forum G20 terdiri dari Afrika Selatan, Amerika Serikat, Arab Saudi, Argentina, Australia, Brasil, India, Indonesia, Inggris, Italia, Jerman, Kanada, Meksiko, Korea Selatan, Rusia, Perancis, Tiongkok, Turki, dan Uni Eropa.
G20 dibentuk pada tahun 1999 untuk merangkul negara maju dan berkembang untuk bersama-sama mengatasi krisi yang terjadi di dunia, utamanya yang melanda Asia, Rusia, dan Amerika Latin. G20 memiliki tujuan untuk mewujudkan pertumbuhan global yang kuat, berkelanjutan, seimbang, dan inklusif.
Pada tahun ini Indonesia resmi meneruskan estafet presidensi G20 dari Italia serta pertama kalinya Indonesia akan memegang presidensi G20 pada tahun 2022, penyerahan tersebut dilakukan pada sesi penutupan KTT G20 Roma yang berlangsung di La Nuvola, Roma, Italia. Presiden Jokowi menjelaskan bahwa presidensi G20 Indonesia akan menggiatkan upaya bersama untuk pemulihan ekonomi dunia dengan tema “Recover Together, Recover Stronger”. Dengan komitmen pertumbuhan yang inklusif, people-centered, serta ramah lingkungan dan berkelanjutan.
Forum ini tentunya juga memberikan manfaat bagi Negara Indonesia yang membuat Presiden Jokowi sangatlah antusias terhadap forum ini, manfaatnya yaitu sebagai berikut.
- Presidensi G20 di tengah pandemi akan membentuk persepsi yang baik atas resiliensi ekonomi Indonesia terhadap krisis dan juga merupakan bentuk pengakuan status Indonesia sebagai salah satu negara dengan perekonomian terbesar di dunia, yang tentunya dapat menjadi contoh negara berkembang lainnya.
- Memberikan nilai tambah bagi pemulihan ekonomi Indonesia, baik dari sisi aktivitas ekonomi maupun kepercayaan masyarakat domestik dan Internasional.
- Menjadi kesempatan bagi Indonesia untuk menunjukkan kepemimpinan Indonesia di kancah internasional, terutama dalam hal pemulihan ekonomi global, kemudian dalam sisi regional presidensi menegaskan bahwa kepemimpinan Indonesia dalam bidang diplomasi internasional dan ekonomi di kawasan, mengingat Indonesia merupakan satu-satunya negara di ASEAN yang menjadi anggota G20.
- Membuat indonesia menjadi salah satu negara yang menjadi fokus perhatian satu dunia, utamanya bagi para pelaku ekonomi dan keuangan, sehingga forum ini dapat dijadikan panggung untuk menunjukkan kemajuan yang telah dicapai Indonesia kepada dunia dan menjadi langkah awal keyakinan pelaku ekonomi pasca pandemi, baik dari dalam maupun luar negeri.
- Terakhir menjadi ajang promosi parawisata dan produk unggulan Indonesia kepada dunia internasional, sehingga diharapkan dapat turut menggerakan ekomonmi Indonesia.
Conference of the Parties ke-26 (COP26)
COP26 merupakan forum pertama yang melakukan evaluasi hasil dari Paris Accord atau Persetujuan Iklim Paris yang dibentuk pada tahun 2015 lalu. Perjanjian tersebut memiliki tujuan untuk menghindari bencana akibat perubahan global, yang mana dalam Paris Accord, disepakati saat pemanasan global naik hingga 1,5 derajat celcius diatas suhu yang pernah dialami di era praindustri, maka akan terjadi banyak perubahan terhadap bumi yang tak dapat dihindarkan. Oleh karena itu rencana yang telah dibuat haruslah dilaksanakan.
Tugas utama COP adalah melakukan peninjauan target-target setiap negara terkait emisi yang diajukan. Pelaksanaan COP akan bergantian di antara lima wilayah PBB, yakni Afrika, Asia, Amerika Latin dan Karibia, Eropa Tengah dan Timur dan Eropa Barat dan Lainnya. Adapun target-terget utama saat Paris Accord 2015 atau saat COP21 yaitu setiap negara harus berjanji untuk:
- Menggiatkan pengurangan emisi gas rumah kaca
- Menggencarkan produksi energi terbarukan
- Mempertahankan suhu global agar tetap di bawah 2 derajat celcius, atau idealnya maksimal 1,5 derajat celcius
- Berkomitmen untuk memberikan bantuan dana sebesar miliaran dolar untuk dampak perubahan iklim yang dihadapi oleh negara-negara miskin.
Bagi Indonesia COP 26 merupakan suatu hal yang penting mengingat Indonesia juga telah menargetkan pada tahun 2030 angka-angka emisi karbon dari segala sektor sudah bisa tercapai/netral bahkan sudah bisa menyimpan karbon sebanyak 140 juta ton khusus dari sektor kehutanan. Sebagai komitmen Pemerintah Indonesia dalam mencegah kenaikan suhu bumi di bawah 1,5°C seperti yang disepakati pada Persetujuan Paris tahun 2015 lalu.
Referensi :
https://www.bi.go.id/id/G20/Default.aspx
http://ditjenppi.menlhk.go.id/berita-ppi/3934-presiden-cop-26-glasgow-untuk-iklim-indonesia-negara-penting.html
https://ukcop26.org/
https://www.g20.org/
Recent Comments