ExpectAnyArgs CMock işlevi, bir işlevin herhangi bir argümanla çağrılabileceğini varsayar ve işlevin geri dönüş değerini veya yan etkilerini belirtmenizi sağlar. Bazen bir test senaryosunda, bir işlevin belirli bir argüman değeriyle çağrılması beklenmez, ancak yalnızca işlevin çağrılması beklenir. Bu durumda, ExpectAnyArgs kullanılabilir. ExpectAnyArgs kullanarak, belirli argümanlarla bir işlevin çağrılmadığını veya belirli argümanlarla çağrıldığını test etmek zorunda… Continue reading CMOCK – Gömülü Yazılım Testi
Ros ile Örnek Projeler
ROS, C++ dilinde yazılabilecek birçok örneği destekler. Burada basit bir C++ örneği vereceğim: #include <ros/ros.h> #include <std_msgs/String.h> void messageCallback(const std_msgs::String::ConstPtr& msg) { ROS_INFO("Received message: %s", msg->data.c_str()); } int main(int argc, char** argv) { ros::init(argc, argv, "example_subscriber"); ros::NodeHandle nh; ros::Subscriber sub = nh.subscribe("example_topic", 10, messageCallback); ros::spin(); return 0; } Bu örnek, "example_topic" adlı bir konudan mesajları… Continue reading Ros ile Örnek Projeler
C Notes
ders_1_2_3_cİndir ders_4_cİndir ders_5_cİndir ders_6_cİndir ders_7_cİndir ders_8_cİndir ders_9_cİndir
Embeded Systems GPIO
INPUT, pull up ya da pull down olabilir. OUTPUT, Push-Pull, opendrain, h,gh drive olabilir. Push pull - > dışarı akım basan bir sistem için kullanılır. Mesela bir led yakmak isteniyor. Push-pull bir çıkış hem source hem de sink akımı akıtabilir. Bu da pin çıkışı sıfıra da çekilse, bire de çekilse o pin üzerinden akım akıtabilmeyi… Continue reading Embeded Systems GPIO
Weekly C++ 5
unique_ptr sınıfı std::make_unique std::default_delete ve custom deleters tipik hatalar Kullanımı nasıl?#include <memory> yapmak gerekir std::unique_ptr ne işe yarar?Bu sınıf C++11 ile geliyor. new'lenen bir nesneyi sarmalar ve sahiplenir. Bir nesnenin sahibi olmak demek onun hayat döngüsünü de yönetmek anlamına geliyor. Amacı kaynak yönetiminin otomatik gerçekleştirilmesini sağlamaktır. Pointer 'lar hafızada belirli bir alanın adresini gösterir ve bu alanda verinin tutulması… Continue reading Weekly C++ 5
Weekly C++ 4
OOP nedir? Nesne yönelimli programlama (OOP) paradigması, gerçek hayatta olan varlıkları yazılım dünyasında modellemekte kullandığımız, her işlevin nesneler olarak soyutlandığı bir programalama yaklaşımıdır. Tıpkı gerçek hayatta olduğu gibi yazılımda da bu sayede nesnelerimizin öznitelikleri, davranışları olacaktır. Sınıf Hiyerajileri nasıl olur? Hiyerarşi düzeninde; genel, kapsayıcı sınıfa superclass (üst sınıf). Bunlardan türeyen sınıflara da subclasses (alt sınıflar)… Continue reading Weekly C++ 4
Weekly C++ 3
CLASSES vs STRUCTS Struct birçok özellik bakımından sınıflara benzemektedirler. Fakat verilerin tutuldukları alanlar birbirinden ayrılır ve en önemli farkları da budur. Yapılar stack (yığın) alanında tutulurken sınıflar heap (öbek) alanında tutulur. Bu sebep ile yapılar belli büyüklükteki verileri tutabilir. Çünkü stack alanı çok sınırlı bir veri alanıdır. Büyük veriler stack alanına yüklenmeye çalışıldığında stack overflow… Continue reading Weekly C++ 3
Weekly C++ 2
Desing Pattern Nedir? Bu terimi “Tasarım Kalıpları”, “Tasarım Şablonları”, “Tasarım Örüntüleri” gibi farklı isimlerle görebilirsiniz. Tasarım kalıpları, yazılım geliştiricilerin yazılım geliştirme sırasında karşılaştıkları genel sorunların çözümüdür. Bu çözümler, uzun bir süre boyunca sayısız yazılım geliştirici tarafından deneme yanılma yoluyla elde edilmiştir. Yaratılış kalıpları, nesneleri doğrudan oluşturmanıza değil, sizin için nesneler yaratan kalıplardır. Bu, belirli bir… Continue reading Weekly C++ 2
Udemy İndirim Linkleri
Udemy eğitim platformunda yer alan kurslarıma indirimli ulaşmak için bu yazıdaki linkleri kullanabilirsiniz.
ROS2 Navigation Consept
ROS2 navigasyon konsepti NAV2 için kullanılan server (sunucu), plugin (eklenti), cpp kitaplıkları ve harita filtrelerini içeren sunum ektedir. Video: Tıkla Navigation Conseptİndir Youtube Videosu https://youtu.be/8pxwc4yWF_g Udemy Course
