2012-2013 Güz Y.Y. Yazılım Lab. I. 3. Proje Konu : Text Tabanlı

Transkript

2012-2013 Güz Y.Y. Yazılım Lab. I. 3. Proje Konu : Text Tabanlı
2012-2013 Güz Y.Y. Yazılım Lab. I. 3. Proje
Konu : Text Tabanlı Dosyaların Karşılaştırılması ve Eşitlenmesi
Geliştirme Ortamı : .Net 2.0, 3.5, 4.0 Windows Form Application
Açıklamalar;
Karşılaştırma;
1. Kaynak ve hedef olarak seçilen 2 tane text tabanlı dosya karşılaştırılıp, senkronize edilebilecek.
2. Kaynak ve hedef olarak seçilen 2 tane dizin içeriği karşılaştırılabilecek. Seçilen dizinler altında altdizinler var ise
bunlar da karşılaştırılacak. Herhangi bir dizin altında aynı isimde bulunan dosyalardan herhangi bir tanesinde
fark tespit edilirse, ilgili dizin farklı renkte gösterilerek, içerisinde bulunan dosyalarda değişiklik olduğu
belirtilmelidir. Bu dizin seçilerek alt dizin ve dosya karşılaştırmalarına erişebilecektir.
3. İsimleri aynı olup, içerikleri faklı olan dosyalar listelenirken yine farklı renklerde gösterilmelidir.
4. Karşılaştırma işlemlerinde içerikle beraber, dosya son güncelleme tarihleri de karşılaştırılacaktır.
a. Dosyaların içeriği farklı ise kırmızı renkle gösterilecek.
b. Dosyaların içeriği aynı fakat son güncelleme tarihi farklı ise mavi ile gösterilecektir.
5. 2 dizin karşılaştırılırken, dizinler altında bulunan ve herhangi bir fark bulunamayan dosyalar, kullanıcı isteğine
bağlı olarak listelenecek. Başka bir ifade ile, “Farklı Olmayanları Listeleme” gibi bir seçenek sağlanacak.
6. Dizinler karşılaştırılırken, kaynak dizinde olup da hedef dizinde olmayan dosya ya da bunun tam tersi durum
olabilir. Bu durumda birebir karşılaştırmada olmayan taraf listede boş bırakılıp, kullanıcıya bu durum
belirtilecektir.
Eşitleme;
1. Dizin karşılaştırmalarında, kaynak ve hedeften dosya seçilerek diğer tarafta üzerine yazılabilecek.
2. Dosya tek tarafta var ise, bulunan dizinden silinebilecek.
3. Örneğin;
 Dizin1 ve Dizin2 karşılaştırılmak istenmektedir..
 Dizin1 altında dosya1.cs , dosya2.cs ve readme.txt dosyaları vardır.
 Dizin 2 altında dosya1.cs ve readme.txt dosyaları vardır.
 Karşılaştırma sonucunda aşağıdaki ekran elde edilir. Buradan Dosya1.cs dosyalarının içeriklerinin farklı
olduğunu anlayabilir ve bunları da karşılaştırabiliriz.
4. Dosya karşılaştırmalarında dosyaların içerikleri yan yana gösterilecek ve farklı olan satırlar belirtilecektir.
5. Kullanıcı istediği satırları sağdan sola ya da soldan sağa taşıyabilecektir. Çoklu satır seçme imkânı verilecektir.
Örneğin, Aşağıdaki karşılaştırma ekranında;
a. 5, 6, 7, 8 ve 9. Satırlar birer birer ya da tümü sağ tarafa taşınabilir.
b. 5, 6, 7, 8 ve 9. Satırlar birer birer ya da tümü sol tarafa taşınabilir. Sol taraftaki satırların silinmesi
anlamına gelir.
c. Bu satırların tümü seçilerek sağa ya da sola taşınabilir.
Notlar;
1.
2.
3.
4.
5.
6.
7.
Projenin teslim edilebilmesi için, en azından dosya karşılaştırma ve eşitleme işlemleri yapılabilir olmalıdır.
Geliştirme ortamı esnek değildir. Sadece istenilen geliştirme ortamını kullanınız.
Proje 3-4 Ocak 2013 tarihlerinde teslim edilecektir.
Proje ve rapor elektronik ortamda mail ile teslim edilecektir. Bu detaylar daha sonra paylaşılacaktır.
Projeler kesinlikle farklı bir ortamda alınmayacaktır.
Raporlar kesinlikle çıktı alınmayacaktır.
Benzer bir uygulamayı incelemek isteyenler;
http://www.prestosoft.com/edp_examdiffpro.asp adresinden deneme sürümünü edinebilirler.
(Bu veya benzeri uygulamaların incelenip, birebir aynı fonksiyonların sağlanması istenmemektedir. Sadece
sizden istenilen fonksiyonları gerçekleyiniz.)