Merhaba,
"example_function(a,b,c)
bu fonksiyon aşağıdaki çağırımların hepsinde çalışır:
example_function(a,b,c);
example_function(a);
example_function(a,b);
example_function();"
PHP nin en sevmediğim yönü overloading desteklememesi. Sizin burda
verdiğiniz örnek olması gereken değil.
example_function(a,b,c)
{
}
example_function(a,b)
{
}
example_function(a)
{
}
Şekillerinde yazılması ve çalışması mükemmel olurdu. Bu ihtiyacı hep
hissediyorum. Bir metodun içine bir sürü kod gömmek ne derece mantıklı
tartışılır.
Volkan Altan
http://volkanaltan.com/
İyi Çalışmalar.
2011/6/22 anıl özselgin <[email protected]>
>
>
> 22 Haziran 2011 13:53 tarihinde Baris CUHADAR <[email protected]> yazdı:
>
>
>> > Php'nin iç yapıları genellikle kötü tasarlanmıştır .... Gelelim
>> > Php'nin kötü olmasına. Kötü, eğer iyi tasarlanmamış demekse, doğru
>> > söylüyorsunuz, php kötü tasarlanmıştır.
>> Hemde ne kötü, örneğin array_intersect fonksiyonunu ele alalım, php
>> ile kendi yazdığım kod, c ile yazılmış orjinal koddan 5 kat hızlı
>> çalışıyor. Tabi o zaman php versiyon 5.2 idi yanlış hatırlamıyorsam.
>> Kaynak koduna bakın sanki ilköğretim öğrencisi yazmış gibi, baştan savma
>> yazılmış bir kod iç içe for döngüleriyle iki diziyi kontrol ediyorsunuz
>> ! Anlaşılacak gibi değil.. Üstelik sadece iki diziyi.. Halbuki çok daha
>> fazla diziyi birleştirip oluşan diziyi sıraladığınızda, eleman
>> ardışıklığı ve dizi sayısı ile oranı size kesişmeleri verecektir.
>> > Php'nin iyi yönleri ne?
>> > 1. Diğer çoğu modern dil gibi Virtual Machine üzerinde çalışmadığı
>> > için anormal hızlı. Hatta kendisi çoğu zaman işleri arkadaki C
>> > kodlarına yaptıran bir aracı. Yani C ne kadar hızlıysa Php de bu kadar
>> > hızlı.
>> Yanlış! Bir kodun C ile yazılması o programın herşeyden hızlı
>> çalışacağı anlamına gelmez. Dediğim gibi kötü tasarlanmış kısımları sizi
>> yaya bırakabiliyor. Yukardaki örneğe bakınız, php.net'te kendi
>> yazdığım koda da bakabilirsiniz.
>>
>
> "Hocam sence php'nin her metodu hızlıdır" demiş olabilir miyim sence. Ben
> böyle büyük laf etmemeye çalışıyorum tartışmalarda. Virtual machine üzerinde
> çalışan bir kodun, direk olarak işletim sistemi seviyesinde çalışan koda
> göre hızlı olduğunu söyledim ben. Bu bahsettiklerim php'nin native
> fonksiyonları. Php'nin native fonksiyonları direk C olduğu için anormal
> hızlarda çalışır. Ama fonksiyonu yazan adam kötü yazdıysa, bu elindeki
> aracı iyi kullanamaması demek.
>
>
>> > 3. Şu anda tüm OOP özelliklerini destekliyor. İmplement edemediğiniz
>> > design pattern'i söyleyin yardımcı olmaya çalışayım. Gönderdiğiniz
>> > yazı dildeki temel yapıların object oriented tasarlanmadığını
>> > söylüyor. Evet dildeki temel yapılar object oriented tasarlanmamış.
>> > Ama bir dilin OO olmasının kıstası bu değil. Kıstas dilin bu yapılara
>> > izin vermesi. Java'da da herşey thread-safe değil. Dil thread
>> > desteklemiyor mu.
>> Çoklu yapılandırıcı ? Fonksiyon aşırı yükleme?
>>
>
> Php zaten yapısı gereği overloading destekliyor. Direk olarak bir metodu
> farklı sayıda parametre ile çağırabiliyorsunuz. Bu dilin bir özelliği, bu
> yüzden diğer oop destekleyen diller gibi bir metod'u farklı değişken
> sayılarına göre tekrar tekrar yazmak zorunda kalmıyorsunuz. Aynı dediğim
> nedenden ötürü çoklu yapılandırıcı da destekliyor.
>
> example_function(a,b,c)
>
> bu fonksiyon aşağıdaki çağırımların hepsinde çalışır:
> example_function(a,b,c);
> example_function(a);
> example_function(a,b);
> example_function();
>
> İşin zor kısmı fonksiyonlarınızı dilin bu yapısına göre tasarlamak. Zaten
> yeni bir dil öğrendiğinizde bu sizin kodlama tarzınızı değiştirmiyorsa, o
> dili öğrenmenizin anlamı kalmaz.
>
>
>
>
>> --
>> http://neovo.org/lkd-liste/
>>
>> _______________________________________________
>> Linux-programlama mailing list
>> [email protected]
>> https://liste.linux.org.tr/mailman/listinfo/linux-programlama
>> Liste kurallari: http://liste.linux.org.tr/kurallar.php
>>
>
>
>
> --
> Anıl Özselgin
> http://negaripseylervarya.blogspot.com/
>
> _______________________________________________
> Linux-programlama mailing list
> [email protected]
> https://liste.linux.org.tr/mailman/listinfo/linux-programlama
> Liste kurallari: http://liste.linux.org.tr/kurallar.php
>
>
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php