북카페 진중문고 책을 보다가 "비전공자들을 위한 이해할 수 있는 IT 지식"이라는 책을 접하게 되었다. term project나 toy project들을 하면 이해할 수 없는 용어, 원리들이 있었는데 이번 기회를 통해 이해 못했던 개념들을 다시 다질 수 있었다.
내가 봤던 개념들을 유치원생도 이해할 수 있도록 한줄 정리로 정리해보고자 한다.
cf) JVM(Java Virtual Machine)
-> 여러 운영체제 위에 자바 언어로 만든 프로그램이 돌아갈 수 있게 만듦.
ex) 파이썬....
-> 용량 한계가 있는 모바일은 모든 os에 대해서 돌아가는 프로그램의 발전이 상대적으로 느림!(많은 살마들이 쓰는 특정 언어는 곧 영향력이기 때문)
ex) 인트라넷도 군대 내의 lan/man/wan의 체계로 독자적인 망
-> 개인 컴퓨터(사용자)/'일을 맡긴 사람', '요청 보낸 이'
ex) 스마트폰/pc......
-> 요청 받고 처리/데이터 저장/데이터 주기/ 응답
운영체제: 리눅스 OS -> 무료라서 이 os를 사용
서버 프로그램:
1.우분투->리눅스 os버전 중 하나
ex) 윈도우xp, 윈도우7, 윈도우10...........
왜 윈도우/ 맥을 서버로 쓰기에는 비싼가? -> 그래픽 UI 때문/ 리눅스는 그래픽 ui필요x, 저렴, 무료
개인sever은 왜 안써?
-> 관리가 힘들다
-> 리스크를 개인 부담하기 어려움
호스팅 업체 등장(cafe24, 가비아, Aws)
-> 서버 컴퓨터 대여
-> 클라이언트, 서버와 같은 서로 다른 프로그램에서 요청, 응답을 주고 받을 수 있게 만든 체계/약속
CRUD Method
Creat -> Post
Rread -> GET
Update -> PUT(전체)/PATCH(일부)
Delete -> DELETE
여기서의 parameter -> 로그인정보,ID,password.....
ex)
{
"아이디" : "andigh23"
"비번": "a12345"
.
.
.
}
파일에 JSON형식으로 데이터가 들어감
요약
버전 업데이트마다 클라는 계속 설치해야하는 수고
같은버전 x
-> 호환x
-> 버그
-> 결제전 버전과 현 버전 가격이 다름
해결: 서버 api로 불러오게함
앱생태
: ios앱스토어 -> 심사과정 복잡 time 증가
: 플레이 스토어 -> 빠르게 올림/ 정책에 안맞으면 바로 삭제
네트워크 영향을 덜받음
ex) 카톡의 기록들은 클라이언트에 저장
-> 너무 용량이 커지면 삭제공간 확보후 속도이슈 해결
cf) 퍼블리싱
: html과 css 만드는것
브라우저를 통해 모든 os에서 작동/파일을 열수 있음
절차
-> 구분법: api문서
문제점: 결제 오류는 돈과 관련되어서 심각한 문제, 데이터 용량이 커지면 커질수록 계속 처음부터 txt파일을 일일이 찾으러 돌아다녀야함.
엑셀과 같이 row와 col에 정보에 따라 유저 데이터 쌓기
ex) 동명이인 이슈는 몇번째 row인지 고유값이 지정, issue 해결
엑셀 sheet -> table
엑셀 파일 자체 -> 스키마 / 데이터 베이스
수정 같은 CRUD 요청시 한부분만 check하면 끝!
개발자용 관계형 DB 관리 시스템
ex) MS SQL, Oracle DB, My SQL .....
클라/서버 둘다 모두 돌릴 수 있음
-> 어디서 불러오는가? -> API문서 참조
-정리
클라 = 내부 DB = 네이티브 = 프론트 = 로컬
서버 = API요청 = DB = 백 = 백엔드
용량 큼 -> 서버에서 다운 너무 많은 시간 소요 -> 클라 저장
용량 작음 -> 서버 저장 -> 나중에 서버에서 불러옴
수정사항 많아지면 클라에서 수정 업데이트 너무 많은 시간 소요하기 때문에 서버에 저장하여 수정 용이
ex) 가격 정책/프로필 수정
결론
-> 이미지 성격에 따라 다르다.
프로그래밍 언어 | 프레임워크 |
---|---|
Python | flask, django.... |
Java Kotlin | Android, Frame work.... |
..... | ...... |
- 내용참조: 비전공자들을 위한 이해할 수 있는 IT지식
- 책 사진 : http://www.yes24.com/Product/Goods/91165789
- lan/man/wan 사진: https://www.apposite-tech.com/blog/whats-difference-metropolitan-area-network-man-wide-area-network-wan/
- API 사진:https://brunch.co.kr/@ogaa2143/30
- crud사진 :https://youngjinmo.github.io/2019/08/oracle-crud/
- Restful api architecture사진: https://dilankam.medium.com/restful-api-design-best-practices-principles-ded471f573f3
7.요약 사진: http://www.incodom.kr/REST- 프레임워크 사진: https://m.blog.naver.com/dktmrorl/222121510562
- 팀쿡짤: http://34.64.107.232/tags/%ED%8C%80%EC%BF%A1