Forum: Diğer Konular RSS
Serbest Fonksiyon Dusmanligi
kerdemdemir #1
Üye Eyl 2013 tarihinden beri · 109 mesaj · Konum: Danimarka
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Serbest Fonksiyon Dusmanligi
Merhabalar ,

Bir cok projede gordugum bir tavir var.  Birazda bence havali olmadiklarindan dolayi basit,guzel  serbest fonksiyonlar yerine siniflar olusturulup sinif methodlari olusturuluyor. Sonrada bu sinif singleton hale getiriliyor. Boylece "cool" olmayan serbest fonksiyon yerine "cool" olan singleton tasarim patterni kullanilmis oluyor.

D dilinde ve d dili disinda su anda serbest fonksiyonlara bakis acisi nedir. Peki sizlerin bakis acisi nedir?

Erdemdem
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4481 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
"Herşey bir nesnedir" düşüncesine bağlı olan Bjarne Stroustrup'un C++'ı ile büyümüş birisi olarak ben de bir zamanlar NYP'ciydim. Deneyim kazandıkça bunun hem zorlama olduğunu hem de yetersiz olduğunu gördüm.

NYP yetersiz çünkü tek nesne üzerinden sanallık sağlıyor. "Sanallık olacaksa tek nesne sanallığı bunun özel bir durumu olmamalıdır" düşüncesinde olan insanlar var. (Galiba geçende C++'çı Jean Louis Leroy'un yazdığı Open Multi-methods D kütüphanesinden bahsetmiştik.)

"Herşey nesnedir" düşüncesi yanlış olduğunun bildik bir örneği, Borsa (Monopoly) oyunudur: Hangi sorumluğunun hangi sınıfa verileceği hiç açık değildir.

Şablonların getirdiği "derleme zamanı çokşekilliliği"nin çekiciliği de NYP'yi azaltmaktadır.

Kendi adıma, öncelikle serbest işlev düşünüyorum. Korunması gereken bir değişmezlik (invariant) varsa struct düşünüyorum ve ancak sanallık gerekiyorsa NYP düşünüyorum.

Ali
Avatar
Salih Dinçer #3
Üye Ock 2012 tarihinden beri · 1908 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Belki konuya makina dili açısından bakmalı. Çok da CPU opcode'larına karışmadan assembly subgroutine'leri bile bazen çok kalabalık olabiliyor. Yaptığı iş ise belki sıradan bir adresteki iki değeri toplayıp başka bir sıradan adresi vermek!

Biliyorsunuz her assembly komutu belli çevrim (cycle) zamanlarında işletilmektedir. Kimisi 1 birim zamanda olabileceği gibi 5 ve daha fazla büyüklükteki işlem güçleri mevcut. Tabii ki işlemcideki çekirdek sayıları ve bunların hızları artık dudak uçuklatacak cinsten ama hala masaüstü bilgisayarlarda CISC (yani komut ile veri farklı zamanlarda işlemciye giren) mimari kullanılmakta. Dolayısıyla sağ elimiz ile sol kulağımızı tutmaktansa kolay olandan yanayım ben...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-09-26, 07:44:21 (UTC -07:00)