Robot Kodlamak İçin Hangi Dili Önerirsiniz?

Hocam C#, C ve C++'tan etkilendiği halde neden gömülü sistem kodlanmıyor? Mesela Vikipedi'de "C# programlama dili sunucu ve gömülü sistemler için tasarlanmıştır " diyor. Yüksek seviyeli bir dil olduğundan mı?
C# Microsoft tarafından oluşturulmuş bir dildir ve çalışmak için .NET Framework veya .NET Core'ye ihtiyaç duyar. .NET Framework sadece Windows'ta bulunur, .NET Core ise çapraz platform olmasına rağmen günümüzde yaygın olarak kullanılmaz ve hala geliştirilmektedir. Robotların ve gömülü sistemlerin de neredeyse tamamı Unix veya Linux tabanlı işletim sistemleri kullandıkları için C/C++'ı doğrudan desteklemektedirler. Linux tabanlı sistemlerin de neredeyse tamamının içinde Python'un yüklü olarak gelmesi ve robotik kodlama için hazır modüller bulundurması yüzünden robot kodlarken Python da kullanılabilir.
 
Hocam C#, C ve C++'tan etkilendiği halde neden gömülü sistem kodlanmıyor? Mesela Vikipedi'de "C# programlama dili sunucu ve gömülü sistemler için tasarlanmıştır " diyor. Yüksek seviyeli bir dil olduğundan mı?
C#, sanal makineyi hedefler. C# kodunu çalıştırmak için kullandığınız mikroişlemciyi destekleyen sanal makineye ihtiyaç duyacaksınız. Ara katman olduğundan daha çok kaynağa ihtiyacınız var. Bu da gömülü sistemlerde olan bir durum değil.

C# size gerçek zamanlı çözümler sunmaz. Kod yavaş çalışır demiyorum ama gerçek zamanlı gömülü yazılımlarda belli bir süre içinde işlem yapsın amacıyla kodlama yapıyoruz. C# da bunu sunamıyor.

C#'da sanırım dinamik bellek tahsisi yapılabiliyor ama C kadar gelişmiş değil. Elinizde desktop bilgisayara göre çok zayıf bir bellek miktarı olduğundan belleği çok efektif kullanmak gerek.

Kısaca C#'da gömülü sistem kodlama mümkün ama mission-critical sistemler için C/C++ daha iyi bir tercih.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Geri
Yukarı