Yazılım dünyası, günümüz teknolojisinin geldiği noktada çok önemli bir pozisyona sahip. Yapılan neredeyse her işin arka planında bir yazılım programı çalışıyor. Bilgisayarlar, telefonlar, tabletler ve bir çok eşya içerisinde bulunan yazılım ile hayat buluyor ve sahip olduğu işlevleri yerine getiriyor. Pek çok farklı yazılım dili bu doğrultuda insanlara hizmet ediyor. Günümüzün en popüler dillerinden biri ise şüphesiz C++ dili. Bu yazımızda bu dilin genel özelliklerinden ve avantajlarından bahsetmeye çalışalım.
Tarihi
C++ programlama dilinin tarihi 1980’li yıllara kadar uzanıyor. Bjarne Stroustrup isimli Danimarkalı bilim insanı Bell Laboratuvarında bu alan üzerinden çalışmalar gerçekleştirdi ve çalışmalarının sonucunda dili icat etti.
C++ dili, temellerini C programlama dilinden alan bir dil ve ismini de buradan alıyor. C dili ile büyük bir uyum içerisinde çalışır, öyle ki C ile yazılmış bir kod üzerinde neredeyse hiçbir değişiklik yapmadan bu programları derleyebilirsiniz.
Özellikleri
Her programlama dilinin ortaya çıkış amacı, hizmet edeceği alan birbirinden farklılık gösterir. Örnek vermek gerekirse Python dili günümüzde ağırlıklı olarak veri bilimi, yapay zeka ve derin öğrenme gibi alanlarda ağırlıklı olarak kullanılırken, dinamik bir yapıda çalışan Java Script dili web tasarım alanında kullanılır. Bunların aksine C++ dili, genel amaçlı bir programlama dili. Günümüzde elektronikten oyun geliştirmeye kadar pek çok farklı alanda kullanılır.

Dilin en önemli özelliği OOP(Object Orianted Programming) konseptinde çalışması. Nesne Yönelimli Programlama yapısı sayesinde pek çok özelliği bünyesinde bulunduruyor. Bu yapının sahip olduğu dört özelliği; Abstraction(Soyutlama), Encapsulation(Kapsülleme), Inheritance(Kalıtım) ve Polymorphism(Çok Biçimlilik). Bu özellikler nedeniyle yazılan programlar, güvenilirlik, sürdürülebilirlik, genişletilebilirlik ve yeniden kullanılabilirlik avantajlarına sahip olur.
Avantajları
- Taşınabilirlik: Dil ile yazılan programlar, işletim sisteminden bağımsızdır. Bu sayede Windows üzerinde yazılan bir program, rahatlıkla Linux ortamına geçirilip başarılı bir şekilde derlenilebilir.
- Nesne Tabanlı Programlama: Yukarıda bahsedildiği gibi yeniden kullanılabilirliğini sağlayan ve bir programı daha da güvenilir hale getiren sınıf, kalıtım, çok biçimlilik, veri soyutlama ve kapsülleme özelliklerine sahip.
- Düşük Seviye Programlama: C ve C++ dilleri, yazılım dilleri arasında donanıma en yakın olan dillerdir. Bu sebeple işletim sistemi yazılımlarında ağırlıklı olarak bu diller kullanılır.
- Bellek Yönetimi: Kullanıcıların yazdıkları kodlar ile bilgisayar belleği üzerinde tam yetkinliğe sahip olabilmeleri yetkisini sunar. Bu özellik “ Dinamik Bellek Yönetimi” olarak bilinir. Yazılımcı malloc, calloc ve realloc gibi fonksiyonlar vasıtası ile program Run-Time anında iken bellek üzerinde belli bir alan ayırabilir ve işi bittiği zaman bu belleği yeniden serbest bırakabilir.
- Platform Desteği: Günümüzde aktif olarak kullanılan diller listesinde baş sıralarda olması dolayısı ile pek çok platform tarafından C++ dili desteklenir.
Kullanım Alanları
- Oyun Geliştirme
- Gömülü Sistemler
- Kullanıcı Arayüz Uygulamaları
- Veri Tabanı Yazılımları
- İşletim Sistemi
- Web Browser

C++ günümüzde pek çok farklı alanda insanlara programlama yapma imkanı sağlar. Sahip olduğu avantajlar dolayısı ile Google, Facebook ve Apple gibi büyük çaplı firmalardan küçük ölçekli işletmelere kadar pek çok firmada aktif olarak kullanılır.
-
KAYNAKÇA
- codeacademy.com
- techopedia.com
- wikipedia.org