From: Gurkan Aslan (gurkan@iaslan.com)
Date: Wed 10 Mar 2004 - 03:33:48 EST
On Wed, 2004-03-10 at 10:02, Fuat Altun wrote:
> Merhabalar,
>
Merhaba
>
> Tablo1 isimli tablomda hizmet_kodlari adinda bir alanim var. Burada
> yaklasik 100 adet hizmet turu kodu var. (temizlik hizmeti, yemek hizmeti,
> bakicilik hizmeti vs.)
>
> Sorunuma gelince;
>
> Bu hizmet_kodlarindan bazilarini ozel olarak kod icinde kullanmam gerek.
> Fakat ben bunun yanlis bir yol oldugunu dusunuyorum. Yani veriyi kaynak kod
> icinde barindirmak bana hatali geliyor.
>
> sizce bu yaklasimim dogrumu? Cunku kodlar her zaman degisebilir. Yani bunlar
> il_kodundaki gibi plaka no degil.
>
> Kisaca,
>
>
>
> if (hizmet_kodu==56) //cicek bakimi hizmeti
>
> {
>
> ..........
>
> ..........
>
> }
>
>
>
> seklinde olursa dogru olmaz diye dusunuyorum.
>
>
Doğru düşünüyorsun.. Yani bu şekilde olması doğru bir yaklaşım değil...
Daha dinamik bir yaklaşım sergilemek gerek...
>
> Bunun yerine bu ozel kodlar icin baska boolean degiskenler tanimlamak dogru
> bir yontem olabilirmi?
>
Elbette bu da bir yöntem...
>
>
> Yani tablo1 tablosunun icinde
> bebek_hizmetimi,bakicilik_hizmetimi,ev_hizmetimi gibi alanlar tanimlayip
>
> Kaynak kod icinde su sekilde kullanmak daha dogru olabilirmi?
>
>
>
> if (cicek_hizmetimi==true) //cicek bakimi hizmeti
>
> {
>
> ..........
>
> ..........
>
> }
>
> bu durumda fazladan 3-4 tane daha boolean degisken tanimlamam gerekecek
> tabii.
>
:) İyi gidiyorsunuz... Belki de biraz daha düşünseniz maili silip sorunu
çözmüş olacaktınız...
Burada o if bloklarının içerisine yazacağınız kod çok önemli çünkü ona
göre alternatif bir çok özel sonuç üretebilirsiniz.
Alternatif bir çok çözüm var ancak bunları sıralayıp sazanlık yapmadan
önce benim size sormak istediğim birkaç şey var...
1-) "Kod değişirse" diye kaygılandığınız olayın çözümü kullanıcının
vereceği kodlara güvenmeden auto increment bir kod üretmek ve
dolayısıyla da kendi ürettiğiniz, değişmeyeceğine emin olduğunuz
kodlarla çalışmaktır ancak; peki ya kod değil de o kodun karşılığındaki
isim değişirse? Yani adam 30 numaralı Çiçek Bakımı Hizmeti'nin koduna
dokunmayıp adını "Ivır Zıvır Hizmeti" olarak değiştirirse? bu durumda
sizin yazdığınız kodlardan Çiçek Bakımı hizmeti için çalışması gereken
kod bam başka bir hizmet için alakasız işler yapmış olmaz mı?
2-) Eğer kodunuzla ve tablolardaki değerlerle bağlantılı işler olacaksa
ve dinamik hizmet tanımlaması olacaksa, kodunu istediği kadar
değiştirsin ama kullanıcının adını ve sırasını değiştiremeyeceği bir
yaklaşım programınız adına birşeylere engel olur mu? (Engel olmaz
diyorsanız zaten auto increment olarak açıkladığım çözüm işinizi görür)
3-) Veya "ayrı field istemiyorum ben" diyorsanız yine isimleri
değiştirtmemek koşuluyla isimlerle çalışabilirsiniz, bu size bir engel
yaratır mı?
v.s v.s. şeklinde sorular çoğaltılabilir...
Bence tablo yapısını ve yapmak istediğiniz (yani if blokları içerisine
ne kodu yazacaksanız mesela) işleri biraz daha geniş açıklarsanız daha
yaratıcı fikirler üretilebilir...
>
>
> İnsallah anlatabilmisimdir :)
>
> Tsk.
>
>
>
> Fuat
>
>
>
>
>
>
>
>
>
>
>
Hazar Agency & Computer Systems
Phone: +90 212 356 65 56
+90 212 356 62 75
Projects and Software Development Department Manager
Gurkan ASLAN (a.k.a. Integer)