본 포스팅은 팀노바 유튜브 채널 영상을 약간의 수정을 해서 필기한 내용입니다.
자료구조
메모리를 사용하는 방법중 하나이다.
메모리를 효율적으로, 목적에 맞게 쓰기위해 개발자들이 만들어 논 것들이다.
디자인패턴
왜 이렇게 복잡한 구조를 가진거야??
개발자들이 개발을 하다보면 관리측면에서 피로도가 높은 측면이 있었다.
대표적인 MVC 패턴을 보자.
현대에서는 디자이너와 프로그래머가 충돌되는 부분이 있다.
각자의 영역을 정확히 나누는 측면이다.
핵심은 조금더 개발을 편하게 하기 위해 만들어진 것이다.
운영체제
어플리케이션이 동작하는 공간.
프로그래밍을 어느정도 해본 다음에 접하는걸 추천한다.
하드웨어
하드웨어와 운영체제의 관계를 이해하는 것이 중요하다.
예) 특정 그래픽카드에 맞춰 게임을 개발해서 좀더 높은 퍼포먼스를 내게 하는 경우도 있다.
캐릭터 인코딩의 이해
https://youtu.be/lio09TVQ5bE ( 참고 : 1시간 정도 강의 )
우리가 사용하는 언어를 디지털화해서 표현하는 방식이다.
(ex. 서버개발자 :: 인코딩이 깨진다... )
암호학, 보안쪽에서 암호화 복호화 측면에서 문제가 생길수 있다.
운영체제에서 캐릭터 인코딩을 어떻게 다루고 있는지
데이터베이스
오라클, MySQL 등 RDBMS(관계형 데이터베이스 관리 시스템)에 국한된 이야기가 아니다.
기초부터 공부를 해보면( 파일시스템부터 쭉~ ) 데이터베이스가 창의적인 발전을 했다는걸 알게된다.
데이터 베이스의 발전은 현재 진행형!! 상당히 재밌다.
암호학에 대한 이해
암호학이란? 기본적으로 ...
HTTPS, TLS, SSL 암호화 통신을 하는 경우가 많다. ( 구간 암호화 )
전문가 까진 아니라도 개발자 측면에서 기본적인 암호학 상식을 가지고 있으면 좋다.
법적으로도 정해진 것이 있다. ( ex. 패스워드 단방향 암호화 )
네트워크 통신 프로그래밍 ( 서버와 클라이언트 개념 이해 )
웬만한 기성 어플리케이션에서 네트워크 통신이 안되는 앱이 없다.
+ 소켓통신, 채팅 등...
+ 영상스트리밍
그밖에 '정보처리기사'에 나오는 것들로 이론 공부하기
주의 :: 처음부터 기사로 공부하면 어렵다.
기능사를 공부, 개발공부를 어느정도 하고 공부하면 좋다.
자격증 시험으로서 보지 말자.
데이터 베이스 ::
전자계산기 구조 ::
현 시점보다 좀더 코어적인, 근본적인 부분에서 공부하기 좋다.
시스템 분석설계와 운영체제 ::
어떤 방식으로 프로그래밍을 해나갈 것이냐 부터 운영체제에 대한 이해를 배움으로서,
내가 동작시키는 프로그램이 운영체제와 시너지를 발휘해서 동작한다는 걸 넓은 관점에서 알게된다.
정보통신 개론 ::
앞으로 계속 중요해진다. ( ex. 5G 시대 )
위상변조. { PSK( 위상 편이 변조 ), ACK( 응답 문자 ), …, ... }
+ 뿐만 아니라, 네트워크 프로그래밍의 이론적인 부분도 배울 수 있다.