개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
문제가 생겼을 때 나 자신을 문제에서 빼지 말 것.
인터프리트 언어 vs. 컴파일 언어 => 실시간 여부, 속도 차이
코틀린은 null에서 안전한 언어다.
TIL (Today I Learned) 날짜
2024. 02. 11
오늘 읽은 범위
06. 왜 나만 오류가 자주 생길까? ~ 10. 코틀린은 정말로 자바와 100% 호환될까?
책에서 기억하고 싶은 내용을 써보세요.
외부 요인만 탓하면 발전할 수 없거든. 생각을 바꾸는 거야. 코드가 작동하지 않는 이유는 '코드를 입력한 나 자신 때문이다'라고. - 40p
인터프리트 언어는 중간에 동시 통역사 역할을 해주는 인터프리터라는 녀석이 0과 1을 사용해서 프로그래밍 언어를 실시간으로 번역해줘. ...(중략)... 컴파일 언어는 어떨까? 이건 번역가가 원고를 읽고 통째로 번역한 다음, 우리에게 전달해 주는 느낌이야. ...(중략)... 인터프리트 언어와 컴파일 언어의 차이는 실시간 여부에 달려 있어. 그리고 바로 이런 이유로 프로그래밍 언어에 속도 차이가 조금 생기는 거야. - 53p
파이썬은 컴퓨터에게 실시간으로 0과 1로 이뤄진 문장을 주절주절 실시간으로 통역해 줄 거야. 인터프리터가 매 순간 파이썬 언어를 0과 1로 통역해야 하는 것이지. 그러므로 인터프리터가 작업해야 하는 횟수는 코드가 많을수록 늘어나는 거야. 하지만 C언어는 반대야. 완성된 코드를 한꺼번에 묶어서 통번역하므로 횟수가 한정되어 있어. 그러니 C언어가 더 빠른 거야. 중관 과정이 매우 단순하잖아. - 54p
여러분이 자바로 코드를 작성하잖아? 그러면 컴파일을 해. 근데 컴파일해서 얻는 얻는 결과물은 기계어가 아니야. 자바 바이트 코드라는 것이지. 그리고 이 자바 바이트 코드는 다시 윈도우, 리눅스, 맥 OS에서 실행될 때 자바 가상 머신이라는 녀석이 해석해서 각각의 기계어로 번역해줘. 이런 자바의 특징 덕분에 코틀린이 자바와 100% 호환될 수 있어. 어떻게? 코틀린을 자바 바이트 코드로 컴파일하기만 하면 되거든. - 63p
첫 번째는 코틀린이 널에서 안전한 언어라는 거야. ...(중략)... 그리고 두 번째는 코루틴이라는 문법이야. 이 문법은 많은 일을 한 번에 실행할 수 있게 해줘. - 64p
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
오류가 나면 문서나 컴퓨터의 탓을 하며 화를 내다가, 결국은 내가 했던 실수가 오류의 원인임을 깨닫고 머쓱해 했던 나의 모습이 떠올라 뜨끔했다. 성장하려면 항상 나 자신에게 문제가 있음을 인식하고, 오류가 발생했을 때 급해지지 말고 문제를 파악하도록 하자.
코틀린의 장점에 대해 알 수 있어 좋았고, 언어의 특징과 차이에 대해 알기 쉽게 설명해준 것을 보며 앞으로의 여정에 기대감을 가지게 되었다. 요새 거의 파이썬 외에는 사용할 일이 없는데, 하던 일들이 마무리되면 새로운 언어를 공부하는 시간을 가져봐야겠다.
슬랙 스크린샷
NoSQL DB와 관련하여 좋은 글이 있어서, #dev_resources 채널에 공유했습니다.