| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- 21313 nodejs
- 모던자바스크립트DeepDive
- 자바스크립트 함수
- 2217 node.js
- 백준1026
- 노개북
- 1541 node.js
- 모던자바스크립트
- 자바스크립트 딥다이브
- 개인프로젝트
- const
- flex box
- 1026 node.js
- 백준25176
- 노마드스터디
- 1931 node.js
- 개발자
- 백준21313
- 1789 node.js
- 11047 node.js
- IT5분잡학사전
- 자바스크립트 일급객체
- 코딩
- 14655 nodejs
- 백준1789
- 노마드북클럽
- 모던자바스크립트 딥다이브
- CSS flex
- 11399 node.js
- Javascript
- Today
- Total
캐또's coding
#2. IT 5분 잡학사전 - 프로그래머로서의 성장 본문
- Day.2
- 오늘 읽은 범위: 챕터 6 ~ 챕터 10
- 오늘의 TIL 3줄 요약
- 오류는 프로그래머를 오히려 성장시킨다. 물론 잘 대처했을 때
- 결국 내가 가장 필요한 언어부터 해도 된다
- 100% 완벽해야 프로그래밍을 할 수 있는 건 아니다. 일단 만들자!
책에서 기억하고 싶은 내용을 써보자
- 코드가 작동하지 않는 이유는 '코드를 입력한 나 자신 때문이다'(40p)
- 무언가를 만들고 창조해야 여러분의 프로그래밍 실력이 늘 거야(42p)
ep.06. 왜 나만 오류가 자주 생길까?
개발을 해보면 오류를 자주 볼 수 있음. 더 나은 개발자가 되기 위해 오류에 대처하는 방법 필요
오류를 통해 훌륭한 개발자가 되는 방법?
1. 문제가 생겼을 때 나 자신을 문제에서 빼지 말 것. ->남탓(책, 문서 등) ㄴㄴ
2. 오류부터 고치려고 무작정 달려들지 말 것 -> 문제해결만? ㄴㄴ 반복되는 실수 하지 않게 원인 해결
3. 오류 메시지를 읽을 것 -> 오류메시지에 답이 있다
프로그래밍 초보자가 하기 쉬운 실수
실수1. 공부만 하고 실제로 무언가 만들어보지 않는다.
실수2 항상 프로그래밍을 할 준비를 더 해야 한다고 생각한다.
ep.07 파이썬은 왜 이렇게 인기가 많을까?
개발자의 성지인 스택오버플로의 설문 결과 = 2018부터 계속 인기가 올라가는 중
이유1. 영어와 비슷해서 친숙하다. -> 초보가 봐도 '아 이런 거 아닐까?'가 가능
이유2. 활용 범위가 매우 넓다. -> 전문도구X 만능도구
이유3. 커뮤니티가 매우 크다. -> 도움 받을 사람이 많다는 뜻도 됨
이유4. 업무 자동화에 찰떡 -> Scripting 즉 반복 자동화에 매우 좋음
세상에서 가장 난해한 프로그래밍 언어
1. Brainfuck 미니멀리즘으로 만들어서 ><+-.,[] 이것만으로 프로그래밍 해야됨 ㅋㅋㅋ
2. ArnoldC 아놀드 슈워제네거 + C 언어의 방식
* 개인적으로 찾다보니 엄준식 이런 언어도 있었음 ㅋㅋㅋ
ep.08 파이썬이 C언어보다 느린 이유는?
파이썬이 그렇다고 느린 언어는 아님. 일단 모든 언어의 속도가 갖지는 않음 왜냐?
컴퓨터가 프로그래밍 언어를 어떻게 받아들이는지를 알면 됨.
컴퓨터는 0과 1의 세계 -> 프로그래밍 언어를 0과 1로 바꿔야 됨
- 2가지 방법으로 번역되는 프로그래밍 언어: 번역 방법에 따라 나뉨
1. 인터프리트 언어Interpreted language (동시 통역 느낌)
파이썬, JavaScript. 인터프리터가 프로그래밍 언어를 실시간으로 통역해줌.
2. 컴파일 언어Compiled language (번역 느낌)
C. 번역가가 원고를 읽고 통으로 번역해주는 느낌.
속도 차이가 나는 이유?
인터프리터가 매 순간마다 언어를 0과 1로 통역해야하니까 코드 수 = 인터프리터 작업수. 근데 C는 한번에 묶어서 번역해주니까 중간 과정이 매우 단순
인터프리터언어는 오류를 제때 알기 힘들 수 있음. 쭉 가다가 중간에 오류 발생하면 이때까지 해온 시간 날리는 느낌. 컴파일언어는 오류지점이 이해되지 않아 라면서 대화를 바로 하지 않음.
ep.09 자바스크립트는 웹 개발에만 쓰는 언어일까?
가장 유명한 언어? 파이썬 No 자바스크립트! 왜? 웹사이트=자바스크립트니까
그 외에도 디자이너, 미디어, 예술 분야에서 다양한 활용도가 있음.
- 하이브리드 앱, 크로스 플랫폼 => 모바일 앱(iOS, 안드로이드)를 만들 수 있음
- 데스크톱 소프트웨어 => 슬랙, 스카이프, 깃헙 등
- 게임 => wanderers.io 의 게임 등
- 3D, VR, AR의 개발
- 머신러닝 => 텐서플로우.js 등을 활용하면 가능
ep.10 코틀린은 정말로 자바와 100% 호환될까?
자바를 대체할 것이라는 코틀린 실제 100%호환 되느냐?
여기서 100% 호환이 된다라는 뜻은= 자바로 개발한 것을 코틀린으로 바꿔도 동작한다는 뜻
이게 가능한 이유는?
코틀린의 탄생 비화: 젯브레인즈에서 만들어짐, 기존 IDE개발 70%가 자바인데 호환되는 언어 코틀린이 만들어짐.
호환: 자바에서 코틀린이 코틀린에서 자바가 가능함. 자바 가상머신 떄문임.
앞서 설명한 컴파일 인터프리터 관련되기도 함. 컴파일 즉 컴필레이션Compilation 방식은 실행 환경(플랫폼)이 달라지면 개발자가 컴파일 과정을 실행해줘야함.(참고로 인터프리리테이션Interpretation 방식은 알아서 실시간 번역이니까 필요 없음)
자바는?
자바코드 -> 자바 바이트 코드 -> 자바 가상 머신 -> 윈도우용 기계어, 리눅스용 기계어, 맥OS용 기계어
그래서 코틀린을 자바 바이트 코드로 컴파일하기만 하면 됨
코틀린을 써야 하는 이유는?
장점1. 코틀린은 null에서 안전한 언어. null이 발생 가능성을 검사하는 언어=오류가 줄어들 수 있다.
장점2. 코루틴coroutine을 지원하는 언어. 한번에 많은 일을 실행할 수 있기에 좋다.
코틀린을 활용할 수 있는 방법은?
안드로이드, 자바스크립트 컴파일, 리액트, node.js, 데이터사이언스 등 사용 가능
== 자바 개발자를 꿈꾸는 사람이라면 코틀린도 공부해보면 좋을 것임!
전 편에 이어서 난해한 언어
3. Shakespeare: 희극처럼 작성하게 되어 있음
4. LOLCODE: 인터넷 용어들로 구성되어있음
5. emoji-gramming: 이모티콘으로 구성되어 있음.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적기
[많고 많은 언어들, 내가 하는 언어, 그리고 내가 만들 프로그램]
우리가 흔히 아는 프로그래밍 언어부터 시작해서 정체를 알 수 없는 정체불명의 언어까지 세상에는 많은 언어들이 존재한다. 그리고 내가 공부하고 있는 JavaScript 역시 장점, 단점을 이야기 하지만, 요즘 세상에는 점점 많은 것들을 할 수 있게 바뀌고 새로운 것이 나온다면 그것으로 보완해볼 수 있을 것이다. 마치 코틀린으로 자바스크립트를 컴파일해서 쓰는 것처럼.
결국 프로그래머로서 중요한 점은 내가 100% 만전일 때까지 기다리는 것이 아니라 우선 도전하고 우선 만들어보면서 해보면서 깨달아가는 것인 것 같다.
궁금한 내용, 잘 이해되지 않는 내용
- 없음
'완료페이지 > IT 잡학사전' 카테고리의 다른 글
| #6. IT 5분 잡학사전 - 자료구조와 알고리즘 필요성과 이해 (0) | 2023.01.19 |
|---|---|
| #5. IT 5분 잡학사전 - 백엔드가 뭐죠 (0) | 2023.01.18 |
| #4. IT 5분 잡학사전 - API 나도 해볼까? (0) | 2023.01.17 |
| #1. IT 5분 잡학사전 - 기초부터 시작해보자 (0) | 2023.01.14 |
| #0 IT 잡학사전 독서 시작 (0) | 2023.01.13 |