- Apa itu pemrograman?
- Gambaran umum bahasa pemrograman
- Pengenalan IDE (Integrated Development Environments)
- Apa itu .NET?
- Gambaran umum .NET Framework, .NET Core, dan .NET 8
- Memahami CLR (Common Language Runtime) dan cara kerjanya
- .NET Standard dan kompatibilitasnya
- Cara menginstall .NET SDK dan Visual Studio
- Cara menginstall .NET SDK dan Visual Studio Code
- Mengatur lingkungan pengembangan (Visual Studio/VS Code)
- Mengatur lingkungan pengembangan (Visual Studio Code)
- Membuat aplikasi console .NET pertama Anda
- Memahami struktur proyek (Program.cs, .csproj, solution, dll.)
- Menjalankan dan debugging aplikasi .NET menggunakan Visual Studio
- Contoh penggunaan dotnet cli dalam membuat aplikasi sederhana menggunakan C#
- Apa itu bahasa pemrograman C#?
- Sejarah bahasa pemrograman C#
- Menulis program C# pertama anda
- Pengenalan variabel dan tipe data
- Operasi input/output dasar
- Perbedaan
Console.ReadLine()
danConsole.ReadKey()
5. Statement Kondisi dan Pengulangan di C#
- Struktur kontrol kondisi (if, switch)
- Struktur pengulangan (for, while, do-while, foreach)
- Pengenalan fungsi/method
- Perbedaan fungsi/method pass by reference dan pass by value
- Apa itu fungsi rekursif dan implementasinya di C#?
7. Array di C#
- Pengenalan array 1 dimensi
- Contoh array 1 dimensi
- Pengenalan array 2 dimensi
- Contoh array 2 dimensi
8. Pemrograman Berorientasi Objek dalam C#
- Memahami prinsip OOP (enkapsulasi, pewarisan, polimorfisme, abstraksi)
- Membuat dan menggunakan kelas serta objek
- Konstruktor dan destruktor
- Bekerja dengan interface dan kelas abstrak
- Menerapkan pewarisan dan polimorfisme
9. Koleksi dan Generik dalam C#
- Bekerja dengan array dan list
- Memahami dictionaries dan sets
- Menggunakan LINQ dengan koleksi
- Pengenalan generik dan keuntungannya
10. Penanganan Exception dalam C#
- Apa itu exception?
- Blok try-catch-finally
- Exception khusus
- Praktik terbaik dalam penanganan kesalahan
11. Pemrograman Asynchronous dengan .NET
-
Pengenalan Pemrograman asynchronous
-
Mengapa Pemrograman asynchronous penting?
-
Dasar-dasar async/await di C#:
-
Menulis metode asinkron dengan kata kunci
async
-
Menggunakan
await
untuk menunggu operasi asinkron selesai -
Contoh penggunaan async/await di aplikasi nyata
12. Operasi File I/O
- Membaca dan menulis file
- Bekerja dengan streams
- Manajemen file dan direktori di .NET
13. Dependency Injection di .NET
- Apa itu Dependency Injection?
- Mengapa Dependency Injection penting dalam pengembangan perangkat lunak?
- Gambaran umum cara kerja Dependency Injection di .NET
- Konfigurasi Dependency Injection di .NET
- Menggunakan
AddScoped
,AddTransient
, danAddSingleton
14. Pengenalan Database
- Apa itu database?
- Pengenalan SQL
- Memahami database relasional (SQL Server.)
- Gambaran umum alat manajemen database (SQL Server Management Studio)
15. Menghubungkan ke Database dengan ADO.NET
- Apa itu ADO.NET?
- Mengatur koneksi database
- Menjalankan kueri SQL Server dengan ADO.NET
- Membaca data dengan DataReader dan DataSet
- Menyisipkan, memperbarui, dan menghapus data
16. Pengenalan Entity Framework Core
- Apa itu ORM (Object-Relational Mapping)?
- Gambaran umum Entity Framework Core
- Mengatur database dengan EF Core
- Memahami DbContext dan model
- Membuat dan menerapkan migrasi
- Melakukan kueri ke database SQL Server menggunakan LINQ
17. Membangun Aplikasi Berbasis Data
- Membuat aplikasi sederhana berbasis data dengan ADO.NET
- Refaktoring untuk menggunakan Entity Framework Core
- Praktik terbaik dalam akses data
18. Pengenalan ASP.NET Core
- Gambaran umum ASP.NET Core
- Mengatur aplikasi web ASP.NET Core
- Memahami arsitektur MVC
- Membuat controllers, views, dan models
- Routing di ASP.NET Core
19. Membangun RESTful APIs dengan ASP.NET Core
- Apa itu RESTful API?
- Membuat proyek Web API
- Mendefinisikan controllers dan routes
- Menangani HTTP requests dan responses
- Bekerja dengan JSON dalam Web APIs
20. Keamanan dalam Aplikasi .NET
-
Dasar-Dasar Kriptografi
- Pengenalan kriptografi
- Enkripsi simetris vs. asimetris
- Algoritma hashing dan penggunaannya
- Infrastruktur kunci publik (PKI) dan sertifikat
-
Kriptografi dalam .NET
- Gambaran umum pustaka kriptografi .NET
- Menerapkan enkripsi simetris (AES, DES)
- Bekerja dengan enkripsi asimetris (RSA)
- Menghasilkan dan memverifikasi hashes (SHA, MD5)
- Tanda tangan digital dalam .NET
- Mengelola dan menggunakan kunci kriptografi
-
Enkripsi Data dalam .NET
- Mengenkripsi dan mendekripsi data
- Melindungi informasi sensitif
- Praktik terbaik dalam enkripsi
- Bekerja dengan secure strings dan perlindungan memori
-
Otentikasi dan Otorisasi
- Gambaran umum otentikasi dan otorisasi
- Menerapkan ASP.NET Core Identity
- Bekerja dengan JWT (JSON Web Tokens)
- Mengamankan Web APIs
21. Deployment dan Hosting
- Melakukan deployment aplikasi .NET ke IIS
- Hosting di platform cloud Microsoft Azure
- Hosting di platform cloud AWS
- Continuous Integration/Continuous Deployment (CI/CD) dengan Azure DevOps/GitHub Actions
- Continuous Integration/Continuous Deployment (CI/CD) dengan GitHub Actions
- Memahami Docker dan kontainerisasi aplikasi .NET
22. Topik Lanjutan (Opsional untuk Pemula)
- Bekerja dengan GraphQL dalam .NET
- Pengenalan Blazor untuk pengembangan web
- Arsitektur Microservices dengan .NET
23. Tips dan Triks
- Menulis kode yang bersih dan mudah dipelihara
- Refaktoring dan meningkatkan kualitas kode
- Menggunakan pola desain dalam .NET
- Pengujian aplikasi .NET (Unit Testing dengan xUnit, MSTest)
- Debugging dan pemecahan masalah