2 Nisan 2011 Cumartesi

Cast, downcast orneği ile nesne yönelimli programlamada tip çevirimi

“Cast” ingilizce bir kelimedir. Programladakı manası “bir kalıba dökmek” anlamından geliyor. İleride neyi ne kalıbına dökdüğümüzü göreceksin.
Türkçe karşılığı “çevirim” diye geçiyor.

Cast, nesneyi bir tipden (classtan) diğer tipe çevirme işlemidir.

Yazılışı böyledir:
(EldeEtmekİstediğimTip) EldeOlanBaşkaTipdenObject;

Daha geniş kod:
BaşkaTip EldeOlanBaşkaTipdenObject = new BaşkaTip ();
EldeEtmekİstediğimTip İstediğimObject = (EldeEtmekİstediğimTip) EldeOlanBaşkaTipdenObject;

---

Downcast, nesilde alt tipe çevirme işlemi.
- Validin evlad tipine çevrilmesi. (Casting Parent to Child type)
- Superclassın subclassa çevrilmesi.
- class Child extends Parent{}; Child B = (Child) new Parent();

---

Ha, niye “Down”:
Child extends Parent.

Parent ParentA = new Parent();
Child ChildA = new Child();

Parent ParentB = ChildA; // it's ok. You give a child to it's parent.
Child ChildB = ParentA; // bad. XX. Compiler error. Are you missing a cast? You should use downcasting. You cannot give parent to child easily, it's big responsibility.
Child ChildC = (Child) ParentA; // it's ok.

Bu makale Java ve C# için geçerlidir.

30 Mart 2011 Çarşamba

KDiff3 yükle, farkını bil!

Bir İki yazılımcının bir arada iş gördüğünde kesinlikle ihtiyaç duyacağı program – bir file diff programıdır. “Diff” ingilizce “difference” kelimesinin kısaltılmış halidir, ve “fark” anlamında kullanılıyor. Yani, dosyalar arasındakı farkı gösteren program.

KDiff3 programı ile temel olarak, iki dosya arasında farka bakabilirsin.
Üç dosya ya klasör arasında farka bakmak da mümkün.
Proje sitesi: http://kdiff3.sourceforge.net/
Rahat kullanım için explorer-e entegreli surümünü (KDiff3 with explorer integration) yükle.

Görseller: http://kdiff3.sourceforge.net/doc/screenshots.html
Ana özellikler: http://kdiff3.sourceforge.net/doc/features.html

İki dosyayı karşılaştırdığında, karşına aşağıdakı gibi bir pencere gelecek.

KDiff3 screenshot 1

Soldakı ilk (A), sağdakı ikinci (B) seçtiğin.dosyayı gösteriyor.
Dosyanın solunda olan renkli kare baktığımız o satırda değişiklik olduğunu gösteriyor.
Değişiklik yalnız birinde, ya da her ikisinde olabilir. Renk yine de her ikisinde olacak.
Karenin tam renkli olmadığı yerler ise, değişikliğin sadece boşluk karakterlerinden olduğunu gösteriyor. (Boşluk karakterleri – space, tab)
En sağdakı kırmızı renkli sütün bize tüm dosyada boyunca değişikliklerin özetini gösteriyor. Scrollbarı o sütuna bakarak yerini değiştir..