Barr Group TwitterBarr Group Vimeo

Course Overview

Course Length: 
2 Days
CEUs: 
1.5
Format: 
Hands-on/Lecture

  Download the Complete Course Syllabus

Once learned, the technique of event-driven programming is a fun and easy way to write reliable and maintainable embedded software. Unfortunately, most embedded programmers either haven't heard of event-driven programming or don't know how to use it properly.

This course trains programmers to architect firmware with an event focus and shows the many benefits of using state machine frameworks to implement the resulting design. Attendees will also learn UML's statechart notation and a variety of best practices for effective event-driven programming in C (contact us about C++ options).

Topics covered in this course include:

  • Reactive Programming
  • UML Statecharts
  • Design Patterns
  • Frameworks
  • Other Related Topics 

This course is appropriate for:

  • Embedded software developers
  • Embedded software architects

Prerequisites:  Attendees should already be familiar with the C and/or C++ programming language before taking this course.

Requirements:  Each student will need a computer, such as a laptop, running XP or a newer version of Windows with an available USB port and administrator privileges. (Windows over Mac OS X generally works.)
 

Syllabus

The following is a summary of the major course topics and should not be considered the section-by-subsection lecture breakdown.

  • Reactive Programming
    • Events and Reactions
    • Event Queues
    • State Machines
    • Run-to-Completion
    • Active Objects
  • UML Statecharts
    • States and Transitions
    • Guard Conditions
    • Actions and Reactions
    • Entry and Exit Actions
  • Design Patterns
    • Ultimate Hook
    • Reminder
    • Deferred Event
    • Orthogonal Component
    • Transition to History
  • Frameworks
    • Inversion of Control
    • Event Delivery
    • Garbage Collection
    • Time and Power
  • Related Topics
    • Common Pitfalls
    • Preemption and Priority
    • Software Tracing
    • Debug and Test

Related Courses

Find out More

To find out more about our upcoming public trainings, go to our Training Calendar.

Contact Us to find out more about this course or to enquire about an on-site training at your company.

Recording Policy

All Barr Group Training Public and On-site courses may not be audiotaped, videotaped or photographed without consent from Barr Group's executive team.  Barr Group reserves the right to record portions or all of a training course for instructional purposes.  As a result, attendees present may also appear on the recording.