Akses kelas selamanya

Ambil Promo
flash sale
hamburger-menu

Tips All

Meningkatkan skills menjadi 1% lebih baik

Reset
Kelas Cara Menggunakan Method dan Function | Tutorial Golang Bahasa Indonesia di BuildWithAngga

Cara Menggunakan Method dan Function | Tutorial Golang Bahasa Indonesia

Golang, atau biasa dikenal sebagai Go, adalah bahasa pemrograman yang semakin populer di kalangan pengembang perangkat lunak. Dikembangkan oleh Google, Go menawarkan sintaksis yang sederhana, performa tinggi, dan kemudahan dalam penulisan kode. Salah satu fitur utama dari Go adalah kemampuannya untuk menggunakan method dan function secara efektif. Dalam tutorial ini, kita akan menjelaskan cara menggunakan method dan function dalam bahasa pemrograman Go dengan bahasa Indonesia. Pengenalan Method dan Function Sebelum kita melangkah lebih jauh, mari kita pahami apa itu method dan function dalam konteks Go. Function Function adalah blok kode yang dapat dipanggil untuk melakukan tugas tertentu. Mereka membantu dalam mengorganisasi kode Kamu dan memungkinkan untuk mengeksekusi tugas yang sama secara berulang. Dalam Go, function dideklarasikan dengan menggunakan kata kunci func, diikuti oleh nama function, daftar parameter (jika ada), dan tipe data yang dikembalikan (jika ada). Method Method adalah function yang terkait dengan suatu tipe data tertentu. Mereka memungkinkan kita untuk "mengikat" function ke tipe data, sehingga operasi tertentu dapat dieksekusi pada instance dari tipe data tersebut. Dalam Go, method dideklarasikan dengan menentukan sebuah function dan menambahkan penerima (receiver) di awal deklarasi function. Cara Membuat dan Menggunakan Function Pertama, mari kita lihat cara membuat dan menggunakan function dalam Go. Output dari program di atas akan menjadi: Cara Membuat dan Menggunakan Method Sekarang, mari kita pelajari cara membuat dan menggunakan method dalam Go. Output dari program di atas akan menjadi: Kesimpulan Dalam tutorial ini, kita telah mempelajari cara menggunakan method dan function dalam bahasa pemrograman Go. Function digunakan untuk mengeksekusi tugas tertentu, sedangkan method memungkinkan kita untuk memanipulasi data melalui tipe data yang terkait. Dengan pemahaman yang baik tentang penggunaan keduanya, Kamu dapat mengembangkan aplikasi Go yang lebih efisien dan mudah dipelihara. Semoga tutorial ini bermanfaat! Semoga dengan pemahaman Go, Kamu lebih siap untuk menghadapi tantangan dalam pengembangan aplikasi Go yang lebih kompleks. Jangan ragu untuk terus belajar dan menjelajahi fitur-fitur menarik dalam bahasa Go! Dan untuk pengalaman belajar yang lebih mendalam, yuk bergabung di Build with Angga dan kembangkan keterampilan pemrograman Go Kamu bersama komunitas yang solid dan dukungan dari instruktur ahli. Mari bergabung dan berkembang bersama-sama! 🚀 BuildWithAngga

Kelas Unsplash: Membantu Designer dalam Mencari Gambar di BuildWithAngga

Unsplash: Membantu Designer dalam Mencari Gambar

Apakah kamu pernah merasa sulit mencari gambar, ilustrasi, atau foto yang sesuai dengan kebutuhan desainmu? Unsplash, sebuah platform berbagi gambar, ilustrasi, font, template, dan foto. Beberapa dari item tersebut bahkan dapat kamu miliki secara gratis! Namun, akses melalui website dan proses pengunduhan terlebih dahulu seringkali menghabiskan waktu dan membingungkan. Kabar baiknya, saat ini Unsplash hadir dalam bentuk plugin Figma yang mempermudah kamu untuk memasukkan foto langsung ke dalam desainmu. Dengan begitu, proses desainmu akan menjadi lebih efisien dan kreatif, tanpa harus repot mencari-cari gambar secara manual. Cara menggunakan plugin unsplash Tahap 1: Cari unsplash plugin dan run plugin Cara menggunakan plugin Unsplash sangatlah mudah. Tahap pertama adalah mencari plugin Unsplash pada bagian resources di Figma. Setelah kamu menemukannya, langkah selanjutnya adalah dengan mengklik opsi "run plugin"untuk mengaktifkannya. Tahap 2: Buka unsplash plugin Tahap kedua setelah menemukan plugin Unsplash di bagian resources adalah membukanya. Pertama-tama, kamu perlu membuka plugin Unsplash agar bisa mengakses semua fitur yang disediakan. Setelah plugin terbuka, kamu akan diperlihatkan dengan berbagai opsi dan fitur yang memungkinkan kamu untuk menelusuri ribuan gambar berkualitas tinggi. Tahap 3: Pilih frame atau objek yang mau dimasukan foto Pilih salah satu objek atau frame yang akan dimasukkan foto. Dengan langkah ini, kamu dapat langsung menempatkan foto yang telah kamu pilih ke dalam frame yang telah dipilih sebelumnya. Dengan memilih objek atau frame tertentu, kamu dapat mengatur secara tepat di mana foto tersebut akan ditempatkan dalam desainmu. Tahap 4: Cari dan pilih foto yang akan digunakan Cari foto yang ingin kamu gunakan dan pilih foto tersebut. Dengan melakukan langkah ini, foto akan secara otomatis masuk ke dalam frame yang sudah kamu pilih sebelumnya. Proses ini memudahkan kamu untuk menemukan dan menerapkan foto yang sesuai dengan kebutuhan desainmu. Selain itu, apabila kalian tidak memilih frame untuk foto terlebih dahulu, maka gambar akan tetap keluar di luar framedengan ukuran sebenarnya, yang mungkin dapat mengakibatkan gangguan dalam tampilan desain dan menurunkan kesan profesionalitasnya. Oleh karena itu, penting untuk memastikan bahwa setiap elemen visual termasuk foto, ditempatkan dengan cermat dalam frame yang tepat, sehingga keseluruhan desain tetap terorganisir dan terlihat estetis. Unsplash: Membantu desainer dalam mencari gambar đŸ“· Dari beragam koleksi gambar yang tersedia secara gratis hingga kemampuannya dalam menyediakan inspirasi visual untuk berbagai proyek desain, Unsplash menjadi sumber daya yang sangat berharga bagi para desainer dalam mencari gambar yang sesuai dengan kebutuhan mereka. Mau mencoba menggunakan Unsplash untuk mendapatkan gambar-gambar berkualitas tinggi untuk desainmu? Yuk, temukan lebih banyak sumber daya dan inspirasi desain gratis di BuildWithAngga! Dengan mengikuti kelas-kelas UI/UX design , kamu dapat mengasah keterampilan dan memperkaya portfolio desainmu 🚀

Kelas 5 Software Graphic Designer Terpopuler Saat Ini di BuildWithAngga

5 Software Graphic Designer Terpopuler Saat Ini

Kamu pasti sering melihat desain kemasan produk yang menarik atau campaign promosi, desain konten sosial media, dan masih banyak yang lainnya. Berangkat dari desain yang menarik inilah rasa penasaran muncul hingga akhirnya coba untuk mencari tahu siapa dibalik layar yang membuat itu semua. Yap, itu semua ialah hasil pengerjaan dari seorang Graphic Designer. Namun, apa itu Graphic Designer? Graphic Designer merupakan salah satu bentuk seni lukis untuk menciptakan atau mengatur elemen rupa seperti ilustrasi, foto, tulisan, dan garis di atas suatu media. Bentuk-bentuk dari seni desain grafis ini dibuat oleh seorang Graphic Designer yang memiliki spesialisasi untuk menerjemahkan pesan menjadi dalam bentuk gambar. Graphic Designer juga terlibat langsung dalam pembuatan desain, baik untuk konten marketing, dan tujuan lain yang dibutuhkan dan diminta oleh perusahaan. Lalu, apa aja sih software yang sering digunakan oleh para Graphic Designer pada saat ini. Yuk, Simak 5 Tools Populer Graphic Designer Saat ini!😍 1. Canva Canva Software Design Canva adalah aplikasi desain grafis berbasis web dan seluler yang dirancang untuk memudahkan siapa pun, dari pemula hingga profesional, dalam membuat berbagai jenis desain grafis. Salah satu fitur utama Canva adalah koleksi besar template yang mencakup berbagai keperluan desain, mulai dari media sosial, poster, undangan, kartu ucapan, hingga presentasi. Dengan begitu, pengguna tidak perlu memulai desain dari nol, melainkan dapat memilih template yang sesuai dengan kebutuhan mereka dan menyesuaikan nya dengan mudah. Selain template, Canva juga menyediakan ribuan elemen desain seperti ikon, gambar, bentuk, dan latar belakang yang dapat digunakan untuk menambahkan sentuhan kreatif pada desain. Fitur drag-and-drop yang intuitif memungkinkan pengguna untuk dengan mudah mengatur elemen desain sesuai keinginan mereka. Selain itu, Canva juga menawarkan berbagai jenis font dan efek teks untuk membuat desain lebih menarik. Berikut beberapa kelebihan Canva sebagai software design, di antaranya : Fleksibilitas akses: Canva dapat diakses melalui browser web atau aplikasi seluler, memungkinkan pengguna untuk membuat dan mengedit desain di mana saja dan kapan saja.Opsi gratis dan berlangganan premium: Canva menawarkan fitur gratis yang luas, sementara opsi berlangganan premium memberikan akses ke lebih banyak konten dan fitur tambahan, seperti kolaborasi tim dan penyimpanan cloud yang lebih besar.Fitur Kolaborasi: Canva menyediakan fitur kolaborasi yang memungkinkan pengguna untuk bekerja sama dalam satu proyek desain, sehingga memudahkan kerja tim. 2. Midjourney Midjourney.ai Software Design Midjourney adalah platform AI yang memungkinkan pengguna menciptakan gambar menggunakan perintah teks. Dengan hanya memasukkan kata kunci, algoritme akan menghasilkan gambar sesuai dengan instruksi pengguna. Berbeda dengan generator seni AI lainnya, Midjourney berjalan eksklusif di dalam aplikasi obrolan Discord, bukan melalui aplikasi desktop atau situs web cloud. Pengguna harus memiliki akun Discord dan bergabung dengan server Midjourney untuk mengaksesnya. Dengan layanan ini, pengguna dapat menemukan inspirasi dan berinteraksi dengan komunitas desainer, artis, dan penggemar melalui ruang obrolan yang tak terbatas. Dengan perintah /imagine, pengguna dapat mewujudkan ide-ide kreatif mereka menjadi gambar dengan cepat dan mudah. Beberapa kelebihan dari Midjourney, di antaranya : Kemudahan Penggunaan: Platform ini memungkinkan pengguna untuk menciptakan gambar berkualitas tinggi tanpa memerlukan keterampilan artistik yang kompleks.Kecepatan: Dengan bantuan AI, Midjourney mampu menghasilkan gambar dengan cepat, mempercepat proses desain.Integrasi dengan Discord: Midjourney berjalan di dalam aplikasi obrolan Discord, yang memungkinkan pengguna untuk berinteraksi dengan komunitas desainer dan mendapatkan inspirasi.Aksesibilitas: Dengan menggunakan platform ini, pengguna dari berbagai latar belakang dapat dengan mudah menciptakan gambar tanpa batasan keterampilan artistik yang tinggi. 3. Figma Figma Software Design Figma merupakan platform desain grafis online yang memungkinkan kolaborasi dan desain bersama. Dengan antarmuka yang mudah digunakan, Figma cocok untuk pemula yang ingin membuat desain grafis tanpa perlu men-download aplikasi di perangkat. Di Figma juga kita dapat mendesain logo, membuat produk digital seperti mockup dan mind map, website, hingga aplikasi mobile. Software desain satu ini masih menjadi pilihan yang populer, karena terdapat beberapa kelebihan dari Figma, di antaranya : Kemampuan Kolaborasi Secara Real-time: Memungkinkan untuk bekerjasama dengan tim di satu rancangan secara bersamaan, tidak peduli dengan jarak entah berbeda daerah ataupun negara asalkan masih mempunyai koneksi internet.Aksesibilitas Cloud: Mengedit dan mengakses desain dari mana saja, menawarkan fleksibilitas luar biasa seluruh pekerjaan dapat tersimpan otomatis ke dalam Cloud setiap ada perubahan.Banyak plugin yang tersedia dan komunitas yang luas: Semakin banyaknya komunitas yang tergabung pada Figma maka akan banyak juga plugin-plugin yang dibuat oleh teman-teman komunitas.Dapat diakses melalui apa saja: Memungkinkan untuk mengakses file Figma dari manapun dan device apapun (tablet atau handphone).Support di berbagai platform: Dapat digunakan di berbagai macam platform seperti Windows, iOS, android, macOS, dan Linux. 4. Pixellab Pixellab Software Design Pixellab adalah sebuah aplikasi desain grafis yang populer di kalangan pengguna perangkat mobile. Didesain untuk memudahkan pengguna dalam membuat desain grafis langsung dari smartphone atau tablet mereka. Salah satu keunggulan utamanya ialah mudah dipakai, bahkan untuk pemula sekalipun. Dengan antarmuka yang intuitif dan fitur drag-and-drop, pengguna dapat dengan mudah membuat berbagai desain seperti poster, banner, spanduk, atau meme dengan cepat. Beberapa kelebihan dari Pixellab sebagai software design, di antaranya : Beragam Alat dan Elemen Desain: Pengguna dapat menambahkan teks dengan beragam font dan gaya, memasukkan gambar atau logo, serta menggunakan berbagai efek dan filter untuk meningkatkan tampilan desain mereka.Koleksi Stiker, Ikon, dan Bentuk: Aplikasi ini menyediakan berbagai macam stiker, ikon, dan bentuk yang dapat digunakan untuk menambahkan kreativitas pada desain.Fleksibilitas dalam Menangani File: Pengguna dapat mengimpor gambar dan logo dari galeri perangkat mereka atau menggunakan gambar yang telah disediakan dalam aplikasi. Desain dapat diekspor dalam berbagai format seperti PNG atau JPG. 5. Affinity Designer Affinity Designer Software Design Software desain menjadi kebutuhan pokok bagi para desainer grafis untuk mewujudkan ide mereka menjadi karya visual. Untuk mewujudkan karya tersebut dibutuhkan software untuk mengimplementasikan. Salah satu software nya ialah Affinity Designer. Affinity Designer merupakan sebuah aplikasi desain grafis vektor yang bersaing dengan CorelDRAW dan Adobe Illustrator. Affinity Designer tetap menyediakan berbagai fitur yang komprehensif dan dapat diakses dengan mudah oleh para pemula, meskipun tersedia software ini harganya yang lebih terjangkau (kantong able) hanya dengan sekali bayar saja benefit yang didapat tidak kalah dari para pesaing nya. Beberapa kelebihan dari Affinity Designer sebagai software design, di antaranya : Sekali beli untuk selamanya: Anda tidak perlu berlangganan untuk menggunakannya, karena Affinity Designer merupakan software sekali beli.Zoom yang luar biasa: Affinity Designer juga memiliki kemampuan zoom yang sangat luar biasa layaknya mikroskop.Tampilan antarmuka yang oke: Memiliki tampilan antarmuka yang modern, sehingga dapat memanjakan penglihatan pengguna. Untuk kalian yang ingin lebih expert lagi, jangan lupa di pantengin terus ya guys Instagram dan Website BuildWithAngga dan banyak juga kelas-kelas gratis tentang Design yang bisa kalian ikuti untuk mengasah skill dan menambah portfolio yang lebih berkualitas agar menambah value anda dimasa yang akan datang👌

Kelas Mockup Plugin: membantu dalam proses mock up Desain di Figma di BuildWithAngga

Mockup Plugin: membantu dalam proses mock up Desain di Figma

Terkadang kita bingung bagaimana cara mempresentasikan desain agar lebih dilihat oleh pengguna ataupun target pasar. Oleh karena itu kita membutuhkan mock up dari suatu produk. Mock up sendiri memiliki arti Secara umum bentuk visualisasi yang merepresentasikan desain dari sebuah produk sebelum nantinya direalisasikan. Umumnya, mock up akan digunakan ketika melakukan presentasi ataupun pitching di depan klien. Sederhananya, mock up akan membantu mereka untuk lebih memahami informasi dan juga konsep desain yang akan dibuat. Jika kamu menggunakan Figma, maka plugin ini akan sangat membantu kamu. Mockup Plugin menyediakan gambar-gambar besar yang cocok untuk berbagai jenis media mulai dari web hingga cetak. Baik kamu mencari mock upperangkat, elemen-elemen branding, atau sesuatu yang sedikit lebih unik, koleksi kami siap memenuhi kebutuhanmu. Kamu dapat menggunakan beberapa mock up yang menawarkan variasi bahan dan ukuran, disesuaikan dengan kebutuhan spesifikmu. Cukup pilih perangkat, pilih bingkai, dan desainmu akan muncul di layar. Plugin ini memiliki 3 fungsi utama: Mockup library. Cara paling cepat dan efisien untuk menggunakan mockup dalam proyekmu. Di sini, tersedia kumpulan besar mock up berkualitas tinggi dan paling populer yang siap digunakan untuk memperindah desainmu.Distort (Perspective) transformation. Jika kamu sudah memiliki sebuah mock up, maka dengan menggunakan plugin kami, kamu dapat mengubahnya dan menyisipkan desainmu ke dalam mock up tersebut.AI Surfaces Mockups. memberikan kamu kemampuan untuk memanfaatkan kecerdasan buatan guna mengubah vektor kamuke dalam berbagai jenis permukaan, sesuai dengan kebutuhan proyekmu. Kamu dapat dengan bebas memanfaatkan mockup plugin ini secara gratis untuk mendukung berbagai proyek pribadi maupun komersial yang kamu jalankan. Dengan dukungan dari mockup plugin ini, kamu dapat lebih leluasa mengeksplorasi kreativitasmu tanpa harus khawatir akan biaya tambahan. Cara menggunakan mockup plugin Langkah 1: Cari Mockup Plungin pada resource Cara menggunakan dimulai dengan langkah pertama yaitu mencari Mockup Plugin pada bagian resource. Di sana, kamu dapat dengan mudah menemukan opsi untuk mockup plugin dengan menjelajahi kategori yang tersedia atau menggunakan fitur pencarian untuk menemukannya secara langsung. Setelah menemukan plugin yang diinginkan, langkah selanjutnya adalah memilih opsi "Run Plugin" untuk mengaktifkannya dan memungkinkan kamu untuk memanfaatkan semua fitur yang disediakan. Dengan demikian, langkah pertama ini membantu kamu untuk memulai proses penggunaan mockup plugin dengan cepat dan efisien di Figma. Langkah 2: Cari media mock up yang akan digunakan Pada tahap ini, kamu memiliki kebebasan untuk menentukan jenis media apa yang ingin kamu gunakan untuk menampilkan desain UI/UX kamu. Sebagai contoh, kamu dapat memilih media handphone untuk menampilkan desain UI/UX yang telah kamu buat. Dengan memilih media handphone, kamu dapat menampilkan desain tersebut dalam konteks yang relevan dan memberikan gambaran yang lebih nyata tentang bagaimana desain tersebut akan terlihat di perangkat yang sebenarnya. Langkah 3: siapkan media mock up dan frame seukuran layar handphone Langkah ketiga dalam proses penggunaan mockup plugin adalah menyiapkan media mockup yang telah kamu pilih sebelumnya, serta frame seukuran layar handphone yang sesuai. Dengan menyiapkan frame seukuran layar handphone, kamu akan memiliki tempat yang ideal untuk menampilkan desain UI/UX kamu dengan lebih terperinci. Frame ini akan membantu kamu mengatur desain secara proporsional dan memastikan bahwa tampilan desain kamu akan sesuai dengan ukuran layar handphone yang diinginkan. Langkah 4: Masukan desain pada frame Langkah keempat dalam proses ini adalah memasukkan desain yang telah dipilih ke dalam frame yang sudah kamu persiapkan sebelumnya. Dengan memasukkan desain ke dalam frame, kamu akan memberikan konteks yang lebih nyata tentang bagaimana desain UI/UX kamu akan terlihat ketika diterapkan dalam situasi yang sesungguhnya. Selain itu, langkah ini memungkinkan kamu untuk mengevaluasi desain kamu dengan lebih baik dan memastikan bahwa semua elemen desain terlihat sesuai dengan harapan. Langkah 5: Buka mockup plungin Langkah kelima dalam proses ini adalah membuka mockup plugin setelah kamu menempatkan desain dalam frame.Setelah itu, kamu dapat melanjutkan dengan mengklik kanan pada layar dan mencari opsi untuk plugin di menu yang muncul. Setelah menemukan opsi plugin, lanjutkan dengan mencari mockup plugin yang telah kamu instal sebelumnya. Langkah 6: Plungin kalian akan menampilkan seperti ini Langkah keenam dalam proses ini adalah setelah kamu membuka plugin, maka tampilan modal akan muncul seperti ini. Modal tersebut akan menampilkan berbagai opsi dan fitur yang tersedia dalam plugin mockup. Dari sini, kamu dapat memilih berbagai macam pengaturan, seperti ukuran, orientasi, dan gaya mockup yang ingin kamu terapkan pada desain kamu. Selain itu, modal ini juga mungkin menawarkan opsi untuk menyesuaikan efek, bayangan, dan aspek visual lainnya dari mock up. Langkah 7: Pilih Distort pada menu plugin Langkah ketujuh dalam proses ini adalah memilih opsi "Distort" pada menu plugin. Dengan melakukan langkah ini, kamu akan membuka fitur yang memungkinkan kamu untuk menyesuaikan perspektif dan distorsi pada desain kamu sesuai dengan mockup yang kamu pilih sebelumnya. Opsi "Distort" ini akan memberikan fleksibilitas tambahan dalam menyesuaikan tampilan desain kamu agar sesuai dengan bentuk, sudut pandang, dan dimensi dari mockup yang digunakan. Langkah 8: Pilih vector shape pada mockup Langkah kedelapan dalam proses ini adalah memilih vektor bentuk pada mockup. Beberapa mockup memiliki nama layer yang sudah jelas, dan kalian bisa melihat tulisan 'change this' pada mockup tersebut. Dengan memilih vektor bentuk, kalian akan dapat mengakses elemen-elemen yang mungkin perlu disesuaikan, seperti warna, bentuk, atau ukuran, sesuai dengan desain yang ingin kalian terapkan. Langkah 9: Pilih frame desain Langkah kesembilan dalam proses ini adalah memilih frame desain setelah memilih layar pada mockup. Setelah memilih layar pada mockup, langkah selanjutnya adalah memilih frame yang sudah kamu masukkan desain yang ingin kalian pasang pada mockup tersebut. Dengan memilih frame desain yang tepat, kamu dapat memastikan bahwa desain yang telah kalian buat akan sesuai dengan konteks mockup yang telah dipilih sebelumnya. Langkah 10: Klik apply Langkah kesepuluh dalam proses ini adalah setelah kedua layar tersebut dipilih, maka tampilan pada modal mockup plugin akan berubah sesuai dengan desain yang telah kamu pilih. Langkah terakhir yang dapat kamu lakukan adalah menekan tombol "apply". Dengan menekan "apply", kamu akan memberlakukan perubahan yang telah kamu terapkan pada desain secara langsung ke dalam mockup. Selesai, dan mockup yang telah kamu buat sekarang sudah siap digunakan secara langsung. Dengan proses yang telah dilalui, kamu telah berhasil mengintegrasikan desain kamu ke dalam mockup dengan lancar dan efisien. Mockup Plugin: Membantu dalam proses presentasi Desain đŸŽš Dari beragam fitur dan kemampuan dalam menghasilkan mockup yang menarik dan profesional hingga memudahkan dalam menyajikan desain kepada klien atau tim, plugin mockup menjadi alat yang sangat berguna dalam proses presentasi desain. Mau mencoba menggunakan plugin mockup untuk meningkatkan kualitas presentasi desainmu? Yuk, temukan lebih banyak tutorial dan sumber belajar gratis di BuildWithAngga! Dengan mengikuti kelas-kelas UI/UX design , kamu dapat mengasah keterampilan dan memperkaya portfolio desainmu 🚀

Kelas Basic Tutorial: Membuat Gradient Button with Background Dot Pattern di BuildWithAngga

Basic Tutorial: Membuat Gradient Button with Background Dot Pattern

Hello people with the spirit of learning! Kali ini kita akan membahas bagaimana cara membuat Gradient Button yang Eye-Catching seperti diatas dengan ditambahkan background dot pattern agar membuat desain button kalian menjadi lebih unik dan berbeda! Yuk, simak cara buatnya!😍 1. Buat Frame dan Text-nya! Step awal untuk membuat button yang sama pada thumbnail. Pertama, kita membuat frame-nya dulu ya guys (tekan F) dan jangan lupa ditambahkan text nya juga (tekan T). By the way untuk ukuran button disesuaikan kembali dengan ukuran desain kalian yaa. 2. Tambah Gradasi Linear sebagai Warna Dasar! Setelah sudah terbuat frame + text nya, kemudian kita akan beri warna dasar (Fill) jangan lupa untuk diganti efek warnanya menjadi Linear Gradient. 3. Tambah lagi yaa Fill Linear Gradient! Agar terlihat lebih cantik, yuk tambahin lagi ya guys efek Linear Gradient-nya tujuannya untuk meng-highlight supaya agar gradasi linear nya terlihat lebih smooth. 4. Tambah Stroke dan Beri Efek Linear Gradient! Tambahin garis tepi (Stroke) ini juga penting guys, agar button nya terlihat seperti ada pantulan cahaya kayak ada efek didalam kaca. 5. Tambah Gradasi Linear sebagai Warna Dasar! Agar bagian bawah button terlihat lebih banyak warnanya ditambah juga ya guys agar bagian bawah button terlihat lebih dark dan menyatu dengan smooth. 6. Tambah Gradasi Linear sebagai Warna Dasar! Setelah kalian menambah inner shadow yang pertama, kalian juga jangan lupa untuk menambahkan 2 efek inner shadow lagi ya, tujuannya agar desain button kalian terlihat seperti glowing-glowing (dreamy) gitu. 🌟 7. Tambah Gradasi Linear sebagai Warna Dasar! Ditambahin juga guys untuk efek drop shadow nya agar desain kalian terlihat lebih realistis, menarik dan blink-blink✹. Efek Drop shadow 1: untuk memberikan efek seperti garis tepi dan efek. Drop shadow 2: untuk memberikan kesan popup gitu ya guys. 8. Tambah Gradasi Linear sebagai Warna Dasar! Tahap akhir ini jangan lupa tambahin juga border radius-nya ya guys, atur sesuai dengan tingkat kelengkungan yang perfect menurut kalian. Yeayyyy!! Akhirnya selesai pembuatan Gradient Button. Gimana? asyik dan menyenangkan bukan? Lebih unik kan desain button kalian😍 Jangan lupa dipantengin terus ya guys Instagram dan Website BuildWithAngga dan banyak juga kelas-kelas gratis tentang Design yang bisa kalian ikuti untuk mengasah skill dan menambah portfolio yang lebih berkualitas agar menambah value anda dimasa yang akan datang👌

Kelas Javascript Array Length – Cara Menemukan Panjang Sebuah Array di JS di BuildWithAngga

Javascript Array Length – Cara Menemukan Panjang Sebuah Array di JS

Pertama-tama kamu harus memahami terlebih dahulu apa itu Array pada Javascript, kamu bisa belajar Pengenalan Dasar JavaScript terlebih dahulu atau mengikuti kelas JavaScript di BuildWithAngga, agar paham pembahasan kali ini. Kelas JavaScript di BuildWithAngga GRATIS! đŸ€” Tahukah kamu? Array pada JavaScript merupakan struktur data fundamental yang memungkinkan kamu menyimpan dan memanipulasi kumpulan elemen secara efisien. Ketika menggunakan Array, kamu seringkali perlu ingin mengetahui panjangnya. Panjang Array memberitahukan kamu, ada berapa banyak sih? elemen yang ada di dalamnya. Kamu bisa kok menggunakan property .length ini untuk memeriksa apakah Array tersebut kosong, dan jika tidak, kamu juga bisa melakukan iterasi melalui elemennya. Fungsi & Cara Menemukan Array Length Design image by https://tecadmin.net/javascript-arrays/ Fungsi dari properti .length pada Array dalam JavaScript adalah untuk mengukur atau mengembalikan jumlah elemen yang terdapat dalam array tersebut. Properti .length memberikan/menemukan informasi tentang panjang atau ukuran Array, yaitu berapa banyak elemen yang ada di dalamnya. Contoh, anggap saja kita memiliki Array sebagai berikut: let kelasBwa = ['Android Dev', 'Web Dev', 'Graphic Design', 'Data Analyst']; console.log(kelasBwa.length); // Output: 4 Dalam contoh code di atas, kelasBwa.length mengembalikan nilai 4, karena Array kelasBwa memiliki empat elemen di dalamnya. Properti .length ini dapat digunakan untuk berbagai keperluan, seperti memeriksa apakah Array kosong, menentukan batas iterasi dalam loop, atau mengukur ukuran Array saat memanipulasi data. Keuntungan Menggunakan Property .length “Kak, memang ada keuntungannya ya pakai properti ini?” Eitss, jangan salah đŸ€«Â properti length pada Array memiliki beberapa keuntungan loh. Diantaranya : Mengukur Panjang Array: Properti length memberikan informasi langsung tentang jumlah elemen yang terdapat dalam Array. Ini memungkinkan kamu untuk mengetahui ukuran atau panjang Array tanpa harus menghitung elemennya secara manual. let numbers = [10, 20, 30, 40, 50]; console.log(numbers.length); // Output: 5 Iterasi dan Pengecekan Batas: Dalam loop, properti length sering digunakan untuk menentukan batas iterasi. Ini membantu mencegah iterasi ke elemen di luar batas Array. let fruits = ['apple', 'banana', 'orange', 'grape']; for (let i = 0; i < fruits.length; i++) { console.log(fruits[i]); } // Output: apple, banana, orange, grape Memeriksa Apakah Array Kosong: Dengan properti length, kamu dapat dengan mudah memeriksa apakah sebuah Array kosong atau tidak. let emptyArray = []; if (emptyArray.length === 0) { console.log('Array is empty.'); } // Output: Array is empty. Manipulasi Data Dinamis: Ketika kamu menambah atau menghapus elemen dari Array, properti length secara otomatis diperbarui. Hal ini memudahkan dalam manipulasi data dinamis. let dynamicArray = [1, 2, 3, 4]; console.log(dynamicArray.length); // Output: 4 dynamicArray.push(5); // Menambah elemen baru console.log(dynamicArray) // Output: (5) [1, 2, 3, 4, 5] console.log(dynamicArray.length); // Output: 5 dynamicArray.pop(); // Menghapus elemen terakhir console.log(dynamicArray.length); // Output: 4 Pemanfaatan properti length ini membuat pengelolaan Array menjadi lebih efisien dan memudahkan berbagai operasi terkait Array dalam pengembangan JavaScript. Kesimpulan Yahh
 Berakhir sudah pembahasan tentang Array length ini xixixi. Menggunakan properti .length pada Array JavaScript memberikan keuntungan signifikan dalam pengelolaan dan manipulasi data. Dengan properti ini, kamu dapat dengan mudah mengukur panjang Array, melakukan iterasi dengan batas yang jelas, memeriksa apakah Array kosong atau tidak, dan mengelola data dinamis secara efisien. Properti .length juga memudahkan dalam menambah atau menghapus elemen dari Array, karena nilainya secara otomatis diperbarui. Kelebihan ini membuat properti .length menjadi sangat berguna untuk menyederhanakan operasi-operasi umum pada array dan meningkatkan efisiensi pengembangan dalam lingkungan JavaScript, oh iya, jangan khawatir kamu bisa kok mempelajarinya secara gratis di kelas JavaScript BuildWithAngga. Udah deh, ga perlu mikir. Langsung aja gabung bersama BuildWithAngga dan sampai jumpa di kelas, babayy đŸ„°

Kelas Cara Install shadcn-ui Pada Project Next JS di BuildWithAngga

Cara Install shadcn-ui Pada Project Next JS

Hallo teman-teman developer web. Kamu mungkin sudah pernah mendengar tentang shadcn-ui, salah satu library komponen UI yang keren untuk proyek-proyek Next JS. Dengan shadcn-ui, kamu bisa membuat tampilan web yang menarik dengan lebih mudah dan cepat. Buat kamu yang ingin install shadcn-ui di Next JS namun belum belajar Next JS dari dasar. Alangkah baiknya kamu belajar dasar-dasar Next JS terlebih dahulu. Di BuildWithAngga telah menyediakan kelas online gratis NextJS Basic, kamu bisa mempelajari kelas tersebut terlebih dahulu. Dalam artikel ini, kita akan membahas langkah-langkah tentang cara meng-install shadcn-ui dalam proyek Next JS kamu. Jangan khawatir, prosesnya tidak sulit kok! Kita akan membahas langkah demi langkah agar bisa mulai menggunakan shadcn-ui dalam proyek web kamu dengan cepat. Pengenalan shadcn-ui shadcn-ui adalah kumpulan komponen yang didesain dengan indah dan bisa langsung kamu salin dan tempelkan ke dalam aplikasimu. Selain itu, shadcn-ui mudah diakses, bisa disesuaikan, dan open source. Ini bukan sekadar library komponen biasa, melainkan kumpulan komponen yang bisa kamu gunakan ulang dengan cara menyalin dan menempelkannya langsung ke aplikasimu. Jadi, bayangkan kamu memiliki berbagai macam elemen yang sudah didesain dengan cantik, yang bisa langsung kamu gunakan dalam pembuatan aplikasi tanpa harus membuat dari awal. Itulah yang shadcn-ui tawarkan. Kamu bisa mengaksesnya, menyesuaikannya sesuai kebutuhanmu, dan yang terbaik, semuanya tersedia secara gratis dengan lisensi open source. Instalasi shadcn-ui pada Next JS Oke, sekarang saatnya untuk meng-install shadcn-ui ke proyek Next JS kamu. Ini gampang kok, Ikuti langkah-langkah ini: 1. Langkah Pertama: Membuat Proyek Next JS Mulai dengan membuat proyek Next JS menggunakan Create Next App. Silahkan buka terminal kamu lalu copy teks di bawah: npx create-next-app@latest my-app --typescript --tailwind --eslint 2. Langkah Kedua: Jalankan CLI Silahkan kamu masuk dulu ke folder proyek kamu dengan memasukkan teks ini ke terminal cd my-app . Jika sudah di dalam proyeknya, mari kita jalankan shadcn-ui perintah init untuk menyiapkan proyek kamu: npx shadcn-ui@latest init 3. Langkah Ketiga: Konfigurasikan components.json Kamu akan ditanyakan beberapa pertanyaan untuk konfigurasi components.json : Would you like to use TypeScript (recommended)?â€ș no / yesWhich style would you like to use?â€ș Default / New YorkWhich color would you like to use as base color?â€ș SlateWhere is your global CSS file?â€ș app/globals.cssDo you want to use CSS variables for colors?â€ș no / yesAre you using a custom tailwind prefix eg. tw-?(Leave blank if not) 
Where is your tailwind.config.js located?â€ș tailwind.config.jsConfigure the import alias for components:â€ș @/componentsConfigure the import alias for utils:â€ș @/lib/utilsAre you using React Server Components?â€ș no / yes Yup, begitulah cara meng-install shadcn-ui. Sekarang kamu siap untuk menggunakan komponen-komponen keren dari shadcn-ui di proyek Next JS kamu. Cara Menggunakan Komponen di shadcn-ui Kamu sekarang dapat mulai menambahkan komponen ke proyek kamu. Semisal kita akan menambahkan Button. Silahkan kamu jalankan perintah berikut di terminal: npx shadcn-ui@latest add button Perintah di atas akan menambahkan komponen Button ke proyek kamu. Kamu kemudian dapat mengimportnya lalu pakai komponennya pada file page.tsx seperti ini: import { Button } from "@/components/ui/button"; export default function Home() { return ( <div className="h-screen w-full flex flex-col justify-center items-center"> <h1 className="font-bold text-slate-800 text-5xl w-[50%] text-center"> BuildWithAngga provides quality paid and free classes </h1> <p className="mt-4 text-gray-500">Upgrade Your Tech Skills</p> <div className="flex space-x-3 mt-4"> <Button>Get Started</Button> <Button variant={"outline"}>Browse courses</Button> </div> </div> ); } shadcn-ui memberikan beberapa variant untuk Button. Kamu dapat menggunakannya sesuai kebutuhan kamu. Berikut adalah tampilan dari hasil kode di atas: Nah, sekarang kamu udah tau cara menggunakan komponen di shadcn-ui dalam proyek Next JS-mu. Gimana, mudah kan? Ingat, shadcn-ui punya banyak lagi komponen keren yang bisa kamu eksplorasi dan manfaatkan dalam pengembangan proyekmu. Jangan ragu untuk mencoba lebih banyak lagi! Kesimpulan Pada artikel ini, kamu telah belajar cara meng-install shadcn-ui dalam proyek Next JS dengan langkah-langkah yang cukup sederhana. Dengan mengikuti langkah-langkah instalasi dan konfigurasi yang telah dibahas, sekarang kamu memiliki dasar yang kuat untuk memulai penggunaan shadcn-ui dalam pengembangan proyek Next JS kamu. Selain itu, jangan ragu untuk merujuk ke dokumentasi resmi shadcn-ui untuk informasi lebih lanjut dan sumber daya tambahan. Dengan terus belajar dan mengembangkan keterampilan pengembangan web kamu, kamu akan semakin percaya diri dalam membangun aplikasi web yang menarik dan fungsional. Sekarang, selamat mencoba menggunakan komponen-komponen shadcn-ui dalam proyek Next JS kamu, dan semoga sukses dalam pengembangan web kamu! See you guys!

Kelas Rekomendasi 5 Framework PHP untuk Pemula di BuildWithAngga

Rekomendasi 5 Framework PHP untuk Pemula

Hai Sobat BWA! Pernahkah kalian mendengar tentang bahasa pemrograman PHP? PHP merupakan singkatan dari Hypertext Preprocessor dan menjadi salah satu bahasa pemrograman yang masih digunakan hingga saat ini. Karena kemudahan penggunaannya, PHP sering digunakan untuk pengembangan situs web yang dinamis dan interaktif. Saat ini, PHP tetap menjadi salah satu bahasa pemrograman yang populer dan banyak digunakan. Dan di artikel kali ini, kita akan membahas tentang Rekomendasi 5 Framework PHP untuk Pemula. Simak sampai habis ya! 1.Laravel Laravel adalah salah satu framework berbasis PHP yang populer dan digunakan secara luas di seluruh dunia untuk pengembangan sebuah aplikasi web, mulai dari situs web sederhana hingga aplikasi web yang kompleks. Framework ini cocok untuk pemula karena memiliki syntax yang mudah dipahami dan dipelajari. Laravel juga memiliki komunitas tersendiri yang bisa digunakan untuk berdiskusi tentang Laravel. Keunggulan Laravel: Mempunyai banyak fiturMemiliki dokumentasi yang lengkapMudah dipelajari untuk pemula 2. Symfony Symfony dirilis pada tahun 2005 menggunakan php5 dan disusun sesuai PSR (PHP Standard Recommendations) sehingga kualitas kode dari framework ini tidak perlu diragukan lagi. Symfony sendiri **mudah untuk diinstal dan dikonfigurasi pada banyak platform. Framework ini juga mudah untuk dikembangkan, fleksibel, dan dapat diandalkan. Keunggulan Symfony: Performa cukup tinggiDokumentasi yang jelas dan rinciTerdapat fungsionalitas testing bawaan 3. CodeIgniter CodeIgniter merupakan salah satu framework PHP yang dikenal karena kecepatan dan kehandalannya. Sama seperti Laravel, framework ini juga menerapkan MVC atau Model-View-Controller dan menyediakan seperangkat fitur yang kuat untuk membantu pengembangan aplikasi website. CodeIgniter bisa menjadi pilihan yang tepat karena ringan, mudah dipahami, dan mempunyai performa yang konsisten. Keunggulan Codeigniter: Memiliki performa yang baikSangat ringan dan efisienFleksibel dan mudah disesuaikan 4. CakePHP CakePHP adalah salah satu framework PHP yang menerapkan arsitektur MVC pertama pada awal tahun 2000an. Setiap versi terbaru yang diluncurkan telah memiliki performa yang terus meningkat dan memiliki banyak komponen baru. Framework ini sangat cocok untuk aplikasi web komersial. Keunggulan CakePHP: Memiliki fitur CRUD otomatisPembaruan teraturMemiliki beragam paket komponen 5. Slim Slim adalah salah satu framework PHP yang cocok digunakan untuk pembuatan aplikasi web yang kecil dan ringan. Berbeda dengan framework PHP lainnya, slim lebih minimalis dan mudah di kustomisasi. Framework ini biasanya digunakan untuk pengembangan API RESTful karena memiliki komponen yang bisa digunakan untuk membangun API dengan cepat dan mudah. Keunggulan Slim: Mudah untuk dipelajariRingan dan minimalisRouting yang simpel dan fleksibel Kesimpulan Nah, itulah Rekomendasi 5 Framework PHP untuk Pemula serta keunggulan dari masing-masing framework yang disebutkan. PHP masih banyak memiliki pilihan framework yang dapat dipilih untuk pengembangan aplikasi website. Bagi pemula, pemilihan framework PHP yang tepat dapat mempercepat pembelajaran dan pengembangan aplikasi website. Jadi, framework mana nih yang bakal kalian pilih? Eitss, bagi kalian yang tertarik untuk mempelajari framework PHP di atas, kalian bisa mempelajarinya secara gratis melalui BuildWithAngga loh! Jangan lupa kepoin kelas-kelasnya ya! Sampai jumpa di artikel selanjutnya🙌 Kelas Gratis PHP Laravel Web DevelopmentBelajar PHP Dasar Web DevelopmentKelas Gratis CodeIgniter 4

Kelas 10 Library Flutter Paling Dibutuhkan Mobile App Developer di BuildWithAngga

10 Library Flutter Paling Dibutuhkan Mobile App Developer

10 Library Flutter Paling Dibutuhkan Mobile App Developer Sebelum kamu memulai untuk belajar tentang Flutter, ada baiknya kamu harus mengenal terlebih dahulu 10 Library Flutter yang bisa kamu gunakan untuk mengembangkan aplikasi mobile, atau kamu mau lebih dalam lagi belajar tentang Flutter? Yuk join kelas Flutter di BuildWithAngga. Library Flutter adalah kumpulan kode terbuka yang bisa digunakan untuk developer mengembangkan aplikasi Flutter. Nah kumpulan kode inilah yang nantinya bisa membuat berbagai jenis fitur maupun fungsi untuk bisa membantu developer membangun aplikasi yang lebih canggih dan kompleks. Tetapi sebelum kita mengenal 10 Library Flutter, yuk mari kenalan dulu dengan berbagai jenis library yang ada di Flutter.dev : Core Libraries : Kumpulan kode ini memiliki fungsi dasar untuk membantu developer dalam membangun aplikasinya seperti pembuatan widget, animasi, rendering, dan UI.Material Library : Kumpulan kode ini yang membantu developer untuk membangun aplikasi mobile dengan Material Design yang berjalan dengan baik di berbagai platform.Cupertino Library : Kumpulan kode yang menyediakan widget untuk membantu developer dalam membangun aplikasi dengan iOS sehingga dapat berjalan dengan baik.Widgets : Kumpulan kode yang dapat membantu developer untuk mengembangkan UI pada aplikasi. Setelah kamu mengenal jenis-jenis dari library yang ada di Flutter.dev. Pasti kamu tidak sabar mengenal 10 Library Flutter yang bermanfaatkan?đŸ€­ Let’s go kita bedah. 1. Url_Launcher Url_launcher adalah library yang dapat membantu developer dalam mengembangkan aplikasi mobile, dengan menambahkan fitur untuk pindah URL eksternal dari aplikasi yang anda buat. URL ini biasanya dibuat dalam bentuk tautan website, alamat email, dan bisa juga ke nomor telepon. Contoh penggunaan url_launcher : import 'package:url_launcher/url_launcher.dart'; void main() { // Meluncurkan tautan web launch('https://www.buildwithangga.com'); // Meluncurkan alamat email launch('mailto:[email protected]'); // Meluncurkan nomor telepon launch('tel:+62123456789'); } 2. Flutter_form_builder Flutter_form_builder adalah library yang dapat membantu developer dalam membuat sebuah formulir yang berisi untuk mengumpulkan data pengguna, membuat formulir, dan memvalidasi data yang di input. Contoh penggunaan flutter_form_builder : import 'package:flutter/material.dart'; import 'package:flutter_form_builder/flutter_form_builder.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Example of Population Data Form in country X', theme: ThemeData( primarySwatch: Colors.blue, ), home: MyFormPage(), ); } } class MyFormPage extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Example of Population Data Form in country X '), ), body: Padding( padding: const EdgeInsets.all(16.0), child: FormBuilder( child: Column( children: [ FormBuilderTextField( name: 'name', decoration: InputDecoration(labelText: 'Name'), validator: FormBuilderValidators.required(context), ), SizedBox(height: 16), FormBuilderDropdown( name: 'gender', decoration: InputDecoration(labelText: 'Gender'), items: ['Male', 'Female'] .map((gender) => DropdownMenuItem( value: gender, child: Text(gender), )) .toList(), ), SizedBox(height: 16), FormBuilderCheckbox( name: 'accept_terms', title: Text('Accept Terms'), ), SizedBox(height: 16), ElevatedButton( onPressed: () { if (FormBuilder.of(context).validate()) { var formData = FormBuilder.of(context).value; print(formData); } }, child: Text('Submit'), ), ], ), ), ), ); } } 3. Path_provider Path_provider adalah library yang dapat membantu developer dalam mendapatkan penyimpanan yang baik untuk aplikasi mobile yang dibuat di berbagai platform seperti Android, iOS, Web/Desktop. Library ini biasanya digunakan untuk menyimpan file gambar, cache maupun data aplikasi lainnya. Contoh penggunaan path_provider : import 'package:path_provider/path_provider.dart'; Future<void> saveImage(String imagePath, Uint8List bytes) async { final directory = await getTemporaryDirectory(); // Mendapatkan direktori sementara final file = File('${directory.path}/$imagePath'); await file.writeAsBytes(bytes); // Menyimpan gambar ke file } Future<String> loadLocalData() async { final directory = await getApplicationDocumentsDirectory(); // Mendapatkan direktori dokumen final file = File('${directory.path}/data.json'); if (await file.exists()) { final contents = await file.readAsString(); // Membaca data dari file return contents; } else { return ""; // Kembalikan string kosong jika file tidak ada } } Tambahan untuk teman-teman : Sebelum temen-temen harus menggunakan direktori sesuai dengan kebutuhan ya. Contohnya file sementara > direktori sementara.Periksa kembali untuk file yang sudah ada apakah sudah tertulis data ke dalamnya. 4. Scooped_model Scoped_model adalah library yang dapat memudahkan developer untuk bisa membuat model data dari widget utama ke turunannya. Memiliki 3 jenis utama yaitu model class, scope model widget, dan scopeModelDescendant widget. Contoh penggunaan scooped_model : import 'package:flutter/material.dart'; import 'package:scoped_model/scoped_model.dart'; void main() { runApp(MyApp( model: CounterModel(), )); } class MyApp extends StatelessWidget { final CounterModel model; const MyApp({Key? key, required this.model}) : super(key: key); @override Widget build(BuildContext context) { // At the top level of our app, we'll, create a ScopedModel Widget. This // will provide the CounterModel to all children in the app that request it // using a ScopedModelDescendant. return ScopedModel( model: model, child: MaterialApp( title: 'Scoped Model Demo', home: CounterHome('Scoped Model Demo'), ), ); } } // Start by creating a class that has a counter and a method to increment it. // // Note: It must extend from Model. class CounterModel extends Model { int _counter = 0; int get counter => _counter; void increment() { // First, increment the counter _counter++; // Then notify all the listeners. notifyListeners(); } } class CounterHome extends StatelessWidget { final String title; CounterHome(this.title); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(title), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Text('You have pushed the button this many times:'), // Create a ScopedModelDescendant. This widget will get the // CounterModel from the nearest parent ScopedModel. // It will hand that CounterModel to our builder method, and // rebuild any time the CounterModel changes (i.e. after we // `notifyListeners` in the Model). ScopedModelDescendant( builder: (context, child, model) { return Text( model.counter.toString(), style: Theme.of(context).textTheme.headline4, ); }, ), ], ), ), // Use the ScopedModelDescendant again in order to use the increment // method from the CounterModel floatingActionButton: ScopedModelDescendant( builder: (context, child, model) { return FloatingActionButton( onPressed: model.increment, tooltip: 'Increment', child: Icon(Icons.add), ); }, ), ); } } 5. Flutter_bloc Flutter_bloc adalah library yang dapat membantu developer untuk mengembangkan state aplikasi dengan cara menggunakan pola bloc (Business Logic Component). Pola bloc ini pada prinsipnya dapat membantu teman-teman untuk dapat membuat aplikasi yang lebih mudah untuk dipelihara serta dikembangkan. Contoh penggunaan flutter_bloc : import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; void main() { runApp(MyApp()); } class CounterBloc extends Bloc { CounterBloc() : super(0); @override Stream mapEventToState(int event) async* { yield state + event; } } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: BlocProvider( create: (context) => CounterBloc(), child: CounterPage(), ), ); } } class CounterPage extends StatelessWidget { @override Widget build(BuildContext context) { final CounterBloc _counterBloc = BlocProvider.of(context); return Scaffold( appBar: AppBar(title: Text('Counter App')), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ BlocBuilder( builder: (context, count) { return Text( 'Count: $count', style: TextStyle(fontSize: 24), ); }, ), SizedBox(height: 20), Row( mainAxisAlignment: MainAxisAlignment.center, children: [ FloatingActionButton( onPressed: () => _counterBloc.add(1), child: Icon(Icons.add), ), SizedBox(width: 10), FloatingActionButton( onPressed: () => _counterBloc.add(-1), child: Icon(Icons.remove), ), ], ), ], ), ), ); } } 6. HTTP HTTP atau Hypertext Transfer Protocol adalah protokol yang digunakan untuk menghubungkan data komunikasi di web. Manfaatnya adalah HTTP dapat digunakan untuk mengambil data dari server, contohnya seperti data JSON. Contoh penggunaan HTTP : import 'package:http/http.dart' as http; void main() async { final response = await http.get('https://www.buildwithangga.com'); if (response.statusCode == 200) { final body = await response.body.readAsString(); print(body); } else { print('Error: ${response.statusCode}'); } } Tambahan untuk teman-teman : Perhatikan headers dan body requests.Error harus ditanganin dengan tepat. 7. Get/GetX Get/GetX adalah library yang memberikan solusi kepada developer untuk mengembangkan aplikasinya dengan cara menggabungkan High-Performance State Management dan Intelligent Dependency Injection pada aplikasi. Developer tidak perlu lagi mengubah kontrol dari memori. Dengan GetX, memori yang tidak digunakan akan langsung dihapus secara default. Contoh penggunaan Get/GetX : void main() => runApp(MaterialApp(home: Home())); class Home extends StatelessWidget { var count = 0.obs; @override Widget build(context) => Scaffold( appBar: AppBar(title: Text("counter")), body: Center( child: Obx(() => Text("$count")), ), floatingActionButton: FloatingActionButton( child: Icon(Icons.add), onPressed: () => count ++, )); } 8. Intl Intl adalah library yang dapat memudahkan developer untuk menangani contoh kasus seperti perbedaan bahasa, tanggal, serta angka yang ada pada aplikasi. Sehingga aplikasi dapat digunakan diberbagai platform dan diberbagai tempat. Contoh penggunaan intl : import 'package:flutter/material.dart'; import 'package:intl/intl.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Intl Package Example', home: MyHomePage(), ); } } class MyHomePage extends StatelessWidget { @override Widget build(BuildContext context) { // Format a date using the intl package var formattedDate = DateFormat.yMMMMd().format(DateTime.now()); // Translate a message using the intl package var translatedMessage = Intl.message( 'Hello, welcome to our app!', name: 'welcomeMessage', desc: 'Welcome message for the app', ); return Scaffold( appBar: AppBar( title: Text('Intl Package Example'), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Text('Formatted Date: $formattedDate'), Text(translatedMessage), ], ), ), ); } } 9. File_picker File_picker adalah library yang sering digunakan oleh developer dalam mengembangkan aplikasinya. Fungsinya adalah untuk membantu developer bisa masuk ke file aslinya dengan cepat, sehingga developer dapat memilih file dengan jenis tertentu, seperti dokumen maupun gambar. Contoh penggunaan file_picker : import 'dart:io'; import 'package:flutter/material.dart'; import 'package:file_picker/file_picker.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: FilePickerScreen(), ); } } class FilePickerScreen extends StatefulWidget { @override _FilePickerScreenState createState() => _FilePickerScreenState(); } class _FilePickerScreenState extends State { String? _filePath; Future _pickFile() async { FilePickerResult? result = await FilePicker.platform.pickFiles( type: FileType.image, ); if (result != null) { setState(() { _filePath = result.files.single.path; }); } } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('File Picker Example'), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ if (_filePath != null) Image.file( File(_filePath!), height: 200, ), SizedBox(height: 20), ElevatedButton( onPressed: _pickFile, child: Text('Pick an Image'), ), ], ), ), ); } } 10. Badges Badges adalah library yang sering juga digunakan oleh developer untuk membuat icon atau teks yang dapat memberikan informasi tambahan kepada pengguna. Sebagai contoh, developer dapat menggunakan Badges untuk menampilkan pemberitahuan, jumlah item di dalam keranjang, jumlah pesan yang belum dibaca. Contoh penggunaan badges : import 'package:flutter/material.dart'; import 'package:badges/badges.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( appBar: AppBar( title: Text('Badge Example'), ), body: Center( child: Badge( badgeContent: Text('3'), child: IconButton( icon: Icon(Icons.shopping_cart), onPressed: () { // Open the shopping cart or perform an action }, ), ), ), ), ); } } Kesimpulan Library Flutter memiliki manfaat yang besar untuk membantu developer dalam proses pengembangan aplikasi. Tentu, untuk terjun ke Flutter kita perlu mengenal dahulu apa saja library yang bisa membantu kita dalam pembuatan aplikasi mobile. Selain menghemat waktu dan tenaga, dengan kita mengenal library kita juga bisa meningkatkan kualitas pada aplikasi yang kita buat, serta memperkaya fitur aplikasi. Kamu bisa mempelajarinya lebih lanjut dengan mengikuti kelas online gratis belajar flutter di BuildWithAngga loh!😍 Dengan belajar di BuildWithAngga kamu bisa belajar dengan mentor yang berpengalaman dan selalu siap membantu kamu untuk meningkatkan skill programming kamu. Eitss tunggu dulu, setiap kamu menyelesaikan kelasnya kamu bakal dikasih sertifikat loh!đŸ€© Yuk buruan belajar bersama BuildWithAngga.

Kelas Tata Cara Membuat Migration Baru Pada Projek Laravel di BuildWithAngga

Tata Cara Membuat Migration Baru Pada Projek Laravel

Hallo sahabat ngoding Pada bagian ini kita akan berkenalan dengan salah satu yang keren pada laravel. yaitu Migration Apasihh Migration Laravel?? Migration merupakan cara untuk membuat skema database secara langsung dengan mengeksekusi kode program atau bisa disebut dengan Control Version System, bukan melalui eksekusi SQL. Dengan migration, kita bisa membuat table data dengan lebih mudah dan cepat. migration akan meng-generate file - file migration sebagai control system. Maka, kita tidak perlu menulis kode SQL untuk membuat skema database, melainkan menggunakan kode program PHP. Masih bingung? Tenang, saya harap setelah contoh berikut, Anda akan lebih memahami. Sebelum memulai pembuatan file migration, pertama sekali coba teman-teman hapus semua file migration yang sudah ada pada folder database\\migrations. Cara Membuat Migration Untuk membuat file migrasi, kita akan menggunakan Artisan CLI dengan perintah “php artisan” yang nanti akan dijalankan pada command line atau terminal. Namun, sebelum pembuatan migration, pertama kali kita perlu merancang database dengan kebutuhan kita dan sesuaikan koneksi databasenya yang bisa kita atur pada file .env. contohnya, seperti ini : DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=latihan_laravel DB_USERNAME=root DB_PASSWORD=root lalu kawan - kawan bisa membuka terminal atau Command Line, masuk ke directory project laravel kalian melalui terminal atau command line, kemudian masukan perintah dengan perinta berikut. $ php artisan make:migration nama_migration // contohnya $ php artisan make:migration create_table_murid apabila terdapat pemberitahuan bahwa file migrasi sudah terbuat dan tersimpan. Setelah itu kalian bisa membuka file migrasi yang tersimpan lalu isi seperti berikut. bigIncrements('id'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('murid'); } Seperti yang bisa liat , perbedaan fungsi up() dan down() terlihat jelas pada file migrasi. File migrasi yang dibuat dengan memiliki fungsi up() dan down() yang secara otomatis mengenali nama tabel yang akan dibuat. Di sisi lain, file migrasi tanpa awalan create_ memiliki fungsi up() dan down()yang masih kosong dan perlu diisi secara manual. Hal ini merupakan salah satu trik untuk mempercepat pembuatan file migrasi di Laravel. Salah satu tips penting dalam Laravel adalah mengikuti aturan penamaan yang baku. Hal ini akan memudahkan kita dalam pengembangan aplikasi. Contohnya, nama tabel dalam Laravel menggunakan kata jamak, sedangkan nama modelnya menggunakan kata tunggal. Misalnya, model dengan nama User akan dipadankan dengan tabel User. Begitu pula model dengan nama Murid akan dipadankan dengan tabel Murid . Jika kita tidak mengikuti aturan penamaan ini, kita perlu menentukan secara manual nama tabel yang berpadanan dengan model kita. Hal ini dapat menyulitkan dan membuat kode kita kurang terbaca. Melengkapi File Migrasi Tahapan berikutnya adalah melengkapi file migration kita. Pada file migration create_table_murid , lengkapi fungsi up() seperti contoh dibawah ini. bigIncrements('id'); $table->string('nama'); $table->unsignedInteger('nomor_siswa'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('murid'); } Mari kita bedah potongan kode program diatas. Schema::create('murid', 
 adalah kode program untuk membuat tabel. Parameter murid adalah sebagai nama tabel yang akan dibuat. Jika diterjemahkan ke kode program SQL maka perintah diatas sama dengan CREATE TABLE murid(....$table->bigIncrements('id') adalah kode program untuk membuat atribut id dengan ketentuan bertipe data big int, unsigned, bersifat not null, bersifat auto_increment, dan dijadikan sebagai primary key. Unsigned artinya nilainya tidak akan bisa negatif, not null artinya tidak boleh dikosongkan, auto_increment artinya akan bertambah secara otomatis ketika menambah data baru. Jika diterjemahkan ke kode program SQL maka perintah diatas sama dengan 'id' int unsigned not null auto_increment primary key .$table->string('nama') adalah kode program untuk membuat atribut name dengan ketentuan bertipe data varchar(255) dan bersifat not null. Varchar(255) artinya adalah tipe berupa rangkaian karakter dengan panjang maksimal 255 karakter, sama dengan 255 bit, karena setiap karakter membutuhkan alokasi memori sebesar 1 bit. Angka 255 adalah angka default dan bisa diganti dengan kebutuhan panjang data kita dengan cara mengubah kode program menjadi $table->string('title', 100) , untuk panjang maksimal 100 karakter. Jika diterjemahkan ke kode program SQL maka perintah diatas sama dengan 'name' varchar(255) not null.$table->unsignedInteger('nomor_siswa') adalah kode program untuk membuat atribut nomor_siswa dengan ketentuan int unsigned not null. Kita buat bersifat unsigned untuk membatasi kesalahan memasukkan data berupa bilangan negatif. Jika diterjemahkan ke kode program SQL maka perintah diatas sama dengan 'nomor_siswa' int unsigned not null$table->timestamps() adalah potongan kode untuk membuat atribut created_at dan updated_at dengan ketentuan timestamp null. Timestamp adalah tipe data untuk menyimpan tanggal dan waktu sekaligus. Null artinya tidak wajib disini. Jika diterjemahkan ke kode program SQL maka perintah diatas sama dengan 'created_at' timestamp null, 'updated_at’ timestamp null Jadi untuk potongan kode pada fungsi up() diatas jika kita menulisnya dalam kode program SQL, maka akan seperti ini. create table 'books' ( 'id' int unsigned not null auto_increment primary key, 'nama' varchar(255) not null, 'nomor_siswa' int unsigned not null, 'created_at' timestamp null, 'updated_at' timestamp null } Eksekusi File Migrasi Setelah menyelesaikan pembuatan file migrasi, langkah selanjutnya adalah menjalankannya. Kita akan menggunakan Artisan CLI untuk melakukan eksekusi. Pastikan konfigurasi koneksi database pada file .env telah diisi dengan benar sebelum menjalankan perintah berikut: php artisan migrate Apabila tidak ada pesan error yang muncul maka migration berjalan dengan benar. Maka table user dan tabel yang kalian dibuat sudah tercipta di dalam database yang terhubung. Apabila terdapat pesan error kalian coba baca dan temukan solusinya di stackoverflow atau forum lainya hehehehe. Sampai sini untuk pembuatan tabel dengan migration Merubah Nama Tabel Pada Migration Laravel Selain create kita juga bisa mengubah nama table yang kita miliki melalui migration fungsi , dengan perintah. Schema::rename('nama_table_yang_ingin_di_rename', 'nama_baru'); tapi kalian bisa juga kok buat ganti table name kalian pada fungsi up(). dan kemudian lakukan perintah php artisan migrate Menghapus Table Dengan Migration Untuk menghapus tabel dengan migration laravel, juga sudah ada fungsi atau metode nya. Schema::drop('nama_table'); Migrasi Laravel menawarkan solusi modern dan efisien untuk merancang skema database. Meskipun tidak wajib, migrasi dapat meningkatkan kolaborasi, deployment, dan kejelasan kode dalam proyek Laravel kalian. Oke Sekian penjelasan tentang migration kalian bisa kembali untuk menguliknya sendiri tentunya. Semoga bermanfaat buat kalian. See you guysss !