Selamlar arkadaşlar, yaklaşık 3 haftadır C# öğreniyorum, YouTube’da, Udemy’de bir sürü video bitirdim. Artık öğreniyorum modundan çıkıp yapıyorum moduna geçme zamanı geldi diye düşündüm.
İlk projemi bitirdim, sizin de görüşlerinizi almak istiyorum.
Neler yaptım?
Tamamen C# Windows Forms + .NET 8
SQLite veritabanı (tek dosya, kurulum falan yok)
Entity Framework Core (Code First + migration’lar)
MaterialSkin.2 ile baya şık bir tema (karanlık mod bağımlısıyım)
Arada async/await, LINQ, custom control falan da kullandım (kendimi geliştirmek için)
Çalışan özellikler:
Görev ekle, sil, düzenle, tamamla işaretle.
tarih, öncelik (kırmızı-sarı-yeşil), kategori
Güçlü arama (başlık + açıklama anında filtreliyor)
Zengin metin not defteri (renkli yazı, kalın, link, her şey var)
Tek tuşla karanlık ↔ açık tema değiştirme.
Veriler TaskFlow.db dosyasında, başka bilgisayara atınca direkt çalışıyor
C#:
// Görevleri async yükleme + arama (takılma sıfır)
private async Task LoadTasksAsync(string search = "")
{
await using var ctx = new AppDbContext();
var query = ctx.Tasks.AsQueryable();
if (!string.IsNullOrWhiteSpace(search))
query = query.Where(t => t.Title.Contains(search, 1) ||
t.Description.Contains(search));
var tasks = await query
.OrderBy(t => t.IsCompleted)
.ThenByDescending(t => t.Priority)
.ThenBy(t => t.DueDate ?? DateTime.MaxValue)
.ToListAsync();
flowLayoutPanel.Controls.Clear();
foreach (var t in tasks)
flowLayoutPanel.Controls.Add(new TaskCard(t) { Width = flowLayoutPanel.Width - 25 });
}
Kod:
C#:
// Tema değiştirme (tek satırla karanlık/açık geçiş)
private void btnTheme_Click(object sender, EventArgs e)
{
var m = MaterialSkinManager.Instance;
m.Theme = m.Theme == MaterialSkinManager.Themes.DARK
? MaterialSkinManager.Themes.LIGHT
: MaterialSkinManager.Themes.DARK;
}