Project: Step 3
Bacteria Take Center Stage

Disclaimer: the automatically generated English translation is provided only for convenience and it may contain wording flaws. The original French document must be taken as reference!

But: A first type of bacteria, single-flagellated bacteria, appears. Nutrient sources begin to diversify.

Required concepts: classes, constructors/destructors, inheritance, polymorphism

These concepts are explained in lessons 16, 17, 18, 19, 20, and 21.

Required files : partie3.zip


Setup

The archive provided for this step contains a new version of the file CmakeLists.txt which allows you to compile the material in this section. It also contains :

For this step, you will work in the directory partie3/

General description of the classes to be created

This important step will allow you to begin modeling an initial type of bacteria, single-flagellated bacteria. You will anticipate the presence of other types of bacteria and propose a generic model of bacteria in general, allowing you to group together all the elements they have in common.

Among the characteristics of bacteria, some may mutate over time. Utility classes will be introduced to manage mutable parameters (whose values change randomly over time).

Finally, you will apply your new knowledge of polymorphism to differentiate between nutrient sources. Nutrient sources may develop spontaneously, without manual intervention.

To summarize, here is the essence of the architecture you should have achieved by the end of this stage:

Modele

Let's now begin coding. In your program, be sure to encapsulate your classes properly, in particular by not making your attributes public or protected (unless explicitly stated otherwise in the problem statement). You should also always include destructors.

Modules to be programmed

The components (modules) that need to be implemented to complete this step are as follows:

The last two steps are the most challenging
Before you start coding, make sure you fully understand the suggested implementation (for example, draw simple diagrams of your architecture, placing attributes and methods in the correct locations).

At the end of this step, the features needed to simulate the basic movement of single-flagellated bacteria as well as nutrient consumption will be available. Nutrients can be automatically generated


Back to the main document