Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

PROGRAMLAMA DİLLERİNİN EVRİMİ Yılmaz Kılıçaslan. Sunum Planı  Sınıf kavramının evrimine kısa bir bakış –Birinci Kuşak Diller –İkinci Kuşak Diller –Üçüncü.

Benzer bir sunumlar


... konulu sunumlar: "PROGRAMLAMA DİLLERİNİN EVRİMİ Yılmaz Kılıçaslan. Sunum Planı  Sınıf kavramının evrimine kısa bir bakış –Birinci Kuşak Diller –İkinci Kuşak Diller –Üçüncü."— Sunum transkripti:

1 PROGRAMLAMA DİLLERİNİN EVRİMİ Yılmaz Kılıçaslan

2 Sunum Planı  Sınıf kavramının evrimine kısa bir bakış –Birinci Kuşak Diller –İkinci Kuşak Diller –Üçüncü Kuşak Diller –Kuşak Boşluğu –Nesneye Yönelik Programlama 2

3 Yazılım Mühendisliğini Tarihsel Eğilimleri  Yazılım mühendisliğinin tarihine iki eğilim damgasını vurmuştur: –Küçük programlardan büyük programlara geçiş –Yüksek düzeyli programlama dillerinin ortaya çıkışı 3

4 Makinelerden Problem Sahasına...  Most new industrial-strength software systems are larger and more complex than their predecessors were even just a few years ago. This growth in complexity has prompted a significant amount of useful applied research in software engineering, particularly with regard to decomposition, abstraction, and hierarchy. The development of more expressive programming languages has complemented these advances. The trend has been a move away from languages that tell the computer what to do (imperative languages) toward languages that describe the key abstractions in the problem domain (declarative languages). (Booch, G. 1998) 4

5 Sınıflara Giden Soyutlama Süreci - 1  Wegner (1976), yüksek-düzeyli programlama dillerini, ilk kez kullandıkları dil özelliklerine dayanarak, bir kuşak sınıflamasına tabi tutmuştur:  Birinci-Kuşak Diller ( ) –FORTRAN IMatematiksel ifadeler –ALGOL 58Matematiksel ifadeler –FlowmaticMatematiksel ifadeler –IPL VMatematiksel ifadeler 5

6 Sınıflara Giden Soyutlama Süreci - 2  İkinci-Kuşak Diller (1959~1961) –FORTRAN IIAlt rutinler, bağımsız derleme –ALGOL 60Blok yapıları, veri tipleri –COBOLVeri tanımlama, dosya işlemleri –LispListe işleme, işaretçiler, ‘garbage collection’ 6

7 Sınıflara Giden Soyutlama Süreci - 3  Üçüncü-Kuşak Diller ( ) –PL/1FORTRAN + ALGOL + COBOL –ALGOL 68ALGOL 60’ın sıkı takipçisi –PascalALGOL 60’ın gevşek takipçisi –SimulaSınıflar, veri soyutlama 7

8 Sınıflara Giden Soyutlama Süreci - 4  Kuşak Boşluğu ( ) Birçok farklı programlama dili türedi ama çok azı varlığını sürdürebildi. Bu dönemde ortaya çıkan dillerin sayısı binlerle ifade edilebilecek miktardadır. Bugün neredeyse hiçbirimizin hatırlamadığı veya bilmediği birçok dil icat edilmiştir. Fred, Tranquil, Chaos bunlardan birkaçıdır. Bu sonuncusunun adı, dönemin kaotik niteliğiyle çok iyi örtüşmektedir. 8

9 Programcılıkta Kopernik Devrimi  Her kaos dönemi gibi, 1970 ile 1980 arası, bir kopuşun ya da sıçramanın habercisidir.  1973’teki Turing derslerinde, Bachman işlem merkezli bakış açısından veri merkezli bakış açısına geçişi, Kopernik devrimi ile gerçekleşen dünya merkezli evren modelinden güneş merkezli evren modeline geçişe benzetir. 9

10 Programlama Dillerinin Topolojisi The Topology of First- and Early Second-Generation Programming Languages

11 Programlama Dillerinin Topolojisi The Topology of Late Second- and Early Third-Generation Programming Languages

12 Programlama Dillerinin Topolojisi The Topology of Late Third-Generation Programming Languages

13 Programlama Dillerinin Topolojisi The Topology of Small- to Moderate-Sized Applications Using Object-Based and Object-Oriented Programming Languages "The nature of abstractions that may be achieved through the use of procedures is well suited to the description of abstract operations, but is not particularly well suited to the description of abstract objects. This is a serious drawback, for in many applications, the complexity of the data objects to be manipulated contributes substantially to the overall complexity of the problem.” (Shankar 1984)

14 ÖZET  Programlama dillerinin evriminde itici güç makineden uzaklaşıp probleme yaklaşmak yönünde olmuştur.  Yüksek düzeyli dillerin evrimi, algoritmik soyutlama ile başlamış, veri soyutlaması ile devam etmiştir.  İki soyutlama süreci, sınıf yapısında birleşmiştir. 14 PROGRAMLAMA NESNEYE-DAYALI PROGRAMLAMA İŞLEM SOYUTLAMAV ERİ SOYUTLAMA

15 Kaynaklar  Booch, G Object-Oriented Analysis and Design. Addison-Wesley.  Shankar, K Data Design: Types, Structures, and Abstractions. Handbook of Software Engineering. New York, NY: Van Nostrand Reinhold, p  Wegner, P IEEE Transactions on Computers, December,


"PROGRAMLAMA DİLLERİNİN EVRİMİ Yılmaz Kılıçaslan. Sunum Planı  Sınıf kavramının evrimine kısa bir bakış –Birinci Kuşak Diller –İkinci Kuşak Diller –Üçüncü." indir ppt

Benzer bir sunumlar


Google Reklamları