Yakup Buğra

Sil Baştan (Rework) Kitap Notları


sil baştan reworkYazarlar: Json FriedDavid Heinemeier Hansson

İşe 1999'da üç kişilik bir web tasarım danışmanlığı şirketi olarak başladık. 2004'te, sektörün kullandığı proje yönetimi yazılımından memnun olmadığımız için kendi yazılımımızı ürettik: Basecamp. İnternet üzerinden çalışan yazılımımızı müşterilerimize ve meslektaşlarımıza gösterdiğimizde hepsi aynı tepkiyi verdi: "Bundan bizim şirkete de almalıyız". Beş yıl geçti ve Basecamp bugün milyonlarca dolar kâr elde eden bir ürün. Read More »Sil Baştan (Rework) Kitap Notları

Lucene.Net ile arama

Bir e-ticaret projesi yaptığınızı düşünün. Arama sayfasınız nasıl yapardınız? Input'a "Asus" kelimesi girdiğinde yapacağınız en şey an basit haliyle aşağıdaki sql sorgusunu çalıştırmak olacak.

Select * from dbo.Urun where dbo.Urun.Adi like '%Asus%'

Bu sorgu 1000 belki 10.000 ürün bulunan bir tablo için çok yorucu olmayabilir. Peki ya tablonuzda 500.000 ürün varsa?  Yaptığınız arama çok fazla performans kaybına ve kullanıcının saniyelerce beklemesine neden olabilir. İşte bu gibi durumları aşmak için kullanılan bir kütüphane Lucene.  Lucene.Net ise orjinali Java olan Lucene'nin C# ile yazılımış ve .Net geliştiricilerinin kullanımına sunulmuş .Net portu.Read More »Lucene.Net ile arama

Design patterns notları -1- factory pattern

Bundan birkaç gün önce Wrox'un Asp.Net Design Patterns kitabını okumaya başladım. Mvc kitaplarını bitirdikten sonra, mvc'yi hatim ettim diyemesem de bir sonraki aşama olan design patterns konusuna giriş yapmak istedim. Yazılım mühendisliği alanında ilerlemek, gelişmek istiyorsanız bu konuları bilmeniz gerekiyor. Lafı fazla uzatmadan konuya gelmek istiyorum. Factory pattern, adından da anlaşılacağı üzere fabrika gibi çalışan bir sistem. Kitapta verilen örneğe benzer bir örnekle anlatmak istiyorum. Projeyi buradan indirebilirsiniz. Read More »Design patterns notları -1- factory pattern

HtmlAgilityPack ile html parsing – C#

Geçtiğimiz günlerde html parsing ile ilgili küçük bir program yapmagerekiyordu. Biraz araştırdıktan daha önce de olduğu gibi html parsing içinde codeplex'te bir kütüphane bulmuştum. (we <3 codeplex) Bu yazıda Html Agility Pack kullanarak basit bir parser'ın nasıl yapılacağı hakkında bilgi vermek istiyorum. Öncelikle yeni bir windows application oluşturup Nuget Package Manager'dan HtmlAgilityPack paketini projeye referans ediyoruz. Ya da isterseniz buradan dll olarak indirip projeye ekleyebilirsiniz. Örnek uygulamayı buradan indirebilirsiniz. 

Entity Framework CodeFirst pluralizing sorunu

Projenizde EF Codefirst kullanıyorsanız eğer pluralizin sorunu ile karşılaşacaksınızdır. Şöyle ki mesela "Ogrenci" isimli bir tablonuz olsun. Siz bu tablonun model sınıfına  "Ogrenci" adını verin. EF veritabanında "Ogrencis" isimli bir tablo arayacaktır. Veritananındaki tablonuzun ismi "Ogrenci" olduğu için de böyle bir tablo yok diye bir hata verecektir. EF, model isimlerinin sonuna s(çoğul) takısı takarak veritabanına bakar. Bunu çözmek için aşağıdaki gibi context sınıfınıza bir kod parçası yazmanız gerekiyor. Read More »Entity Framework CodeFirst pluralizing sorunu