C++ Öğren - Kodlama Kursu uygulama simgesi

C++ Öğren - Kodlama Kursu

Eğitim · Ücretsiz · iOS & Android · CoddyKit

C++ Öğren - Kodlama Kursu — Telefonundan yazabileceğin, derleyip çalıştırabileceğin C++ kodlama

C++ Öğren - Kodlama Kursu, yeni başlayanlar, bilgisayar bilimi öğrencileri ve yazarak C++ öğrenmek isteyen geliştiriciler için ücretsiz bir iOS ve Android uygulamasıdır. Yerleşik düzenleyici, kodunu gerçek bir GCC derleyicisine gönderir ve çıktıyı ve çıkış kodunu gösterir; AI Mentor ise derleyici hatalarını anlaşılır bir dille açıklar. 51 kurs ve 200+ kısa ders, seni ilk cout kullanımından sınıflara, STL'ye, move semantics'e ve C++20'ye götürür.

App Store — Ücretsiz indirGoogle Play — Ücretsiz indir
Fiyat
Ücretsiz, Pro yükseltmesi
Platformlar
iOS ve Android
Diller
22
Yaş sınırı
4+
Gereksinimler
iOS 15.1 veya üzeri
App Store
4.9 ★ (7)
Arapça arayüzdeki C++ uygulamasının ana ekranı; Birinci derse başla düğmesi, günlük hedef, World Coding Challenge geri sayımı ve Ask Mentor ve Generate your lesson kısayollarıylaArapça arayüzde Dünya Kodlama Yarışması'nı, etkin kurstan bir C++ meydan okumasını ve kodla katılma seçeneğini gösteren Challenge sekmesi
51Kurs ve 200+ ders
GCCDüzenleyicide gerçek compiler
3/dayÜç günlük pratik alışkanlığı
İşaretçiler, on ikinci derse kadar korkutucudur.

C++ öğrenilemez olduğu düşünülen bir üne sahip; ancak bunun büyük bir kısmı, sahiplik, heap, şablonlar ve STL gibi her şeyin ilk günden bir arada gösterilmesinden kaynaklanır. 51 kısa kursa yayılan aynı içerik, katman katman sunulur ve her fikir, kendi başına derleyip çalıştırdığın bir kodla sona erer.

Nedir

C++ Öğren - Kodlama Kursu, ilk cout kullanımından sınıflara, STL'ye, move semantics'e ve modern C++20'ye kadar C++ öğreten ücretsiz bir iOS ve Android uygulamasıdır. Beş öğrenme yolunda (temel bilgiler, bellek, nesneler, STL ve gerçek programlar geliştirme) gruplandırılmış 51 kurs ve 200+ kısa ders; gerçek bir GCC derleyicisinde derleme yapan bir düzenleyici, 20 rehberli proje, 60 kodlama görevi ve hata çevirisi yapan bir AI Mentor sunar.

Uygulamanın içinde

Nasıl görünüyor

Arapça arayüzdeki C++ uygulamasının ana ekranı; Birinci derse başla düğmesi, günlük hedef, World Coding Challenge geri sayımı ve Ask Mentor ve Generate your lesson kısayollarıyla
Ana ekranAna ekranda başlat düğmesinin bulunduğu kurs kartı, günlük hedef ve bir sonraki World Coding Challenge turuna kalan süreyi gösteren geri sayım yer alır; ayrıca AI Mentor ve ders oluşturma kısayolları bulunur. Ekran görüntüsünde Arapça arayüz kullanılmıştır.
Arapça arayüzde Dünya Kodlama Yarışması'nı, etkin kurstan bir C++ meydan okumasını ve kodla katılma seçeneğini gösteren Challenge sekmesi
Challenge sekmesiChallenge sekmesi, Dünya Kodlama Yarışması'nı açar; etkin C++ kursundan bir karşılaşma başlatmana, diğer meydan okumalara göz atmana veya kodla birine katılmana olanak tanır.
Arapça arayüzde günlük seri sayacını, 90 günlük etkinlik ısı haritasını ve başarı rozetleri ızgarasını içeren profil ekranı
Seri ve rozetlerProfilin günlük serini, 90 günlük etkinlik ısı haritanı ve kısa oturumları düzenli tutan başarı rozetlerini takip eder.
AI chat screen asking How can I help you, with suggested prompts to explain the key concepts, give tips, quiz you and create a learning roadmap
AI chatThe AI chat answers questions and starts from suggestions: explain the key concepts, share tips, quiz you or build a learning roadmap.
Learn C++ home screen with the C++ Academy course card, Start First Lesson, a daily goal ring, a Feature Request row and the Skill Hub
HomeThe home screen up close: the C++ Academy course card with Start First Lesson, a daily goal ring, a Feature Request row and the Skill Hub.

Kurs

C++ kursunda neler var?

Uygulamanın kendi müfredatından 51 kurs: derlenen ilk programdan lock-free concurrency ve coroutines konularına kadar.

  1. Sözdizimi, Dizeler ve Kontrol Akışı

    Bir compiler kurup ilk programı çalıştırma; ardından değişkenler ve type inference, std::string ile C tarzı char dizilerinin karşılaştırılması, input ve output stream'leri ve sonraki tüm kursların temel aldığı kontrol akışı kalıpları.

  2. Struct'lar, Vector'ler ve Mini Projeler

    Struct ve class'lara giriş; sayılar ve matematikle çalışma, vector'ler ve dinamik diziler, referansla aktarım ve bu parçaları bir araya getiren küçük, pratik projeler.

  3. Bellek, RAII ve Raw Pointer'lara Daha Güvenli Alternatifler

    Stack ve heap bellek modeli, RAII ve kaynak yönetimi, exception handling ve noexcept, const doğruluğu, güvenli pointer kullanımı ve manuel new ile delete işlemlerinin modern alternatifi olarak smart pointer'lar.

  4. Modern Türler, Container'lar ve Nesne Yönelimli Tasarım

    Enum'lar, union'lar ve std::variant, std::optional ve std::expected, std::string_view ve std::span, associative container'lar ve unordered_map hashing, inheritance ve polymorphism ile kullanıcı tanımlı türler için operator overloading.

  5. Build Araçları, Dosya I/O'su ve Standard Library

    CMake ve package management ile build alma, fstream ile dosya I/O'su, zaman için chrono library'si ve regex header'ıyla pattern matching: C++'ın kodu dosya sistemi ve saatle buluşturan bölümleri.

  6. STL ve Modern C++11'den C++20'ye

    C++11'den C++20'ye kadar yapılan değişikliklere genel bakış; move semantics ve rvalue references, lambdas ve std::function, STL algorithms, iterators ve ranges ile sanitizer'larla debugging.

  7. Templates, Performans ve Systems Programming

    Concurrency primitives, template specialization ve SFINAE, gelişmiş templates ve metaprogramming, C++20 concepts, performans profiling'i ve bir library'nin public API'sini tasarlama.

  8. Gelişmiş Concurrency ve Coroutines

    Bir mutex'in fazla yavaş kaldığı durumlar için lock-free programming ve atomics ile dilin en yeni eklemesi olan C++20 coroutines. Bu konu, önceki her şey ön koşul olduğu için en sonda öğretilir.

Nasıl çalışır

Bir C++ oturumu nasıl işler?

Her oturum, çalıştırdığın kodla birlikte kısa bir dersi ve syntax'ı güncel tutan birkaç günlük alıştırmayı bir araya getirir.

  1. Kısa bir ders oku

    Bir kurs aç ve struct, reference veya smart pointer gibi tek bir fikri ele alan bir ders tamamla. İlk kurs ücretsizdir; böylece herhangi bir karar vermeden önce derslerin nasıl ilerlediğini görebilirsin.

  2. Yaz, derle ve çalıştır

    Kodu mobil düzenleyicide yaz ve çalıştır. Gerçek bir GCC derleyicisi kodu derler, çıktıyı ve çıkış kodunu döndürür; cin'den okuma yapan programlar için de girdi yazabileceğin bir alan sunulur. Derleyici uzakta çalıştığı için kodu çalıştırmak için bağlantı gerekir.

  3. Günlük alıştırmalar ve AI Mentor ile bilgilerini taze tut

    Beş kısa programın çıktısını tahmin et, günlük hata avında bozuk bir programı düzelt veya 60 saniyelik bir Syntax Sprint oyna. Bir hata anlaşılmaz olduğunda onu AI Mentor'a yapıştır ve tek cümlelik açıklamanın yanı sıra düzeltilmesi gereken satırı al.

İçinde neler var

Uygulamayla birlikte gelenler

51

Kurs ve 200+ ders

Bir kurs haritası, kursları beş öğrenme yolunda gruplandırır: temel bilgiler, bellek, nesneler, STL ve gerçek programlar geliştirme. Konular; değişkenler ve stream'lerden pointer'lara, RAII ve template'lere, oradan da CMake, concurrency ve coroutine'lere kadar uzanır.

GCC

Düzenleyicide gerçek compiler

Kod, simulator değil, gerçek bir GCC derleyicisi tarafından derlenir. Çıktıyı ve çıkış kodunu görür, cin'den okuma yapan programlara girdi verebilir ve tek dokunuşla yeniden çalıştırabilirsin. Çalıştırdığın her program kaydedilir.

3/day

Üç günlük pratik alışkanlığı

Çıktıyı tahmin et (günde beş kısa programda, compiler sonucu belirlemeden önce cevap ver), ücretsiz ipuçları içeren günlük hata avı ve tek dokunuşla yanıtlanan sorulardan oluşan 60 saniyelik bir Syntax Sprint.

20

Rehberli projeler

Envanter, banka hesabı, polymorphism içeren şekiller, template stack, RPN hesap makinesi, bağlı liste ve state machine gibi gerçek programları adım adım geliştir.

AI

AI Mentor ve hata çevirmeni

Bir pointer'da veya uzun bir template hata duvarında mı takıldın? Hatayı yapıştır ve tek cümlelik açıklamasını al ya da AI Mentor'a günlük dille istediğin her şeyi sor.

60

Görevler ve dünya mücadelesi

Kolaydan zora 60 kodlama görevi, her gün yeni bir kodlama problemi ve liderlik tablosu bulunan World Coding Challenge; ayrıca günde üç canlı küresel tur, seriler, XP ve hatırlatıcılar.

Arka plan

Yavaş olmayı göze alamayan yazılımlar neden hâlâ C++ ile çalışıyor?

C++, doğrudan makine koduna derlenir ve programcıya bellek üzerinde doğrudan kontrol sağlar; böylece kod ile donanımın arasına hiçbir şey girmez. Daha üst düzey diller ortaya çıktıktan onlarca yıl sonra bile oyun motorlarının (örneğin Unreal), yüksek frekanslı alım satım sistemlerinin, robotik firmware'lerinin ve birçok işletim sistemi bileşeninin hâlâ C++ ile yazılmasının nedeni budur. Bu kontrol, C++'ı başlangıçta zor hissettiren şeydir: Bir C++ programı, bir değerin bellekte nerede bulunduğunu ve onu serbest bırakmaktan kimin sorumlu olduğunu açıkça belirtmelidir; Python veya JavaScript ise bu işi görünmez biçimde yapar.

Stack ve heap karşılaştırmasıbellek modeli

Stack belleği, bir fonksiyon döner dönmez otomatik olarak serbest bırakılır; heap belleği ise bir şey onu açıkça serbest bırakana kadar yaşamaya devam eder. Yeni başlayanların karşılaştığı dangling pointer, memory leak veya serbest bırakılmış belleğe dokunmaktan kaynaklanan çökme gibi birçok hata, bu ikisinin birbirine karıştırılmasına dayanır.

RAIIC++'ın kendi güvenlik ağı

Resource Acquisition Is Initialization, bir kaynağın yaşam süresini bir nesnenin constructor ve destructor'ına bağlar; böylece nesne kapsam dışına çıktığında kaynak otomatik olarak serbest bırakılır. Smart pointer'lar, RAII'nin belleğe uygulanmış hâlidir ve bu yaklaşım, modern C++'ı yerini aldığı raw pointer kodundan çok daha güvenli kılar.

STLdilin sunduğu araç takımı

Standard Template Library; vector, map ve unordered_map gibi container'ları, ayrıca sıralama, arama ve dönüştürme işlemlerini zaten uygulayan iterator'ları ve algoritmaları bir araya getirir. Elle bağlı liste yazmak yerine STL'ye başvurmak, C++'ın manuel emek gerektiren bir dil gibi hissettirmeyi bıraktığı noktadır.

Şablonlarher türle çalışan kod

Bir template, compiler'ın compile time'da çözümleyebildiği herhangi bir türle tek bir fonksiyonun veya sınıfın çalışmasını sağlar; bunun runtime maliyeti yoktur. STL'nin temelindeki mekanizma budur ve C++ kütüphanelerinin hem generic hem de hızlı olabilmesinin nedenidir.

Uygunluk

Kimler için uygun — kimler için değil

Şu durumlarda senin için uygun

  • C++'ın zor kısımlarını, pointer'ları, heap'i ve template'leri yoğun bir manual'da bir kerede öğrenmek yerine, tek tek tanımak istiyorsan
  • STL ve temel data structure'ları varsayan dersleri işleyen bir computer science öğrencisiysen
  • Game, embedded veya systems alanına yöneliyor ve memory model'inin gerçekten anlaşılmasını istiyorsan
  • Python veya Java'dan geliyor ve bellekte neler olduğunu anlamak istiyorsan
  • Template mesajları için forumlarda arama yapmak yerine gerçek bir compiler error'ını AI Mentor'a yapıştırmayı tercih ediyorsan

Şu durumlarda doğru araç değil

  • Bağlantı olmadan kod çalıştırman gerekiyorsa: programlar uzak bir GCC compiler'da derlenir
  • Çok dosyalı CMake projeleri, büyük external library'ler ve debugger gibi bugün kullanabileceğin eksiksiz bir desktop toolchain'e ihtiyacın varsa, bunlar bir bilgisayarda kullanılmalıdır
  • 51 kursun tamamını ücretsiz istiyorsan: ilk kurs ve günlük alıştırmaların bir bölümü ücretsizdir; Pro ise geri kalanların kilidini açar
  • Zaten profesyonel olarak C++ ile çalışıyor ve sıralı bir kurs yerine bir başvuru kaynağı istiyorsan

Sorular

Sık sorulan sorular

C++ Öğren - Kodlama Kursu nedir?

C++ Öğren - Kodlama Kursu, kısa dersler ve gerçek bir GCC compiler'da derleme yapan yerleşik bir code editor aracılığıyla C++ programming öğrenmeni sağlayan ücretsiz bir iOS ve Android uygulamasıdır. Beginners, computer science öğrencileri, game ve systems geliştiricileri ve bir programming class'a hazırlanan herkes için tasarlanmıştır. Arayüz 22 dilde kullanılabilir.

C++ Öğren - Kodlama Kursu ücretsiz mi?

App Store ve Google Play'den ücretsiz indirilebilir ve kullanmaya ücretsiz başlayabilirsin. İlk kurs, günlük Predict the output seti, günlük bug hunt, günde üç Syntax Sprint turu, ilk guided project, iki mission, günlük coding problem, World Coding Challenge ve günde bir AI Mentor sorusu ücretsizdir. Pro; tüm course, mission ve project'lerin, sınırsız Syntax Sprint'in, tüm AI tools'un, certificate exam'in ve reklamsız deneyimin kilidini açar.

Telefonumda C++ derleyip çalıştırabilir miyim, ayrıca offline çalışır mı?

Evet, uygulamanın editor'ünde C++ yazabilir ve telefonundan çalıştırabilirsin. Gerçek bir GCC compiler kodu build eder ve output ile exit code'u döndürür; cin'den okuma yapan programlara yazdığın input'u verebilirsin. Compiler uzak olduğu için kod çalıştırmak internet bağlantısı gerektirir. Büyük, çok dosyalı CMake projelerini bilgisayarda build etmek daha uygundur.

Kimler için uygun ve neleri kapsıyor?

İlk veya ikinci dili olarak C++ öğrenen beginners'a, C++ class'ındaki öğrencilere, game ve systems geliştiricilerine ve belleği anlamak isteyen Python veya Java geliştiricilerine uygundur. 51 kurs; variables, strings, streams, control flow, structs ve classes, vectors, references, pointers, RAII, smart pointers, templates, lambdas, STL, file I/O, CMake, concurrency ve coroutines konularını kapsar.

Predict the output, Bug hunt ve Syntax Sprint nedir?

Bunlar üç günlük C++ pratik alışkanlığıdır. Predict the output, her gün beş kısa program verir ve compiler sonucu belirlemeden önce senden bir cevap ister. Bug hunt, her gün düzeltip compiler ile doğrulaman gereken bozuk bir program sunar ve ücretsiz ipuçları verir. Syntax Sprint, en iyi skorunu geçmeye çalıştığın, tek dokunuşla yanıtlanan 60 saniyelik syntax sorularıdır.

C++'ta pointer'lar ve stack ile heap ayrımı neden bu kadar zor geliyor?

Çoğu dil bir değerin nerede yaşayacağına ve ne zaman serbest bırakılacağına senin yerine karar verir; C++ ise kararı sana bıraktığı için zorluğun temel kaynağı budur. Pointer, yalnızca başka bir değerin adresini tutan bir değişkendir; ancak stack ile heap'i karıştırmak dangling pointer'lara, memory leak'lere ve crash'lere yol açar. Uygulama memory model'ini, RAII'yi ve smart pointer'ları ayrı kurslar olarak öğretir.

RAII nedir ve modern C++ neden manuel new ve delete yerine RAII'yi tercih eder?

RAII, Resource Acquisition Is Initialization, bir kaynağın yaşam süresini bir nesnenin constructor'ına ve destructor'ına bağlar. Böylece nesne scope'tan çıktığında kaynak otomatik olarak serbest bırakılır ve unutulabilecek bir delete çağrısı olmaz. Smart pointer'lar, memory için uygulanmış RAII'dir; raw new ve delete'ten smart pointer'lara geçmek, modern C++'taki en büyük güvenlik iyileştirmelerinden biridir.

Kendi data structure'larımı yazmadan önce STL'yi öğrenmeli miyim?

Genellikle evet. Standard Template Library, test edilmiş vector, map, set, iterator ve algorithm'ları zaten sağlar; böylece yeniden uygulamadan önce std::sort'a başvurmayı öğrenirsin. Temeller oturduktan sonra uygulama, guided project'lerinde linked list, template stack ve diğer yapıları da oluşturtur.

C++ interview hazırlığına yardımcı olur mu?

Pratik tarafında yardımcı olur. Predict the output ve bug hunt, kodu dikkatle okumayı çalıştırır; STL kursları, interview'ların dayandığı container ve algorithm'ları kapsar; linked list, template stack ve RPN calculator gibi guided project'ler yaygın yapıları çalıştırır. Bu uygulama, özel bir interview-question bankası değil, bir kurstur.

App Store'daki Learn C++: Code & Practice aynı uygulama mı?

Evet. App Store listelemesinin adı Learn C++: Code & Practice, Google Play listelemesinin adı ise C++ Öğren - Kodlama Kursu'tır; ancak aynı 51 kursa sahip aynı uygulamadır. Final exam'den sonra completion certificate verilir; bu belge çalışmalarını kaydeder ve akredite bir yeterlilik değildir.

Başla

İlk C++ programını bugün derle

51 kurs, gerçek bir GCC compiler ve AI Mentor. iOS ve Android'de 22 dilde kullanmaya ücretsiz başla.

App Store — Ücretsiz indirGoogle Play — Ücretsiz indir
Son incelenme tarihi · CoddyKit tarafından yayımlandı · Gizlilik politikası
iOS ve Android üzerinde kullanılabilir.