Programlama Dilleri Ne Yapar?
- Programcı ile bilgisayarın haberleşmesini sağlar
- Programlar 1 ve 0 sayılarından oluşan makine diline çevrildikten sonra çalıştırılır
- Programlama Dilinin özellikleri:
- Sözdizimi (Syntax)
- Gramer
- Semantik
- 2500’den fazla programlama dili
Dünyada konuşulan her dilin amacı iletişim sağlamaktır. Farklı kültürlerden insanların anlaşabilmesi için ortak konuştukları bir dil gerekir. Programla dillerinin amacı da bilgisayar ile programcının haberleşmesidir. Programcı, bilgisayara hangi komutların çalıştırması gerektiğini bilgisayarın anlayacağı dilden konuşarak söyler.
Bilgisayarda, programlar makine diline çevrildikten sonra çalışır. 1 ve 0 sayılarından oluşan bu makine dili, en alt seviye dildir. Dolayısıyla programların bu dilde yazılması oldukça zordur. Programcılar konuşma diline daha yakın, kolay anlaşılabilecek diller kullanmaktadır. Bu dillere yüksek seviye programla dilleri denir. Programlama dillerinin seviyeleri makine diline yakın olup olmaması ile ölçülür.
Bir programlama dili şu unsurlardan oluşur:
- Söz dizimi (Syntax)
Bir dil, kendine ait kelimeler ile konuşulur. Programlama dillerinin de benzer bir davranışı vardır. Programlama dillerindeki bu kelimeler, programlama dilinin anahtar kelimeleridir – komutlarıdır.
- Gramer
Programlama dillerini kullanmak için sadece kelimeleri bilmek yeterli değildir. Eğer anlamlı bir şekilde bir araya getirilemiyorsa, bu kelimeler hiçbir anlam ifade etmez.
- Semantik (anlamsal)
Bir dili, kelimeleri doğru bir gramer kullanımı ile bir araya getirerek kullanabiliriz. Ancak konuşulan kelimelerin ne için kullanıldığı da önemlidir. Bir programlama dilinin özelliklerinin nasıl ve ne için kullanıldığı da, bu dilin semantiğidir.
Örneğin bir finans programı, Yeni Türk Lirası cinsinden bir miktarı dolara çevirecektir. Yapılacak işlem o andaki parite değerini merkez bankasından çektikten sonra, girilen miktarı bu değerle çarpıp kullanıcıya göstermektir. Kullanılan programlama dili ÇARP, GÖSTER, EŞİTLE komutları ile bu işlemi gerçekleştirecektir.
Bu şekilde yazılan program söz dizimi açısından doğrudur. Girilen veriler ve komutlar dışında, programlama dilinin anlamayacağı bir kelime kullanılmamıştır. Ancak komutlar yanlış sırada kullanılmıştır. ÇARP komutu hangi sayıları çarpması gerektiğini bilemeyecektir.
Komutları ve değişkenleri, programlama dilinin gramerine göre doğru yerlerde kullanmamız gerekir. Bu şekilde kullanılan komutlar doğru bir şekilde çalışır. Fakat GÖSTER komutunun ne için kullanıldığı yani semantiği de önemlidir. İstenilen, miktar ile pariteyi çarpmak, sonuca eşitlemek ve sonucu göstermektir.
Şu ana kadar 2500’den fazla programlama dili yazılmıştır. Bunlardan bazıları Pascal, Basic, C, C++, Java, Javascript, Cobol, Perl, Python, Ada, Fortran, Visual Basic .NET, Microsoft Visual C# programlama dilleridir.
Yüksek seviye programlama dillerine Visual Basic .NET, Microsoft Visual C++ dillerini örnek verebiliriz. C ile işletim sistemi yazılabilindiğinden daha alt seviye bir dil olarak değerlendirilir.
Programlama Dillerinin Tarihçesi
- Makine dili 10110110, 11011110
- Yordamların (Subroutine) ve Kütüphanelerin (Library) oluşması
- 1957 FORTRAN
- 1959 COBOL
- 1968 Pascal
- 1972 C
- Nesneye Yönelik Programlama Dilleri:
- C++
- JAVA
- 2000 .NET
- Visual Basic
- .NET
- C#
Bilgisayarlar, icat edilmeleriyle birlikte belli bir işi yapmak için bir dizi komutlara ihtiyaç duymuşlardır. En başta çok basit işlemler yapan bu komutlar zamanla nesneye yönelme (object orientation) gibi ileri seviyede özellikler kazanmıştır.
İlk programlama dilleri, bilgisayarların üzerinde bazı araçların yerlerini değiştirerek veya yeni bileşenler eklenerek yapılıyordu. Programın işlemesi için bir devinime ihtiyaç vardı. Eskiden programlar fiziksel olarak yazılıyordu. Daha sonra fiziksel programlama yerini elektrik sinyaline bıraktı.
Artık, kurulan elektronik devrelere düşük ya da yüksel voltajda akım gönderilerek bilgisayarın davranışı belirlenmeye başlandı. Yüksel voltaj 1, düşük voltaj 0 sayılarını ifade ediyordu. Böylelikle bugün de kullanılan makine dilinin ortaya çıkması için ilk adımlar atılmış oldu.
Ancak bu şekilde programlar yazmak, sistemi oluşturan elektronik devrelerin her program için baştan kurulmasını gerektiriyordu. Böylelikle programlar bazı kavramlar çerçevesinde yazılmaya başlandı. Öncelikle bilgisayar donanımı her program için baştan kurulmamalı, bunun yerine basit bir donanımın üzerine yazılan komutlar kullanılmalıdır.
Daha sonra, programlar tek bir komutlar zinciri yerine, küçük parçalar halinde yazılmalıdır. Bu parçaların programın içinde defalarca kullanılabilmesi yordam (subroutine) kavramını ortaya çıkarmıştır. Bu modelin kullanılması ise mantıksal karşılaştırmaları, döngülerin kullanılmasını ve yazılan kodlar tekrar kullanıldığı için kütüphane (library) mantığını ortaya çıkarmıştır.
1957 yılında IBM, düşük seviye (makine diline yakın) bir programlama dili olan FORTRAN dilini ortaya çıkardı. FORTRAN ile beraber basit mantıksal karşılaştırmalar, döngüler, (true-false) lojik ve (integer, double) sayısal değişkenler kullanılmaya başlandı.
1959 yılında, bu programlama dilinin özelliklerini alıp, giriş çıkış (Input – Output IO) gibi yeni işlevler sağlayan COBOL dili ortaya çıktı. Daha sonra 1968 yılında, COBOL ve FORTRAN dillerinin en iyi özelliklerini alarak Pascal ortaya çıktı. Ayrıca Pascal dili, hafızadaki adresler üzerinde işlem yapmaya olanak veren işaretçi (pointer) kavramını beraberinde getirdi.
1972 yılında C, Pascal dilindeki birçok hatayı gidererek ortaya çıktı. C dili ilk defa Unix işletim sistemini yazmak için kullanılmaya başlanmıştır. C, düşük seviye bir dil olması, kuvvetli giriş çıkış işlemleri sağlaması gibi birçok özelliği ile işletim sistemleri yazılmasında tercih edilmiştir.
Bütün programlama dilleri birçok özelliğe sahip olmasına rağmen, modüler programlamanın birçok eksiğini gidermek amacıyla, yeni bir programlama modeli olan nesneye yönelik programlama – OOP (object oriented programming) ortaya çıkarıldı. C dilinin ve OOP modelinin tüm özellikleriyle C++ dili oluşturuldu.
C++ dilini, Sun Microsystems tarafından çıkartılan Java takip etti. Java dilinin kullanım alanları, nesneye yönelik bir programlama dili olması ve beraberinde getirdiği çöp toplama GC (garbage collection) gibi performans arttırıcı özellikleri ile büyük ölçüde genişledi.
Microsoft, 2000 yılında .NET platformunu sunarak, otuzdan fazla programlama dilini aynı çatı altına topladı. VisualBasic.NET ve VisualC# .NET platformunu kullanan günümüzdeki en güçlü yüksek seviyeli programlama dilleri arasında yer almışlardır.