flash sale
hamburger-menu

Tips Backend Development

Meningkatkan skills menjadi 1% lebih baik

Kelas Memahami Penanganan Error di Go: Pengenalan ke Konsep Error Handling di BuildWithAngga

Memahami Penanganan Error di Go: Pengenalan ke Konsep Error Handling

Pada saat membangun aplikasi yang solid dan handal, sangat penting untuk mempertimbangkan penanganan error dengan serius. Bahasa pemrograman Go memiliki pendekatan yang unik terhadap penanganan error yang memungkinkan pengembang untuk mengelola error secara efisien dan ekspresif. Konsep ini merupakan bagian integral dari praktik pengembangan yang baik dalam Go. Apa itu Error Handling? Error handling adalah proses dalam pemrograman yang berfokus pada penanganan dan manajemen error yang mungkin terjadi selama eksekusi program. Ini mencakup identifikasi, penanganan, dan pelaporan error agar aplikasi dapat berjalan dengan lancar dan dapat diandalkan. Di Go, error handling dibangun di sekitar konsep nilai yang disebut error. Error adalah tipe data dasar yang mewakili kondisi yang tidak normal atau kegagalan dalam eksekusi suatu fungsi. Pengembang dapat menggunakan nilai error untuk mengevaluasi keadaan program dan mengambil tindakan yang sesuai. Pendekatan Go terhadap Error Handling Go memiliki pendekatan yang jelas dan konsisten dalam penanganan error. Di Go, hampir setiap fungsi yang berpotensi menghasilkan error akan mengembalikan dua nilai: nilai aktual dan nilai error. Ini memungkinkan pemanggil fungsi untuk memeriksa apakah operasi berhasil atau gagal, dan jika gagal, alasannya. Misalnya, pertimbangkan fungsi os.Open yang digunakan untuk membuka file: Dalam contoh di atas, os.Open mengembalikan dua nilai: file yang berhasil dibuka dan error (jika ada). Pemeriksaan if err != nil digunakan untuk menentukan apakah error terjadi. Jika iya, kode dalam blok if akan menangani error tersebut. Pengelolaan Error Lanjutan Selain menggunakan pengecekan error dengan if, Go juga menyediakan cara lain untuk mengelola error dengan lebih rinci. Salah satunya adalah dengan menggunakan blok defer untuk menangani operasi pembersihan yang diperlukan, seperti menutup file atau koneksi, setelah selesai menggunakan sumber daya tersebut. Dalam contoh di atas, file.Close() akan dipanggil secara otomatis ketika fungsi tempat defer ditempatkan selesai dieksekusi, bahkan jika terjadi error di antara. Mengkustomisasi Pesan Error Go memungkinkan pengembang untuk membuat pesan error yang lebih deskriptif dan informatif dengan menggunakan paket errors. Paket ini menyediakan fungsi New untuk membuat nilai error baru dengan pesan yang ditentukan oleh pengguna. Dalam contoh di atas, jika pembagian dengan nol terjadi, fungsi divide akan mengembalikan error baru dengan pesan yang sesuai. Penanganan Error Hierarkis Go juga memungkinkan pengembang untuk mengelompokkan dan mengkategorikan jenis error dengan menggunakan tipe data yang disesuaikan. Ini memungkinkan penanganan error yang lebih terstruktur dan informatif. Dalam contoh di atas, MyError adalah tipe data kustom yang mengimplementasikan interface error, sehingga dapat digunakan sebagai nilai error. Ini memberikan fleksibilitas tambahan dalam mengelola jenis-jenis error yang berbeda. Kesimpulan Penanganan error adalah aspek penting dari pengembangan perangkat lunak yang handal dan robust. Dalam Go, pendekatan yang jelas dan konsisten terhadap penanganan error memungkinkan pengembang untuk mengelola error dengan efisien dan ekspresif. Dengan memahami konsep-konsep dasar seperti nilai error, pengelolaan error lanjutan dengan defer, dan pembuatan pesan error yang disesuaikan, pengembang dapat meningkatkan kualitas perangkat lunak yang mereka buat dan membuatnya lebih dapat diandalkan. 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 Cara Install dan Implementasi JWT pada Laravel di BuildWithAngga

Cara Install dan Implementasi JWT pada Laravel

Hai Sobat BWA!🙌 Seperti yang kita tau, Laravel merupakan salah satu framework PHP yang populer hingga saat ini. Dengan banyaknya fitur yang dimilikinya, dapat memudahkan kita untuk mengembangkan sebuah aplikasi website. Salah satu fitur yang dimiliki oleh Laravel adalah fitur autentikasi. Dan pada artikel kali ini, kita akan membahas tentang fitur autentikasi tersebut yaitu JWT atau Json Web Token. Simak artikel ini sampai habis ya! Pengenalan JWT JWT atau Json Web Token adalah sebuah token yang digunakan untuk mengotentikasi permintaan API pada Laravel. Dengan menggunakan JWT, kita dapat membuat token yang akan digunakan oleh pengguna untuk mengakses API kita. Token ini akan berisi informasi yang dapat kita gunakan untuk mengidentifikasi pengguna dan mengizinkan akses ke sumber daya yang terproteksi. JWT terdiri dari tiga bagian utama yaitu sebagai berikut: 1. Header Bagian ini berisi informasi tentang jenis token dan algoritma yang digunakan. { "alg": "HS256", "typ": "JWT" } 2. Payload Payload berisi informasi tentang data yang ingin kita kirim dengan token. Contohnya seperti id user, role, expired date, dll. { "sub": "1234567890", "name": "John Doe", "admin": true } 3. Verify Signature Bagian ini digunakan untuk memverifikasi integritas data. Bagian ini adalah gabungan dari bagian header dan payload yang ditambahkan kode rahasianya. HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), secret) Cara Menginstall JWT 1. Jalankan text editor dan buka folder Laravel yang akan di-install JWT 2. Pada command prompt, install JWT dengan mengetik perintah berikut: composer require tymon/jwt-auth:dev-develop --prefer-source 3. Buka file config/app.php dan tambahkan kode berikut di dalam array providers Tymon\JWTAuth\Providers\LaravelServiceProvider::class, Lalu, tambahkan facades berikut ke dalam array aliases 'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class, 'JWTFactory' => Tymon\JWTAuth\Facades\JWTFactory::class, 4. Publish package JWT dengan menjalankan perintah berikut php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider" 5. Setelah selesai, jalankan perintah berikut php artisan jwt:secret Cara Implementasi JWT 1. Buka file User.php (app/User.php) dan tambahkan kode berikut: use Illuminate\Foundation\Auth\User as Authenticatable; use Tymon\JWTAuth\Contracts\JWTSubject; Dan kode berikut pada bagian bawah public function getJWTIdentifier() { return $this->getKey(); } public function getJWTCustomClaims() { return []; } 2. Tambahkan method register pada class UserController.php public function register(Request $request) { $validator = Validator::make($request->all(), [ 'name' => 'required|string|max:255', 'email' => 'required|string|email|max:255|unique:users', 'password' => 'required|string|min:6|confirmed', ]); if($validator->fails()){ return response()->json($validator->errors()->toJson(), 400); } $user = User::create([ 'name' => $request->get('name'), 'email' => $request->get('email'), 'password' => Hash::make($request->get('password')), ]); $token = JWTAuth::fromUser($user); return response()->json(compact('user','token'),201); } 3. Tambahkan method login pada class UserController.php public function login(Request $request) { $credentials = $request->only('email', 'password'); try { if(! $token = JWTAuth::attempt($credentials)) { return response()->json(['error' => 'invalid_credentials'], 400); } } catch (JWTException $e) { return response()->json(['error' => 'could_not_create_token', 500]); } return response()->json(compact('token')); } 4. Tambahkan method getAuthenticatedUser public function getAuthenticatedUser() { try { if (! $user = JWTAuth::parseToken()->authenticate()) { return response()->json(['user_not_found'], 404); } } catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) { return response()->json(['token_expired'], $e->getStatusCode()); } catch (Tymon\JWTAuth\Exceptions\TokenInvalidException $e) { return response()->json(['token_invalid'], $e->getStatusCode()); } catch (Tymon\JWTAuth\Exceptions\JWTException $e) { return response()->json(['token_absent'], $e->getStatusCode()); } // return response()->json(compact('user')); return response()->json([ 'status' => 1, 'message' => 'Succes login!', 'data' => $user ]); } 5. Membuat Route untuk Autentikasi API Pada command prompt, tambahkan perintah berikut membuat JWTMiddleware yang akan melindungi route API dari akses yang tidak terautentikasi php artisan make:middleware JwtMiddleware 6. Buka file JwtMiddleware.php (app/Http/Middleware/JwtMiddleware.php). Ubah barisan kode menjadi seperti berikut: <?php namespace App\Http\Middleware; use Closure; use JWTAuth; use Exception; use Tymon\JWTAuth\Http\Middleware\BaseMiddleware; class JwtMiddleware extends BaseMiddleware { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { try { $user = JWTAuth::parseToken()->authenticate(); } catch (Exception $e) { if ($e instanceof \Tymon\JWTAuth\Exceptions\TokenInvalidException){ return response()->json(['status' => 'Token is Invalid']); }else if ($e instanceof \Tymon\JWTAuth\Exceptions\TokenExpiredException){ return response()->json(['status' => 'Token is Expired']); }else{ return response()->json(['status' => 'Authorization Token not found']); } } return $next($request); } } 7. Buka Kernel.php (app/Http/Kernel.php) dan tambahkan baris kode berikut di array routeMiddleWare 'jwt.verify' => \App\Http\Middleware\JwtMiddleware::class, 8. Buka api.php, kemudian modifikasi isinya menjadi seperti berikut <?php use Illuminate\Http\Request; Route::post('/register', 'UserController@register'); Route::post('/login', 'UserController@login'); Route::group(['middleware' => ['jwt.verify']], function () { Route::get('/kelas', 'KelasController@show'); //contoh Route::post('/kelas', 'KelasController@store'); }); Kesimpulan Nah, itulah ‘Cara Install dan Implementasi JWT pada Laravel’. Setelah meng-install dan mengimplementasi JWT, kalian bisa mencoba API yang kalian buat dengan aplikasi Postman. Dengan menggunakan JWT, kita dapat membuat token yang akan digunakan oleh pengguna untuk mengakses API kita. Token ini akan berisi informasi yang dapat kita gunakan untuk mengidentifikasi pengguna dan mengizinkan akses ke sumber daya yang terproteksi. Eitss, bagi kalian yang tertarik untuk mempelajari tentang JWT pada Laravel, kalian bisa mempelajarinya secara gratis melalui BuildWithAngga loh! Jangan lupa kepoin kelas-kelasnya ya! Sampai jumpa di artikel selanjutnya🙌

Kelas Mengenal “Artisan Laravel” serta Contoh Penggunaannya di BuildWithAngga

Mengenal “Artisan Laravel” serta Contoh Penggunaannya

Tahukah kamu apakah itu Command Line Interface? Dalam framework Laravel terdapat sebuah tool yang diberikan untuk memudahkan developer dalam melakukan beberapa perintah untuk menjalankan fungsi-fungsi sistem operasi yang ada dalam framework Laravel. Command line interface (CLI) adalah cara berinteraksi dengan program komputer melalui baris perintah. Dalam CLI, pengguna memasukkan teks perintah untuk menjalankan fungsi-fungsi sistem operasi. Berbeda dengan antarmuka pengguna grafis (GUI) yang menggunakan ikon dan jendela, CLI memerlukan sedikit sumber daya sistem untuk diimplementasikan. Dalam konteks Laravel, CLI disebut Artisan. Mari kita pahami, Apa itu Artisan dan bagaimana contoh penggunaannya???.. Artisan Laravel Artisan adalah antarmuka baris perintah yang disertakan dengan Laravel. Artisan berfungsi sebagai skrip utama di aplikasi Laravel dan menyediakan sejumlah perintah yang membantu kita dalam membangun aplikasi. Artisan terletak di akar aplikasi kita sebagai skrip artisan. Ada beberapa hal yang dapat kita lakukan dengan Artisan pada framework Laravel : Menghasilkan berkas: Kita data menggunakan Artisan untuk menghasilkan berkas-berkas seperti controller, model, migration dan lainnya. Misalnya, php artisan make:controller NamaController untuk membuat controller baru. ArtisanLaravel_BuildWithAngga Menjalankan tugas tugas rutin: dengan Artisan memungkinkan kita menjalankan tugas-tugas rutin seperti menjalankan migration database, membersihkan cache, dan mengoptimalkan aplikasi. Contoh perintah yang sering digunakan adalah php artisan migrate, php artisan cache:clear, dan php artisan optimize. ArtisanLaravel_BuildWithAngga Interaksi dengan aplikasi melalui Tinker: Tinker adalah REPL (Read-Eval-Print Loop) yang kuat untuk kerangka kerja Laravel. Dengan Tinker, kita dapat berinteraksi dengan seluruh aplikasi Laravel melalui baris perintah. Misalnya, kita dapat menjalankan perintah php artisan tinker untuk masuk ke lingkungan Tinker dan bermain-main dengan model Eloquent, pekerjaan (jobs), dan acara (events). ArtisanLaravel_BuildWithAngga Mendaftarkan perintah khusus: kita dapat mendaftarkan perintah khusus dengan Artisan. Ini memungkinkan kita untuk menambahkan fungsionalitas khusus ke aplikasi yang kita bangun. Misalnya, kita dapat membuat perintah khusus untuk mengimpor data dari sumber eksternal atau menjalankan tugas-tugas khusus. ArtisanLaravel_BuildWithAngga Kesimpulan Artisan merupakan salah satu fitur yang membuat Laravel menjadi framework yang populer dan disukai banyak pengembang. Kemampuannya untuk menghasilkan berkas-berkas seperti controller, model, dan migration, serta menjalankan tugas rutin seperti migrasi database, membersihkan cache, dan mengoptimalkan aplikasi. Dengan Artisan, kita dapat mempercepat dan menyederhanakan proses pengembangan aplikasi Laravel kita, serta menikmati berbagai fitur yang mendukung efisiensi dan fleksibilitas dalam pengelolaan proyek. Selain itu, kita juga mengetahui penggunaan Tinker, REPL yang kuat untuk interaksi dengan aplikasi Laravel melalui baris perintah. Dengan Tinker, pengembang dapat dengan mudah berinteraksi dengan model Eloquent, pekerjaan, dan acara. Dan juga kita mengetahui adanya kemampuan Artisan untuk mendaftarkan perintah khusus, memberikan fleksibilitas kepada pengembang untuk menyesuaikan fungsionalitas aplikasi sesuai kebutuhan. Secara keseluruhan, Artisan memainkan peran krusial dalam mempercepat pengembangan aplikasi Laravel dan menyediakan berbagai fitur yang mendukung efisiensi dan fleksibilitas dalam pengelolaan proyek. Apakah kamu tertarik untuk meningkatkan skill Laravel PHP? Kamu bisa mengikuti kelas Kelas Online Gratis PHP Laravel Web Development | BuildWithAngga. Yuk, daftar sekarang dan tingkatkan skills sesuai dengan minatmu!

Kelas Pengenalan REST API dan API Dengan Program FlaskAPI di BuildWithAngga

Pengenalan REST API dan API Dengan Program FlaskAPI

Haloo sobat ngodingg Semoga kalian sehat selaluu Kali ini kita akan mencoba mempelajari tentang apa itu API serta REST API serta contoh penggunaan dalam bahasa pemprograman python dengan Flask. Mari mengenal API lebih dengan penjelasan di artikel ini. Simak baik-baik ya. Apa itu API? API (Application Programming Interface) adalah Antarmuka pemrograman aplikasi adalah penerjemah komunikasi antara klien dengan server untuk menyederhanakan implementasi dan perbaikan software. Bisa diartikan juga sebagai sekumpulan perintah, fungsi, serta protokol yang dapat digunakan oleh programmer saat membangun perangkat lunak untuk sistem operasi tertentu. AlurAPI Apa itu REST? REST (REpresentational State Transfer) adalah pendekatan desain arsitektur untuk pengembangan web. Gaya ini berfokus pada pemisahan logis resources API untuk memudahkan akses, pengelolaan, dan penskalaan. Komponen yang dapat digunakan berulang ditulis agar mudah diatur melalui permintaan HTTP sederhana dan intuitif seperti GET, POST, PUT, PATCH, dan DELETE (ada lebih banyak lagi, tetapi ini yang paling umum digunakan). REST ini berbentuk JSON object data. Yang dapat mempermudah client untuk melakukan parsing data dan tergolong lebih ringan. Jadi API disini berperan sebagai perantara untuk ngobrol dengan server, jadi untuk akses data di sebuah server dilakukan tidak secara direct melainkan melalui API ini, sedangkan REST ini sebagai aturan-aturan  / perintah apa saja yang diberbolehkan untuk dilakukan oleh client melalui protokol http. Apa itu Flask? Flask adalah framework web mikro yang ditulis dalam bahasa pemrograman Python. Flask memungkinkan Anda untuk membangun aplikasi web dengan cepat dan mudah tanpa mengkhawatirkan detail rumit tentang bagaimana web bekerja. Framework ini menggunakan sintaks Python yang sederhana dan intuitif, sehingga mudah dipelajari dan digunakan. Flask tidak menyediakan banyak fitur bawaan seperti framework web lainnya, tetapi memberikan fleksibilitas dan kontrol lebih besar kepada pengembang untuk menentukan struktur dan komponen aplikasi web mereka. Anda dapat menambahkan fitur yang Anda butuhkan dengan menginstal pustaka pihak ketiga. Kelebihan Flask Berikut adalah beberapa kelebihan Flask: Mudah dipelajari dan digunakan: Flask menggunakan sintaks Python yang sederhana dan intuitif, sehingga mudah dipelajari dan digunakan, bahkan bagi pemula.Ringan dan cepat: Flask tidak menuntut banyak hal dari sistem atau memerlukan banyak dependensi, sehingga aplikasi web yang dibuat dengan Flask akan lebih ringan dan cepat.Fleksibilitas: Flask memberikan fleksibilitas dan kontrol lebih besar kepada pengembang untuk menentukan struktur dan komponen aplikasi web mereka.Komunitas yang besar: Flask memiliki komunitas yang besar dan aktif, sehingga Anda dapat dengan mudah menemukan bantuan dan dukungan online. Implementasi Flask Berikut adalah contoh sederhana untuk membangun aplikasi web dengan Flask: 1. Instal Flask Langkah pertama adalah menginstal Flask dengan menggunakan pip: pip install flask 2. Buat file Python Buat file Python baru dengan nama app.py. 3. Import Flask Import Flask dari modul flask: from flask import Flask Use code with caution.content_copy 4. Buat aplikasi Flask Buat objek aplikasi Flask: app = Flask(__name__) 5. Buat route Route adalah URL yang akan dipetakan ke fungsi tertentu. Berikut adalah contoh route yang menampilkan teks "Hello World!": @app.route("/") def hello_world(): return "Hello World!" Use code with caution.content_copy 6. Jalankan aplikasi Jalankan aplikasi Flask dengan menggunakan perintah berikut: app.run(debug=True) Buka browser web Anda dan kunjungi URL http://localhost:5000/. Anda akan melihat teks "Hello World!" di layar. Kalian juga bisa berlatih lagi sendiri dan saya juga menyarankan beberapa project yang bisa kalian coba, Berikut adalah beberapa contoh aplikasi Flask yang dapat Anda coba: Aplikasi Todo ListAplikasi Blog SederhanaAplikasi Kalkulator Oke Sekian penjelasan tentang Flask kalian bisa kembali untuk menguliknya sendiri tentunya. Semoga bermanfaat buat kalian. See you guysss !

Kelas Pengenalan REST API dan Tools untuk Membuatnya di BuildWithAngga

Pengenalan REST API dan Tools untuk Membuatnya

Hai Sobat BWA!🙌 REST API merupakan salah satu hal yang tidak asing lagi bagi seorang programmer. REST API merupakan gabungan dari REST (Representational State Transfer) dan API (Application Programming Interface). REST API biasanya digunakan untuk komunikasi dan pertukaran data antara berbagai perangkat lunak atau sistem di lingkungan jaringan komputer. Apa itu REST API? REST API adalah singkatan dari Representational State Transfer Application Programming Interface. REST API memungkinkan komunikasi antara perangkat lunak yang berbeda menggunakan HTTP (Hypertext Transfer Protocol) untuk mentransfer data. REST API memungkinkan aplikasi untuk berkomunikasi dan berbagi data dengan aplikasi lain dengan cara yang efisien. REST API berjalan dengan prinsip-prinsip REST, yaitu pendekatan sederhana dan ringkas untuk mentransfer data melalui jaringan. Pada umumnya, REST API menggunakan metode HTTP untuk melakukan operasi CRUD (Create. Read, Update, Delete) pada data. REST API didukung oleh berbagai bahasa pemrograman, sehingga banyak digunakan untuk membangun aplikasi website. Apa saja yang Menjadi Karakteristik REST API? REST API memiliki beberapa karakteristik penting, antara lain: Stateless: REST API tidak menyimpan informasi tentang status atau konteks klien. Setiap permintaan yang diterima dianggap sebagai permintaan yang mandiri.Terpisah antara Klien dan Server: REST API mengizinkan klien dan server berinteraksi secara terpisah dan independen. Hal ini memungkinkan kedua sisi untuk berubah dan berkembang secara mandiri tanpa mempengaruhi yang lain.Berbasis URL dan HTTP: REST API menggunakan URL (Uniform Resource Locator) dan protokol HTTP untuk mengidentifikasi dan berkomunikasi dengan sumber daya.Operasi Standar: REST API menggunakan metode HTTP standar seperti GET, POST, PUT, dan DELETE untuk melakukan operasi pada sumber daya. Bagaimana Cara Kerja REST API? Cara kerja REST API didasarkan pada prinsip-prinsip dasar REST, yang memanfaatkan protokol HTTP untuk mentransfer data antara klien dan server. Berikut ini adalah bagaimana cara kerja REST API: Menerima HTTP Request dari Klien: Klien membuat permintaan HTTP ke server beserta sumber daya yang ingin diaksesnya. Contohnya, jika klien ingin menambahkan data buku, klien akan mengirim permintaan HTTP POST ke URI “/books” Berikut adalah HTTP request yang digunakan dalam metode REST API:GET (Mendapatkan Data)POST (Menambah Data Baru)UPDATE (Memperbarui Data yang Ada)DELETE (Menghapus Data)Pemrosesan Server: Saat klien mengirim permintaan, Server menerima permintaan dari klien dan memprosesnya sesuai dengan metode dan endpoint yang ditentukan.Generasi Respons: Setelah pemrosesan selesai, server akan mengirimkan respons kembali ke klien. Respons ini biasanya berisi status HTTP yang berisi berhasil/tidaknya permintaan tersebut, bersama dengan data yang diminta jika ada.Penerimaan Klien: Klien menerima respons dari server dan menanggapi sesuai dengan hasilnya. Tools untuk Membuat REST API API Tools adalah sebuah perangkat lunak/softwware yang bisa digunakan untuk membantu mengembangkan, menguji, menerapkan, dan mengelola API. Berikut ini adalah macam-macam API Tools yang umum digunakan, 1. Postman Postman adalah salah satu alat yang paling populer untuk menguji REST API. Postman memiliki banyak fitur dan fleksibel untuk digunakan. Fitur Unggulan: Kompatibel dengan plugin ekstensi Linux, Windows, MacOS, dan ChromeTerdapat fitur kolaborasi untuk memudahkan kolaborasi antar timMendukung format Swagger dan RAML (RESTful API Modeling Language) 2. SwaggerUI Swagger UI adalah alat yang populer untuk membuat dokumentasi API yang interaktif. Swagger menyertakan alat desain, pengujian, dan dokumentasi penting untuk membangun layanan web sederhana hingga kompleks. Fitur Unggulan: Sinkronsasi otomatis anatar pembuatan dan dokumentasi APIMenyediakan beberapa alat untuk Spesifikasi Open API (OAS)Mendukung desain, pengembangan, dokumentasi, dan pengujian keamanan. 3. SoapUI SoapUI adalah singkatan dari Simple Object Access Protocol. SoapUI merupakan alat penguji REST API otomatis yang banyak digunakan. Kalian dapat menggunakan SoapUI untuk menguji Layanan Web SOAP dan Layanan Web berbasis HTTP. Fitur Unggulan: Mendukung permintaan REST, SOAP, dan IoTMenawarkan solusi pengujian yang kuat untuk REST dan SOAP APIMemiliki user interface yang friendly 4. Rest Assured Rest Assured adalah alat terbaik untuk menguji API otomatis terutama saat menggunakan Java. Rest Assured merupakan pustaka Java yang open source dan gratis. Fitur Unggulan: Mendukung permintaan XML dan JSONMendukung sintaks BDD (Given-When-Then)Dapat digunakan oleh banyak pengembang Kesimpulan REST API adalah gabungan dari REST (Representational State Transfer) dan API (Application Programming Interface) yang memungkinkan komunikasi antara perangkat lunak menggunakan HTTP. Karakteristik REST API meliputi stateless, terpisah antara klien dan server, berbasis URL dan HTTP, serta menggunakan operasi standar seperti GET, POST, PUT, dan DELETE. Cara kerja REST API melibatkan menerima HTTP Request dari klien, pemrosesan server, generasi respons, dan penerimaan klien. Beberapa tools yang umum digunakan untuk membuat REST API antara lain Postman, SwaggerUI, SoapUI, dan Rest Assured. Bagi kalian yang tertarik untuk mempelajari lebih dalam mengenai REST API, kalian bisa mempelajarinya secara gratis melalui BuildWithAngga loh! Jangan lupa kepoin kelas-kelasnya ya! Sampai jumpa di artikel selanjutnya🙌 Membuat REST API dengan LumenBuild API with GraphQL

Kelas Mengenal Fitur Middleware: Keamanan dalam Framework Laravel di BuildWithAngga

Mengenal Fitur Middleware: Keamanan dalam Framework Laravel

Laravel merupakan salah satu framework PHP yang sedang populer saat ini di Indonesia, dengan menawarkan berbagai fitur yang memudahkan pengembangan aplikasi web. Salah satunya adalah middleware, yang berperan penting dalam mengamankan dan mengontrol akses ke rute-rute dalam aplikasi. Sebelum itu mari kita mengenal siapakah Middleware ini dalam Laravel PHP dan apa manfaatnya?... Apa Itu Middleware dalam Laravel? Middleware adalah lapisan perantara antara permintaan route HTTP yang masuk dan action dari Controller yang akan dijalankan. Middleware memungkinkan kita untuk meakukan berbagai tugas baik itu sebelum ataupun sesudah tindakan dilakukan. Kita juga dapat menggunakan tool CLI untuk membuat sebuah Middleware dalam Laravel. Beberapa contoh penggunaan Middleware meliputi autentikasi, validasi, manipulasi permintaan, dan lainnya. php artisan make:middleware auth Manfaat dari Middleware dalam Laravel Keamanan : dalam Middleware memungkinkan kita untuk memverifikasi apakah pengguna sudah diautentikasi sebelum mengakses halaman tertentu. Dengan demikian, kita dapat melindungi data sensitif dan mengontrol hak akses pengguna.Pemfilteran Data : Middleware dapat digunakan untuk memanipulasi data permintaan sebelum sebuah action dalam controller dilakukan. Misalnya, kita dapat memeriksa terlebih dahulu data yang dikirim oleh pengguna sebelum data tersebut diproses lebih lanjut atau kita ingin memodifikasi data yang akan dikirim lalu kita dapat memeriksa ulang data yang akan dikirim oleh pengguna sebelum data tersebut diproses.Logging dan Audit : Middleware juga dapat digunakan untuk mencatat aktivitas pengguna atau melakukan audit terhadap permintaan yang masuk. Ini dapat membantu dalam pemantauan dan analisis aplikasi. Kenali bagaimana bentuk Middleware dalam Framework Laravel Setelah kita menjelajahi apa itu middleware dan apa manfaat middleware pada Framework Laravel, mari kita kenali bagaimana bentuk Middleware dan bagimana alur pembuatannya.. Ketika kita membuat Middleware secara default Middleware akan disimpan pada folder app\Http\Middleware. MengenalFiturMiddleware_BuildWithAngga Setelah kita membuat middleware hasil yang akan kita dapatkan akan seperti contoh dibawah. <?php namespace App\\Http\\Middleware; use Closure; use Illuminate\\Http\\Request; class checkStatus { /** * Handle an incoming request. * * @param \\Illuminate\\Http\\Request $request * @param \\Closure(\\Illuminate\\Http\\Request): (\\Illuminate\\Http\\Response|\\Illuminate\\Http\\RedirectResponse) $next * @return \\Illuminate\\Http\\Response|\\Illuminate\\Http\\RedirectResponse */ public function handle(Request $request, Closure $next) { // code untuk perintah yang akan dilakukan untuk mengatur akses routes return $next($request); } } Lalu kita dapat mengisi code untuk perintah menggunakan if clause sebagai contoh kali ini untuk mengecek status user apakah sudah login atau belum jika status ‘0’ atau offline dalam case ini maka akan diarahkan kembali pada halaman login. //----------------------------------------------------------------------------------------- // Melakukan Pengecekan apakah user sudah melakukan login dan status user masih 0 (offline) if (Auth::check() && Auth::user()->status === 0) { // apabila iya maka user akan logout dan diarahkan pada halaman login kembali Auth::logout(); return redirect('/login'); } //----------------------------------------------------------------------------------------- Setelah kita mengisi code untuk perintah yang akan dilakukan kita harus menambahkan middleware dalam kernel.php pada direktori App\Http . kita dapat menambahkannya pada bagian proteced $routeMiddleware = [ ... ]. protected $routeMiddleware = [ // ... 'checkStatus' => \\Illuminate\\Auth\\Middleware\\checkStatus::class, ]; Lalu langkah terakhir kita dapat menambahkannya dalam route pada direktori routes\web.php Route::get('/home', function () { // ... })->middleware('checkStatus'); Kesimpulan Dalam artikel ini, kita telah mendalami konsep Middleware sebagai unsur krusial dalam menjaga keamanan framework Laravel. Pemahaman tentang manfaat dan penerapan Middleware telah diuraikan, sambil menjelaskan fleksibilitas konfigurasi pada tingkat global, grup, atau individual untuk setiap route. Dengan memanfaatkan Middleware, tidak hanya keamanan HTTP Request dapat diperkuat, tetapi juga proses pemfilteran data dan logging/audit dapat dioptimalkan. Penggunaan Middleware memberikan kemampuan kepada pengembang untuk meningkatkan kehandalan dan keamanan aplikasi Laravel. Tool CLI Laravel turut memberikan efisiensi dalam pembuatan Middleware, memberikan kemudahan dalam tahap pengembangan dan pemeliharaan aplikasi web. Oleh karena itu, pada artikel ini tidak hanya memberikan pemahaman mendalam tentang peran Middleware, tetapi juga menyoroti manfaat praktisnya dalam pengembangan ekosistem Laravel. Untuk belajar lebih lanjut tentang middleware, Kamu dapat mengikuti kelas belajar online dari Build With Angga (BWA) yang membahas tentang Laravel Middleware. Jangan Lupa untuk terus eksplorasi fitur-fitur Laravel PHP !!! Rekomendasi Kelas :Kelas Online Gratis PHP Laravel Web Development | BuildWithAngga Kelas Online Gratis Belajar Laravel di BuildWithAngga

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 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 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 !

Kelas Struktur Kontrol dalam Go: Penggunaan If, For, dan Switch di BuildWithAngga

Struktur Kontrol dalam Go: Penggunaan If, For, dan Switch

Go, bahasa pemrograman yang dikembangkan oleh Google, terkenal karena kesederhanaan dan efisiensinya. Salah satu fitur yang membuat Go menjadi pilihan yang populer di antara para pengembang adalah struktur kontrol yang kuat dan mudah digunakan. Dalam artikel ini, kita akan menjelajahi penggunaan struktur kontrol utama dalam Go: if, for, dan switch, serta bagaimana Anda dapat memanfaatkannya dalam pengembangan perangkat lunak. If Statement Statement if digunakan untuk mengevaluasi kondisi dan menjalankan blok kode jika kondisinya benar (true). Contoh penggunaannya: Anda juga dapat menggunakan if tanpa kondisi, yang akan mengevaluasi ekspresi boolean di dalamnya: Go mendukung beberapa jenis loop, tetapi yang paling umum adalah loop for. Loop for digunakan untuk mengulangi blok kode selama kondisi yang ditentukan benar. Contoh sederhananya adalah: Anda juga dapat menggunakan for untuk melakukan loop melalui elemen-elemen dalam sebuah slice atau map: Switch Statement Pernyataan switch digunakan untuk memeriksa beberapa kondisi dan menjalankan blok kode yang sesuai dengan kondisi yang terpenuhi. Contohnya seperti berikut: Anda juga dapat menggunakan switch tanpa ekspresi untuk membuat struktur percabangan yang lebih bersih: Dengan memahami penggunaan yang tepat dari if, for, dan switch dalam Go, Anda dapat menulis kode yang lebih bersih, mudah dimengerti, dan efisien. Teruslah eksplorasi dan praktikkan struktur kontrol ini dalam pengembangan perangkat lunak Anda untuk mencapai hasil yang optimal. Kesimpulan 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 Anda bersama komunitas yang solid dan dukungan dari instruktur ahli. Mari bergabung dan berkembang bersama-sama! 🚀 BuildWithAngga