밤빵's 개발일지
[TIL]20240911 웹과 애플리케이션 본문
🤓웹(Web)과 애플리케이션(Application)의 차이
나는 웹과 애플리케이션의 차이에 대해 잘 모른다. 둘 다 소프트웨어와 관련이 있다는 점은 알았지만, 구체적으로 무엇이 다른지 이해하지 못하기 때문에 오늘은 딴짓 겸 개발일지 주제로 정했다.
▶ 웹(Web)이란?
웹(Web)은 인터넷을 통해 브라우저에서 실행되는 소프트웨어나 서비스를 의미한다. 웹 페이지, 웹 애플리케이션 등 다양한 형태로 존재하며, 보통 브라우저(Chrome 등)를 통해 접근한다. 웹의 핵심은 인터넷 연결만 있으면 어디서든 접근할 수 있다는 점이다. 웹은 일반적으로 클라이언트-서버 아키텍처를 사용한다. 클라이언트는 사용자가 웹 브라우저에서 웹사이트나 서비스를 요청하고, 서버는 그 요청에 대한 데이터를 처리하고 응답한다. 웹에서는 주로 HTML, CSS, JavaScript와 같은 기술을 사용하여 사용자에게 콘텐츠를 제공하고, HTTP나 HTTPS 프로토콜을 통해 데이터를 주고받는다.
▶ 웹의 주요 특징
→ 인터넷 기반:
웹은 인터넷을 기반으로 하며, 웹 브라우저를 통해 언제 어디서나 접근 가능하다.
→ 호환성:
웹 애플리케이션은 운영체제나 장치에 구애받지 않고 브라우저만 있으면 작동한다.
→ 유지 보수 용이:
웹 애플리케이션은 중앙 서버에서 관리되므로, 업데이트나 수정이 필요할 때 사용자는 별도의 설치 과정 없이 자동으로 최신 버전을 사용할 수 있다.
▶ 애플리케이션(Application)이란?
애플리케이션(Application)은 특정 기능을 수행하는 소프트웨어 프로그램이다. 이는 보통 사용자가 직접 컴퓨터나 모바일 장치에 설치하여 실행하며, 운영체제 위에서 동작한다. 애플리케이션은 인터넷 연결이 없어도 사용할 수 있는 경우가 많으며, 인터넷 연결이 필요한 경우도 있지만 그 외의 기능은 로컬 환경에서도 작동할 수 있다. 애플리케이션은 일반적으로 모바일 애플리케이션(iOS, Android)이나 데스크톱 애플리케이션(Windows, macOS) 등으로 나뉜다. 예를 들어, 우리가 사용하는 모바일 메신저, 사진 편집 프로그램, 음악 스트리밍 앱 등은 모두 애플리케이션의 예시다.
▶ 애플리케이션의 주요 특징
→설치 필요:
애플리케이션은 운영체제에 설치해야 하며, 각 장치에 맞는 버전을 따로 관리해야 한다.
→ 고성능:
애플리케이션은 로컬 시스템의 자원을 활용하므로, 고성능 작업이나 복잡한 처리가 필요한 경우 유리하다.
→ 오프라인 가능:
많은 애플리케이션은 인터넷 연결이 없더라도 작동할 수 있다.
▶ 웹과 애플리케이션의 차이
웹과 애플리케이션은 그 목적과 사용 방식에서 차이가 있다. 이해하기 위해 몇 가지 기준에 따라 차이점을 정리해 보았다.
▷ 접근성:
→ 웹:
브라우저를 통해 인터넷에 연결된 어디서든 접근할 수 있다. 설치 과정이 필요 없으며, URL을 통해 쉽게 접근 가능하다.
→ 애플리케이션:
사용자 장치에 설치해야 하며, 각 운영체제에 맞는 버전이 필요하다. 설치 과정이 필요하며, 운영체제나 장치에 따라 차이가 있다.
▷ 성능:
→ 웹:
웹은 브라우저 위에서 동작하므로, 로컬 시스템 자원을 활용하는 데 한계가 있다. 대규모 연산이나 고성능 처리가 필요한 작업에서는 애플리케이션에 비해 느릴 수 있다.
→ 애플리케이션:
로컬 시스템 자원을 직접적으로 활용할 수 있어 고성능 작업을 더 잘 처리할 수 있다. 예를 들어, 그래픽 편집이나 영상 렌더링 같은 작업은 애플리케이션이 더 적합하다.
▷ 업데이트:
→웹:
서버에서 업데이트가 진행되므로 사용자는 별도의 설치 과정 없이 최신 버전을 사용할 수 있다.
→ 애플리케이션:
사용자는 새로운 버전을 다운로드하거나 업데이트를 설치해야 한다. 이는 모바일 앱 스토어 또는 운영체제 업데이트 기능을 통해 이루어진다.
▷ 인터넷 의존성:
→ 웹:
인터넷 연결이 필수적이다. 인터넷이 없으면 웹 페이지나 웹 애플리케이션에 접근할 수 없다.
→ 애플리케이션:
많은 애플리케이션은 인터넷 없이도 사용할 수 있다. 물론 일부 기능은 인터넷 연결을 필요로 할 수 있지만, 로컬에서 작동하는 기능도 많다.
▶ 웹 애플리케이션과 네이티브 애플리케이션
웹과 애플리케이션은 명확히 구분되기도 하지만, 웹 애플리케이션(Web Application)이라는 형태가 있다. 웹 애플리케이션은 웹 기술(HTML, CSS, JavaScript)을 사용하여 개발된 소프트웨어로, 브라우저에서 실행되지만 애플리케이션처럼 동작한다. 대표적인 예로 구글 문서도구, 슬랙(Slack) 웹 버전 등을 들 수 있다. 이는 설치 없이 브라우저에서 동작하지만, 사용자 경험은 네이티브 애플리케이션과 유사하다. 반면 네이티브 애플리케이션(Native Application)은 특정 플랫폼에서 실행되도록 개발된 소프트웨어다. 예를 들어, iOS용 애플리케이션은 Swift나 Objective-C로, Android용 애플리케이션은 Java나 Kotlin으로 개발된다. 이들은 해당 운영체제의 기능을 최대한 활용할 수 있어 성능 면에서 유리하다.
▶ 정리
웹은 인터넷을 기반으로 하며, 브라우저에서 실행되는 반면, 애플리케이션은 로컬 환경에서 설치되어 실행된다. 웹은 접근성과 호환성이 뛰어나지만, 성능 면에서는 애플리케이션이 더 유리한 경우가 많다. 또한, 웹 애플리케이션과 네이티브 애플리케이션의 개념도 익히면서 두 기술이 어떻게 서로 보완하고 있는지 알게 되었다😆
'개발Article' 카테고리의 다른 글
[TIL]20240913 내부DB & 그냥DB 그리고 동기화 (1) | 2024.09.14 |
---|---|
[TIL]20240912 리플렉션(Reflection)과 자바철학 (0) | 2024.09.12 |
[TIL]20240910 리젝(Reject) (0) | 2024.09.10 |
[TIL]20240909 스택 트레이스(Stack Trace) (0) | 2024.09.09 |
[WIL]20240908 도메인 계층 (0) | 2024.09.08 |