惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
B
Blog RSS Feed
量子位
aimingoo的专栏
aimingoo的专栏
V
Visual Studio Blog
Y
Y Combinator Blog
Vercel News
Vercel News
云风的 BLOG
云风的 BLOG
宝玉的分享
宝玉的分享
Engineering at Meta
Engineering at Meta
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
GbyAI
GbyAI
人人都是产品经理
人人都是产品经理
博客园 - 叶小钗
Stack Overflow Blog
Stack Overflow Blog
大猫的无限游戏
大猫的无限游戏
Microsoft Security Blog
Microsoft Security Blog
B
Blog
Last Week in AI
Last Week in AI
有赞技术团队
有赞技术团队
博客园 - 聂微东
腾讯CDC
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks

Yusuf Aytas

When Code Is Cheap, Does Quality Still Matter? Why Crouching Tiger, Hidden Dragon Is a Masterpiece Why We Ignore Advice The Mirror Is Part of the Machine When Too Many Maps Overlap on One Person The Work Runs on Different Maps Your Work Introduces You Trial By Fire The Dude Why Headcount Math Lies Capacity Is the Roadmap The Roadmap Is Not the System Torres del Paine W Trek Escaping Status Theater Incentives Drive Everything Scaling Culture Without Dilution What Good Looks Like Why Airport Security Feels Random Why Politics Appear How to Work with Me The Janus Protocol Multi-Horizon Delivery Framework What Good Execution Looks Like Managing Your Manager Why Kingdom of Heaven’s Director’s Cut Is Better AI Broke Interviews Most of What We Call Progress Managers Have Been Vibe Coding All Along Stop Wasting Brainpower Why Over-Engineering Happens
Programlama Dilleri Tarihi
Yusuf Aytas · 2008-10-13 · via Yusuf Aytas

Published · 3 min read

Bilgisayar ve programlama dilleri tarihiBilgisayar ve programlama dilleri tarihi

Programlama dillerini ilk ciddi ciddi Bilkent Üniversitesi’ndeki derslerde görmüştüm. Programming Languages dersinde bayağı farklı şeylere dokunuyorduk. Genelde başlangıç Java ile olurdu. Bazıları önce Robo diye uydurma, öğretmek için kullanılan bir programlama dili görüyordu ama ben Robo görmeden başladım. Sonra C++ geldi. Database derslerinde de iş HTML, PHP ve CSS tarafına kaydı. Açıkçası o kombinasyon bana sonradan oldukça iyi para kazandırdı. Okulda öğrenilen bazı şeyler sadece derste kalıyor, bazıları ise gerçekten işe yarıyor. Bu da onlardan biriydi.

Programlama dillerinin tarihine bakınca da zaten benzer bir şey görüyorsunuz. Her dil bir ihtiyaçtan çıkıyor. Bir yerde hesap yapmak gerekiyor, bir yerde iş dünyasına yönelik sistemler kurmak gerekiyor, başka bir yerde daha hızlı ve daha kontrollü yazılım geliştirmek gerekiyor. Sonra yeni bir dil çıkıyor ve bir öncekinin eksik bıraktığı yere oynuyor.

1957 yılında geliştirilen Fortran, bu işin en önemli başlangıç noktalarından biri sayılıyor. İsmi de zaten “Formula Translation” ifadesinden geliyor. Daha çok matematiksel ve bilimsel işlemler için kullanılmış. O dönem için mesele, bilgisayara her şeyi en ilkel haliyle anlatmak yerine biraz daha anlaşılır komutlarla iş yaptırabilmekti.

1959 yılında COBOL geliştiriliyor. Bu sefer odak daha çok iş dünyası. Muhasebe, raporlama, kayıt sistemleri gibi alanlarda önemli bir yer ediniyor. Yani daha o yıllarda bile her dilin her iş için çıkmadığını görmek mümkün. Bazıları bilim için, bazıları ticaret için, bazıları ise daha genel amaçlar için gelişiyor.

1960 yılında ALGOL 60 ortaya çıkıyor. Bugün günlük hayatta adı çok sık geçmese de, birçok modern dilin mantığını etkilemiş bir dil. Özellikle program yapısını daha düzenli kurma konusunda önemli bir yeri var. Bazen bir dil çok popüler olduğu için değil, sonraki nesilleri etkilediği için önem kazanıyor. ALGOL biraz öyle.

1972’de ise C geliyor ve işler başka bir seviyeye çıkıyor. C, hem güçlü hem de makineye yakın bir dil olduğu için çok büyük etki yaratıyor. Sistem programlama tarafında ciddi şekilde öne çıkıyor. Bugün bile hâlâ etkisi sürüyor. Bunun nedeni sadece hızlı olması değil, programcıya çok fazla kontrol vermesi. Tabii bu kontrolün bir bedeli de var. Hata yaparsanız onun sonucunu da doğrudan görüyorsunuz.

Sonrasında C++ geliştiriliyor. Temelde C’nin gücünü koruyup daha büyük yazılımları daha düzenli yazabilmek gibi bir ihtiyaçtan doğuyor. Zaten ilk başta “C with Classes” diye anılması da bundan. Özellikle performans isteyen alanlarda çok güçlü kalmasının nedeni de bu. Oyunlar, büyük sistemler, hızın önemli olduğu yazılımlar için uzun süre vazgeçilmez oldu.

1990’lara geldiğimizde bu kez Java sahneye çıkıyor. Java’yı önemli yapan şey sadece teknik tarafı değil, kullanım kolaylığı ve yaygınlığıydı. Kütüphaneleri sayesinde birçok işi daha hızlı halletmek mümkün oldu. Arayüz geliştirme tarafında da insanlara kolaylık sağladı. C++ kadar hızlı olmayabilir ama geliştirme rahatlığı bakımından önemli avantajlar getirdi. O yüzden kısa sürede çok yaygınlaştı.

Bugün hâlâ en bilinen diller arasında C, C++, Java ve daha sonra çıkan C# gibi diller var. Web tarafında ise HTML, CSS ve PHP çok önemli bir yere sahipti, özellikle bizim o dönem için. Belki HTML ve CSS’e teknik olarak tam anlamıyla programlama dili demek doğru değil ama web işi yapan biri için bunların hepsi aynı paketin parçası gibi oluyordu. Zaten ben de ilk gerçek anlamda işe yarar şeyleri o tarafta yaptım.

Kısacası programlama dillerinin tarihi, biraz da bilgisayarların ve ihtiyaçların değişim tarihi. Bir dönem hesap yapmak ön plandaydı, sonra iş sistemleri, sonra performans, sonra kullanım kolaylığı, sonra web. Benim açımdan bakınca da bu işin güzel tarafı şu oldu: okulda gördüğüm şeyler sadece teori olarak kalmadı. Özellikle HTML, PHP ve CSS tarafı, sonradan bana gerçekten iyi geri dönüş sağladı.