Bilgisayar Programlama Dilleri€¦ · Veriye Yönelik (Data Oriented) Programlama Dilleri Lisp Apl...
Transcript of Bilgisayar Programlama Dilleri€¦ · Veriye Yönelik (Data Oriented) Programlama Dilleri Lisp Apl...
2/32
Sunum İçeriği
1. Program ve Programlama Dili Nedir?2. Programlama Dillerinin Tarihçesi3. Programlama Dillerinin Sınıflandırılması4. Programlama Ortamı5. Emulatör Nedir?6. UML (Unified Modelling Language ) Nedir?
3/32
1. Program ve Programlama Dili
• Bir hesaplamanın yapılabilmesini sağlayan ardışık simgeler dizisidir.
• Bilgisayara ne yapması gerektiğini söyleyen bir dizi komuttur.
PROGRAM
4/32
• Bir makinenin davranışını kontrol etmek için kullanılabilen ve ardışık simgelerden oluşan yapay bir dildir.
PROGRAMLAMA DİLİ
7/32
• Bir programlama dili ilk olarak ABD hükümeti tarafından geliştirilen ENIAC bilgisayarında kullanılmıştır (1942).
8/32
• John Von Neumann Mimarisi (1945)Birinci kavram; basit bir donanımın, karmaşık komutlar ile kontrol edilmesini öngören ve yeniden programlamayı basitleştirerek, programa göre donanım değişikliğini ortadan kaldıran paylaşımlı programlama tekniğidir. İkinci kavram ise programlama dilleri açısından oldukça önemli olan, koşullu denetim transferi kavramıdır.
9/32
• Short Code (1949) Bu programlama dili elektronik cihazlarıprogramlamaya yarayan ilk programlama dilidir.
• 1951'de Grace Hopper ilk derleyiciyi yazmıştır.
10/32
• FORTRAN (1957) İlk gelişmiş programlama dili ortaya çıkmıştır.
• LISP (1958)Yapay zeka araştırmaları için geliştirilmiştir.
• COBOL (1959)
11/32
• ALGOL (1958) Bir araştırma grubu tarafından bilimsel amaçlıkullanım için geliştirilmiştir. Aynı zamanda BNF (Backus-Naar Form) olarak bilinen bir formal dilbilgisine sahip ilk programlama dilidir.
12/32
• PASCAL (1968) Düzenli bir yaklaşım izlenerek, o dönem kullanımda olan COBOL, FORTRAN ve ALGOL gibi dillerin en iyi özellikleri birleştirilerek Niklaus Wirth tarafından geliştirilmiştir.
• C (1972) New Jersey'deki Bell Laboratuarları'nda Dennis Ritchie tarafından geliştirilmiştir.
14/32
• Nesneye Yönelik Programlamada, verinin parçaları programcı tarafından paketlenebilen ve yönlendirilebilen birer nesne olarak ele alınmıştır.
PAKETLEMEV E
R İİ
VR
E
V
E
RV
E
İ
RV
E
15/32
• C++ dili 1983 yılında kullanıma sunulmuştur. C++ dili, C dilinin gücünü nesneye yönelik programlama kullanılarak organize etmek için geliştirilmiştir.
• Java (1994)
18/32
3. Programlama Dillerinin Sınıflandırılması
• 3.1 Genel Sınıflandırma• 3.2 Uygulama Alanlarına Göre Sınıflandırma• 3.3 Seviyelerine Göre Sınıflandırma
19/32
3.1 Genel Sınıflandırma
Temel (Imperative) Programlama Dilleri
Fortran C
Cobol Basic
Pascal
Veriye Yönelik (Data Oriented)
Programlama Dilleri
Lisp Apl
Snobol Icon
Nesneye Yönelik (Object Oriented)
Programlama Dilleri
Simula C++
Ada 95, Java
Visual Basic
20/32
3.2 Uygulama Alanlarına Göre Sınıflandırma
Bilimsel ve Mühendislik
Dilleri
Fortran C
Pascal
Sistem Programlama
Dilleri
CAssembler
Veri TabanıDilleri
Dbase Clipper
Yapay Zeka Dilleri
Prolog Lisp
Genel AmaçlıProgramlama
Dilleri
C Pascal Basic
Genel AmaçlıProgramlama
Dilleri
C Pascal Basic
21/32
3.3 Seviyelerine Göre Sınıflandırma
Makine Dilleri Yüksek Seviye
FortranBasic
PascalCobol
Çok Yüksek Seviye
FortranClipper
Visual Basic Paradox Access
Orta Seviye
C C++C#
Düşük Seviye
Assembler
22/32
4. Programlama Ortamı• Kaynak kodu oluşturmak ve
gerektiğinde değişiklik yapmak için gerekli olan araçtır. Editörde yazılanlar, seçilen dilin komutlarından oluşan metinlerdir.
EDİTÖR
DERLEYİCİ
• Editör tarafından bir bilgisayar dilinde yazılmış olan kaynak kodu, makine koduna çeviren bir bilgisayar programıdır.
23/32
Bir Derleyicinin Genel Yapısı
Kaynak Arka Kod
Makineden Bağımsız Eniyileme
Ön Uç
Arka Uç
Sözdizimi Çözümleme
Anlam Çözümleme
Kod ÜretimiMakine BağımlıEniyileme
Makine Kodu
24/32
HATA AYIKLAYICI
YORUMLAYICI
• Programın hatalarınıanlayabilmek için programın yürütülmesini, adım adım kontrol edilebilmesini sağlar.
• Bir programın kaynak kodunu doğrudan satır satır yürüten bir programdır.
25/32
• Nesne dosyalarının tutulduğu yerlerdir.
KÜTÜPHANE
BAĞLAYICI
• Programın içerdiği tüm nesne dosyalarını birleştirerek tek bir yürütülebilir dosya haline getirir.
YÜKLEYİCİ• Yürütülebilir dosyayı, diskten
belleğe kopyalar.
26/32
5. EMULATÖR NEDİR?
• Öykünme işini gerçekleştiren yazılıma emulatör veya öykünücü adı verilir.
28/32
6. UML NEDİR?
• UML (Unified Modelling Language) yazılım sistemlerinin olgularını tanımlamak, görselleştirmek, oluşturmak ve kayıt altına almak için kullanılan bir standartlar dilidir.