08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

Benzer amaçla Pascal diline eklemeler yapılarak Delphi dili, Cobol dilinin yenilenmesiyle<br />

Oocobol, ada dilinin yenilenmesiyle ise ada 95 dilleri geliştirilmiştir.<br />

Bazı programlama dilleri ise doğrudan nesneye yönelmiş programlama tekniğini<br />

destekleyecek şekilde tasarlanarak geliştirilmiştir. Böyle dillere saf nesne yönelimli diller<br />

de denir. Örneğin Java, Eiffel, C#, saf nesne yönelimli dillerdir.<br />

Özetle, bir programlama dili hakkında sorulacak sorulardan belki de en önemlilerinden<br />

biri, o programlama dilinin belirli bir programlama tekniğini destekleyen araçlara sahip<br />

olup olmadığıdır.<br />

C dili, var olan araçlarıyla prosedürel programlama tekniğine tam destek veren bir dildir.<br />

Giriş / Çıkış Kolaylığı<br />

Sıralı, indeksli ve rastgele dosyalara erişme, veritabanı kayıtlarını geri alma,<br />

güncelleştirme ve sorgulama yeteneğidir. Veritabanı programlama dillerinin (DBASE,<br />

PARADOX vs.) bu yetenekleri, diğerlerinden daha üstündür. Bu dillerin en tipik<br />

özelliklerini oluşturur. Fakat C giriş çıkış kolaylığı güçlü olmayan bir dildir. C'de veri<br />

tabanlarının yönetimi için özel kütüphanelerin kullanılması gerekir.<br />

C Nasıl Bir Programlama Dilidir<br />

İncelenen kıstaslardan sonra C dili belirli bir yere oturtulabilir:<br />

C orta seviyeli bir programlama dilidir. Diğer yapısal programlama dillerine göre C dilinin<br />

seviyesi daha düşüktür. C dili hem yüksek seviyeli dillerin kontrol deyimleri, veri yapıları<br />

gibi avantajlarına sahipken hem de bitsel işleçler gibi makine kodu deyimlerini yansıtan<br />

işleçlere sahiptir. Yani C dili hem makinenin algısına hem de insanın algılamasına yakın<br />

bir dildir. C makineye yeterince yakındır ama programcıya da uzak değildir. Tercih<br />

edilmesinin ana nedenlerinden biri budur.<br />

Bir programı C dili kullanarak yazmak, aynı programı makine dilinde yazmaya göre çok<br />

daha kolay olmasına karşın, C'de yazılmış bir programın verimi aynı oranda düşmez. C<br />

dili verim açısından bakıldığında birçok uygulama için, doğrudan makine diline tercih<br />

edilebilir. Makina dili yerine C dilinde programlama yapılması oluşturulan programın<br />

verimini çok düşürmez.<br />

C dilinin ana uygulama alanı "Sistem programlama" dır. Sistem programlama ne<br />

demektir? Donanımın yönetilmesi, yönlendirilmesi ve denetimi için yazılan, doğrudan<br />

makinenin donanımla ilişkiye giren programlara sistem programı denir. Örneğin, işletim<br />

sistemleri, derleyiciler, yorumlayıcılar, aygıt sürücüleri (device drivers), bilgisayarların<br />

iletişimine ilişkin programlar, otomasyon programları, sistem programlarıdır.<br />

C'den önce sistem programları assembly dillerle yazılıyordu. Günümüzde sistem<br />

programlarının yazılmasında C dilinin neredeyse tek seçenek olduğu söylenebilir. Bugün<br />

cep telefonlarından uçaklara kadar her yerde C kodları çalışıyor.<br />

C algoritmik bir dildir. C dilinde program yazmak için yalnızca dilin sözdizimini ve<br />

anlamsal yapısını bilmek yetmez genel bir algoritma bilgisi de gerekir.<br />

C diğer dillerle kıyaslandığında taşınabilirliği çok yüksek olan bir dildir. Çünkü 1989<br />

yılından bu yana genel kabul görmüş standartlara sahiptir.<br />

C ifade gücü yüksek, okunabilirlik özelliği güçlü bir dildir. C dilinde yazılan bir metnin<br />

okunabilirliğinin yüksek olması sözel bir dil olmasından, insanın kullandığı dile yakın bir<br />

dil olmasından değildir.<br />

C çok esnek bir dildir. Diğer dillerde olduğu gibi programcıya kısıtlamalar getirmez.<br />

Makinanın olanaklarını programcıya daha iyi yansıtır.<br />

C güçlü bir dildir, çok iyi bir biçimde tasarlanmıştır. C'ye ilişkin işleçlerin ve yapıların bir<br />

çoğu daha sonra başka programlama dilleri tarafından da benimsenmiştir.<br />

C verimli bir dildir. C de yazılan programlar dilin düzeyinin düşük olması nedeniyle hızlı<br />

çalışır. Verimlilik konusunda assembly diller ile rekabet edebilir.<br />

C doğal bir dildir. C bilgisayar sistemi ile uyum içindedir.<br />

C küçük bir dildir. Yeni sistemler için derleyici yazmak zor değildir.<br />

C nin standart bir kütüphanesi vardır. Bu kütüphane ile sık yapılan işlemler için ortak bir<br />

arayüz sağlanmıştır.<br />

C'nin eğitimi diğer bilgisayar dillerine göre daha zordur.<br />

10/529

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!