도서/비전공자를 위한 이해할 수 있는 IT 지식 9

비전공자를 위한 이해할 수 있는 IT 지식 10일차

TIL (Today I Learned) 2023-12-05 오늘 읽은 범위 10장 정리 책에서 기억하고 싶은 내용 1. 개발을 시작하면 일어나는 일들 오늘날 IT 세상에 다양한 기기들이 있지만 공통점은 컴퓨터라는 점이다. 프로그램 중 운영체제는 각 부품의 제어를 대신해준다. 이 운영체제를 기반으로 하는 개발자를 클라이언트 개발자라고 한다. 반면, 데이터를 가공, 보관, 응답 처리하는 서버 컴퓨터는 리눅스라는 운영체제를 주로 이용한다. 안정적이고 무료기 때문이다. 이 서버 컴퓨터용 운영체제를 기반으로 하는 개발자를 서버 개발자라고 한다. 이 둘은 특정한 주소와 메소드로 이루어진 API를 통해 요청과 응답을 주고 받는다. 2. 아웃트로 IT의 발달은 IT 뿐만 아니라 택시, 금융, 유통 등 다른 산업군에도 ..

비전공자를 위한 이해할 수 있는 IT 지식 9일차

TIL (Today I Learned) 2023-12-05 오늘 읽은 범위 9장 협업, 소스관리, 디자인 책에서 기억하고 싶은 내용 1. 커밋이요? 머지요? 뭐요? 깃은 '리누스 토발즈'가 개발한 프로그램이다. 커밋(commit)은 현재까지의 개발단계를 표기해두는 것으로 메모와 함께 기록한다. 깃은 이런 기록과 기록 사이의 변화와 기록 내용, 담당자 등 모든 기록을 추척할 수 있도록 되어 있다. 추후 이전 단계로 롤백 해야하거나 여러 버전 중 하나를 선택해야 할 때 이런 기록을 토대로 코드를 옮겨 다닐 수도 있다. 깃에는 브랜치와 머지라는 기능이 있다. 예를 들어 하나의 프로젝트로 버전1, 버전2, 버전3과 같이 여러 형태로 개발할 때 브랜치를 각각 나눠서 개발을 진행하고 진행 상황을 기록할 수 있다. ..

비전공자를 위한 이해할 수 있는 IT 지식 8일차

TIL (Today I Learned) 2023-12-04 오늘 읽은 범위 8장 프레임워크와 라이브러리 책에서 기억하고 싶은 내용 1. 코코아요? 그거 먹는 거잖아요. 그리고 자꾸 왜 도서관 얘기를 하는거죠?(프레임워크, 라이브러리) 프레임워크는 개발을 더 빨리 할 수 있도록 도와주는 기본 틀과 같다. 페이스북이나 구글 같은 회사에서 만들기도 하고, 개인이 만들기도 한다. 해당 회사의 앱을 프레임워크를 통해 빨리 개발하면 그만큼 양질의 앱을 더 많이 확보할 수 있기 때문에 회사에서 프레임워크를 제공하는 측도 있다. 라이브러리는 다른사람들이 만들어 놓은 코드모음이다. 프레임워크는 그 틀을 벗어날 수 없지만, 라이브러리는 필요한 부분들을 조합해서 쓸 수 있다. 오늘 읽은 소감은? 예전에는 프레임워크와 라이브..

비전공자를 위한 이해할 수 있는 IT 지식 7일차

TIL (Today I Learned) 2023-12-03 오늘 읽은 범위 7장 데이터베이스와 이미지 처리 책에서 기억하고 싶은 내용 1. 쇼핑몰을 생각해봅니다. 여기서 데이터는 대체 뭘까요? 쇼핑몰에서 회원정보, 아이디, 주문 상품, 가격 등 서로 관계가 이어진 텍스트를 데이터라 한다. 많은 데이터 중에서 0.001%라도 오류가 발생한다면, 이 후 누적된 오류는 걷잡을 수 없는 큰 오류와 피해를 발생시킨다. 이처럼 데이터는 단 1%의 결점도 없어야 한다. 이를 무결성이라 한다. 따라서 데이터를 다루는 사람들은 보수적일 수밖에 없다. 이런 데이터를 관리하는 주요 방법론이 '관계형 데이터베이스'이다. 쉽게는 엑셀처럼 행렬로 관리한다고 생각하면 된다. 관계형 데이터베이스에서는 엑셀의 각 영역에 비추어 She..

비전공자를 위한 이해할 수 있는 IT 지식 6일차

TIL (Today I Learned) 2023.11.30 오늘 읽은 범위 6장 웹 책에서 기억하고 싶은 내용 1. 웹은 어떻게 이루어져 있고, 어떻게 동작할까? 1) 웹의 기본 : 운영체제와 프로그램에 상관없이 일정한 형식이 언제나 동일하게 보이도록 하기 위해 HTML이 탄생했다. 정보 전달에만 초점을 맞추다보니 디자인을 입힐 수 있는 CSS가 탄생했고, 이 둘을 모두 작업하는 것을 퍼블리싱 작업이라고 한다. 최근 시맨틱 태그의 중요성이 강조되면서 HTML을 더 구조적으로 작업하는 것을 마크업 작업, 이런 작업을 주로 하는 분들을 마크업 개발자 라고 하기도 한다. 로그인, 회원가입, API를 통한 json 정보를 서버와 주고 받는 것은 별도의 프로그래밍 언어가 필요하며, 웹에서는 JavaScript를 ..

비전공자를 위한 이해할 수 있는 IT 지식 5일차

TIL (Today I Learned) 2023.11.29 오늘 읽은 범위 5장 애플리케이션 책에서 기억하고 싶은 내용 1. 설치한 뒤 실행하는 애플리케이션의 특징 애플리케이션이란? : 설치해서 사용하는 모든 프로그램을 의미한다. 시대나 사용기기에 따라 응용 프로그램, 앱, 어플리케이션 이라는 명칭으로 부르기도 하나 모두 같은 의미이다. 앱은 일반적으로 버전 업데이트 이슈가 있더라도 일정기간 업데이트를 하지 않은 채로 사용할 수 있다. 그런데 예를 들어 게임의 10,000원 아이템이 11,000원으로 갱신되어야 할 때, 이런 정보가 앱 자체에 있다면? 신규 설치자와 업데이트 하지 않은 기존 사용자간에 아이템 가격차가 발생하고, 이는 큰 문제로 이어질 수 있다. 그렇기 때문에 상황에 따라 변동 가능한 정보..

비전공자를 위한 이해할 수 있는 IT 지식 4일차

TIL (Today I Learned) 2023.11.28 오늘 읽은 범위 4장 API와 JSON 책에서 기억하고 싶은 내용 1. POST는 뭐고, GET은 뭐죠?(feat. 개발자의 암호문) 클라이언트는 서버에게 요청을 보낸다. 서버는 요청이 어떤 내용인지 구분할 수 있는 체계가 필요한데 이를 API라고 한다. API는 서로 다른 프로그램에서 요청과 응답을 주고받을 수 있게 만든 체계이다. 어디로 요청을 보내는지에 따라 어떻게 응답할지 미리 정해놓아야 하는데 예를 들어 클라이언트가 서버주소/A 라는 요청을 보내면 서버에서는 내용을 확인 후 로그인처리하는 식이다. 이런 서버 주소 정의와 경로 등은 백엔드에서 주도한다. 클라이언트는 크게 CRUD(Create, Read, Update, Delete)로 요청..

비전공자를 위한 이해할 수 있는 IT 지식 3일차

TIL (Today I Learned) 2023.11.27 오늘 읽은 범위 3장 네트워크, 클라이언트, 서버 책에서 기억하고 싶은 내용 1. 국민학교와 초등학교 시절 이야기 컴퓨터가 연결되면 서로 데이터를 주고 받을 수 있는데, 컴퓨터가 연결된 작은 지역을 LAN(Local Area Network)라고 한다. 도시의 여러 LAN을 하나로 연결해 MAN(Metropolitan Area Network)를 만들었고, 도시와 도시, 나라와 나라를 연결해 WAN(Wide Area Network)를 만들었다. 2. 한강에서 카카오톡을 다운로드하고 실행하면 일어나는 일들 앱스토어에서 앱을 다운로드 하면 가까운 기지국으로 신호가 전달되고, 신호는 WAN을 따라 정해진 목적지로 이동한다. 앱스토어를 관리하는 애플은 카카..

비전공자를 위한 이해할 수 있는 IT 지식 2일차

TIL (Today I Learned) 2023.11.25 오늘 읽은 범위 2장 프로그래밍 언어 & 운영체제(OS) 책에서 기억하고 싶은 내용 1. 프로그래밍 언어가 '언어'라고?(못 알아듣겠는데..) 컴퓨터는 기계어인 0과 1로 명령을 처리한다. 인간과 컴퓨터 사이에는 '컴파일러'가 있어서 인간의 요구(명령)를 컴퓨터에게 기계어인 0과 1로 전달한다. 2. 개발자는 앉아서 뭐 하는 거지(뭔가 치긴 치는데...) 개발자는 컴퓨터에게 시킬 일을 문서로 만드는데 이를 프로그래밍 혹은 코딩이라고 한다. 개발하기 위한 모든 것들을 제공해 주는 환경을 IDE(통합 개발 환경)이라고 하며 IDE는 보통 어떤 분야에 특화되어 있다. 3. 뭐가 이렇게 많아?(C언어, 자바, 파이썬... 등) 개발자들은 기존의 것을 발..