C++ Nedir? Kimler C++ Öğrenmeli?

Event Hero Image
  1. Tarihçesi

Bjarne Stroustrup tarafından 1979’da tez çalışması için geliştirdiği C++, C dilini de kapsayan genel amaçlı bir programlama dilidir. Orjinal adı “C with Classes” olan C++, atası C gibi donanıma yakın bir dildir fakat C ile arasındaki en büyük fark ise nesne-yönelimli bir dil olmasıdır. 1983’te dildeki “++” operatöründen esinlenerek C++ adını alır ve bu nedenle genellikle 1983’te bulunduğu yazılır.


Eski bir dil olsa da hala gelişmekte olan bir dildir.  Yukarıda görüldüğü üzere C++’ın yıllar içinde birçok farklı versiyonu çıkmıştır. Her versiyonda gelen yeniliği yukarıdaki resimde görebilirsiniz.


  1. Neden C++?

Maalesef C++günümüz yazılımcıları için pek de popüler bir dil değildir. Bu durumu siz de çoğu insan gibi yanlış okuyup “C++ ölüyor mu?” sorusunu aklınıza getirmiş olabilirsiniz. Sektörde her ne kadar bu durumu savunanlar da olsa merak etmeyin C++’ın pek de ölmeye hevesi yok gibi :) Ama yine de isterseniz bizce neden popüler olmadığına bir göz atalım…



Öncelikle öğrenme eğrisi oldukça yüksek bir yazılım dilidir. Evet dışarıda bu dil üzerine çalışan bir sürü insan var. Ama bu demek değildir ki C++ kolay hakim olunabilen bir dil :)  C++ programlarken sisteminizle ilgili her detaya hakim olmanız gerekmektedir. Diğer dillerdeki gibi hafıza yönetimi (memory management) burda otomatik olarak yapılmaz. Sizin manuel olarak yapmanız gerekir. Ayrıca esnek bir dil olduğundan hatalarınızı bulmak da daha zordur.


Bir diğer nedeni ise Microsoft’un C# ’ı, Google’ın R’ı veya Oracle’ın Java’yı öne çıkarması gibi C++ pek de öne çıkarılan bir dil değildir. Yani pek reklamı yapılan bir değil maalesef .


Son olarak ise C++’ın çok amaçlı olması… Nasıl dediğinizi duyar gibiyim. Evet bizce de bu özellik bir dezavantaj değildir. Fakat Unity’nin oyun geliştirmede kullanıldığı gibi, Java’nın Android yazılımda kullanıldığı gibi spesifik alanı yoktur C++’ın. Tabii ki yukarıda saydıklarımı ve daha fazlasını C++ ile de yapabilirsiniz. Fakat daha kolay bir yolu varken insanlar neden zor olanı seçsinler ki?


Peki ama hala neden C++?


Yukarıda saydığım şeylere rağmen C++ hala sektörde oldukça kullanılan bir dildir. Gömülü sistemler, sürücü yazılımları, donanımın dahi sürücüler,  grafik arayüzleri (GUI), derleyici geliştirme, gelişmiş düzeyde matematiksel grafik ve hesaplamalarda , grafik ve oyun geliştirme… Daha önce de dediğim gibi C++ çok amaçlı bir yazılım dilidir. C++ ile yapılan uygulamalar için sizi buraya alalım…


  1. Nasıl C++?

Gelin aşağıda gösterilen örnek kodu inceleyelim!


#include <iostream>

using namespace std;


int main() {

  cout << "Hello World!";

  return 0;

}


#include <iostream> => header file library olarak adlandırılan ve bizim girdi-çıktılarla (input-output) ile çalışmamızı sağlayan satırdır. 


using namespace std; => using yönergesi, içindeki tüm adların namespace açık bir niteleyici olarak ad alanı adı olmadan kullanılmasına izin verir. Ad alanı, tanımlayıcılara kapsam sağlayan bildirime dayalı bir bölgedir. 


Eğer yukarıda yazdığım şeyleri anlamadıysanız endişe etmeyin çünkü zorunda değilsiniz :) Sadece her kodda bunların yazılması gerektiğini bilin yeter :)


int main() { => Fonksiyon(Function) olarak adlandırılır. Görevi çağırıldığında {} işaretleri arasındaki işlemleri yapmaktır ve sonunda ise Integer yani bir sayı değeri döndürmektir. Main fonksiyon temel olarak çağırılan fonsiyondur ve diğer fonksiyonlar burada çağırılır . int gibi başka değişkenler de vardır. Örneğin string, char, float, boolean vb. string yazılar için, char karakterler için, float ondalıklı sayılar için ve boolean ise doğru veya yanlış değerleri için kullanılır.


cout << "Hello World!"; => “Hello World!” ibaresini bastırmak için kullanılır. Başka birşey bastırmak için “” arasına başka birşey yazılmalıdır. Ayrıca bu bir işlem olduğundan bittiğini göstermek için “;” işareti kullanılır. using namespace std; kullanılmazsa cout yerine std::cout kullanılmalıdır


return 0; => return ise fonksiyonun bitişinde sonucu döndürmek için kullanılır. Bizim fonksiyonumuz bir int fonksiyonu olduğundan sayı döndürülmelidir.


Bu tabii ki de daha başlangıç.


Peki daha fazlasını nasıl öğreniriz dediğinizi duyar gibiyim :) Türkçe bir kaynak olarak Kodlab yayıncılığın C++ kitabı yeni başlayanlar için oldukça uygundur.İngilizce kaynak kitabı olarak ise Data Abstraction and Problem Solving with C++ kitabını tavsiye ederiz. Ayrıca Youtube ve Udemy gibi birçok platformda C++ derslerini online takip ederek kendinizi daha da geliştirebilirsiniz. Yapmanız gereken tek şey kendinize bir IDE seçip başlamak… O da mı ne diyorsanız sizi IDE yazımızı okumaya bekleriz...


Mert Saraç 16 Ocak 2021

Seni En İyi Şirketlerle Eşleştirelim 🚀

Yazılımcıların Kariyer Platformu Coderspace'de kaydını oluştur, yazılım dili, maaş beklentisi gibi bilgilerini tamamla, Türkiye ve Avrupa'dan en uygun şirketlerle eşleş!

En Son Yazılar

Coderspace'den ilginizi çekebilecek son yazılar

Image placeholder
Image placeholder
Image placeholder
Hackathon Nedir?
5 Aralık 2022