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

tiki·2021년 7월 21일
0

목록 보기
1/2

개발과 IT 관련 서적을 읽어보려고 찾던 도중 자주 보는 개발바닥 유튜브에서 마침! 영상이 올라와서 바로 구입했다. 유튜브 너무 재미있게 잘보고 있습니다 ㅎㅎ


요약

목차

  1. 오리엔테이션
  2. 프로그래밍 언어 & 운영체제
  3. 네트워크, 클라이언트, 서버
  4. API와 JSON
  5. 애플리케이션
  6. 데이터베이스와 이미지 처리
  7. 프레임워크와 라이브러리
  8. 협업, 소스관리, 디자인
  9. 정리

부록- API 문서를 통해 서비스 분석하기

리뷰와 새롭게 알게된 사실

❓ 프로그래밍 언어는 왜이렇게 많을까?

👉 여러환경에서 자신이 발명한 프로그래밍 언어를 사용하고 널리 알리다보니 각자의 장점과 단점이 들어났고 이런 과정 속에서 선택된 언어는 계속 살아남고, 또 누군가는 단점을 보완하고 장점을 더 살린 새로운 언어들을 탄생시키기 때문이다.

JVM의 탄생, 자바의 위대함

👉 프로그래밍 언어가 다양한 만큼 운영체제도 다양합니다. 이 운영체제마다 프로그램이 돌아가는 방식이 조금씩 다른데.. 이 모든 니즈를 맞추기 위해서는 각각 운영체제에 맞게 프로그래밍을 다시해야했죠.. 그때! 이 문제를 해결하기 위해서 JVM(여러가지 운영체제를 각각 코딩하지 않고 하나의 프로그램으로 여러가지 운영체제에서 동일하게 돌아갈 수 있도록 한 것)이 나오게 됩니다.

리눅스와 우분투

👉 여러가지의 운영체제중 리누스 토발스라는 사람이 '리눅스' 라는 운영체제를 만들어 무료로 배포하게 됩니다. 무료로!! 따라서 서버개발자들이 이 리눅스를 이용해서 서버를 만들기 용이했고 여러가지 개량버전도 만들어지게 되었습니다. 이것이 우분투, 레드햇, 안드로이드가 됩니다.

API & RESTful API

👉 API란 클라이언트, 서버와 같은 서로 다른 프로그램에서 요청과 응답을 주고 받을 수 있게 만든 체계이다. 그런데 사람이 API 체계를 각자 만들어나가기 때문에 기능들이 겹쳐서 문제를 일으키는 경우가 많아졌습니다. 따라서 개발자들은 좀 더 체계적으로 API를 관리하고 싶었기에 REST API, RESTful API가 탄생됩니다.

JSON

👉 API 소통시에 응답 및 요청에서 데이터를 보내야하는 경우가 생깁니다. 이때 데이터를 보내는 형식은 그 당시 개발자들이 만든 여러가지의 형식이 있어서 이를 처리하는데 어려움이 있었고, 따라서 제일 유명한 형식을 두루 쓰기로 했고 그것이 JSON 입니다.

웹에 대한 흐름

👉 모두가 다른 운영체제를 사용해서 공통적으로 정보를 보기가 힘들다!
-> 그러면 문서를 작성하는 공통적인 틀을 만들자!
-> HTML의 탄생
-> 정보만 전달하기 보다는 디자인적으로 꾸미고 싶어!
-> CSS의 탄생
-> 단순한 정보 제공을 넘어서 기능을 제공할 수 있는 프로그래밍 언어가 필요
-> JavaScript가 이 역할을 수행

웹 vs 애플리케이션

👉 웹

  • 서버에 있는 원본파일을 수정하면 유저가 업데이트 하지 않아도 새로 고침하면 수정사항이 반영됩니다.
  • 항상 HTML, CSS, JS 등 파일들을 받아야하기 때문에 네트워크가 느려지면 치명적이다.

👉 어플리케이션

  • 수정 및 변경사항이 필요할 때 심사 기간이 소요된다. 그리고 이를 사용자들이 업데이트를 직접해주어야 합니다. 따라서 사용자들이 각각 다른 버전을 가지고 있을 수도 있습니다.
  • 웹보다 네트워크의 영향을 조금만 받도록 만들 수 있다.(카카오톡은 이전 대화 내용을 사용자의 기기에 저장하므로서 속도 이슈를 해결하였다.)

데이터의 보관 방법

👉 서버

  • 자주 변경이 일어나거나 데이터들 간의 관계가 생기는 경우에는 DB에 데이터를 저장하고 관리하는 것이 좋다.

👉 클라이언트

  • 클라이언트에서 데이터를 보관하는 이유는 네트워크에 대한 종속성을 낮추고 서비스가 빨라지기 위함이다. 이때 이런 데이터들은 쉽게 변경되지 않는 데이터들이여야 한다. 클라이언트에 저장된 이미지를 바꾸기 위해서는 애플리케이션 자체를 업데이트 해야하기 때문이다.

프레임워크 VS 라이브러리

👉 프레임워크가 더 큰 개념입니다. 라이브러리와 코드들이 모여서 프레임워크를 이루게 됩니다. 한 프로젝트에 여러가지 라이브러리는 사용할 수 있지만, 프레임워크는 단 한개만 사용 가능합니다.

정리

오리엔테이션에서 가장 강조하는 것은 다음과 같다.

개발와 업무에서 가장 중요한 것은 커뮤니케이션이다!

이처럼 업무에서 원할한 커뮤니케이션을 위해서 기본적으로 프로그래밍에 대한 기초적인 지식을 알려주는 책이다. 비전공자가 보았을 때 업무에서 주고 받을 수 있는 단어의 뜻이나 상황에 대해서 알려주는 느낌으로 책이 전개된다.

하지만 개발을 하고 있는 사람의 입장에서 보았을 때도 충분히 배울 수 있는 점이 많고 언어에 대한 정확한 정의나 뜻을 리뷰하기에 좋았다. 그래서 책이름은 비전공자를 위한 으로 되어있지만 그 누가 읽어도 좋을 만한 책인 것 같다.

책을 읽고 나면 IT에 대해서 조금더 다가간것 같고 혹시나 누군가가 궁금해 한다면 이야기 형식으로 쉽게 설명해줄 수 있을 것 같은? 느낌이다. 그리고 개발 관련 커뮤니케이션에 있어서 더이상 헷갈리지 않도록 도와줄 것이다.

마지막으로 책의 말을 빌리자면

완벽한 프로세스가 없고, 고객의 니즈와 회사의 사정에 맞춰 그때그때 서비스가 계속 '발전'되어 나갑니다. 처음부터 완성된 형태를 정해놓고 만드는 것은 위험한 일입니다.!!

라는 것처럼 점진적인 발전이 가장 중요한 것이 아닐까... 프로그램이던 사람이던!!

현재 완성된 형태는 아니지만 원하는 목표를 위하여 차츰차츰 발전하는 사람이 되고 싶다는 생각이 들게 되었다.

profile
하루하루 조금씩 발전하려는 개발자 입니다.

0개의 댓글