[독서] 비전공자를 위한 이해할 수 있는 IT 지식(1~4장)
*인상깊었던 부분이나 책을 읽으면서 들었던 제 생각, 혹은 기억하고 싶었던 부분에 대해 적습니다. 독후감이나 책의 평가가 아닙니다.
🌼 읽은 부분: 1장~4장
2장 프로그래밍 언어 & 운영체제
CPU: 컴퓨터의 머리역할. 연산장치
보조기억장치(HDD,SSD): 컴퓨터의 창고역할, 컴퓨터를 껐다 켜도 데이터가 남아있음, CPU보다 속도가 매우 느림
메모리: CPU의 개인 작업 공간, CPU가 작업을 수행할 수 있다.
운영체제: CPU/보조기억장치/메모리 등을 대신 관리 해주는 소프트웨어로, 윈도우/맥OS/ios/안드로이드가 있음
자바의 경우 운영체제 위에 JVM이라는 소프트웨어를 만들고, JVM에서 프로그램이 돌아갈 수 있게 함. 운영체제별로 여러 프로그램을 만들필요가 없다. 단점은 프로그램 위에 프로그램을 돌리기 때문에 느림
3장 네트워크, 클라이언트, 서버
LAN: Local Area Network로 컴퓨터가 연결된 작은 지역. LAN을 연결하는 선이 LAN선
MAN: Metropolitan Area Network 로 도시의 여러 LAN을 연결한 것
WAN: Wide Area Network 로 도시-도시, 나라-나라를 연결한 것
현재는 이 신호를 무선으로 만들어 3G, 4G, 5G로 사용
리눅스: 무료 운영체제(OS)로, git을 만든 리눅스 토발즈가 만들었다. 무료로 배포되어 다양한 버전의 리눅스가 만들어졌다. 그 중 가장 유명한 버전이 우분투(Ubuntu)임.
리눅스의 유명한 개량 버전에는 안드로이드가 있다. Redhat(레드햇)처럼 리눅스를 개량해서 유료로 판매하는 회사도 있음(운영체제의 품질을 보장해주는 장점이 있다)
리눅스는 왜 윈도우나 맥보다 쌀까? 그래픽 UI가 필요없다. 휴지통이나 바탕화면 같은 그래픽이 필요 없이 명령어로만 동작하기 때문.
4장 API
CRUD: create, read,update,delete 로 클라이언트와 서버가 서로 데이터를 요청/응답하는 방식. 각각의 주소를 가진다.
RESTful API: CRUD를 하나의 주소로 관리한다. POST, GET, PUT(PATCH), DELETE 를 통해 어떤 요청을 보냈는지 파악할 수 있음
http상태코드: 특정 http 요청이 성공적으로 완료되었는지 알려준다. 100~500번대의 숫자로 알려줌. 요청이 성공적이면 200번대 코드, 클라이언트 요청에 문제가 있으면 400번대, 서버 내부적인 문제가 있을때 500번대를 사용한다.
아래 mdn 참고
SDK: API를 제공해주는 다른 소프트웨어로 Software Development Kit의 약자. 소프트웨어를 개발하기 위한 도구. 예를들어 구글 지도를 사용하기 위해 구글에서 제공하는 지도 SDK를 설치하면 된다. 구글 SDK를 통해 구글지도에 요청을 보낼 수 있음
JSON: 서버와 클라가 데이터를 주고 받는 형식. 중괄호로 시작되어 key, value값으로 이루어짐