C Programlama Dili İle Neler Yapılabilir ?

theeminem

Hectopat
Katılım
23 Temmuz 2014
Mesajlar
18
Daha fazla  
Cinsiyet
Erkek
Merhaba arkadaşlar. Ben C# programlama dilinin ardından geçtiğim C dilinde yeniyim. Dolayısıyla merak ettiğim sorular var. Bunları aşağıda listeledim.

Sorular:
  • C dilinde, C# ta olduğu gibi formlarla çalışamaz mıyım ?
  • C dilinde, genel olarak neler yapabilirim ?
  • C dilinde donanıma daha fazla hakim olunabileceği söyleniyor bu doğru mu ?
  • Eğer donanıma daha fazla hakim olunabiliyorsa bunu elimdeki kitaptan edindiğim bilgilerle sağlayabilir miyim?
  • Anladığım kadarıyla son kullanıcı için görsel içerik hazırlamak C# ta olduğu gibi kolay değil. O zaman C dili hangi işlemleri yapmak için üretilmiş ?
  • Ve son olarak C++ ta C# ta OOP diller fakat neden oyun yapımı veya grafik işleri için C++ daha revaçta ? Bu dillerin yanında C dili ile aynı şeyler yapılamaz mı ?

Evet arkadaşlar sorularım bunlar cevap bulabilirsem çok mutlu olurum ve bunların yanında bana kaynak tavsiyesinde bulunursanız çok makbule geçer.

Teşekkürler.
 
Son düzenleyen: Moderatör:
1- Çalışabilirsin tabi ki. Hatta Windows Forms Application'lar bile üretebilirsin. Fakat C programlama dilinde nesne kavramı olmadığı için bir süre sonra bu işler çok zor olacaktır. Genellikle güvenlik amaçlı yazılımlarda ve gömülü sistemlerde kullanılır. C++ ile nesneye yönelik programlama yapılabilir. QT araştırabilirsin.

2- Çok ucu açık bir soru. Bir üstte verdim cevabını. Şöyle cevaplayayım yelpazeyi sen düşün, yeni bir programlama dili bile geliştirebilirsin bu dili kullanarak Örneğin Linux çekirdeği C ile yazılmıştır. Çekirdek seviyesinde uygulamalar için biçilmiş kaftan.

3- Doğru. Fakat doğru ellerde. Yanlış ellerde eziyete dönüşebilir. RAM yönetimi betiklerinin çoğu C ile yazılmıştır.

4- C dilinde doğrudan donanıma gider gelirsin farkında olmadan. RAM'deki adresleri görmeyi dene tuttuğun değişkenlerin. Pointer mantığı var, iyice oku.

5- Cevabını verdim fakat tekrar vereyim. Gömülü sistemler, yüksek performans gerektiren işlemler, doğrudan donanım ile ilişkiye girilen işlemler, güvenlik uygulamaları, çekirdek seviye uygulamalar.

6- Basit, C++ ile daha iyi performans alırsın ve donanıma dalabilirsin. C# ile de yapmak mümkün fakat performans açısından bir C++ olamayacak. Eğer ben nesne kullanmam diyorsan tabi ki C ile de oyun yapabilirsin

C#'dan C diline geçmişsin. C dili başta kolay gibi görünse de bir hayli zordur. Zaten C++, C dilinin nesne eksiğini gidermek için ortaya çıktı. Java'da C++'ınkileri. C# da Java dili örnek alınarak geliştirildi.

C dilinde program yazmak uzun bir iştir. Örneğin C# da olduğu gibi bir liste oluşturup, foreach ile liste içerisinde dönemezsin. Tamamen el yapımı olman gerekiyor. Framework altındaki hazır sınıfları kullandığın gibi C'de program yazamazsın.

Çok uzun süre C ile yazılım geliştirdim. Yapmak istediğin interaktif ve son kullanıcıya hitab eden projeler yapmaksa, bu dil ile yapmanı tavsiye etmem. Çünkü astarı yüzünden pahalıya gelir.
 
Çok teşekkürler yardımınız için. Peki önerebileceğiniz videolu bir kaynak var mı ?
 
C programlama için video izlemedim hiç. Okulda görmüşlüğüm vardı, ancak daha çok döküman okuyarak ve sektörün içinde C ile yazılım geliştirerek pekiştirdim.

Deitel'in C Programming kitabı bu iş için gerekli olan tüm bilgileri içerir. İngilizce bilmek lazım tabi.
 
İngilizcem fena sayılmaz ama ileri derecede de sayılmaz orta-ileri diyelim sizce almalıyım ?
 
Genelde elektrik - elektronik dalında aktif bir dil, en basitinden PIC programlama bu dil ile oluyor özellikle dışarıda sık rastladığımız kayan tabela ya da sürekli belli algoritma ile yanıp sönen ledler C diliyle kodlanıyor
 
Merhaba bende programlama dünyasında yeniyim ^^. İyiyim veya kötüyüm diyemiyorum çünkü sınırları tam olarak gördüğümü söyleyemem. Acaba birisi inceleyebilmem adına ileri seviye c ile yazılmış bir kod atabilir mi? İyi günler...
 
#include<stdlib.h>
#include<time.h>
int sayiTahmin(void);
int main()
{
int tahmin,temp;
char devam_mi;
srand(time(NULL));
do{
temp=sayiTahmin();
printf("1-1000 arasinda bir sayi tuttum\n");
printf("Tahmin edebilir misin?\n");
printf("Lutfen ilk tahminini gir :");
scanf("%d",&tahmin);
if(tahmin==temp)
{
printf("Mukemmel bildiniz !\n");
printf("Tekrar oynamak istermisiniz:[E yada H]");

do{
scanf("%c",&devam_mi);
}while(devam_mi=='\n');
}/*if in sonu*/

while(tahmin!=temp)

if(tahmin>temp)
{
printf("Cok buyuk.Tekrar deneyin:");
scanf("%d",&tahmin);
if(tahmin==temp)
{
printf("Mukemmel bildiniz !\n");
printf("Tekrar oynamak istermisiniz:[E yada H]");

do{
scanf("%c",&devam_mi);
}while(devam_mi=='\n');
}/*if in sonu*/
}
else if(tahmin<temp)
{
printf("Cok kucuk.Tekrar deneyin:");
scanf("%d",&tahmin);
if(tahmin==temp)
{
printf("Mukemmel bildiniz !\n");
printf("Tekrar oynamak istermisiniz:[E yada H]");

do{
scanf("%c",&devam_mi);
}while(devam_mi=='\n');
}/*if in sonu*/
}
}
while(devam_mi=='E'|| devam_mi=='e');
return 0;
}

int sayiTahmin(void)
{
return 1+rand()%1000;
}

Bu aslında temel düzey ileri düzey bulamadım , ileri düzeyde gömülü sistemler , işletim sistemi gibi yazılımlar geçerlidir diye düşünüyorum . Sen bir başla zorlandığın yerler olur illaki ama üzerinde düşündükçe çözüyorsun , başarılar dilerim C seçmekle çok iyi etmişsin
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…