Icerige gec
Masaüstü Uygulama

Öğrenci Yönetim Sistemi

Öğrenci kayıt ve not takip uygulaması. Öğrenci numarası, ad-soyad, e-posta, bölüm, sınıf düzeyi ile vize ve final notlarını alıp kaydı listeye ekliyor, vize ve final ağırlıklarından 4'lük sistemde GANO hesaplıyor ve tüm kayıtları program kapansa da kaybolmayacak şekilde saklıyor.

Yıl
2026
Kategori
Masaüstü Uygulama
Kullanılan teknolojiler
Java · Swing · NetBeans · File I/O · OOP
Öğrenci Yönetim Sistemi

Genel bakış

Bu proje, Java'da Swing kütüphanesini ve NetBeans'in tasarım bölümünü ilk öğrendiğim dönemde yazdığım uygulama. Öğrendiğim arayüz bileşenlerini boşa denemek yerine gerçekten işe yarayan bir şeye bağlamak istedim; bir öğrenci listesini tutmak da hem tanıdık hem de üzerine mantık kurmaya elverişli bir konuydu.

Uygulama sol taraftaki formdan öğrenci numarası, ad, soyad, e-posta, bölüm, sınıf düzeyi, vize ve final notunu alıyor. Kaydedilen öğrenciler sağdaki tabloda anlık olarak listeleniyor; tablodan bir satır seçilip silinebiliyor. Vize %40, final %60 ağırlıkla değerlendirilerek 4'lük sistemdeki GANO otomatik hesaplanıp tabloya yazılıyor.

Kayıtların kalıcı olması için verileri bir metin dosyasında (ogrenciler.txt) satır satır tutuyorum. Program her açıldığında bu dosya okunup tablo yeniden dolduruluyor, böylece uygulama kapatılıp açıldığında hiçbir kayıt kaybolmuyor. Dosya okuma-yazma işlemlerini ilk kez burada uygulamalı olarak kullandım.

Kodu üç katmana ayırdım: Ogrenci sınıfı öğrenciye ait verileri ve GANO hesabını taşıyan model, Yonetim sınıfı ekleme-silme-arama ve dosya işlemlerini yürüten iş mantığı, Ekran sınıfı ise NetBeans GUI Builder ile tasarlanan arayüz katmanı. Bu ayrım sayesinde arayüzde bir değişiklik yapmak hesaplama mantığına dokunmayı gerektirmiyor — projeden öğrendiğim en kalıcı şey bu oldu.

Öne çıkanlar

  • 01Öğrenci ekleme, tablodan seçerek silme ve anlık listeleme
  • 02Vize %40 / final %60 ağırlığıyla 4'lük sistemde otomatik GANO hesabı
  • 03Kayıtların metin dosyasında saklanması, açılışta otomatik yüklenmesi
  • 04Model, iş mantığı ve arayüz olarak üç katmana ayrılmış sınıf yapısı
  • 05NetBeans GUI Builder ile tasarlanmış Swing arayüzü