Dilini seç
C/C++ Programlama Kursu
Dünya çapında 2 milyondan fazla öğrenci

C/C++ Programlama Kursu

C ve C++'ı en temelden başlayarak, ham bellek ve işaretçilerden modern C++20 özelliklerine, tasarım desenlerine ve eşzamanlı sistemlere kadar her şeyi kapsayarak öğrenin. Bu kurs, profesyonel geliştiricilerin ve sistem mühendislerinin işte fiilen kullandığı teknik derinliği sunar. İster gömülü donanım yazılımı, ister yüksek performanslı uygulamalar veya teknik mülakatlar hedefleyin, gerçek, üretime hazır becerilerle ayrılacaksınız.

Dedika İşletmeler için

Neler öğreneceksiniz:

C ve C++ sözdizimi, bellek yönetimi ve nesne yönelimli programlama konularında sağlam bir temel oluşturacak; ardından şablonlar, Standart Şablon Kütüphanesi ve modern C++17/20 özelliklerine geçeceksiniz. Kurs, sıfırdan uygulanan veri yapıları ve algoritmaları kapsayarak teknik mülakatlar ve sistem çalışmaları için gereken problem çözme becerilerini kazandırır. Ayrıca CMake, GDB, Google Test ve statik analizörler gibi sektörde standart araçları kullanmayı öğreneceksiniz. Gömülü ve sistem düzeyinde programlama konuları, sizi donanım yazılımı ve düşük seviyeli geliştirmeye hazırlar. Kurs sonunda, profesyonel ortamlarda sağlam C++ yazılımları tasarlayıp oluşturabilecek ve teslim edebilecek donanıma sahip olacaksınız.

Nasıl pratik şekilde çalışırsınız C/C++ Programlama Kursu

Nasıl pratik yaparsınız C/C++ Programlama Kursu

Şirketiniz için ekibinizi eğitmek isteyenlere özel

Dedika Kurumsal'da, kurs kendi işinize ve şirketinizin ihtiyaçlarına uygun egzersizler ve örneklerle gelir.

Buraya tıklayın

Kurs İçeriği

8 Bölüm • 40 Ders4 ile 360 saat arasında (siz karar verin)

Bölüm 1Detayları Gör

C/C++ Ortamı ve Sözdizimi Temelleri

  • Ders 1 • Değişkenler, Türler ve Değerler

    İlkel veri türlerini, değişken bildirimini ve sabit değerleri tanıtır. Burada uzmanlaşmak, kurs boyunca doğru veri gösterimini sağlar.

  • Ders 2 • Giriş/Çıkış Temelleri

    C'de printf/scanf ve C++'ta cin/cout kullanarak konsol G/Ç'sini öğretir. Her uygulamalı alıştırmada gereken etkileşimli programları mümkün kılar.

  • Ders 3 • İşleçler ve İfadeler

    Öncelik kurallarıyla birlikte aritmetik, ilişkisel, mantıksal ve bit düzeyinde işleçleri kapsar. Tüm kontrol akışı ve algoritmalar için gereken ifade yazma becerisini geliştirir.

  • Ders 4 • Temel Sözdizimi ve Program Yapısı

    Belirteçleri, deyimleri, blokları ve bir C/C++ kaynak dosyasının anatomisini kapsar. Sonraki bölümlerde geçerli herhangi bir program yazmakla doğrudan bağlantılıdır.

  • Ders 5 • Geliştirme Ortamını Kurma

    C/C++ için derleyicileri, düzenleyicileri ve derleme araçlarını kurun ve yapılandırın. Sonraki her bölümün bağlı olduğu teknik temeli sağlar.

Bölüm 2Detayları Gör

Kontrol Akışı ve Fonksiyonlar

  • Ders 1 • Fonksiyon Bildirimi ve Tanımı

    C/C++'ta fonksiyon prototiplerini, tanımlarını ve çağrı mekaniğini tanıtır. Kurs boyunca kullanılan modüler tasarım ilkelerini oluşturur.

  • Ders 2 • Kapsam, Ömür ve Saklama Sınıfları

    Yerel, global ve statik değişkenleri ve bunların ömürlerini açıklar. Başlatılmamış veya yanlış kapsamlanmış değişkenlerle ilgili yaygın hataları önler.

  • Ders 3 • Özyineleme Temelleri

    Özyinelemeli fonksiyon tasarımını, temel durumları ve yığın davranışını kapsar. Öğrencileri sonraki bölümlerdeki özyinelemeli algoritmalara ve veri yapılarına hazırlar.

  • Ders 4 • Koşullu İfadeler

    Karar verme için if, else-if ve switch yapılarını kapsar. Sonraki her bölümde üzerine inşa edilen mantık odaklı programları doğrudan mümkün kılar.

  • Ders 5 • Döngüler ve Yineleme

    for, while ve do-while döngülerini ve döngü kontrol ifadelerini öğretir. Yineleme, daha sonra ele alınan algoritmaların ve veri işlemenin temelidir.

Bölüm 3Detayları Gör

Diziler, Karakter Dizileri ve İşaretçiler

  • Ders 1 • C-Stili Karakter Dizileri ve Dizi Fonksiyonları

    Null ile sonlandırılmış karakter dizilerini ve standart dizi kütüphanesi fonksiyonlarını öğretir. C++ std::string tanıtılmadan önce ihtiyaç duyulan C-stili karakter dizisi temelini sağlar.

  • Ders 2 • Dinamik Bellek Ayırma

    Yığın yönetimi için C'de malloc/free ve C++'ta new/delete öğretir. Sonraki bölümde ele alınan dinamik veri yapılarının temelini oluşturur.

  • Ders 3 • Tek Boyutlu ve Çok Boyutlu Diziler

    Dizi bildirimi, başlatma ve eleman erişim kalıplarını kapsar. Diziler, kursta daha sonra tanıtılan neredeyse her veri yapısının temelini oluşturur.

  • Ders 4 • İşaretçiler ve Fonksiyonlar

    Fonksiyonlara işaretçi geçirmeyi ve işaretçileri güvenli bir şekilde döndürmeyi kapsar. Gereksiz kopyalamalar olmadan verimli veri manipülasyonu sağlar.

  • Ders 5 • İşaretçi Temelleri ve Adres Aritmetiği

    İşaretçi bildirimini, referansını kaldırmayı ve işaretçi aritmetiğini tanıtır. İşaretçiler, sonraki bölümlerde dinamik bellek ve düşük seviyeli programlamanın merkezindedir.

Bölüm 4Detayları Gör

Yapılar, Birlikler ve Sabit Listeleri

  • Ders 1 • Sabit Listeleri ve Tür Takma Adları

    C enum'larını, C++ enum class'ını ve typedef/using bildirimlerini kapsar. Sonraki tüm projelerde kod netliğini ve tür güvenliğini artırır.

  • Ders 2 • Bit Alanları ve Paketlenmiş Veri

    Kompakt veri gösterimi için bit alanı struct üyelerini tanıtır. İleri düzey konularda protokol ayrıştırma ve donanım yazmacı eşleme ile ilgilidir.

  • Ders 3 • Yapılara İşaretçiler

    İşaretçi tabanlı struct erişimini ve dinamik struct ayırmayı öğretir. Algoritmalar bölümünde oluşturulan bağlı veri yapılarını mümkün kılar.

  • Ders 4 • Birlikler ve Bellek Paylaşımı

    Union semantiğini, örtüşen depolamayı ve geçerli kullanım durumlarını açıklar. Gömülü ve sistem programlama için ilgili düşük seviyeli bellek bilgisi sağlar.

  • Ders 5 • Yapıları Tanımlama ve Kullanma

    Struct bildirimini, üye erişimini ve iç içe struct'ları kapsar. Yapılar, sonraki bölümde tanıtılan C++ sınıflarının doğrudan öncülüdür.

Bölüm 5Detayları Gör

C++'ta Nesne Yönelimli Programlama

  • Ders 1 • Çok Biçimlilik ve Sanal Fonksiyonlar

    Sanal fonksiyonları, saf sanal fonksiyonları ve soyut sınıfları tanıtır. Genişletilebilir yazılım tasarımının merkezinde yer alan çalışma zamanı dağıtım kalıplarını mümkün kılar.

  • Ders 2 • Kalıtım ve Sınıf Hiyerarşileri

    Tek ve çoklu kalıtımı, temel sınıf erişimini ve kurucu zincirlemeyi kapsar. Çok biçimlilik için gereken hiyerarşi tasarım becerilerini geliştirir.

  • Ders 3 • Kapsülleme ve Tasarım İlkeleri

    Sınıf tasarımına SOLID ilkelerini ve kapsülleme stratejilerini uygular. Öğrencileri ileri düzey bölümlerde sürdürülebilir, test edilebilir C++ kodu yazmaya hazırlar.

  • Ders 4 • İşleç Aşırı Yükleme

    Özel türler için aritmetik, karşılaştırma ve akış işleçlerini aşırı yüklemeyi öğretir. Sonraki projelerde kullanılan kullanıcı tanımlı sınıflar için sezgisel sözdizimi sağlar.

  • Ders 5 • Sınıflar ve Nesneler

    Sınıf bildirimini, erişim belirteçlerini ve nesne örneği oluşturmayı kapsar. Bu bölümdeki tüm OOP özelliklerinin genişlettiği sınıf modelini oluşturur.

Bölüm 6Detayları Gör

Şablonlar, STL ve Genel Programlama

  • Ders 1 • STL Algoritmaları

    sort, find, transform, accumulate ve diğer standart algoritmaları kapsar. STL algoritmalarını uygulamak, üretim kodunda hataya açık manuel döngülerin yerini alır.

  • Ders 2 • Fonksiyon ve Sınıf Şablonları

    Şablon sözdizimini, tür parametrelerini ve şablon örneği oluşturmayı kapsar. Genel fonksiyonlar ve sınıflar, gelecekteki tüm projelerde kod tekrarını azaltır.

  • Ders 3 • STL Konteynerleri

    vector, list, deque, map, set ve sırasız varyantları tanıtır. Algoritma tasarımında performans için doğru konteyneri seçmek kritiktir.

  • Ders 4 • Lambda İfadeleri ve Fonksiyon Nesneleri

    STL ile kullanım için lambda sözdizimini, yakalamaları ve fonksiyon nesnelerini tanıtır. Modern C++'ta kısa, etkileyici algoritma özelleştirmesi sağlar.

  • Ders 5 • Yineleyiciler ve Aralıklar

    Yineleyici kategorilerini, yineleyici aritmetiğini ve aralık tabanlı for döngülerini öğretir. Yineleyiciler, konteynerler ve algoritmalar arasındaki evrensel arayüzdür.

Bölüm 7Detayları Gör

Bellek Yönetimi ve Kaynak Güvenliği

  • Ders 1 • İstisna Yönetimi ve Güvenlik

    try/catch/throw, istisna hiyerarşileri ve istisna güvenliği garantilerini kapsar. Sağlam hata yönetimi, olağandışı durumlarda kaynak sızıntılarını önler.

  • Ders 2 • RAII ve Kaynak Sahipliği

    RAII deyimini ve kurucuların/yıkıcıların kaynak güvenliğini nasıl zorunlu kıldığını açıklar. RAII, modern C++'ta tüm güvenli kaynak yönetiminin temelidir.

  • Ders 3 • Akıllı İşaretçiler Derinlemesine

    unique_ptr, shared_ptr ve weak_ptr semantiğini ve kullanım kalıplarını kapsar. Akıllı işaretçiler, manuel delete çağrılarını ortadan kaldırır ve sahiplik hatalarını önler.

  • Ders 4 • Kopyalama ve Taşıma Semantiği

    Kopya kurucuları, kopya atamayı, taşıma kurucularını ve taşıma atamayı öğretir. Beş Kuralı, doğru kaynak sahibi sınıf tasarımını yönetir.

  • Ders 5 • Bellek Hata Ayıklama ve Profil Oluşturma

    Sızıntıları, geçersiz erişimleri ve yığın bozulmasını tespit etmek için araçları tanıtır. Profil oluşturma becerileri, üretim kalitesinde C++ kodunu korumak için gereklidir.

Bölüm 8Detayları Gör

Dosya G/Ç, Eşzamanlılık ve Sistem Programlama

  • Ders 1 • std::thread ile Çok İş Parçacıklı İşlem

    C++11 thread kütüphanesini kullanarak iş parçacığı oluşturma, birleştirme ve ayırmayı öğretir. Eşzamanlılık temelleri, bu bölümde paralel program tasarımını mümkün kılar.

  • Ders 2 • Süreç ve Sistem Arayüzleri

    Süreç oluşturma, ortam değişkenleri ve sistem çağrılarını tanıtır. Sistem düzeyinde C programları yazmak için gereken işletim sistemi bağlamını sağlar.

  • Ders 3 • Ağ Oluşturma ve Soket Temelleri

    C/C++'ta TCP/UDP iletişimi için BSD soket API'sini tanıtır. Ağ oluşturma becerileri, C/C++ uygulamalarını dağıtık ve istemci-sunucu bağlamlarına genişletir.

  • Ders 4 • Senkronizasyon ve Veri Yarışları

    Veri yarışlarını önlemek için muteksler, koşul değişkenleri ve atomik işlemleri kapsar. Güvenli senkronizasyon, doğru eşzamanlı programlar için zorunludur.

  • Ders 5 • C ve C++'ta Dosya G/Ç

    Dosyaları okumak ve yazmak için C'de fopen/fclose'u ve C++'ta fstream'i kapsar. Dosya G/Ç, tüm bitirme projelerinde veri kalıcılığı için gereklidir.

Sertifikasyon

Geçerli tamamlama sertifikanız

Bu kurs sizin için:

  • Bilgisayar bilimi öğrencileri: sınıfların genellikle sunduğunun ötesinde pratik derinlik arayanlar.

  • Python veya JavaScript geliştiricileri: soyutlama katmanının altında neler olduğunu anlamaya hazır olanlar.

  • Elektrik mühendisleri: donanım projeleri için donanım yazılımı yazmak ve bakımını yapmak üzere C becerilerine ihtiyaç duyanlar.

  • Kariyer değiştirenler: düşük seviyeli programlama akıcılığı gerektiren sistem veya gömülü rolleri hedefleyenler.

  • Oyun geliştiricileri: C veya C++ ile yazılmış performans kritik kodları optimize etmek isteyenler.

  • Kendi kendini yetiştiren programcılar: C gibi yapılandırılmış dillerin gerektirdiği sağlam temeli oluşturanlar.

Öğrencilerimiz ne diyor

Dersleriniz mükemmel. Bir yıllık paketi aldım ve sonunda ilgilendiğim çeşitli konuları platform değiştirmek zorunda kalmadan takip etme fırsatım var... yaptığınız her şey için teşekkür ederim, sizi başkalarına da tavsiye ettim...
Giulio Carlo
Giulio CarloDijital Pazarlama Öğrencisi
Derslerin doğrudan konuya odaklanmasını ve bölümleri değiştirebilmemi, ihtiyacım olmayan içerikleri atlayabilmemi seviyorum.
Mariana Ferres
Mariana FerresFotoğrafçılık Öğrencisi
İçeriği ve video sunumu ile transkripsiyon yöntemini seviyorum, bu süreci hızlandırıyor!
Luciana Alvarenga
Luciana AlvarengaTırnak Tasarımı Öğrencisi
Platform hızlı, kullanımı kolay. İçerik çeşitliliği ve tamamlayıcı videolar öğrenmeye çok yardımcı oluyor.
André Felipe
André FelipePrompt Mühendisliği Öğrencisi

Başlıca yetkinlikler

SSS

Dedika kimdir?

Sertifika Türkiye’de geçerli mi?

Kurslar ücretsiz mi?

Kursların ders yükü nedir?

Kurslar nasıl bir yapıya sahip?

Kurslar nasıl çalışıyor?

Kursların süresi nedir?

Kursların maliyeti veya fiyatı nedir?

Eğitimde uzaktan eğitim (EAD) veya online kurs nedir ve nasıl çalışır?

PDF Kursu