Do you have some time to do a simple programming problem in C for my research?more...
I want to see how C programmers solve a simple programming problem, CircularBuffer. There are no tools to set up. You will work on my cyber-dojo system. It has a build environment and a simple IDE.
Here are some of the instructions you will find when you do the exercise
Objective --------- Write a CircularBuffer module in c and make sure it works. Requirements ------------ * A CircularBuffer is sized during create. * It stores integers. * It is FIFO. * It can report its total capacity * It can report if it is empty * It can report if it is full * Putting to a full CircularBuffer * returns false * loses no prior values * Getting from an empty CircularBuffer returns a default value provided during create function. For this exercise, do not worry about: -------------------------------------- * Null pointers * Concurrency CircularBuffer Diagram ---------------------- www.wingman-sw.com/files/cyber-dojo/CircularBuffer.pdf Starting point -------------- The CircularBuffer interface is defined in CircularBuffer.h. You must develop your implementation to that interface. The architects said so. You have all the files you need, and should not need to add files or modify the makefile. Instructions ------------ Do all your work from within this cyber-dojo environment. Pressing the 'test' button saves, builds and then runs your code. Write CircularBuffer.c. Once it compiles, test that the CircularBuffer is working. Use the provided main.c to exercise your CircularBuffer. Feel free to use printf or whatever you would normally do. Do not use any unit test framework. Please do all your work in this cyber-dojo environment. NOTE: In main.c that there is a 'exercise_state' variable. It is initially set to 'writing'. Once you finish writing code, and are going to start testing, set the variable to 'testing'. Once you are satisfied that your code works, set it to 'working'.
If you are interested, please email me for a link to your exercise using address 'research AT wingman-sw DOT com'.
Published: January 05, 2018
Announcing James Grenning fall conferences and training offerings in Denmark, Sweden, Norway, Netherlands, and San Francisco.
James Grenning will deliver the keynote talk and a technical talk at Agile on the Beach in lovely Cornwall, UK. July 6-7, 2017
James Grenning will deliver the keynote talk and a two-day public TDD for Embedded C/C++ training course at the Oslo Continuous Delivery and DevOps Conference.
James Grenning will be giving the keynote talk at Agile Saturday in Tallin Estonia, May 6, 2017. A public training course is scheduled for May 8-9, 2017.more...
James is the author of Test-Driven Development for Embedded C.