- Tarih
- Tasarım ve Uygulama
- İlk sürüm
- C 2.0
- Standartlaştırılmış versiyon
- Son güncellemeler
- C ++ Özellikleri
- Popüler dil
- Nesne odaklı
- Usul
- Yapısal programlama
- Bellek yönetimi
- İşaretçiler
- Derlenmiş dil
- C ++ 'da veri türleri
- - Birincil
- int
- şamandıra
- kömür
- Çift
- Boş (Boş)
- Bool
- - İkincil
- Düzenlemeler
- İşaretçiler
- Özellikleri
- - Kullanıcı tanımlı
- Yapılar
- Birlik
- C ++ ne içindir? Uygulamalar
- Uygulamalar
- İşletim sistemleri
- Derleyiciler
- Oyunlar
- internet tarayıcıları
- nesnelerin interneti
- Bulut / Dağıtık Sistemler
- Veritabanlarına erişim
- Örnekler
- Kütüphaneler
- avantaj
- hız
- Donanıma yakın
- verim
- Programlama stillerini seçme özgürlüğü
- Karmaşık sorunları çözme yeteneği
- Yürütmeden önce hataları tespit etme yeteneği
- Dezavantajları
- İşaretçilerin kullanımı
- Güvenlik sorunları
- Çöp toplayıcı yok
- İpliğin olmaması
- Derlenmiş programlar
- Karmaşık olabilir
- Referanslar
C ++ , 1979 yılında Stroustrup tarafından doktora projesinin bir parçası olarak geliştirilen C programlama dilinin geliştirilmiş ve genişletilmiş bir sürümüdür. Stroustrup, daha sonra C ++ olarak adlandırılan "sınıflarla C" adını verdiği şeyi tasarladı, çünkü mevcut programlama dillerinin sınırlamaları olduğuna ve büyük ölçekli projeler için en iyisi olmadığına inanıyordu.
Bu yüzden aradığı programlama dilini geliştirmek için C'yi kullandı, çünkü C etkili bir dildi ve kullanımı hızlıydı.
Kaynak: Pixabay.com
C ++, rafine ve güçlü bir genel amaçlı programlama dilidir. Bu derlenmiş, serbest biçimli dil, orta düzey programcılar için en uygunudur.
Bununla birlikte, C ++ ile programlamaya başlamak isteyenler, kariyerlerinde kendilerine uzun bir yol kat edecek programlama kavramlarını hızla öğrenebileceklerini göreceklerdir.
Tüm özelliklerini alarak nesne yönelimli programlamaya uyumludur. Bu kavramlar C ++ dilini farklı kılar ve esas olarak uygulamaları kolay ve kavramsallaştırılmış bir şekilde geliştirmek için kullanılır.
Tarih
Tasarım ve Uygulama
C ++, 1980 yılında Bjarne Stroustrup tarafından AT&T Bell Laboratuvarlarında tasarlandı ve uygulandı, prosedürel ve nesne yönelimli programlama kavramlarını güzel bir şekilde birleştirdi.
C dilinde, ++ operatörü bir değişkeni artırmak için kullanılır, böylece Stroustrup'un C ++ 'nın yeni nesil C dili olacağı fikrini ortaya koyar.
İlk sürüm
C ++, 1985 yılında piyasada ilk kez piyasaya sürüldü. 1986'da Stroustrup, C ++ Programlama Dili adlı ünlü kitabını yayınlayarak dil için referans el kitabı haline geldi.
C 2.0
C ++ 'ın en önemli sürümü 1989'da Ellis ve Stroustrup tarafından C ++ Açıklamalı Referans Kılavuzunda belgelenen C 2.0 idi. Tamamen nesne yönelimli bir dildi.
Standartlaştırılmış versiyon
İlk standartlaştırılmış sürüm olan C ++ 98, 1998'de piyasaya sürüldü. C ++ için bu uluslararası standart, Amerikan Ulusal Standartlar Enstitüsü (ANSI) ve Uluslararası Standartlar Örgütü (ISO) tarafından geliştirilmiştir.
2003 yılında, aşağıdaki C ++ 03 standardı, C ++ 98'de tanımlanan hataları düzeltmek ve dilin daha fazla taşınabilirlik ve tutarlılığa sahip olmasını sağlamak amacıyla yayınlandı.
Son güncellemeler
Dilin bir sonraki büyük güncellemesi 2011'de geldi ve C ++ 11 olarak adlandırıldı. Çalışma zamanı performansını artırmak için çeşitli özellikler eklendi.
Ardından, bazı iyileştirmelerin yapıldığı ve C ++ 11 hata düzeltmelerinin yapıldığı C ++ 14 yayınlandı. 2017'de yayınlanan bir sonraki sürüm, birkaç yeni özelliğe ve çok daha kapsamlı bir standart kitaplığa sahip olan C ++ 17 idi.
C ++ Özellikleri
Popüler dil
C ++, geliştiriciler tarafından, özellikle uygulamalarda yaygın olarak kullanılmaktadır. Değişkenler, veri türleri, değişmez değerler gibi gerekli tüm geliştirme bloklarını sağlayan bir çekirdek dil gibi tüm önemli parçaları içerir.
TIOBE programlama topluluğu indeksine göre dördüncü en popüler programlama dilidir.
C ++ 'ın kullanımı, özellikleri nedeniyle onu en uygun dil yapar. Programlama dilleriyle çalışmak isteyen tüm geliştiriciler için ilk başlangıç dilidir. Tamamen kavram temelli bir dil olduğu için öğrenmesi kolaydır.
Sözdizimi çok basittir, yazmayı kolaylaştırır ve hatalar kolayca kopyalanabilir. Başka bir dili kullanmadan önce, programcılar önce C ++ öğrenmeyi ve sonra başkalarını kullanmayı tercih ettiler.
Bununla birlikte, çoğu geliştirici, çok çeşitli kullanım ve birden çok platform ve yazılımla uyumluluk nedeniyle C ++ ile devam etmeye çalışır.
Nesne odaklı
C'den C ++ 'ya en büyük yükseltme, nesne yönelimli programlamadır. Bu, odak noktasının "nesneler" ve bu nesnelerin etrafındaki işleme olduğu anlamına gelir.
Gelişimi ve bakımı kolaylaştıran polimorfizm, kalıtım, kapsülleme ve soyutlama kavramlarını takip eder.
Usul
C ++, tek tek görevleri gerçekleştirmek için "çağrılabilen" yeniden kullanılabilir bloklarda kod bölümlerini kapsayan yordamlar ve alt yordamlar kavramını destekler.
Prosedürler ve alt rutinler, C ++ 'da işlevler olarak bilinir. Bir işlev sıfır veya daha fazla parametre alabilir ve sıfır veya bir değer döndürebilir.
Yapısal programlama
C ++ kodu modülerdir, fonksiyonların, sınıfların ve nesnelerin desteğiyle, modüller serbestçe uyumludur.
C ++ 'daki akış kontrol ifadeleri, diğer birçok yapılandırılmış programlama dilinde bulunanlara benzer. Bunlar, eğer başka türlü karar mantığını uygulamak ve yinelemeleri veya döngüleri uygulamak için, while ve do-while'dır.
Bellek yönetimi
C ++, dinamik bellek tahsisini destekler. Böylece, ayrılan belleği istediğiniz zaman boşaltabilirsiniz.
İşaretçiler
Başka bir değişkenin adresini saklayan değişkenlerdir. İşaretçi, bir değişkenin hafıza konumuna işaret eder. C ++, bellek konumuna erişim gerektiren birçok soruna çözüm sağlamak için işaretçileri destekler.
Derlenmiş dil
Çalıştırılmadan önce, bir C ++ programı, derleyici adı verilen bir program tarafından hedef makinenin yerel talimatlarına çevrilmelidir. Derleme olmadan hiçbir C ++ programı çalışamaz. Derleyici C ++ programını daha sonra çalıştırılabilmesi için derler.
C ++ 'da veri türleri
- Birincil
int
Tam sayıları saklamak için kullanılır. Kapladığı bellek derleyiciye bağlıdır (32 veya 64 bit). 32 bitlik bir derleyici ile çalışırken 4 bayt bellek kullanır.
şamandıra
7 ondalık basamağa kadar kesirleri depolamak için kullanılır. Tek bir hassas kayan nokta türü olarak bilinir. 4 bayt hafıza kaplar.
kömür
Tüm karakterleri saklamak için kullanılır. Alfabenin harflerini, sayıları ve ayrıca özel karakterleri içerebilir. Bir makinedeki adreslenebilir en küçük birim olan 1 bayt bellek kaplar.
Çift
15-16 ondalık basamağa kadar olan kesirleri saklamak için kullanılır. Genellikle çift duyarlıklı kayan nokta türü olarak bilinir.
Boş (Boş)
Sıfır veya dönüş değeri olmadığını gösterir. Genellikle bir işlevi bildirirken boş değer atamak için kullanılır.
Bool
Bu veri türü bir Boole veya mantıksal değeri ifade eder. Doğru veya yanlış değerini alabilir.
- İkincil
Düzenlemeler
Ortak bir adla erişilen aynı tür verilere sahip bir veri kümesidir.
İşaretçiler
Temelde başka bir değişkenin hafıza adresini saklamak için kullanılan değişkenlerdir.
Özellikleri
Belirli bir görevi yerine getiren bir grup cümledir. Fonksiyonlar yerleşik veya kullanıcı tanımlı kitaplıklardır.
- Kullanıcı tanımlı
Yapılar
Bir nesne aracılığıyla farklı veri türlerinin bir koleksiyonunun yapılabildiği ve erişilebildiği bir veri türüdür.
Birlik
Aynı hafıza konumunda farklı veri türlerini saklama yeteneği sağlar.
C ++ ne içindir? Uygulamalar
Uygulamalar
Adobe sistemlerindeki birçok uygulama, Illustrator, Photoshop, Adobe Premiere ve Image Ready gibi C ++ ile geliştirilmiştir.
İşletim sistemleri
C ++, düşük seviyeli bir programlama dili olduğu için Linux, Windows ve macOS gibi tüm büyük işletim sistemlerinde kullanılır.
Derleyiciler
Derleyicilerin çoğu C ++ dilinde yazılmıştır. Ayrıca C #, Java vb. Gibi diğer dilleri derlemek için kullanılan derleyiciler.
Oyunlar
Kaynakların optimize edilmesine yardımcı olarak 3B oyunların karmaşıklığını ortadan kaldırmaya hizmet eder. Ayrıca, ağlarda çok oyunculu seçeneği ile uyumludur.
internet tarayıcıları
Web tarayıcılarında hızlı bir şekilde görünebilen içeriği talep eden mevcut kullanıcılar için kritik olan grafiklerin hızlı yürütülmesine ve temsiline izin verir. İnternet tarayıcılarını Google Chrome ve Mozilla Firefox yapmak için C ++ kullanıldı.
nesnelerin interneti
Akıllı saatler, arabalar, çamaşır makineleri, yönlendiriciler ve anahtarlar gibi çeşitli Nesnelerin İnterneti ürünleri, donanıma mümkün olduğunca yakın kod gerektirdikleri için C ++ kullanır.
Bulut / Dağıtık Sistemler
Bulutta, ölçeklenebilir dosya sistemlerinin donanımla yakından çalışması gerektiği ve farklı makinelerle uyumluluğun da kritik olduğu depolama sistemlerinde ve dağıtılmış sistemlerde kullanılır.
Veritabanlarına erişim
Açık kaynak veritabanı yazılımı geliştirmek için kullanılır. Kuruluşlarda kullanılan çok popüler bir veritabanı yönetim yazılımı olan MySQL, sunduğu faydalar sayesinde C ++ ile yazılmıştır.
Wikipedia, Yahoo, YouTube, Quora vb. Veritabanı yazılımına erişime dayalı başka uygulamalar da vardır.
Örnekler
Bu program kullanıcıdan pozitif bir tamsayı alır ve bunu n değişkeninde saklar. Ardından, girilen sayının io ile tam olarak bölünebilir olup olmadığını kontrol eden for döngüsü çalıştırılır.
For döngüsü, her yinelemede i'nin değerini artıran, 2'ye eşit bir başlangıç değeri ile başlar. Kullanıcı tarafından girilen sayı i ile tamamen bölünebiliyorsa, isPrime false olarak ayarlanır ve sayı bir asal sayı olmaz.
Bununla birlikte, sayı, i <= n / 2 test koşulu doğru olana kadar i ile tam olarak bölünemezse, bu yalnızca 1 ve aynı sayı ile bölünebileceği anlamına gelir. Yani verilen sayı bir asal sayıdır.
Kütüphaneler
Geliştiriciler, C ++ dili tarafından sağlanan birçok yerleşik işleve erişebilir. Bu, zamandan tasarruf sağlar ve geliştirmeyi hızlandırır. Sağlanan işlevlere sahip bazı C ++ başlık dosyaları şunlardır:
- iomanip: veri akışlarını biçimlendiren akış işleyicileri içerir.
- iostream: standart giriş ve çıkış işlevlerini içerir.
- cstdlib: sayıları metne ve tersini metne dönüştürme işlevini içerir,
- cmath: matematik kütüphanesi işlevlerini, bellek ayırmayı, rastgele sayıları ve çeşitli diğer yararlı işlevleri içerir.
- fstream: diskteki dosyaların giriş ve çıkışını gerçekleştiren işlevleri içerir.
- ctime: saat ve tarihi işleyen işlevi içerir.
- bellek: bellek ayırmak için C ++ Standart Kitaplığı tarafından kullanılan sınıfları ve işlevleri içerir.
avantaj
hız
C ++, düşük seviyeli bir programlama dili olan C'nin genişletilmiş bir sürümü olduğundan, mevcut en hızlı dillerden biridir. Bu, gerekli performansın kritik olduğu alanlarda yararlı olmasını sağlar.
Donanıma yakın
C ++, donanıma en yakın programlama dillerinden biridir. Bu, düşük seviyeli desteği verimli bir şekilde gerçekleştirmek için yazılımın donanım ile yakın bir ilişkiye sahip olması gereken alanlarda çok avantajlıdır.
verim
C ++, kodlama sırasında yaygın olarak kullanılabilen standart bir şablon kitaplığına sahiptir. Bu kitaplıklar, programcının zamandan ve emekten tasarruf etmesini sağlayan, aksi takdirde kod oluştururken boşa gidecek verimli algoritmalar sağlar.
Programlama stillerini seçme özgürlüğü
C ++, onu çok modelli bir programlama dili yapan yaklaşık yedi farklı kodlama stilini destekler. Böylece, nesneleri kullanmak zorunda kalmadan belirli bir kullanım durumuna uygun bir stil seçebilirsiniz.
Karmaşık sorunları çözme yeteneği
C ++, nesneler oluşturarak karmaşık sorunları sezgisel olarak çözebilir. Ek olarak, C ++ işlevleri, kodunuzu açık, anlaşılması ve test edilmesi ve değiştirilmesi kolay kod bloklarına bölmenize olanak tanır.
Yürütmeden önce hataları tespit etme yeteneği
C ++ 'ın statik bir türü vardır, bu da derleyicinin programcının ne yazdığı hakkında hiçbir varsayımda bulunmadığı anlamına gelir. Yararı, derleyicinin hataları ve arızaları yürütmeden önce yakalayabilmesidir, bu da uzun vadede zaman kazandırabilir.
Dezavantajları
İşaretçilerin kullanımı
İşaretçiler, anlaşılması nispeten zor bir kavramdır ve ayrıca çok fazla bellek tüketirler. İşaretçinin yanlış kullanımı sistemin takılmasına veya anormal şekilde davranmasına neden olabilir.
Önemli bir sorun, verilerin iki farklı başlangıç noktasından aynı noktayı göstermesi, önemli bir soruna yol açması ve kodlamada kafa karıştırıcı sorunlara neden olmasıdır.
Güvenlik sorunları
Nesneye yönelik programlama, işlenen verilere çok fazla güvenlik sağlasa da, arkadaş işlevlerinin, global değişkenlerin ve işaretçilerin kullanılabilirliğinden dolayı hala bazı güvenlik sorunları vardır.
Çöp toplayıcı yok
C ++, kullanıcıya bilgisayarın belleğini yönetme konusunda tam denetim sağlar. Gereksiz verileri otomatik olarak filtrelemek için bir çöp toplayıcı işlevi yoktur ve bu nedenle dinamik bellek ayırmayı desteklemez.
İpliğin olmaması
C ++ yerleşik iş parçacıklarını desteklemez. İplik kavramı, başlangıçta mevcut olmadığı için C ++ 'da nispeten yenidir. Artık C ++ lambda işlevlerini destekleyebilir.
Derlenmiş programlar
Bir derleme dili olarak, derleyici tarafından kaynak koddan üretilen yürütülebilir dosyalar taşınabilir değildir ve yalnızca derlendikleri hedef platformda (donanım artı işletim sistemi) veya desteklenen bir ikili platformda çalışır.
Karmaşık olabilir
C ++, aynı ada sahip işlevler olan sınıflara izin verdiği için karmaşık olabilir. Bu nedenle, bir sembol işleme sistemi kullanılmalıdır. Dahası, çok büyük bir üst düzey program için karmaşıktır. C ++, genellikle platforma özgü uygulamalar için kullanılır.
Referanslar
- Simplilearn (2020). Yeni Başlayanlar İçin C ++ Programlama: Tarihçe, Faydalar ve Uygulamalar. Simplilearn.com adresinden alınmıştır.
- Educba (2020). Gerçek Dünyada C ++ Kullanımı. Educba.com adresinden alınmıştır.
- Dmitrii Rassokhin (2020). Keminformatik ve hesaplamalı kimyada C ++ programlama dili. Journal of Cheminformatics. Alındığı: jcheminf.biomedcentral.com.
- Edureka! (2020 yılında). C ++ 'ın en önemli 10 özelliği nelerdir? Alındığı kaynak: edureka.co.
- Aman Goel (2020). C ++ Dili: Özellikler, Kullanımlar, Uygulamalar ve Avantajlar. Hile. Alındığı: hackr.io.
- Steemit (2020). C ++: Kodlamayı öğrenin. C ++ dilinin tarihçesi, avantajları, dezavantajları. Steemit.com'dan alınmıştır.
- Data Flair (2019). Örnek ile C ve C ++ 'da Veri Türlerini Sadece 4 dakikada öğrenin. Alınan kaynak: data-flair.training.