[linux-programlama] Re: Hangi dili kullanmalıyım

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Enver ALTIN (ealtin@parkyeri.com)
Date: Mon 20 Sep 2004 - 11:57:06 EEST


Merhaba,
On Mon, 2004-09-20 at 11:33 +0300, Baris Simsek wrote:
> firewall veya proxy idealde realtime calismasi istenen yazilimlardir.
> C'nin hiz acisindan C++ a hatiri sayilir bir ustunlugu var. cunku C++ da
> nesne yapilarinin acilmasi gibi araya giren kucuk bir islem var. ancak
> gunumuz hizli sunucularinda bu cok da sorun olmayabilir.

Sorun nesne yapilarinin acilmasi vb. gibi islemler degil bence. GCC,
Forte, Borland C++ Compiler gibi asiri geliskin derleyiciler
bahsettiginiz engelleri ortadan kaldirmaya yonelik optimizasyonlari uzun
yillardir barindiriyorlar.

C++ dilinin yavas oldugunun iddia edilmesine (aslinda degildir, hatta
muhtemelen dogru kullanildiginda daha hizli olabilir) neden olan asil
sorun daha onceden C ile yazilmis kutuphanelere ait fonksiyonlarin, C++
icerisinde alisilagelmis nesne yonelimli programlama yontemleri ile
kullanilabilmesini saglamak uzere olusturulan ve wrapper-class adi
verilen yapilar olsa gerektir.

Bu yapilar, genellikle yalnizca C fonksiyonlari icin kilif olusturmaya
yarar ve dediginiz gibi biraz fazladan yuk ekler. Bu gereksiz yukleri
engelleyebilmek icin de derleyicilerin optimizasyon metodlari devreye
girer ve cogunlukla da basarili olur.

Derleyicilerin optimizasyonu, bunu okuyan ve ne ise yaradigini
bilmeyenler icin:

        int i;
        
        for (i=0; i<10000000; i++) ;

gibi aslinda hicbirsey yapmayan veya,

        void somefunc() {
                // Burada birseyler yap...
        }
        
        void someotherfunc() {
                somefunc();
        }

gibi birbirini cagirmaktan farkli isler yapmayan yapilarin, derlenmis
bicimlerinden gerekli olmayan bolumlerin elimine edilmesini saglayan bir
surectir. Bunlar optimizasyona yalnizca birkac ornek.

Ozetle, ornegin Linux cekirdegi, tamamiyla C++ ile yazilmis olsaydi,
performans konusunda arada cok fazla bir fark goremezdik. Belki de
yonetilebilirligi/okunabilirligi daha kolay olurdu, bu sayede de daha
kaliteli kod yazilabilir ve daha yuksek performansli bir cekirdegimiz
olabilirdi.

Bu "daha", yuzde kac eder, bilemiyorum tabii ;) Ben diyeyim 1, siz
deyin .01 :)

Iyi eglenceler,

-- 
Enver ALTIN                   |        http://skyblue.gen.tr/
Software developer @ Parkyeri |      http://www.parkyeri.com/

-- Attached file included as plaintext by Ecartis -- -- File: signature.asc -- Desc: This is a digitally signed message part

-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux)

iD8DBQBBTpthZCB2FZvqK0sRAjAkAJ9RjyTOBfdOW7E/ypSNFJWOawtGiwCfS2CG WYdfiGPezUx22je0pisTOSQ= =9yDT -----END PGP SIGNATURE-----


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.