Tesekkur ederim, yazdigimi dogruladiginiz icin.
Daha once de ifade ettigim gibi bir cok dilin arkasinda C kutuphaneleri 
ve rutinleri var zaten.
Ama bu C dilini program gelistirme icin genel anlamda en ideal dil yapar 
mi ?
Turbo C mi Microsoft C mi tartisilirdi bir zamanlar da...
C derken siz hangi C'den bahsediyorsunuz ?  Ben standart C kavrami 
uzerinden yorum yapiyorum.


Serdar KÖYLÜ wrote:
> Herneyse, elle tutulur b,r şey denmiş, PHP ile str_replace... Bakalım
> PHP nasıl yapmış:
>
> 1343 /* {{{ proto string str_replace(string needle, string str, string 
> haystack)
> 1344    Replace all occurrences of needle in haystack with str */
> 1345 void php3_str_replace(INTERNAL_FUNCTION_PARAMETERS)
> 1346 {
> 1347         pval *haystack, *needle, *str;
> 1348         char *new;
> 1349
> 1350         if(ARG_COUNT(ht) != 3 ||
> 1351                         getParameters(ht, 3,&needle,&str,
> &haystack) == FAILURE) {
> 1352                 WRONG_PARAM_COUNT;
> 1353         }
> 1354
> 1355        convert_to_string(haystack);
> 1356         convert_to_string(needle);
> 1357         convert_to_string(str);
> 1358
> 1359         if(needle->value.str.len == 1) {
> 1360
> _php3_char_to_str(haystack->value.str.val,haystack->value.str.len,needle->value.str.val[0],str->value.str.val,
> str->value.str.len ,return_value);
> 1361                 return;
> 1362         }
> 1363
> 1364         new = _php3_str_to_str(haystack->value.str.val,
> haystack->value.str.len,
> 1365                                 needle->value.str.val,
> needle->value.str.len,
> 1366                                 str->value.str.val, str->value.str.len,
> 1367&return_value->value.str.len);
> 1368         return_value->value.str.val =
> emalloc(return_value->value.str.len + 1);
> 1369         memcpy(return_value->value.str.val, new,
> return_value->value.str.len + 1);
> 1370         free(new);
> 1371         return_value->type = IS_STRING;
> 1372 }
> 1373 /* }}} */
>
> Kodu aha şurada:
>
> php_root/ext/standard/string.c
>
> http://git.php.net/?p=php-src.git;a=blob;f=ext/standard/string.c;h=0750aa873432ca3eb9e410f8030460045359c067;hb=a6e4ef3e31629a4060dffb1fcc3153b1854d4f7b
>
> Bir gariplik var di mi? PHP çok kolay filan ama, nedense bu kodu gene
> oturmuş bunlar C ile yazmış. Kafayı yemiş olmalı bunlar değil mi
> beyler? Hazır güzel güzel PHP dili varken, C ile kendilerine zulm eden
> avareler olsa gerek bunlar, bakmayın siz onlara.
>
>
> 2012/4/24 Serdar KÖYLÜ<[email protected]>:
>> Bu da bir başka acayip olmuş.
>>
>> Bakıyorum da, mesela Java ortamı olan dalvik, yani android'deki
>> kodlara. Adam nesnelerin tüm methodlarını nerdeyse, native call'lere
>> bir wrapper olarak yazmış, altını C++ veya C ile doldurmuş.
>>
>> Ne kadar danagalak di mi bu Google'un filan yazılımcıları? Java ile
>> yazsalar hemen oluverirdi ama mazoşist olduklarından kendilerien zulm
>> edip, C/C++ ile yazmış, birde gidip Java interface yapmakla başlarına
>> daha bir sürü iş çıkarmışlar aynen.
>>
>>
>>
>>
>> 2012/4/24 Mehmet Özgür Bayhan<[email protected]>:
>>> Affınıza sığınarak(amacım kimseyi rencide etmek değil) güzel şehir
>>> hikayeleri bunlar. (:
>>>
>>> Yaşamınızda bu tarz bir çok şeye şahit olursunuz.Ben söylediklerinizi iki
>>> yönlüde çürütebilecek bir çok şeye şahit oldum.En son gittiğimiz bir ilin il
>>> sağlık müdürlüğünün 5 kişilik bilgi işlem personelinden bırakın "load
>>> balancing" i güvenlik duvarı üzerindeki wan bacaklarının hangileri
>>> olduğundan bile birhaberdiler.High level programlama ile uğraşan bir javacı
>>> arkadaş çözdü yük dengeleme sorunlarını. (:
>>>
>>> Bir aralar da format atmayı bilmeyen bilgisayar mühendisleri meşhurdu.
>>>
>>> Anlatmak istediğim olay kişide biter.Evet eğer sistem tarafıyla
>>> uğraşıyorsanız C ve shell programlama sizin için bulunmaz bir
>>> nimettir.Diller ihtiyaçlardan doğar.Java ve benzeri dillerin çıkma nedeni de
>>> bundan kaynaklıdır.
>>>
>>> Zaman değişiyor, ilerliyor.Yazılımların sorunları ve ihtiyaçlar da öyle.C
>>> deki sorun yapısal olmasından kaynaklı.Bu sorunları aşabilmek için ObjectOP
>>> ve AspectOP ve zibil çeşit paradigma üzerinde kafa yoruyor insanlar.
>>>
>>> Siz eğer bu ihtiyaçları göremiyorsanız ya vizyonunuzda bir eksiklik
>>> vardır,ya işinizin nevii gereği ihtiyacınız olmuyordur ya da artık işinizden
>>> iyice bezmiş ve kendinizi gelişmelere tamamen kapatmışsınızdır.Her üç
>>> durumda da eğer bu sektörün içindeyseniz sakat bir durumdur.Körelmenize yol
>>> açar.
>>>
>>> Evet C hızlıdır, C tüm kontrolü elinize alabileceğiniz bir dildir.  Ama her
>>> zaman için(veya çoğu zaman) bu kontrol ve hıza ihtiyacınız oluyormu?
>>>
>>> JavaEE ile gelen yapıları(evet birçoğu gerekli eğer tasarladığınız yapı
>>> büyükse) C ile 0 dan kodlamaya çalışan birini hayal ediyorum da....
>>>
>>> İnsanlar ihtiyaçlarına, yönelmek istedikleri alana göre kendilerini
>>> eğitirler.Bilgisayarlar bir bütün değildir.Parçalardan oluşur.İnsanların her
>>> parçası üzerine hakim olmasını bekleyemezsiniz.
>>>
>>> Eski ev arkadaşım/kardeşim şu an Turkcell de yazılım geliştirme ofislerinden
>>> birinde takım lideri.Gram anlamaz ip bazlı load balancing den.Önüne açık bir
>>> güvenlik duvarını koyun ayarlayamaz.Muhtemelen linux bir makinayı - ubuntu
>>> bile olsa- 0 dan bile kuramaz.Umursamaz ve uğraşmaz da.İşi o değil çünkü.
>>>
>>> Ama çok sağlam bilgisayar mühendisidir.IP bazlı load balancing yapmayı bilen
>>> br çok kişiden çok daha fazla para alır, etrafımdaki yazılımla uğraşan
>>> insanların bir çoğundan çok daha sağlam yapılar kurar.
>>>
>>> Bunun tam tersi örneklerde bulunabilir.
>>>
>>> Dediğim gibi.Diller ihtiyaçlardan doğar.
>>>
>>> Çok eskiden bir reklam vardı."Yok aslında birbirimizden farkımız, biz
>>> osmanlı bankasıyız" diye.Bu konuya cuk oturuyor aslında (:
>>>
>>> Sürç-ü lisan ettiysek ve istemeden birilerini kırdıysak affola.
>>>
>>> İyi çalışmalar.
>>>
>>> _______________________________________________
>>> 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
>

_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap