View Post

String vs StringBuilder

  String StringBuilder Değiştirilemez Bir kere oluşunca RAM’deki değeri asla değiştirilemez Yapılan herhangi bir değişiklik, eski değerinin iptal edilmesine ve yeni değeriyle tekrardan oluşturulmasına sebep olur   Multi-Thread uygulamalarda sorun çıkarmaz Özelliği çoktur Kullanımı klaydır Değiştirilebilir Oluşturduktan sonra yapılan değişiklikler nesnenin tekrardan oluşturulmasına sebep olmaz Döngü içerisinde performansı çok iyidir   Oluşturma performansı kötüdür Metod ve özellikleri daha azdır   …

View Post

Value Type vs Reference Type

  Value Type Reference Type int, bool ve char gibi tiplerdir null değeri alamazlar struct’a benzerler System.ValueType sınıfından türemişlerdir new ile oluşturulamaz RAM’de stack denen yerde direk değerleri tutulur sınıf veya nesnedir null değeri alabilirler class ve inerface’e benzerler System.Object sınıfından türemişlerdir new ile oluşturulabilirler RAM’de stack zerinde tutulur, ayrıca heap denen yerde gerçek datanın referans değeri tutulur  

View Post

Yazılım Ekibinin Kalitesi Nasıl Değerlendirilir?

Yazılım ekibinin kalitesi basit bir test ile hemen anlaşılabilir. Aşağıdaki test Joel Spolsky’nin yıllar önce kendi başına koymuş olduğu bir dizi kural. 12de 12 yapan firmaların başında Microsoft olduğunu söyleyerek kendi çalıştığımız firmamızı karşılaştırmamızı istiyor. Mükemmel yazılım için olmazsa olmaz değil ama disiplinli ve düzenli çalışan bir ekip için şart. Testi çözmek için günde kaç satır kod yazdığınızı hesaplamanız yada işinizin …

View Post

Programlamanın En Önemli Sırrı

Ekiple ilgili bir problemim var. Projeye ilk başladığımızda her şey çok güzel gidiyordu. İlk haftalarda herkes o kadar çok çalışıyordu ki çalışan bir prototip yapmaları bile çok kısa sürmüştü. Ama o zamandan beri işler yavaşlamış gibi. Artık kimse eskisi gibi çalışmıyor. İşler ilerlemiyor. Belki bir iki kişiyi kovarsam belki ekip eski hızına kavuşur. Eminim sizin hayatınızdan da böyle bir patron …

View Post

ASP.Net MVC için İpuçları

Burada ASP.Net MVC ile alakalı boş beleş şeyler yazacağım. Sadece aklımda tutmak için başlıları yeter diye düşünüyorum, detaylarını yazmaya kalksam sayfalar yetmez. Genel Tavsiyeler Test yaz, hatta önce testi sonra kodu yaz SOLID prensiplerini unutma ActionFilterAttribute kullan Parital page güncellemeleri kullan ASP.Net’in Resource klasörünü kullan Session’ı aşırı kullanmak yerine TempData’yı kullanmaya çalış OutputCache kullan, özellikle statik sayfalarda Async kullanmaktan çekinme …

View Post

İşin Bitirme Tarihi Yaklaştıysa Size 15 Öneri

Bir fikre ihtiyacınız olup da bir tane bile aklınıza gelmemesinden kötü bir şey yoktur. Geçimini fikirler üreterek sağlayan biri olarak, bu hissi iyi biliyorum. Yine de bir fikir bulabilmemiz için iyi bir pozisyonda olduğumuzdan emin olmamıza yarayacak teknikler var. İ̇şte büyük bir fikir üretmeye hazır olduğunuzdan emin olmanız için 15 teknik. Çevrenizi temizlemekle başlayın Temizlemek bir çok şekilde yardımcı olur. …

View Post

Yazılımcı Neden Fazla Mesai Yapar

Nacizane kendi tecrübelerimden ve gözlemlerimden yola çıkarak Neden projeler planlandığı zamanda bitmez? Neden hep developer insanı daha çok çalışmak zorunda kalır? sorularına sebep olan maddeleri sıralamaya çalıştım. İşe projeyi planlamak ile değil, işe direkt kod yazmakla başlıyorsa. (Bkz. guerilla coding, spaghetti coding) Müşterinin gazlamasıyla gelecekte gerekli olabilecek veya hiç gerekli olmayacak modüller için fazladan kodlama yapıyorsa, Her zaman her isteğe …

View Post

Bir Programcının En İyi 20 Bahanesi

Bu çok garip… Bunu daha önce hiç yapmamıştı. Dün çalışıyordu. Bu mümkün değil. Bilgisayardan kaynaklanıyordur. Ne yaptın da bozuldu? Girdiğin veride problem olmalı. Ben o kısmı uzun zamandır değiştirmedim ki… Sendeki program eski olmasın Şanssızlık diyelim. Her şey test edemem ki… Bu onun nedeni olamaz ki… Çalışıyor ama mükemmel değil elbette. Bilgisayarında virüs taraması yaptırdın mı? Biri programımda değişiklik yapmış olmalı. …

View Post

Telefonunuzun Virüslü Olduğunu Nasıl Anlarsınız

Telefon derken Android telefon veya tabletten bahsediyorum. iOs kapalı kutu olduğu için onun için yazılmış virüs veya malware daha yok. Ama Android’de her an karşınıza çıkabilir. Sadece bir antivirüs bile onları durduramayabilir. Eğer aşağıdaki belirtiler sizin telefonunuzda da varsa telefonunuzun virüslü oldupnu varsayabilirsiniz: Performans Düşüklüğü Virüsler telefonunuzda çalıştıkça sizin kullanmanız gereken işlemci gücünü harcar, yani telefonunuz eskisi kadar hızlı çalışmaz. …