웹의 기본 내용
HTML
연구소 내 직원들이 서로 다른 운영체제, 애플리케이션을 사용해 정보 교환: 각 운영체제에서만 호환되는 파일 주고받아 열지 못함
→운영체제, 프로그램 상관없이 일정한 형식이 동일하게 보이는 문서 필요해짐
=HTML
브라우저만 있다면 어디서도 동일한 내용을 볼 수 있음
정보를 체계화하는 코드 존재: 태그
프로그래밍 언어가 아님, 즉 일을 시킬 수 있는 언어가 아니라 브라우저가 볼 수 있는 문서를 적는 언어
CSS
HTML에 디자인을 입힐 수 있는 코드
HTML은 정보만, CSS는 디자인만 표현하는 코드
HTML+CSS 작업=퍼블리싱 작업
마크업?
Hyper Text Markuo Language에서의 M
HTML 작업을 의미
Javascript
ex: 네이버 검색창에 A를 입력했을 때 나타나는 추천 키워드를 작동하게 하는 것
‘실시간’으로 이뤄지는 작업
내가 HTML을 지운다고 문제가 생길까?→아님!
왜? 클라이언트에서 GET요청으로 서버에서 받아온 ‘사본’이기 때문
→🚨🚨이게 웹과 앱의 가장 큰 차이점!
애플리케이션 recap
app:버전 변경을 위해 업데이트 필요, 유저가 다운받아줘야 함
그러나 웹은 서버의 원본 바꿔주면 끝남
이때 유저가 새로고침만 하면 반영됨. 이 새로고침은 ‘나갔다 들어오기’만 하면 반영됨
웹과 앱의 장단점
웹: 수정 용이(by refresh)
항상 새로고침해서 매번 html,css, js 다운받아야 하므로 네트워크 영향에 따라 큰 변동성
애플리케이션: 수정 어려움
카톡은 기기에 내용 저장하기 때문에 가끔씩 용량 확보해줘야 함→속도 확보
브라우저, 브라우저 파편화
웹개발 못해먹겠다고 하는 이유!
브라우저
크롬, 익스플로러, 파이어폭스, 오페라, 사파리 등
→모두 설치가 필요한 애플리케이션
즉, 브라우저 종류*버전 수만큼 존나 다양한 경우의 수가 생기는 문제
→’브라우저의 파편화’
반응형 웹
전에는 다들 모니터만 썼기 때문에 양옆 대충 자르고 가운데 몰리게만 만들면 됐음
→ 스마트폰, 태블릿의 등장
→모바일용 웹페이지 제작
→두번씩 수정, 버그 가능성 더 커짐, 비효율적
→해결책: 반응형 웹
BUT 그만큼 서로 다른 기기 지원하기 위해 코드가 더 들어가서 비싸짐
하이브리드 애플리케이션
왜 자꾸 웹개발자한테 얘기하래?
마소: 익스플로러 제작자
구글: 크롬 제작자
애플: 사파리 제작자
각자 회사의 브라우저 많이 쓰길 원함→ 운영체제 자체에 브라우저 내장해 출시
기존에는 각 프로그램을 위해 정해져있는 언어만 활용해서 개발=네이티브 애플리케이션
(원래 정해진 언어로 운영체제 자체의 기능 사용하므로)
운영체제 속 브라우저 내장 이후
애플리케이션 일정 부분에 브라우저를 올릴 수 있게 됨(???)
→브라우저 부분은 서버에서만 수정, html,css,js만 수정하면 됨
여전히 네트워크에 좌우되는 부분이 많음! 느려지면 사용자 떠남
네이티브로 수정 시
→사용자가 직접 업데이트
→수정, 심사 오래걸림
이렇게 어느 부분이 웹이고 앱인지는 api문서에 기재되어 있음
애플리케이션의 특징
설치해서 사용하는 모든 프로그램(윈도우::응용 프로그램)
운영체제에 올라가는 프로그램=설치하는 프로그램=응용프로그램=애플리케이션=어플
버전
프로그램 #.#.#
애플리케이션의 업데이트
변동 가능한 회사 정책 관련 정보는 API로 불러오게 함
앱 생태계
모바일: 앱 마켓
앱 마켓을 소유하는 회사의 룰을 따르게 됨
appstore 심사 지침 존재
'Computer Science > Network' 카테고리의 다른 글
TCP 3way, 4way handshake (0) | 2023.03.08 |
---|---|
맨날 헷갈리는 Origin Site Host 개념 구분하기 CORS와 CSRF 이해하기 (0) | 2022.10.17 |
HTTP 완벽 가이드 목차대로 공부하기 (0) | 2022.05.08 |