Skip to content

gkrtjd99/42

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

42cursus

소개

42cursus는 42네트워크에서 제공하는 교육 과정(cursus)에서 진행한 프로젝트들을 모아둔 저장소입니다. 이 저장소는 학습 과정에서 수행한 다양한 프로젝트와 코드들을 공유하며, 학습 과정에서 얻은 지식을 정리하는 공간입니다.

42cursus란?

42cursus는 42경산의 커리큘럼에서 제공하는 프로젝트들로 구성되어 있으며, 주로 C 언어, 알고리즘, 시스템 프로그래밍, 네트워크, 보안, 그리고 DevOps 등의 주제를 다룹니다. 본 저장소에서는 해당 과정에서 수행한 프로젝트를 정리하고, 학습한 개념과 경험을 공유합니다.

프로젝트 목록

🔴 Circle 00

  • libft - C 표준 라이브러리의 함수들을 직접 구현하며 C언어의 기본을 다지는 첫 프로젝트

🟠 Circle 01

  • ft_printf - printf 함수를 가변 인자를 다루는 방식으로 직접 구현
  • get_next_line - 파일 디스크립터로부터 데이터를 읽어, 파일의 내용을 한 줄씩 반환하는 함수를 구현
  • born2beroot - 가상 머신에 Debian 리눅스를 설치하고, 시스템 관리 및 네트워크 기초 설정을 진행하는 프로젝트. LVM, SSH, UFW 방화벽 설정 등 기본적인 서버 관리 기술을 익힌다.

🟡 Circle 02

  • push_swap - 두 개의 스택(Stack A, Stack B)만을 사용하여 최소한의 명령어로 정렬하는 알고리즘을 구현
  • pipex - 쉘(Shell)의 파이프(|)와 리다이렉션(<, >) 기능을 pipe()와 fork() 시스템 콜을 이용해 구현
  • fdf - 3D 좌표가 담긴 맵 파일을 읽어 아이소메트릭(isometric) 투영 방식으로 와이어프레임(wireframe) 모델을 시각화하는 프로젝트. 그래픽 라이브러리(MinilibX)를 사용한다.

🟢 Circle 03

🔵 Circle 04

  • cub3D - 레이캐스팅(ray casting) 기법을 활용해 3D 1인칭 미로 게임 구현
  • NetPractice - IP 주소, 서브넷 마스크, 라우팅 등 네트워크 기초 개념을 실제 환경처럼 설정하고 문제를 해결하는 프로젝트
  • CPP_Module_00 - C++ 클래스, 멤버 함수, 멤버 변수 등의 기초 문법 학습
  • CPP_Module_01 - 생성자, 소멸자, 참조, 포인터 등 객체 지향 프로그래밍의 기초 개념 학습
  • CPP_Module_02 - 연산자 오버로딩, 정적 변수, 고정 배열 등의 개념 학습
  • CPP_Module_03 - 상속, 다형성, 가상 함수의 기초 이해
  • CPP_Module_04 - 추상 클래스, 인터페이스, 동적 메모리 관리 학습

🟣 Circle 05

  • Inception - Docker Compose를 사용하여 Nginx, MariaDB, WordPress 등 여러 서비스를 컨테이너화하고 하나의 네트워크로 구성하는 DevOps 프로젝트
  • WebServ - Nginx와 유사한 비동기 이벤트 기반의 HTTP 웹 서버를 C++로 직접 구현
  • CPP_Modules_05 - 예외 처리(try, catch, throw)학습
  • CPP_Modules_06 - 타입 캐스팅(static, dynamic, const, reinterpret_cast) 학습
  • CPP_Modules_07 - 템플릿(Template)의 개념과 활용 학습
  • CPP_Modules_08 - STL 컨테이너(vector, map, list 등)와 이터레이터 학습
  • CPP_Modules_09 - STL 알고리즘과 추가 컨테이너 활용 학습

🟤 Circle 06

  • ft_transcendence - 웹 프레임워크(NestJS, Django 등)를 사용하여 실시간 멀티플레이어 온라인 게임(퐁 게임) 웹사이트를 구축하는 종합 프로젝트

라이선스

본 프로젝트는 학습 목적으로만 사용되며, 상업적 사용은 제한됩니다.


42경산의 커리큘럼을 통해 배운 내용을 정리하고 공유하는 목적의 저장소입니다. 많은 도움이 되기를 바랍니다! 🚀

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published