| « bir yazılımcı işe almak (II) | Kodlarken yapılan seçimler önemlidir » |
Gerçekten bir veritabanına ihtiyacınız varmı ?
Muhtemelen sizinde başınıza gelmiştir. Müşteriniz sizden belirli bir işi yapacak küçük bir uygulama ister ve sizde işe veritabanı modellemek ile işe başlarsınız. Tam bu anda masanızdan geri çekilip, bir dakikalığına bu soruyu kendinize sormanızı tavsiye ederim.
Gerçekten bir veritabanına ihtiyacım varmı ?
Bu sorunun cevapları birazda aşağıdaki sorulara da cevap vererek ortaya çıkacaktır.
- Karmaşık bir veri yapısı varmı ?
- İndex olarak tanımlayabileceğim bilgiler varmı ?
- Saklanacak verilerin boyu binlerce adetlerde mi olacak ?
- Zamanım varmı ?
- İşlem yaparken tüm veri yerine sadece bazı parçalarla mı işim var ?
Bu soruların çoğunluğuna hayır diyorsanız muhtemelen bir veritabanı uygulaması kullanmanıza ihtiyaç yoktur.
Basit serialization tekniklerini kullanarak çok hızlı bir şekilde uygulamanızı tamamlayabilirsiniz. Böylece klasik yazılım geliştirme sorunlarından veritabanı bağımlılığı, uygulamanın karmaşıklığı vs gibi onlarca sorundan da kurtulursunuz.
Hatta bu soruları uygulama geliştirirken component bazında da düşünebilirsiniz. Örneğin yazdığınız uygulamada diyelimki kullanıcıların seçenekler ekranındaki bilgileri bir her bir seçenek için sütun açılmış bir tablo yerine tek bir sütun içinde xml bilgisi olarak saklamak mükemmel bir çözüm olacaktır. Bu tür bilgilerde kullanıcının Id numarası dışında index olarak kullanabileceğiniz pek bilgi olmaz. Seçenekleri yüklemek istediğinizde de genellikle tüm bilgilerin yüklenmiş olması gerekir.
Böylece veritabanı içerisinde onlarca sütun açıp, uygulamanın yeni versiyonunu çıkarttığınızda tablolar üzerinde güncelleme yapmak vs. gibi ihtiyaçlarınız olmayacaktır.