folder Tahribat.com Forumları
linefolder Yazılımlar / Diğer Programlar
linefolder C++ Konsol Uygulamaları Yazmayı Öğrendim Sırada Ne Var?



C++ Konsol Uygulamaları Yazmayı Öğrendim Sırada Ne Var?

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    GuArDiAn55
    GuArDiAn55's avatar
    Kayıt Tarihi: 26/Haziran/2015
    Erkek

    Selamlar. C++ için kod yazmayı öğrendim. cin, cout, cmath kütüphanesi, fonksiyonlar, diziler, dizilerde string manipülasyonu gibi  temel konuları öğrendim. döngü içinde döngü kullanarak elmas, üçgen, vb şekilleri çıkartabiliyorum girdiğiniz cümlede hangi harften kaç tane var falan bunları zorlanmadan yazıyorum. yaptığım uygulamalar konsol ekranında çalışıyor. 1. bölüm bitti fakat 2. bölüme nasıl geçiliyor? grafik arayüzüne sahip bir program nasıl yapıyoz şimdi bi el atın YARDIM EDİN! driver yazanlar varmış donanımhaberde nasıl yazıyolar nereden öğrendiler? Saygılar sevgiler teşekkürler. 


    HACKEROKAN!
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SkynetX
    SkynetX's avatar
    Kayıt Tarihi: 06/Şubat/2015
    Erkek

    https://www.google.com.tr/

     

    How to programming gui with c++?

    how can i learn driver programming?

     

    İngilizce bilmiyorsan önce İngilizce öğren.

    Hiç kimsenin sana adım adım bak şöyle driver yazacaksın şunu koyacaksın şunu çıkaracaksın gibisinden yardım edeceğini sanmıyorum.

    Google en iyi arkadaşın. Yukarıdaki gibi arama yapıp çıkan sonuçları delik deşik edersen öğrenirsin.

     

    SkynetX tarafından 27/Şub/18 17:04 tarihinde düzenlenmiştir
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    YeniHarman
    YeniHarman's avatar
    Kayıt Tarihi: 17/Haziran/2012
    Erkek

    1. Kaan Aslan'ı takip et. C ve Sistem Programcıları Derneği'nin web sitesini dolaş, makaleleri-dökümanları oku.

    2. NYP konusunda kendini geliştir. Bu konuda JAVA kaynaklarından yararlanmanı tavsiye ederim.

    3. Veri yapıları konusunu atlama. İkili ağaç, bağlı listeler...

    4. STL'yi öğren. Şablonların ne işe yaradığını yala yut. JAVA ile ilgili bildiğin şeyleri unut bu sırada.

    5. Bir framework daha öğren. wxWidgets, MFC, QT... Herhangi biri.

     

    Başıma gelenler, başımdan geçenler ve çevreden gözlemlediğim kadarıyla aktarıyorum. Deneyimle sabit:

    1. C++ biliyorum diyenlerin çoğu oturduğunda düzgün C++ kodu yazamazlar. C kodu da yazamazlar. Ya C mantığıyla cpp dosyası hazırlarlar ya da tam tersi. Sallamasyon. Çok bilen bilmiyor demektir.

    2. Dil amaç değil, araçtır. Unutma. X dili ile y alıştırmasını çözebiliyor olmak çok bir şey kazandırmaz. Dilin ve dille birlikte kullanılması önerilen platformun dışına çıkmadan projeni bitirebiliyorsan öğrenmişsin demektir. Sürüden ayrılanı kurt kapar çünkü.

    3. Eğer meslek olarak programcılık düşünüyorsan dil bilmenin yanında yazılım mühendisliğinin kurallarına da uymalısın. Hebele-hübele kod yazılmaz. Hatta kod yazma, işin zaman olarak ufak bir kısmını oluşturur.

    4. C++'ın istisna mekanizması, STL ve şu anki işimde pratik bir kullanım alanı olmamasından dolayı C++'den vazgeçeli çok oldu. Söylediğim konuları akılda tutmak bile terlememe neden oluyor. Yarım doktor candan eder. En temel prensipleri bile uygulayamayacaksam neden kullanayım ki? Kısaca çok geçerli bir sebebin yoksa neden C++ öğreniyorsun? 

    5. C de donanım konusunda geçerli bir dildir. C ile WinAPI kullanabilirsin, Linux'ta donanım sürücüleri yazabilirsin. 


    Olaylara karışmayın!
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Fatih54
    Fatih54's avatar
    Kayıt Tarihi: 16/Ağustos/2012
    Erkek

    Windows için grafik arayüzü yapmak istiyorsan varsayılan metot WinForm tasarlayıp link aşamasında Resource segmentine ekleyip Windows.h de tanımlanan api leri kullanarak yaptığın programa bağlamaktır.

    Ancak bu eski, platforma bağımlı ve çok uğraştırıcı olan bir yol olduğu için pek kullanılmıyor. Bunun yerine GTK, MFC, wxWidgets veya Qt kullanabilirsin.

    Driver yazmak için C++ yerine C kullanılması daha mantıklı olur.

     

     

    Fatih54 tarafından 27/Şub/18 18:53 tarihinde düzenlenmiştir
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ltcelik
    ltcelik's avatar
    Kayıt Tarihi: 11/Mayıs/2007
    Erkek
    YeniHarman bunu yazdı

    1. Kaan Aslan'ı takip et. C ve Sistem Programcıları Derneği'nin web sitesini dolaş, makaleleri-dökümanları oku.

    2. NYP konusunda kendini geliştir. Bu konuda JAVA kaynaklarından yararlanmanı tavsiye ederim.

    3. Veri yapıları konusunu atlama. İkili ağaç, bağlı listeler...

    4. STL'yi öğren. Şablonların ne işe yaradığını yala yut. JAVA ile ilgili bildiğin şeyleri unut bu sırada.

    5. Bir framework daha öğren. wxWidgets, MFC, QT... Herhangi biri.

     

    Başıma gelenler, başımdan geçenler ve çevreden gözlemlediğim kadarıyla aktarıyorum. Deneyimle sabit:

    1. C++ biliyorum diyenlerin çoğu oturduğunda düzgün C++ kodu yazamazlar. C kodu da yazamazlar. Ya C mantığıyla cpp dosyası hazırlarlar ya da tam tersi. Sallamasyon. Çok bilen bilmiyor demektir.

    2. Dil amaç değil, araçtır. Unutma. X dili ile y alıştırmasını çözebiliyor olmak çok bir şey kazandırmaz. Dilin ve dille birlikte kullanılması önerilen platformun dışına çıkmadan projeni bitirebiliyorsan öğrenmişsin demektir. Sürüden ayrılanı kurt kapar çünkü.

    3. Eğer meslek olarak programcılık düşünüyorsan dil bilmenin yanında yazılım mühendisliğinin kurallarına da uymalısın. Hebele-hübele kod yazılmaz. Hatta kod yazma, işin zaman olarak ufak bir kısmını oluşturur.

    4. C++'ın istisna mekanizması, STL ve şu anki işimde pratik bir kullanım alanı olmamasından dolayı C++'den vazgeçeli çok oldu. Söylediğim konuları akılda tutmak bile terlememe neden oluyor. Yarım doktor candan eder. En temel prensipleri bile uygulayamayacaksam neden kullanayım ki? Kısaca çok geçerli bir sebebin yoksa neden C++ öğreniyorsun? 

    5. C de donanım konusunda geçerli bir dildir. C ile WinAPI kullanabilirsin, Linux'ta donanım sürücüleri yazabilirsin. 

    Soğuktan düğme gibi büzmüştüm 😀


    Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... ..Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    GuArDiAn55
    GuArDiAn55's avatar
    Kayıt Tarihi: 26/Haziran/2015
    Erkek
    SkynetX bunu yazdı

    https://www.google.com.tr/

     

    How to programming gui with c++?

    how can i learn driver programming?

     

    İngilizce bilmiyorsan önce İngilizce öğren.

    Hiç kimsenin sana adım adım bak şöyle driver yazacaksın şunu koyacaksın şunu çıkaracaksın gibisinden yardım edeceğini sanmıyorum.

    Google en iyi arkadaşın. Yukarıdaki gibi arama yapıp çıkan sonuçları delik deşik edersen öğrenirsin.

     

    daha önce bu yollardan geçmiş kişilerin tecrübelerini almaya geldim. google ı kullanmayı gayet iyi biliyorum öyle bir yazmışsın ki sanki şu program hata verdi crackini nasıl yapacağım diye soru sordum ulan gui programlamadan bahsediyoruz burada ne google ı?yukarıdaki diğer mesajlara bak bir de bu mesaja bak. şu tarz bir mesaj yazmak yerine ;"http://www.functionx.com/win32/Lesson07.htm bu site Windows programlarını API'ler ile geliştiriyor, bu yüzden sana bu kadar karışık gelmiştir.Eğer amacın sistem programlama değil, basit GUI uygulamalar oluşturmaksa hiç GUI API'ye bulaşma derim.İllede C++ yazacaksanda MFC sınıflarını kullan.Bunlar API sınıflarını sarmalar ve örneğin bir GUI uygulaması oluşturmayı daha basitleştirir." neden GOOGLE A BAKSANA HERŞEYİ BİZDEN BEKLEMEYİN moduna giriyorsun güzel kardeşim?

    edit: google'a bodoslama dalmak yerine tavsiyeler alarak dalmayı uygun gördüm.

     

    GuArDiAn55 tarafından 27/Şub/18 19:31 tarihinde düzenlenmiştir

    HACKEROKAN!
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    emrah20
    emrah20's avatar
    Kayıt Tarihi: 04/Ekim/2017
    Erkek

    C++ ile bir ilgim yok. Aynı soru yine de benim de bir süre önce aklıma takılmıştı ve biraz araştırdım. Bir yabancı forumda daha önce duymadığın yeni bir kütüphane önerilmişti. Bir bak istersen https://www.sfml-dev.org/

    emrah20 tarafından 27/Şub/18 21:09 tarihinde düzenlenmiştir

    Kendisini Hacker sanan zibidilerden değilim.
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SkynetX
    SkynetX's avatar
    Kayıt Tarihi: 06/Şubat/2015
    Erkek
    GuArDiAn55 bunu yazdı

    Yazı yazarken aslında biraz ifade eksikliği oluyor. Sanki bağırıyormuşsun gibi hissedilebiliyor. :))

    Öncelikle cidden Google kullanmadığını düşündüm. Eğer kullanıyorsan özür dilerim bu şekilde düşündüğüm için.

     

    Şimdi, Türkiye 'de C++ kullanan C++ ı deli gibi bilen adam cidden iki elin parmaklarını geçmez.  Onların da ben internette takıldıklarını pek görmedim. Yine ne varsa yabancılarda var.

    Mesela sürücü programlama ile ilgili bilgi ararken Quora, Reddit gibi yerlerde Nvidia 'dan Intel 'den mühendisler gelip cevap verebiliyor. Bizzat senin sorduğun bir soru da olabilir bu. 

    Şu an mesela Reddit 'te Bill Gates sorulara cevap veriyor.

     

    Bizim millet cidden bu işi bilmiyor. Bloglara bakıyorsun boktan bir blog tasarımı ile boktan bir Türkçe ile bir şeyler anlatmaya çalışmış. Ne yazdığını da anlamıyorsun. İstisnalar tabi ki var. Türk olan ve mükemmel işler yapan insanlarda var. Ama bunlar çok az.  Ve bunların da bir çoğu bloglarını Türkçe dilinden İngilizce diline çevirdiler. İngilizce yazıp tüm dünyaya hitap etmek istiyorlar.

    Türkçe; yazıp okumak acayip keyif aldığım bir dil ama globalde bilim dili değil malesef (en azından şu an).

    Bu sebeple İngilizce olarak önümüzde erya deniz milyonlarca kaynak var.

    ------------------------------------------------------------

    Qt kullanabilirsin. Kendi IDEsi, mükemmel ve bol dökümantasyon, C++ 'ın en modern sürümlerini kullanabileceğin bir geliştirme ortamı sunuyor. Otomotiv, tüketici elektroniği üreticileri tarafından yoğun bir şekilde kullanılıyor. Yanlış bilmiyorsam Adobe 'un programlarında profesyonel sürümü kullanılıyor. Qt Creator içerisinde kendi form tasarlama aracı da var. Kullanmayı öğrenince Visual Studio/C# form tasarlama aracından daha esnek daha kullanışlı geliyor.

    Qt kullan derim. Hem ilerde Python ile de aynı, tanıdık API leri kullanırsın.

     

    Bunun dışında wxWidgets, GTK++ 'da var. Windows kullanıyorsan Visual Studio ile kullanabilirsin. 

     

    MFC falan kullanmanı ben önermem. Hem saydığım kütüphanelere göre altseviye Win32 API leri bol bol kullanacaksın hem de çapraz platform olmayacak. Eğer bir program yazıyorsan çapraz platform olması iyidir(en azından bana göre :)).

     

    Aslında C++ ile birlikte kullanılabilecek onlarca GUI kütüphanesi var. Say say bitmez.

    ----------------------------------------------------------------

    Sürücü programlama ise başlı başına bir derya. İşletim sistemlerini de çok iyi derecede bilmen gerekir ki sürücüler işletim sistemlerine çok bağımlıdırlar.  C++ ile programlanabilse de C ve ASM tercih edilir genelde.

     

  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Mad Scientist
    AMpul
    AMpul's avatar
    Kayıt Tarihi: 31/Aralık/2009
    Erkek

    Aziz kardesim, programlama konsol -> gui -> web diye gitmez, "konsol uygulamalari yazmayi ogrendin sirada ne var"? Kullandigin C++ derleyicisi de bir konsol uygulamasi, onu yazmayi ogrendin mi?

    Programlari kafanda cok yuzeysel kategorilere ayirmissin, dis gorunusune ve kullanici arabirimine gore.

    Genelde programlama iki genel kategoriye ayrilir, sistem programlama ve uygulama programlama. Bunlar yine pek cok alt dala ayrilir. Bunlari ve nihai amacinin ne oldugunu ogrenip daha sonra nerden devam etmek istedigine karar verebilirsin.

    C++ cok kotu bir baslangic, toplam 20 programlama diline yetecek kadar kural ve istisnalari olan cok karmasik bir dil. Hic bir zaman bu dile tamamen hakim olamazsin. Sebebi cok fazla kurali olmasi degil, insanlar arapca bilmeden kuran ezberliyorlar, sebebi, kullanmadigin ozellikleri ve kurallari unutmaya mahkum olman. ve C++ yazarken ancak dilin %5-10 unu kullanirsin.

    Bunun yaninda her yeni C++ standartinda sifirdan bir programlama diline yetecek kadar kural eklenir cikarilir degistirilir.

    Ne yapmak gerek peki, C yi cok iyi ogrenmek gerek. Sistem programlamada neredeyse tamamen C kullanilir. C++ genelde oyun yazarken kullanilsa da bu is artik hazir game engine'lere ve bunlarin sundugu scripting dillerine kalmis durumda.

    GUI gibi konularda da C++ kotu bir secim, C# ve Java gibi diller varken. Yine de C++ ile GUI yapacagim diyorsan en kolay yol C++ Builder ile yapmaktir. QT yi denemedim, @j4x efendi bu konuda bilgilendirebilir.

    Driver'a gelince, aslinda driver yazmanin pek bir zorlugu yok, ancak kernel modda calisan kodun hata konusunda affi olmaz. Direkt windows'da mavi ekran (BSOD) linux da kernel panic gorursun. Yani tum sistem crash olur.

    Ikincisi windows'da artik kendi driver'ini yazsan bile dagitamazsin. 64 bit sistemlerde digital imzasiz driver yuklemeye izin verilmez. Driver icin gerekli code signing imzalari normal uygulamalardan cok daha zor aliniyor, guvenilir bir firma oldugunu ispatlaman lazim.

    Ucuncusu, driver isletim sisteminin ayrintilariyla cok ilgilidir, windowsda da linuxda da driverlarin arabirimi ayni, windows da CreateFile ile Linuxda open ile acabilirsin, Windowsda ReadFile, WriteFile, DeviceIOControl, linuxda read, write, ioctl ile okuma yazma yonetme yaparsin. Ama kendi icinde cok farkli mimariler var.

    Windows'da driverlar ayri olarak derlenmis ve baglanmis dosyalar iken (exe, dll gibi) linuxda derlenmis ancak baglanmamis dosyalardir, sistem calisirken link edilir kernele.

    Bunlarin disinda windowsda katmanli driver mimarisi vardir, disk driveri / volume manager driveri / ntfs dosya sistemi driveri diye low levelden high level e dogru gider, istedigin katmana kendi driver ini ekleyip cikarabilirsin, linuxda bu var mi bilmiyorum, muhakkak muadili vardir, yine @j4x bilgilendirebilir merak edersen.

    Benim sana tavsiyem, boyle belli bir isletim sistemine veya islemci mimarisine bagimli bilgilere fazla takilmaman, ozellikle de yeni programciysan. Bu isim 80 yildir degismemis temelleri var, bunlari cok iyi ogrendigin zaman belirli bir sistemin ya da mimarinin ayrintilarina hakim olman cok kisa zaman alir.

    - Temel algoritmalari ve veri yapilarini cok iyi ogren. @yeniharman'in soyledigi gibi, linked list, binary search tree, trie, hash table vs vs.

    - En az bir programlama dilinde tamamen uzman ol. 

    - Isletim sistemlerinin temel ozelliklerine hakim ol (belli bir implementasyona bagli kalmadan) mesela dosya, dosya sistemi, program, process, thread, task scheduling, kernel, shell, user mode, kernel mode vs vs.

    Daha sonra kendi yolunu bulursun zaten. Onunde cok yol oldugunu dusunuyorsan sana soyle bir teselli vereyim, bu isi ogrenmesi zevkli ogrendikten sonrasi degil, hayalini kurdugun her uygulamayi yazabilecek seviyeye geldikten ve pek cogunu yazdiktan sonra programlama eskisi kadar zevkli gelmiyor, ozellikle de kesfetme duygusu bittikten sonra.


    What I cannot create, I do not understand. — Richard Feynman
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    emrah20
    emrah20's avatar
    Kayıt Tarihi: 04/Ekim/2017
    Erkek
    Yukarıda eklediğim örnekleri Dev C++ ile derlemeye çalıştığımda hata aldım. C++ bilmediğim için de hataları düzeltemedim. Bilgi olsun.

    Kendisini Hacker sanan zibidilerden değilim.
Toplam Hit: 1996 Toplam Mesaj: 11
c++ kodlama driver nasıl kodlanır gui c++