- C언어로 is_alpha, memset, strchr, atoi등 다양한 표준 C라이브러리에 있는 함수들을 실제로 구현
- C라이브러리에는 존재하지않지만, 유용한 기능인 substr, strjoin, spilt, strtrim등의 함수를 구현.
- C라이브러리에는 존재하지않지만, list_new, list_addfront 등 연결리스트와 관련된 여러가지 함수를 구현
- 총 43개의 함수를 구현후 기계채점 통과
- C언어로 printf함수를 구현
- C에서 지원하는 가변인자의 사용방법 공부
- printf가 지원하는 다양한 표현(%u, %X, %% 등등)과 printf의 반환값을 공부
- 가상머신을 이용해 운영체제를 설치
- LVM, SSH, UFW, sudo등 다양한 용어 파악
- 관리자(root)로써 한 운영체제를 관리하는방법 공부
- 강력한 패스워드 정책 적용
- 다양한 정보를 broadcast하는 스케쥴링을 cron을 활용해 구현
- C언어로 read, malloc, free를 활용해 get_line함수를 구현
- 정적변수의 개념과 필요성에 대해 공부
- read함수를 어떻게 사용하는지, 어떤방식으로 처리하는지 공부
- EOF의 개념 공부
- C언어로 간단한 그래픽이 들어간 게임 만들어보는 과제
- open_GL로 구현한 low한 레벨의 그래픽을 처리할수있는 라이브러리인 mlx라이브러리 공부
- 키를 받아 캐릭터를 움직이는 이벤트 처리방식 공부
- 게임의 맵을 어떻게 받아 처리할것인지 공부
- C언어로 다양한 숫자가 들어오면 숫자들을 제한된 명령으로 정렬하는 과제
- 가용한 명령은 스택 두개와 스택끼리 옮기는 명령, 스택을 회전시키는 명령, 한 스택위의 두개를 바꾸는 명령
- 어느정도 규모있는 프로그램을 작성하는 방법과 오류처리하는 방법 공부
- C언어로
file1 < ls | cat > file2
와 같은 형태의 쉘 명령어를 프로그램으로 구현 - 표준입력, 표준출력, 파일 디스크립터등 다양한 리눅스 개념 공부
- fork(), pipe() 함수등 다양한 시스템 콜 함수 공부
- C언어로 철학자들이 포크들고 스파게티 나누어먹는 문제 구현
- 뮤텍스를 통한 임계구역 설정, 쓰레드를 사용한 프로그래밍 공부
- 동시성 프로그래밍시 일어날수있는 다양한 문제(ex) datarace) 해결
- 객체지향적인 프로그램 작성
- 팀과제로 협업 경험
- C언어로 리눅스의 쉘 구현
- 30개간 넘는 파일의 거대한 규모의 프로그래밍 경험
- brute_force인 input을 오류없이 처리하는 공부
- 다양한 파싱 테크닉 구현
- 쉘이 작동하는 방식의 깊은 이해
- TCP/IP 프로토콜에 따라 적절하게 IP주소를 할당하는 방법을 공부
- 10개에 레벨에 걸처 다양한 케이스에 대해 네트워크 관리자로서의 역량 강화
- 전반적인 네트워크 지식 점검
- 팀과제로 협업 경험
- C언어로 조금 복잡한 그래픽 과제 구현
- 2D의 맵을 3D처럼 보이게하는 레이캐스팅 기법 공부
- 어려운 input을 잘 파싱하는 방법을 공부
- CPP로 CPP의 개념을 공부하는 10개의 과제를 해결
- 객체지향적인 프로그래밍 공부(상속, 다형성, 추상화, 캡슐화)
- CPP에서 제공하는 표준 템플릿 라이브러리 공부
- CPP로 irc 채팅서버 구현
- kqueue를 사용한 I/O 멀티플렉싱 구현
- Docker Compose를 사용해 MariaDB, WordPress, Nginx 컨테이너 배포
- 프론트엔드 개발자로서 탁구게임 구현