Bu yazıda C++ programlama dilinin temel özelliklerinden, bazı avantaj ve dezavantajlarından, kullanım alanlarından, nesne yönelimli programlamanın temelde ne olduğundan ve C++ gibi pek çok programlama dili üzerinde geliştirme yapmanıza olanak sağlayan Visual Studio Community tümleşik geliştirme ortamının (IDE) kurulumundan bahsedeceğim.
C++ Programlama Dili Nedir?
C++ orta seviyeli bellek yönetimi yapmaya imkan veren, birbirinden farklı pek çok alanda kullanılan nesne yönelimli programlamanın sağlamış olduğu imkanların kullanımına izin veren hızlı ve kullanışlı bir programlama dilidir. C++ programlama dili C programlama dilinden türetilmiş bir programlama dilidir bu sebepten dolayı C dilinde yazılmış bir program aynı zamanda bir C++ programıdır. C++ programlama dili sunmuş olduğu nesne yönelimli programlama yapma imkanı sayesinde standart C diline kıyasla pek çok alanda bir hayli tercih edilebilir olmaktadır.
C++ Programlama Dilinin Tarihçesi
C++ programlama dilinin geliştirilme süreci ilk olarak 1979 yılında Danimarkalı bilgisayar bilimcisi Bjarne Stroustrup tarafından geliştirilen C++ dilini öncülü olan C with Classes olarak geliştirilmeye başlandı.
1982’de Bjarne Stroustrup, dilin adını C++ olarak değiştirdi. 1985 yılında, henüz resmi bir standart olmadığı için referans olarak kullanılan The C++ Programming Language kitabının ilk baskısı yayınlandı ve Ekim 1985’de C++’ın ilk ticari uygulaması piyasaya sürüldü. 1989’da C++ 2.0 versiyonu ve ardından 1991’de The C++ Programming Language kitabının güncellenmiş ikinci baskısı yayınlandı. 1998’de, dili standartlaştıran C++98 yayınlandı ve sonrasında 2011’de çok sayıda yeni özelliği beraberinde getiren C++11 standardının yayımlanmasının devamında da bu işlem her üç yılda bir tekrarlanarak C++14,C++17, C++20 standartları yayımlandı.
2022 itibariyle C++, programlama dillerinin popülerliğinin bir ölçüsü olan TIOBE endeksine göre Python, C ve Java’dan sonra en popüler dördüncü programlama dili olarak bu listede yerini almış oldu.
C++ Nerelerde Kullanılır?
C++ programlama dili orta seviyeli bir programlama dili olmasından dolayı yüksek seviyeli pek çok programlama diline kıyasla programcıya daha iyi bir performans dolayısı ile daha yüksek bir hız sunmaktadır bunun yanı sıra nesne yönelimli programlanabilir oluşundan dolayı bu yüksek seviyeli programlama dillerinden geride de kalmamaktadır.
C++ sağlamış olduğu bu özellikler sayesinde, donanıma yakın olarak gerçekleştirilen gömülü yazılımdan yüksek performans gerektiren finansal uygulamalara, görüntü işlemeden yapay sinir ağlarına kadar çok sayıda kullanım alanına sahiptir. bunların yanı sıra günümüzde çok fazla kullanıcının tercih ettiği popüler video oyunlarının pek çoğu ve bu oyunların geliştirildiği Unity gibi pek çok oyun motoru da C++ dili kullanılarak geliştirilmiştir.
C++ programlama dilinin kullanılmış olduğu bazı alanlar aşağıdaki listedeki gibidir:
- Gömülü yazılım
- Gerçek zamanlı işletim sistemlerinde (RTOS)
- Video oyunları
- Simülasyon uygulamaları
- Ses ve görüntü işleme
- yapay zeka
C++ Programlama Dilinin Avantaj ve Dezavantajları
C ve C++ programlama dilleri Java gibi programlama dillerine karsın programcıya güvenmektedirler ve güçlerinin büyük bir kısmını buradan alırlar. Bu sayede kullanıcıya daha yüksek performans sunabilmektedirler. Ama sağlamış olduğu bu avantajların yanında kullanıcıdan da daha bilinçli bir şekilde program geliştirmesini beklemektedir.
C++ programlama dili kullanılırken dikkat edilmesi gereken konulardan biriside bellek yönetiminin iyi yapılması konusudur, bu yüzden C++ dili ile üzerinde değişiklik yapmış olduğunuz bellek bölgelerini dikkatli seçmeli birbiri ile çakıştırmamaya veya karıştırmamaya dikkat etmelisiniz.
C++ dilinin en büyük avantajlarından birisi hiç şüphesiz OOP yani nesne yönelimli programlamaya izin veriyor oluşudur. Nesne yönelimli programlamanın ne olduğunu aşağıdaki başlıkta kısaca anlatalım.
OOP Nedir?
Aslında nesne yönelimli programlama C++’ın temelde ortaya çıkış sebeplerinden bir tanesidir. Programlamada da nesne temel olarak gerçek dünyada olduğu gibi tezahür edilebilir, Örneğin gerçek dünyada nasıl bir nesnenin dışarıdan bakıldığı zaman, yapısal olarak onu diğer nesnelerden ayıran özellikleri varsa, programlamada da nesnelerin o nesneyi diğer nesnelerden ayırmamızı sağlayan özellikleri vardır.
Sınıf işe herhangi bir nesneyi ele aldığımızda, o nesnenin nasıl olması gerektiği ve ne gibi özelliklerinin olduğu bilgisini sağlayan yapıdır. Bir programlama dilinin temel kullanım amaçlarından bir tanesi veriyi işlemek olduğu için, verilerin doğru bir şekilde sınıflandırılması programcıya büyük bir kolaylık sağlayacaktır. Sınıflar sayesinde veriyi daha iyi bir şekilde yönetebiliriz. Nesneler sınıflara göre üretilmektedir, yani bir sınıf yardımı ile ilgili nesnenin nasıl olması gerektiği bilgisine ulaşır ve o sınıfın özelliklerine bakarak, ilgili sınıfın özelliklerine sahip bir nesne oluşturabiliriz. Bu sayede ilgili nesneden bir tane daha oluşturmamız gerektiğinde nesnenin bütün özelliklerini tekrar tanımlamak yerine, ilgili sınıf yardımıyla istediğimiz özelliklerde benzer bir nesne daha tanımlayabiliriz. Aynı sınıf yardımıyla üretilmiş farklı nesneler bir birini etkilememektedir. Sınıfın içerisinde kullanıcıya bir takım seçenekler sunarak, kullanıcının aynı sınıf yardımı ile benzer özelliklerde farklı nesneler üretmesini de sağlayabiliriz.
Örneğin bir araba nesnesi tanımladığımızda, arabanın bir markasının, modelinin, motor hacminin, koltuk sayısının bulunduğu ve ulaşım için kullanıldığı bilgilerini bize veren yapı sınıftır, sınıfın içerisinde kullanıcıya bir takım seçenekler sunarak, kullanıcının aynı sınıf yardımı ile farklı bir araba üretmesi de sağlanabilir.
C++ için Tümleşik Geliştirme Ortamı (IDE) Kurulumu
Ücretsiz bir tümleşik geliştirme ortamı (IDE) olan Visual Studio Community vasıtası ile C++ dili üzerinde geliştirme yapmaya başlayabilirsiniz. IDE’nin indirme işlemini başlatmak için bu linke tıklayabilirsiniz: Visual Studio’yu İndirin. IDE’nin kurulumunu indirmiş olduğunuz exe dosyasını açarak kolay bir şekilde gerçekleştirebilirsiniz. Açılan kurulum ekranında C++ ile masaüstü geliştirme seçeneğini seçtikten sonra, yükle seçeneğine tıklayarak C++ programlama dili ile geliştirme yapmak için gerekli olan dosyaları bilgisayarınıza indirebilirsiniz. İndirme işlemi tamamlandıktan sonra açılacak olan Visual Studio Installer uygulamasına ait olan sayfada Visual Studio Community bloğunda bulunan başlat seçeneğini seçtikten sonra, karsınıza çıkacak sayfaya mail adresiniz ile giriş yapıp geliştirme ortamına erişebilirsiniz.
Faydalandığım Kaynaklar
Bu yazı ve devamındaki yazı dizisini hazırlarken faydalandığım bir takım kaynaklar aşağıdaki listedeki gibidir. Bu listedeki kaynakları hazırlayan emektarlara ve bana bu yazı dizişini yayınlamam için izin veren Robotistan‘a en içten dileklerimle teşekkür ederim.
- Prof. Dr. Fahri Vatansever/ algoritma geliştirme ve programlamaya giriş
- www.btkakademi.gov.tr/ Ömer Bektaş/ C++ ile Programlamaya Giriş
- Harvey M. Deitel, Paul J. Deitel/ C ve C++
- www.yusufsezer.com.tr
- firateski.com
- www.informit.com
- yapbenzet.kocaeli.edu.tr
- en.wikipedia.org