C programlama

Başlatan sifirzero, 17 Ekim 2017, 22:38:04

sifirzero

C programlama öğrenmeye nasil baslamaliyim.kodlar aklinizdanmi yaziyorsunuz.kitapmi yaninizda herzaman.nasil yapmaliyim yardimci olabilirmisiniz.
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

vitruvius

En iyisi bir kursa falan gitmek bence. Yada youtube'dan video izleyerek temellerini ogrenebilirsin. edx.org sitesinde bir suru ucretsiz C kursu var. Onlardan bakabilirsin. Kitaptan ogrenmek hem sikici hem de zor. Deneyerek, gorerek, bir ucuncu sahsin anlatimiyla ogrenmek baska oluyor.

Kitaplari her zaman yaninda tasimak mumkun degil. Zaten gunumuz teknolojisinde her turlu bilgiye internetten ulasmak mumkun. Elimin altinda internet yokken ne yapacagim diyorsan Linux'un man komutu var. Linux de kullanmiyorum dersen ve bir kitap almak istiyorsan her C programlayicisinin elinin altinda bulunmasi gereken C referans kitabi K&R'yi alabilirsin.


furkanyx

#3
Kodları bazen akıldan bazen kopyala biç ile yazıyorum. Sentaks ister istemez akılda kalıyor kullanacagın kutuphaneler icin referans bulmak zorundasın. Kitabı en son 5 sene once açmıştım, gerek duymuyorsun bir yerden sonra ama başlangıç için zengin içerikli kitaplar iyi oluyor yol gösteriyor, tek seferde hepsini okumanı tavsiye ederim daha sonra pratike dokerken kitaba surekli bakacaksın zaten. C için Kaan Aslanın kitabını, C++ için Robert lafore un Uzmanlar için C++ kitabını tavsiye ederim. Zaten takıldığın yerde stackoverflow imdadına yetişiyor. C yi temel alarak iyice sentaksı öğren diğer dillere alışman çok rahat olur. Programlamayı makine duzeyinde ogrenmek istiyorsan belirli bir yerden sonra mikroişlemci programlamaya başla C nin neredeyse tüm özelliklerini kullancağın ve arka pllanda dönen işleri öğrenebileceğin bir alan.

sifirzero

Çok teşekkürler. Kitap okumaya başlayalim inşAllah
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

SysTick

C ve Sistem Programcıları derneginde rahat ognirsin, yeni bir kur baslamak uzere,

http://www.csystem.org/duyurular/programlamaya-giri%C5%9F-kursu-ba%C5%9Fl%C4%B1yor-hafta-sonu-0


sifirzero

Ucretlimi kurs. Ama ben izmirdeyim
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

bit01

Elinde Kaan arslanın kitabının okunaklı pdfi olan var mı internetteki çok kötü.

Kitabın basılı halini bulmak da zor.

SysTick


sımışka

Merhabalar,

Önerdiklerim ;
1. C Programming: A Modern Approach by K.N. King
2. Algorithms in C

Önermediklerim ;

1. C / C++ Deitel

sovalye

Hocam, tam olarak amaciniz ne?


Eger mikro islemciyle calismak gibi bir amaciniz yoksa c++ ogrenmeniz daha iyi olabilir. Genelde c programcilari cin,cout ogrenip, nesneye yonelik hicbirsey bilmeden c++ ogrendiklerini zannediyorlar.
Eger tamamen hobi icin programlama ogrenmeyi dusunuyorsaniz python cok guzel olur. Daha anlasilirdir, zorlayici konulari kendisi halleder. Algoritma ogrenmenizi kolaylastirir.


Ayrica hangi dili secerseniz secin projecteuler gibi sitelerden programlama sorulari cozmeye calismanizi tavsiye ederim.


Eger c ile ilerleyecegim derseniz deitel in kitabi guzeldir. Yukarda tavsiye edildigi uzere kaan aslan in kitabi da iyiydi.

sifirzero

Amacim c iyi ogrenip mikro islecilerde ilerlemek.timur karaçayin kitabini aldim.
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

Teğmen

#12
@serkancetin
Mikroişlemcilerde yeniysen ve başta ufak tefek projelerle başlıyorsan CCS C derleyicisi ile kod yazmak da zevkli gelebilir.Ki internette olsun
piyasada olsun istemeyeceğin kadar çok döküman bulabilirsin.
Fakat ilerlemek istiyorsan C diline çok iyi hakim olman gerekir ve bunu mesela MPLAB derleyicilerinde yazarak çok ileri seviyelere gidebilirsin.
CCS C başta bol örnekli olduğu için zevkli ilerletir.Ama normalde C ye tam hakimiyet en önemlilerdendir.

Daha da ileri gitmek istiyorsan yine mikrodenetleyicileri C ile programla ama mutlaka iç yapılarını öğren.Yani registerlarını,donanımsal kabiliyetlerini v.s.
Bununla birlikte de assembly kodlamayı yapabilirsin ki en temel ve karmaşık kodlamadır.Assembly ve C dilini tam olarak kavrarsan çözemeyeceğin problem 0'a yaklaşır diye düşünüyorum :)


Son olarak hatta ilk başta söylemem gerekirdi.Algoritma ve algoritma geliştirme kısmını çözmen gerekir.Sorunun algoritmasını net bir biçimde ifade edebilirsen o algoritmayla
sadece sen değil herkes her dilde kodlama yapabilir.Programa dilleri sadece aracıdır.Senin algoritmada anlattıklarını bilgisayarın diline tercüme eden kaynaklardır.Kimisi basic tercümanı ile
çalışır kimisi C tercümanı ile.Algoritman düzgünse her şekilde programlama kolay olur.E madem tüm diller aynı niye C diyorsunuz dersen de;algoritma varsa tüm diller eşit demek değil bu.Hepsinin avantaj
dezavantajları vardır.Örneğin;kimisinde etiketler öne çıkar kimisinde döngüler öne çıkar kimisinin kütüphaneleri zengindir falan falan.


Şu nokta iyi bilinmelidir ki girmeye çalıştığın alan koca bir okyanustur.Yüzmeyi tam manasıyla öğren ve mahir yüzücülerle birlikte uzaklara açıl.


İyi Çalışmalar
"Girdim ilim meclisine kıldım eyledim talep,   Dediler ilim geride kaldı illa Edep illa Edep" Hz.Yunus Emre K.S.

sifirzero

@Teğmen çok tessukur ederim. Dedigin okyonus uygun bir yerden ilerlemek gerekir
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

Teğmen

@serkancetin
Forum siteleri,internet kaynakları,akademik yayınlar,örnek projeler,en çok problem yaşanılan noktalar gibi birçok noktayı birlikte götürebilirsen kısa sürede bu işi çözersin.


Ama elektronik kart tasarımı ve yazılımı yapacağım diyorsan yani mikrodenetleyici kodlayacam sistemler kuracağım diyorsan,bir o kadar da donanıma da hakim olman gerekir.
En basitinden mesela frekanslı bir devrede çalışırken sinüs sinyalin 0 a geçişini Mikrodenetleyiciye hesaplatmak için devre anatomisini de bilmek gerekebilir.0 geçiş algılayan optokuplörler kullanman işini kolaylaştırabilir v.s


Kolay Gelsin
"Girdim ilim meclisine kıldım eyledim talep,   Dediler ilim geride kaldı illa Edep illa Edep" Hz.Yunus Emre K.S.