28 Nisan 2012 Cumartesi

IOS Sqlite3 saçmalığı - İnsan Gibi API


Merhaba .. IOS e uygulama geliştirirken hep Android gibi olsun isterim .. Yani Android de öğrendiklerimi burda da kolayca uygulayim..Ama gel gör ki öyle olmuyo ...
Veritabanı mobil uygulamalar için çok büyük rahatlık ve gereklilik ... Android , IOS , Bada , Symbian da hep Sqlite kullanılır..
Özelliklerini uzun uzun burda yazmaya gerek yok ... Hızlı , küçük falan filan ...
Android de Sqlite yazmak çok iyi..Yani java ile o kadar bütünleşmiş ki extra bi özen gerektirmiyo .. Yani tam bir programcının istiyeceği gibi .. Dışarıdan o kadar kütüphane almaya gerek yok ...
Ama gel gör ki işin bi de IOS kısmı var .. IOS kısmı diyince genelde iyi şeyler yazmıyorum ... Adamlar da sağolsunlar Sqlite3 destekliyo ama nasıl...
Normalde IOS yazarken Objective-C kullanırsın .. Yani String demezsin de NSString dersin...Ama gel gör ki Sqlite tarafına gelince objective-C güzelliklerini kullanamıyorsun..Yani biraz temele inmen gerekiyo .. O da bildiğimiz "C" oluyo .. Yani yazarken extra bi özen , bi emek gerekiyo .. İşte ben de onu hiç sevmem ...
Sonra da benim gibi düşünenen geliştiriciler de vardır diyerek başladım aramaya ve sonunda en insancası olan FMDatabase i buldum .. genel olarak ihtiyacım olan tüm işlemler var .. insert , uptade , select ....
İşte tam bu durumlarda bunları kullanmak zorunlu oluyo ... Bunu da kullanman için projene 3-5 tane dosya eklemek zorunda kalıyosun ... Bir de her projende eklemen lazım ...
Bence bu Apple ve IOS un lanetidir ..yani eğer ki Sqlite gibi temel bir veritabanı için bile insan gibi bir API veremiceksen fazla konuşmayacaksın .. Şu an IOS 5.1 ya da 5.2 deyiz ... Bence bu IOS 6 da da değişmeyecek , insanlar yine extra class lar kullanmak zorunda kalıcak ..
Neyse gece gece bu kadar kin kusmak yeter..

3 yorum:

  1. Öncelikle biraz daha öğrenip bilip bir şeyler yazmak daha iyi olur sanki. Birincisi Objective - C Yeni bir dil değil C dilinin üzerine ekleme yapılmış bir dildir. Yani Objective c içerisinde yazıdığınız C kodlarıda çalışır. Dolayısıyla biraz daha temele inmek diye bir şey yok. Yazdığınız dil zaten native bir dil. Java gibi Sanal makine üzerinden native e çevirilen bir dil değil. Emek sarfetmeden '3-5 dosya eklemek zorunda ' kalmadan proje yapmaya çalışmak, yapılmışı olsunda ben sadece [Alert show] diyip göstereyim demekten başka bir şey de değildir. Neyse ki FMDatabase'i bulmuşsunuz da diğer veritabanında 'olmayan' insert update select işlemleri ile işi kotarmışsınız :) Şunu unutmayın ki, iki satır kod yazarak developer olunmaz. Hele bide mühendisim, developerım diye gezmezmisiniz.

    YanıtlaSil
    Yanıtlar
    1. Aslında eski bi yazı olduğu için cevap vermiyecektim fakat dayanamadım .

      Objective-C ye eski bi dil demedim , sadece IOS API sinde high level sqlite desteklemiyo dedim . O da Core Data dan dolayı olsa gerek

      Emek sarfetmek demek dışarıdan milyon tane kütüphane eklemek değil aslında . Biraz da Apple gibi firmaların servisleri kendi platformlarına entegre etmeleri gerekiyo , ki ediyolar (facebook , twiter entegrasyonu) . Emek projeye kattığınızla alakalı bişeya

      FMDatabase bence yazılımcıların daha kolay kod yazmasını sağlıyo . Yani core data ya bulaşmak istemeyenler için çok iyi bi kütüphane ve IOS un bence eksiğini kapatan birçok kütüphane var .

      Bir de bizim Bilgisayar bölümünde çokça olan "şunu şöyle yaparak yazılımcı olmaz , yazılımcı dediğin..." diye başlayan yorumların neredeyse hiçbiri olumlu bitmiyo ne yazıkki . Sizin ki de öyle bir yazı olmuş

      Yorumunuz için teşekkürler

      Sil
  2. bu FMDB nasıl kullanılır nedir hocam biraz açıklık getirebilir misiniz? Aynı dertten müzdaripim...

    YanıtlaSil