A Developing Developer
DAY 6. 파이썬,자바스크립트 문법 뽀개기 본문
내일배움캠프 4기 Node.js 6일차...
솔직히 프로젝트 끝난 뒤에 계속 될 프로젝트 걱정에 좀 걱정했는데,
다시 강의를 들으면서 Refresh 하는 느낌이 들고 좋았다.
(미친거 아니야?)
이번주는 프로그래밍 기초 주차 시작 날이다.
앞서 수강했던 웹개발 종합반, 책 '혼공스' 로 공부한 파이썬과 자바스크립트의 개념을 다시 다지는 강의를 수강했다.
솔직히말해서 다 안다면 아는 내용이지만,
(아마 다 모를거다...)
방심하지 않고 집중해서 듣기위해서 노력했다.
(살짝 루즈해서... 2배속은 비밀이다)
확실히 n회차 아는 내용을 복습하는 느낌이라 수월하게 진행했다.
하지만, 내일 있을 알고리즘이 본 게임일 거 같다는 생각이 든다.
내일은 모르겠고, 오늘 할 수 있는 최선을 다하자.
============================================================================================
09시 H 튜터님께서 이번 주차 발제를 하셨고, 발제 하던 도중 K 튜터님께서 JIT, AOT 에 관한 개발 상식을 알아보라고 하셨다.
- JIT Vs AOT
JIT 와 AOT 모두 컴파일러로 서로의 장점이 단점이자 단점이 장점이다고 할 수 있다.
그래서 적용해야 할대에 알맞게 사용해야하는 컴파일러이다.
JIT 은 Just-In-Time 의 약자로 말 그대로 소스코드를 프로그램 실행 시 즉석해서 기계어로 컴파일하여 실행시키는 방식이다.
AOT 는 Ahead of Time 의 약자로 실행 전에 바이트 코드를 기계어로 바꾸는 컴파일러이다.
JIT 의 장점은, Caching 을 통해 인터프리트 방식으로 실행되는 언어의 속도를 개선하여 컴파일 방식 프로그램 실행과 근사한 수준의 실행 속도를 낼 수 있게 해줬는데, 쉽게 말해 빠르다는 점이고,
단점은, 프로그램 실행 시간이 짧은 경우 인터프리트 방식과 속도 차이가 거의 없으며, Cashing 때문에 정적으로 컴파일 된 프로그램 보다 실행 시 메모리를 많이 잡아 먹는다는 점이다.
AOT 장점은 JIT 컴파일러가 런타임 컴파일 하기 때문에 발생하는 성능 이슈가 생기지않고 거의 네이티브의 성능을 낼 수 있다는 점이고,
단점은, 실행 전에 전체 파일을 빌드해야 하기 때문에 빌드 속도가 느려지며, 설치할 때도 기계어로 번역하는 작업까지 포함되기 때문에 느리다는 점이다. (추가로 JIT 컴파일러의 장점인 Hot Reload 기능도 사용 하지 못한다고 한다.)
결론은 개발 단계에 JIT 컴파일러를 이용해 수정사항이 빠르게 반영 될 수 있도록 만들고
프로덕션으로 배포하는 경우 AOT 방식으로 빌드해서 런타임 성능을 훼손하지 않도록 하는 것이 최선이다고 할 수 있다.
※ 프로덕션(server) : 라이브 웹 사이트 또는 웹 응용 프로그램을 배포하고 호스팅하는데 사용되는 서버 유형이다.
============================================================================================
파이썬과 자바스크립트 강의듣고 공부한거 정리를 해야하는데...
개념적인 내용이라 어떻게 정리해야 할지 막막해서 TIL 작성하기 전에, 정리(?)한 페이지 링크를 걸어 놓아야 겠다. ㅠㅠ
https://icepri3535.tistory.com/59
https://icepri3535.tistory.com/61
오늘 진짜 농도 짙은 하루를 보내는 거 같다.
그럼에도 불안한건 지난 프로젝트때 백엔드, 서버에 관한 개념이 부족해서일거 같다.
남은 시간과 주말을 통해서 공부를 다시 해야겠다.
끝
'내일배움캠프 4기 > TIL' 카테고리의 다른 글
DAY 8. K 튜터님 자료구조_알고리즘 강의(1/3), 개구간, 폐구간, 알고보면 알기쉬운 알고리즘 - 2 (0) | 2022.11.23 |
---|---|
DAY 7. 알고보면 알기쉬운 알고리즘 - 1주차 (0) | 2022.11.22 |
DAY 5. TaeCho.vil 팀 프로젝트 발표 준비 및 발표, CS 특강 (0) | 2022.11.18 |
DAY 4. TaeCho.vil 팀 프로젝트 (방명록, 제출자료 및 발표 준비) (0) | 2022.11.18 |
DAY 4. TaeCho.vil 팀 프로젝트 (방명록, 제출자료 및 발표 준비) (0) | 2022.11.17 |