![Logo](/Tonyg92x/42-common-core/raw/master/images/42_Logo.svg.png)
The 42 common-core formation is a programming formation. In this formation, we learn c / c++ / vm / dockers / subnetting and web developpment. The project Born2BeRoot (secure linux vm creation) and netPractice (subnetting fundamentals) are not present since they don't require any code.
Table of Contents
This is some fonctions from the c standard library. It is used afterward to do following projects.
Printf is the print fonction in c. In this project, I use va_arg as argument to enable multiple argument and variable type.
This is the classic get next line fonction. In this project, we have to handle a BUFFER_SIZE value that is the size of the read buffer size. Static variable is used to save extra character read.
Algorithm projet of sorting some numbers. There is two stack and limited actions possible to sort the number in ascending order.
In this project, we learned about a pipe: a way to communicate between two processes by linking two file descriptors.
2D graphical project using MLX visual library. MLX visual library use in the backend openGL. There is some map parsing on input and key press event, game loop and graphical rendering using premade fonctions to render it. I am not sure if I did fix the run time leak. woops
Multi threading project. It's the classical philosopher exercise to learn the basic of controlling multi-threading in a program.
This is a shell program. The non bonus is limited to pipe operators. This project is mostly about parsiong and having good small usefull fonction that you can use multiple time.
This is a remake of the Wolfstein 3D game, which is the first FPS ever made. It is in 2D in the backend, but the rendering is in 3D. To do so, we use raycasting for every pixel (width) to know the distance between the player and obstacle's. With the value of the length of the ray, we can proceed to render the pixel to showcase the map to give a distance effect. Small math project, it was very fun. I enjoyed this one by not spoilling on how to do it from other projects from other students. The fun part was trying to understand the math behind it and code it in your'e own understanding. I learn at the end that I could use a better algorithm to optimise the length of the ray calculation. I used DDA algirithm so it could be efficient, but I understood late that the length of the ray for each x or y values stay the same after the first three iteration.
This is a pricine for the CPP programing language. A Piscine is some project's done to learn a programming language.
Docker project. We have to create our own image to make a small World Press project.
IRC server. I loved this project. Unfortunatly I had only 2 weeks to do it so it had not received the loved it should have got. I have some plans to work on it in the future to optimise it, add encryption and file upload's. It really gave me some love for network programming.
Full stack web application. Ugly ass code woops