코딩이야기/IT 5분 잡학사전

[IT5분잡학사전] DAY3. 에피소드 6 ~ 에피소드 10 : 오류는 성장의 발판이다.

Bingli 2023. 1. 15. 23:54

📙오늘 TIL 3줄 요약

  • 오류는 성장의 발판이다.
  • 뭐든지 일단 만들어보자.
  • 자바스크립트로 할 수 있는 것이 많다.

TIL (Today I Learned) 날짜 : 2023.01.15(일)


오늘 읽은 범위

[1]마당 코딩별 안내서 - 기초편

에피소드 6. 왜 나만 오류가 자주 생길까?

에피소드 7. 파이썬은 왜 이렇게 인기가 많을까?

에피소드 8. 파이썬이 C 언어보다 느린 이유는?

에피소드 9. 자바스크립트는 웹 개발에만 쓰는 언어일까?

에피소드 10. 코틀린은 정말로 자바오 100% 호환될까?


책에서 기억하고 싶은 내용

에피소드 6. 왜 나만 오류가 자주 생길까?

  • 휼륭한 개발자도 실수를 한다. 실수를 그냥 넘기지 않고 성장을 위한 발판으로 사용하자.
  • 방법 1 : 문제가 생겼을 때 나 자신을 문제에서 빼지 말 것
  • 방법 2 : 오류부터 고치려고 무작정 달려들지 말 것
  • 방법 3: 오류 메시지를 읽을 것

프로그래밍 초보자가 하기 쉬운 실수

  • 실수 1 : 공부만 하고 실제로 무언가 만들어 보지 않는다.
  • 실수 2 : 항상 프로그래밍을 할 준비를 더 해야 한다고 생각한다.

에피소드 7. 파이썬은 왜 이렇게 인기가 많을까?

  • 인기 이유 1 : 파이썬은 영어와 매우 비슷해서 친숙하다.
  • 인기 이유 2 : 파이썬은 활용 범위가 매우 넓다. → 인공지능 & 데이터 분야, 웹 개발 분야, 이미지 처리 분야, 게임 분야, GUI 분야 등
  • 인기 이유 3 : 파이썬의 커뮤니티가 어마어마하게 크다.
  • 인기 이유 4 : 파이썬의 업무 자동화에 완전 찰떡

에피소드 8. 파이썬이 C 언어보다 느린 이유는?

  • 인터프리트 언어(interpreted language) : 0과 1을 사용해서 프로그래밍 언어를 실시간으로 번역
  • 컴파일 언어(compiled language) : 번역가가 원고를 읽고 통째로 번역한 다음 전달해 주는 느낌
  • 속도가 차이 나는 이유? 인터프리터가 작업해야 하는 횟수는 코드가 많을수록 늘어난다. C는 반대로 작업 횟수가 한정되어 있다. 그러나 중간 과정이 매우 단순하다.

에피소드 9. 자바스크립트는 웹 개발에만 쓰는 언어일까?

  • 하이브리드 앱, 크로스 플랫폼 앱을 만들 수 있다.
  • 윈도우, 맥, 리눅스를 위한 데스크톱 소프트웨어를 만들 수 있다. → 일렉트론(Electron) 활용
  • 게임을 만들 수 있다. → phaser.js, impact.js
  • 3D, 가상 현실, 증강 현실 개발도 할 수 있다. → 3D(three.js), AR(A-Frame, AR.js)
  • 머신러닝도 할 수 있다. → tensorflow.js

에피소드 10. 코틀린은 정말로 자바와 100% 호환될까?

  • 젯브레인즈(JetBrains) 회사의 IDE 성능 개선을 위해 새 언어가 필요했고 그냥 코틀린이라는 언어를 만들었다.
  • 컴필레이션(compilation) : 코드 전체를 받아서 한번에 기계어로 해석하는 것
  • 인터프리테이션(interpretation) : 코드를 실시간으로 기계어로 해석하는 것
  • 컴필레이션 동작 방식이 인터프리테이션보다 빠르다.
  • 자바는 컴필레이션과 인터프리테이션을 다 활용한다.
  • 코틀린과 자바는 100% 호환된다. → 코틀린을 자바 바이트 코드로 컴파일하기만 하면 된다.
  • 코틀린 장점 1 : 코틀린은 null에서 안전한 언어다.
  • 코틀린 장점 2 : 코틀린은 코루틴을 지원하는 언어다. → 코루틴(coroutine) 문법
  • 코틀린 활용 : 안드로이드 앱 개발, 데이터 과학, 데이터 시각화 등

오늘 읽은 소감 (떠오르는 생각)

  • 코딩을 할 때 오류가 안 나기를 간절히 바라지만 나는 코딩 고수가 아니여서 오류를 마주할 수 밖에 없다. 오류가 왜 나오는 지 이해가 되지 않을 때도 많았고 오류 메세지도 읽기 싫어서 그냥 넘기고 싶을 때가 많았다. 이제는 오류가 나왔을 때 조급해하지 말고 성장의 발판이라고 생각하며 원인 분석과 함께 침착하게 대처하자는 생각을 하게 되었다.
  • 프로그래밍 초보자가 하기 쉬운 실수를 읽으며 항상 내가 부족하다고 느끼며 공부에 매진했던 모습을 반성하게 됐다. 오늘부터 뭐든지 만들어 봐야겠다.
  • 항상 인터프리트 언어와 컴파일 언어가 완전히 이해되지 않아서 헷갈릴 때가 많았는 데 책의 예시를 통해 어떤 점이 특징인지 정확히 이해되었다.
  • 자바스크립트로 생각보다 많은 것을 할 수 있어서 놀랬다. 호기심이 많은 나는 자바스크립트로 많은 것을 구현해보고 싶다.