Ders Dağıtım Programı Yazıyorum

Kodla Büyü

MuratAKAR

Aktif Üye
Mesajlar
132
Arkadaşlar birkaç haftadır boş saatlerimde ders dağıtım yapabilecek bir program yazmaya çalışıyorum. Şu an için genel ayarlar, dersler, derslikler, öğretmenler ve sınıfları(gruplarıyla) oluşturup kayıt edebiliyoruz. Asc nin kolaylıklarını programda oluşturmaya çalışıyorum. Görsel olarak şu an için fazla bir özellik yok (en azından yetiştirebilirsem bu sene için böyle, tutarsa daha görsel olabilir). İlköğretimlerdeki seçmeli dersleri, sınıflar bazında gruplar oluşturarak ve ders planınıda grupları birleştirerek çözmeyi düşünüyorum. Aynı şekilde meslek liselerindeki dalların ortak ve dal dersleri de böyle çözülebilir. Programı modüler yapmaya çalışıyorum örneğin ders dağıtımını özel bir sınıf içinde yapacağım. Program bittikten sonra kodlarını burada paylaşırım. İsteyen arkadaşlar dağıtımı farklı mantıklarla kendileri istediği gibi düzenleyebilir.

Sizlerden şu an için isteğim:
Ders dağıtımında en çok kullandığınız kısıtlamalar nelerdir? (Şu iki ders arka arkaya gelsin gibi)
Olmasını istediğiniz özellikler nelerdir?
Gönderdiğim programda şurası olmamış dediğiniz yerler nelerdir?

BİTMİŞ HALİ İÇİN
http://www.bilgisayarbilisim.net/id...ders-dagitim-programi-dagitmatik-t116878.html
 

Ekli dosyalar

  • dersdağıtımprogramı.png
    dersdağıtımprogramı.png
    92.5 KB · Görüntüleme: 5,388
emeğine sağlık hocam ama bu işi yapan idarecilerden görüş almanız daha sağlıklı olur gibime geliyor.
 
adeministrator' Alıntı:
emeğine sağlık hocam ama bu işi yapan idarecilerden görüş almanız daha sağlıklı olur gibime geliyor.

Haklısın hocam. Yanlız bir zamanlar bilgisayar öğretmeni olarak asc ile ders dağıtımı yapmak durumunda kaldım. Aynı şekilde burada da ders dağıtımı yapmış arkadaşın çok olacağını düşünüyorum.
 
Hocam sana en buyuk problemi soyleyeyim. Biliyorsun 5-6lar 35 saat. 7-8ler 30 saat onumuzdeki sene. Olay su. Tasimali egitim yapilan okullarda ogrenciler ayni anda okuldan cikmalari lazim ki servisler tum ogrenciyi alip gitsin. O yuzden bizim okulda fazla ders oglearasinda yapiliyor. Boylece tum okul ayni anda baslayip ayni anda bitiyor. Yani ogleden sonra 6-7ler 6. Derse giediklerinde 7-8ler 5. Derse giriyor. Buda programi yaparken ogretmenlerin bazi gunlerini bosalttiginda cakisma yapiyor. Aklinda olsun. Bunu goz onune alarak bir program yazmani tavsiye ederim.
 
her_dem' Alıntı:
Hocam sana en buyuk problemi soyleyeyim. Biliyorsun 5-6lar 35 saat. 7-8ler 30 saat onumuzdeki sene. Olay su. Tasimali egitim yapilan okullarda ogrenciler ayni anda okuldan cikmalari lazim ki servisler tum ogrenciyi alip gitsin. O yuzden bizim okulda fazla ders oglearasinda yapiliyor. Boylece tum okul ayni anda baslayip ayni anda bitiyor. Yani ogleden sonra 6-7ler 6. Derse giediklerinde 7-8ler 5. Derse giriyor. Buda programi yaparken ogretmenlerin bazi gunlerini bosalttiginda cakisma yapiyor. Aklinda olsun. Bunu goz onune alarak bir program yazmani tavsiye ederim.

Hocam sınıfları aşağıdaki gibi öğle aralarını da ders gibi göstererek 5 ve 6 lara açsak, 7,8 lere kapatsak. Ders dağıtımı sonunda ben saatleri ona göre ayarlasam sorununuz çözülür sanırım. Raporlama kısmında bunu göz önünde bulundurayım.
 

Ekli dosyalar

  • sorun.png
    sorun.png
    77.6 KB · Görüntüleme: 5,183
1. PHP'de web sayfası olarak yap. Yalnız bu durumda hesaplama süresi aşırı uzayacaktır. Hostingi amazondan alırsan en fazla bir kaç saniyede hesaplar cloud sistemi ile. Siteye reklam aldınmı var ya paraya para demezsin. Hem de herkese hayrın dokunur. Hem kodda bir güncelleme yapınca tek bir yerden program düzeltilmiş olur. Herkesin yeni sürümü indirip kurmasına gerek kalmaz.

2. Ben de bir aralar uğraşmıştım. Algoritma için graf renklendirme algoritması kullanacaksın. Graf kullanımı için hazır kütüphane hemen hemen hiç bir dilde yok düzgünce. Sen en iyisi grafı matrix (2 boyutlu dizi) üzerinde tutan bir sınıf falan oluştur. Ona göre çalışsın.

3.
if (ders_adı = 'bilişim teknolojileri') then
begin
dağıtımda_kıyak_geç();
Gun_Bosalt();
Hatta_mumkunse_pazartesi_yada_cuma();
end;
 
halk' Alıntı:
1. PHP'de web sayfası olarak yap. Yalnız bu durumda hesaplama süresi aşırı uzayacaktır. Hostingi amazondan alırsan en fazla bir kaç saniyede hesaplar cloud sistemi ile. Siteye reklam aldınmı var ya paraya para demezsin. Hem de herkese hayrın dokunur. Hem kodda bir güncelleme yapınca tek bir yerden program düzeltilmiş olur. Herkesin yeni sürümü indirip kurmasına gerek kalmaz.

2. Ben de bir aralar uğraşmıştım. Algoritma için graf renklendirme algoritması kullanacaksın. Graf kullanımı için hazır kütüphane hemen hemen hiç bir dilde yok düzgünce. Sen en iyisi grafı matrix (2 boyutlu dizi) üzerinde tutan bir sınıf falan oluştur. Ona göre çalışsın.

Hocam ben C# ile masaüstü uygulaması olarak yapıyorum. Web için pek uygun olmayan bir uygulama bu, zira ben ders dağıtımı yapan site görmedim. İlerki aşamalarda hesaplamada çoklu işlem oluşturup hesaplamayı hızlandırmayı düşünüyorum.
 
rehberlik pek kalmadı ama rehberlik saatini belirleyip tüm sınıflar ya da belirli sınıflar için kapatabilmek var hocam.
 
bilisimci61' Alıntı:
rehberlik pek kalmadı ama rehberlik saatini belirleyip tüm sınıflar ya da belirli sınıflar için kapatabilmek var hocam.

Hocam onu düşündüm. İstenirse tüm okul için haftanın herhangibir günü herhangibir veya birden fazla saati kapatılabiliyor (Genel ayarlar/Koşullar). Yada rehberlik saati raporda çıksın diye tanımlanan herhangibir ders planda herhangibir güne ve saate kilitlenebilme özelliği ekleyeyim.
 
seçmeli dersler, öğretmene saat kapama, sınıfa saat kapama, derse işlik atama(örn: resim ve tasarım aynı işlikte işlenir),teknoloji tasarıma 2 grup öğretmeni atama es geçilmemeli. başarılar
 
öğretmenin istediği saatler boşaltılabilsin yada doldurulabilsin.
istediği dersler istediği yerlere verilebilsin.
 
halk' Alıntı:
1. PHP'de web sayfası olarak yap. Yalnız bu durumda hesaplama süresi aşırı uzayacaktır. Hostingi amazondan alırsan en fazla bir kaç saniyede hesaplar cloud sistemi ile. Siteye reklam aldınmı var ya paraya para demezsin. Hem de herkese hayrın dokunur. Hem kodda bir güncelleme yapınca tek bir yerden program düzeltilmiş olur. Herkesin yeni sürümü indirip kurmasına gerek kalmaz.

2. Ben de bir aralar uğraşmıştım. Algoritma için graf renklendirme algoritması kullanacaksın. Graf kullanımı için hazır kütüphane hemen hemen hiç bir dilde yok düzgünce. Sen en iyisi grafı matrix (2 boyutlu dizi) üzerinde tutan bir sınıf falan oluştur. Ona göre çalışsın.

3.
if (ders_adı = 'bilişim teknolojileri') then
begin
dağıtımda_kıyak_geç();
Gun_Bosalt();
Hatta_mumkunse_pazartesi_yada_cuma();
end;


Bu nedir ya adamın nasıl yapacağını söylemekten ise sen yap biz kullanalım hocam bırak adam uğraşmış yapmış bir şeyler paylaşmış eğer nasıl yapacağını soracak olursa söylersin iş veren misin ki ? Parasını sen mi veriyorsun da milletin işine gücüne karışıp hevesini kırıyorsun.

Üstte php den bahsedip altta pascal diline ait ornek vermek. Hadi Delphi olsun :)

Bu mesajdan sonra acaba Amazona aylık ne kadar ödüyorsunuz kurum olarak yada bireysel olarak onuda merak ettim doğrusu?
 
hocam öncelikle Allah sabir versin
ders dagitimi sadece secmeli icin düsünüyorsan belki isin daha basit olabilir ama
tüm okulun derslerini dagitacaksan ki yaklasik 10 sene önce böyle bir girisimde bulunmustum
delphide bir prg yazdim ama
ders dagitiminda kisitlamalar fazla olunca %100 dagitamiyordu programim
%95lerde kaliyordu
tam cözememistim umarim sen basarili olursun
 
Hocam Allah yardımcın olsun öncelikle..

ders dağılımı yapıldıktan sonra bir öğretmen için tabloda değişiklik yapıldığında diğer öğretmenler için de en uygun yerleştirme seçeneklerini düzenleyebilirsin. Bir de şu seçmeli derslerde sınıf bölünmelerinde yaşanan çakışmaları düzenleyecek bir uygulama gerçekleştirebilirsin.

Kolay gelsin
 
MuratAKAR' Alıntı:
her_dem' Alıntı:
Hocam sana en buyuk problemi soyleyeyim. Biliyorsun 5-6lar 35 saat. 7-8ler 30 saat onumuzdeki sene. Olay su. Tasimali egitim yapilan okullarda ogrenciler ayni anda okuldan cikmalari lazim ki servisler tum ogrenciyi alip gitsin. O yuzden bizim okulda fazla ders oglearasinda yapiliyor. Boylece tum okul ayni anda baslayip ayni anda bitiyor. Yani ogleden sonra 6-7ler 6. Derse giediklerinde 7-8ler 5. Derse giriyor. Buda programi yaparken ogretmenlerin bazi gunlerini bosalttiginda cakisma yapiyor. Aklinda olsun. Bunu goz onune alarak bir program yazmani tavsiye ederim.

Hocam sınıfları aşağıdaki gibi öğle aralarını da ders gibi göstererek 5 ve 6 lara açsak, 7,8 lere kapatsak. Ders dağıtımı sonunda ben saatleri ona göre ayarlasam sorununuz çözülür sanırım. Raporlama kısmında bunu göz önünde bulundurayım.

söylediklerin uygun değil 5-6 sınıflarda ders saati 29+6 6 sı seçmeli 5 saat senin çizdiğin şekilde 1 ders seçmeli ders boşta kalıyor bu olmaz. bunuda şöyle çözersin 7-8 ler için rehberlik saati belirler o 1 seçmeli derside ogün ozamana koyarsın. ancak şuan yapmış olduğun program bitmemiş hali progmatik ve bilsa - e-okulun kendi progrmaı zaten yapıyor sorn seçmeli derslerde seçmeli dersleri yerleştiren bir programa ihtiyaç var bence eğilmen gereken esas konu bu. iyi çalışmalar.
 
hocam emeğine sağlık. :+1:
bu konuda en büyük problem seçmeli dersler
ikinci olarak elle çakma dediğimiz herhagi bir dersi haftanın bir saatine sabitleme
diğer bir sıkıntı öğretmenlerin bazı gün veya derslerinin kapatılması
başka bir sıkıntı aynı öğretmenin aynı sınıfa aynı günde derslerinin çok fazla üst üste gelmemesi gerekmesi



aklıma gelenler şimdilik bunlar.
 
Seçmeli dersler aynı saatlere toplanacak (pazartesi 3-4 salı 3-4 Çarşamba 3-4 Mesela )
Öğretmenin o saatleri kapatılacak.
Öğrenciler o saatlerde ilgili sınıflara gidecek.

Sosyal Kulüp faaliyetlerinde buna benzer yöntem kullanılmaktadır.

Ancak buradaki esas sıkıntı özellikle kalabalık öğrenci sayıları için seçmeli ders dağıtımını nasıl yapıyorsunuz?
Eğer dersi öğrenci seçiyorsa bu yerleştirme işleri için ne kullanabiliriz?
 
enestar' Alıntı:
Seçmeli dersler aynı saatlere toplanacak (pazartesi 3-4 salı 3-4 Çarşamba 3-4 Mesela )
Öğretmenin o saatleri kapatılacak.
Öğrenciler o saatlerde ilgili sınıflara gidecek.

Sosyal Kulüp faaliyetlerinde buna benzer yöntem kullanılmaktadır.

Ancak buradaki esas sıkıntı özellikle kalabalık öğrenci sayıları için seçmeli ders dağıtımını nasıl yapıyorsunuz?
Eğer dersi öğrenci seçiyorsa bu yerleştirme işleri için ne kullanabiliriz?
sayın hocam o kadar basit değil 5-6 sınıflar seçmeli derslerde aynı sınıfta olma olasılıkları var 1 ikincisi yoklama listeleri hazırlaması lazım programın madem kapsamlı birşey olacak. en büyük sorunlardan bir tanesi yoklama
 
spider23' Alıntı:
hocam veritabanı bağlantısından faydalanıyormusunuz??

Öncelikle yorum yazan tüm arkadaşlara teşekkürler. Belirttikleri sorunları çözmeye çalışacağım.
Hocam veritabanı bağlantılı yapacaktım yanlız dosyalama ile daha güzel olacak gibi. Şu an kullandığım yöntem xml oluşturup bunu sıkıştırmak. Zaten dikkat ettiyseniz dosya fazla yer kaplamıyor. Şimdi ders oluşturma işlemini halledeyim. Ders oluştururken Ders, Öğretmen(ler), Sınıf ve grupları (Birden fazla sınıf ve grubu seçilebilecek seçmeli dersler için), Derslik(ler) göz önünde bulundurulacak (ASC de olduğu gibi). Sahura kadar kod yazma zamanı :)
 
MuratAKAR' Alıntı:
Arkadaşlar birkaç haftadır boş saatlerimde ders dağıtım yapabilecek bir program yazmaya çalışıyorum. Şu an için genel ayarlar, dersler, derslikler, öğretmenler ve sınıfları(gruplarıyla) oluşturup kayıt edebiliyoruz. Asc nin kolaylıklarını programda oluşturmaya çalışıyorum. Görsel olarak şu an için fazla bir özellik yok (en azından yetiştirebilirsem bu sene için böyle, tutarsa daha görsel olabilir). İlköğretimlerdeki seçmeli dersleri, sınıflar bazında gruplar oluşturarak ve ders planınıda grupları birleştirerek çözmeyi düşünüyorum. Aynı şekilde meslek liselerindeki dalların ortak ve dal dersleri de böyle çözülebilir. Programı modüler yapmaya çalışıyorum örneğin ders dağıtımını özel bir sınıf içinde yapacağım. Program bittikten sonra kodlarını burada paylaşırım. İsteyen arkadaşlar dağıtımı farklı mantıklarla kendileri istediği gibi düzenleyebilir.

Sizlerden şu an için isteğim:
Ders dağıtımında en çok kullandığınız kısıtlamalar nelerdir? (Şu iki ders arka arkaya gelsin gibi)
Olmasını istediğiniz özellikler nelerdir?
Gönderdiğim programda şurası olmamış dediğiniz yerler nelerdir?

Şu ana kadar hazırladığımı örnek verilerle gönderiyorum.
Hocam Bu Form Ekranında Üstteki Menuleri Nasıl Tasarladınız? Yeni Yeni C# Öğreniyorum ve Bir Proje Hazırlıyorum ve Menüyü Böyle Yapmak İstiyorumda. ( Menustript 'i Demiyorum Resimdeki Menüyü Kastediyorum Hocam Bilgi Giriş Formundaki)
 
qalatasaray377' Alıntı:
MuratAKAR' Alıntı:
Arkadaşlar birkaç haftadır boş saatlerimde ders dağıtım yapabilecek bir program yazmaya çalışıyorum. Şu an için genel ayarlar, dersler, derslikler, öğretmenler ve sınıfları(gruplarıyla) oluşturup kayıt edebiliyoruz. Asc nin kolaylıklarını programda oluşturmaya çalışıyorum. Görsel olarak şu an için fazla bir özellik yok (en azından yetiştirebilirsem bu sene için böyle, tutarsa daha görsel olabilir). İlköğretimlerdeki seçmeli dersleri, sınıflar bazında gruplar oluşturarak ve ders planınıda grupları birleştirerek çözmeyi düşünüyorum. Aynı şekilde meslek liselerindeki dalların ortak ve dal dersleri de böyle çözülebilir. Programı modüler yapmaya çalışıyorum örneğin ders dağıtımını özel bir sınıf içinde yapacağım. Program bittikten sonra kodlarını burada paylaşırım. İsteyen arkadaşlar dağıtımı farklı mantıklarla kendileri istediği gibi düzenleyebilir.

Sizlerden şu an için isteğim:
Ders dağıtımında en çok kullandığınız kısıtlamalar nelerdir? (Şu iki ders arka arkaya gelsin gibi)
Olmasını istediğiniz özellikler nelerdir?
Gönderdiğim programda şurası olmamış dediğiniz yerler nelerdir?

Şu ana kadar hazırladığımı örnek verilerle gönderiyorum.
Hocam Bu Form Ekranında Üstteki Menuleri Nasıl Tasarladınız? Yeni Yeni C# Öğreniyorum ve Bir Proje Hazırlıyorum ve Menüyü Böyle Yapmak İstiyorumda. ( Menustript 'i Demiyorum Resimdeki Menüyü Kastediyorum Hocam Bilgi Giriş Formundaki)
ToolBox tan Containers in altında TabControl nesnesi var hocam onu forma ekleyip dock özelliğini fill yaparsanız formu kaplar. TabPages özelliğinden yeni sayfalar ekleyebiliriniz.
 
Kolay gelsin hocam. Ben programı hazırlarken en çok uğraştıran öğretmenin dersi ne kadar az olursa olsun derslerini tüm haftaya yaymak (müdürüm öğretmenin boş günü olmasın istiyordu :cry: ) Bu nedenle; öğretmene bir günde en az-en çok kaç ders verileceği+ gün içinde verilen dersler arasında en fazla kaç boş ders olabileceği +derslerin tamamı kaç güne yayılacağı işlemlerini sorunsuz hallederse iyi olur. Asctable da bu işlemlerin üçünü birden yerine getiremedim.
 
brkhn' Alıntı:
halk' Alıntı:
1. PHP'de web sayfası olarak yap. Yalnız bu durumda hesaplama süresi aşırı uzayacaktır. Hostingi amazondan alırsan en fazla bir kaç saniyede hesaplar cloud sistemi ile. Siteye reklam aldınmı var ya paraya para demezsin. Hem de herkese hayrın dokunur. Hem kodda bir güncelleme yapınca tek bir yerden program düzeltilmiş olur. Herkesin yeni sürümü indirip kurmasına gerek kalmaz.

2. Ben de bir aralar uğraşmıştım. Algoritma için graf renklendirme algoritması kullanacaksın. Graf kullanımı için hazır kütüphane hemen hemen hiç bir dilde yok düzgünce. Sen en iyisi grafı matrix (2 boyutlu dizi) üzerinde tutan bir sınıf falan oluştur. Ona göre çalışsın.

3.
if (ders_adı = 'bilişim teknolojileri') then
begin
dağıtımda_kıyak_geç();
Gun_Bosalt();
Hatta_mumkunse_pazartesi_yada_cuma();
end;


Bu nedir ya adamın nasıl yapacağını söylemekten ise sen yap biz kullanalım hocam bırak adam uğraşmış yapmış bir şeyler paylaşmış eğer nasıl yapacağını soracak olursa söylersin iş veren misin ki ? Parasını sen mi veriyorsun da milletin işine gücüne karışıp hevesini kırıyorsun.

Üstte php den bahsedip altta pascal diline ait ornek vermek. Hadi Delphi olsun :)

Bu mesajdan sonra acaba Amazona aylık ne kadar ödüyorsunuz kurum olarak yada bireysel olarak onuda merak ettim doğrusu?


Yeğenim hele bir otur soluklan.
Bu ne şiddet bu ne celal.
:)
 
İkili eğitim yapan okullarda öğretmenlere günlük maksimum girebileceği ders miktarı tanımlanması gerekiyor.
Örneğin 7+7=14 gibi veya sadece 14 gibi ama bir günde bir öğretmene maksimum 8 saat vermen mantılı çünkü sonra pili bitiyor . (günlük maksimum sayı)

Derslikler için A-Blok 1.derslik B-Blok 2.kat 3 nolu derslik gibi detay tanımlamalar hem daha tutarlı bir program oluşmasını sağlar hemde NÖBET sistemine de uygun çıkarımlar sağlar.


Derslik-Seçmeli ders-Öğretmen-Öğrenci eşleşmesi olursa da dadından yinmez.

Çok meşakkatli bir işin altına girmişsiniz. Allah utandırmasın.
 
ayhangunes' Alıntı:
İkili eğitim yapan okullarda öğretmenlere günlük maksimum girebileceği ders miktarı tanımlanması gerekiyor.
Örneğin 7+7=14 gibi veya sadece 14 gibi ama bir günde bir öğretmene maksimum 8 saat vermen mantılı çünkü sonra pili bitiyor . (günlük maksimum sayı)

Derslikler için A-Blok 1.derslik B-Blok 2.kat 3 nolu derslik gibi detay tanımlamalar hem daha tutarlı bir program oluşmasını sağlar hemde NÖBET sistemine de uygun çıkarımlar sağlar.


Derslik-Seçmeli ders-Öğretmen-Öğrenci eşleşmesi olursa da dadından yinmez.

Çok meşakkatli bir işin altına girmişsiniz. Allah utandırmasın.

hocam belirtmiş üzerine bir de ders havuzu eklense... :alkis: :alkis: :alkis:

Allah kolaylık versin
 
Ders tanımlama penceresini tamamladım sayılır. Ekran görüntüsünü gönderiyorum. Ders dağıtım işlemini bitirdikten sonra kısıtlamaları yapmayı düşünüyorum. Sonradan kısıtlama eklenebilecek şekilde bir kodlama yapacağım. Daha önce bu kadar karışık bir işe girişmemiştim ama yapabilirim diye düşünüyorum.
 

Ekli dosyalar

  • DersTanımlama.png
    DersTanımlama.png
    81 KB · Görüntüleme: 2,386
Geri
Üst