본문 바로가기
ROS/ROS 논문

[ROSCon 2023] Leveraging a functional approach for more testable and maintainable ROS code

by sonysame 2023. 12. 11.

Since most code examples in ROS utilize an object oriented approach, challenges can arise when writing tests for production code due to the boilerplate code ROS introduces, often leading to unexpected bugs or flaky tests. This talk explores ways to mitigate those issues by using a functional approach. By adopting this approach, we can minimize the impact that ROS has on your code, preventing it from becoming tightly coupled and brittle. Attendees can expect an overview of ROS 2 and the conventional programming approach typically associated with it. We'll delve into how tests are usually constructed and pinpoint potential sources of bugs and flakiness. We will end by introducing a functional approach to writing test code.

 

functional programming을 사용하여 ROS2 코드 작성하는 것에 대한 강연이다. 기존 방식의 경우 flakiness를 유발하여 같은 상황임에도 결과가 다르게 나오는 부작용이 발생하였다. functional programming이란 pure function, higher order function, monad, declarative syntax을 이용하는 프로그래밍을 의미한다.