Sparta 내일배움캠프 Java 5기/[사전캠프] Missions ✓
DAILY_MISSION.04 웹개발 용어 정리 1
서버(Server) vs. 클라이언트(Client)
- 서버
- 네트워크상에서 서비스를 제공하는 컴퓨터 시스템, 장비
- 공유기, 도메인 관리기(DNS), IP 할당기(DHCP), 시간관리기(NTP), 게이트웨이 등
- 데이터, 리소스 저장, 클라이언트에게 제공
- 네트워크상에서 서비스를 제공하는 컴퓨터 시스템, 장비
- 클라이언트
- 네트워크상에서 서버에게 서비스를 요청하는 컴퓨터 시스템, 장비
- 컴퓨터, 노트북, 핸드폰, 아이패드 등
- 요청받은 데이터를 다시 사용자에게 제공하면서 서로 상호작용
- 네트워크상에서 서버에게 서비스를 요청하는 컴퓨터 시스템, 장비
프론트엔드 (Front-end) vs. 백엔드(Back-end)
- 프론트엔드 (Front-end)
- 사용자가 직접 상호작용하는 부분인 PC에서 활용하는 웹
- 사용자에게 정보 표시 / 입력
- 웹 애플리케이션의 사용자 인터페이스(UI), 사용자 경험(UX)을 중점적으로 프로그래밍 하는 구축 부분
- HTML, CSS, JavaScript 등을 사용
- 사용자가 직접 상호작용하는 부분인 PC에서 활용하는 웹
- 백엔드(Back-end)
- FE에서 처리한 데이터를 저장하고, 로직을 실질적으로 실행하는 부분
- DB와 상호작용과 연산을 포함한 기능을 담당
- 데이터 처리 / 정보 제공
- Java, PHP, Node.js, Python, 등을 사용
- FE에서 처리한 데이터를 저장하고, 로직을 실질적으로 실행하는 부분
풀스택(Full-Stack)
- 프론트엔드(Frontend)와 백엔드(Backend) 모두를 다룰 수 있는 개발 역량 또는 개발자 그 자체
- 개발 프로젝트를 전반적으로 이해하고 필요한 기능을 종합적으로 구현하는 역할
프레임워크(Framework)
- 새로운 애플리케이션을 보다 효율적으로 개발할 수 있도록 하는 재사용 가능한 소프트웨어 구성 요소의 모음
- 기존 개발 및 연구 결과를 재사용하는 것은 기본 원칙
- 특정 소프트웨어 표준 및 프로토콜을 기반으로 재사용 가능한 코드 모듈이 포함
- 새로운 어플리케이션을 표준화된 방식으로 효율적인 개발 가능
- 프레임워크로 특정 소프트웨어 아키텍처 규칙 또는 프로세스를 정의 및 적용하는데 용의하기 때문에
- 느리거나 중복된 코드를 작성할 필요가 없음
- 장점
- 잘 구조화된 프레임워크에서 코드 문제를 더 쉽게 검토, 디버깅하고 수정 가능
- 목표에 맞는 다양한 프레임워크를 교체하면서 프로젝트별 코드를 유지 가능
- 참고문헌
https://aws.amazon.com/ko/what-is/framework/
라이브러리(Library)
- 필요할 때 애플리케이션 코드가 호출하는 유틸리티 또는 함수의 모음
- 애플리케이션의 도우미이자 도구 역할이기 때문에 작업별로 다른 라이브러리를 가지고 있음
- ex) 코드 라이브러리 : 코드 함수 모음
라이브러리(Library) VS 프레임워크(Framework)
- 프레임워크는 애플리케이션 개발을 지시하는 구조적 청사진으로 세부적인 사항을 입력하는 일종의 골격 역할
- 아키텍처가 동작하기 위한 규칙과 구조로 개발자는 구성을 함
→ 이 때, 프레임워크가 필요한 경우 라이브러리를 호출
- 참고
프레임워크란?- 프로그래밍 및 엔지니어링 프레임워크 설명 - AWS
플러그인(Plug-in)
- 어플리케이션 또는 소프트웨어에 추가적인 기능과 기능 확장을 위한 일종의 파일 콜렉션
- 컴포넌트, 링크 및 정책을 포함하여 선택하여 사용
- 외부에서 제공되는 플러그인으로 기존 어플리케이션 또는 소프트웨어의 인터페이스, 기능을 선택적으로 확장이 가능
- 주로 기존 기능의 확장
- config.json 구성 파일이 포함되어 확장기능을 구현하는 파일의 규칙에 따라서 기능을 확장
- 참고
플러그인 개념
미들웨어(middleware)
- 서로 다른 애플리케이션이 서로 통신하는 데 사용되는 소프트웨어
- 애플리케이션 프로그래밍 인터페이스(API)를 제공
- 단일 시스템에 원활하게 통합할 수 있도록 다양한 기술, 도구, 데이터베이스 간에 다리 역할
- ex) ****Windows 프런트엔드 애플리케이션은 Linux 백엔드 서버에서 데이터를 송수신하기 그 중간역할
- 기능
- 애플리케이션 개발을 지원하고 디자인 프로세스를 단순화
- 미들웨어가 없다면 데이터 교환 모듈을 구성요소 마다 구축을 해야함
- 애플리케이션 개발을 지원하고 디자인 프로세스를 단순화
- 참고
https://aws.amazon.com/ko/what-is/middleware/
마크업 언어(Markup Language)
- 텍스트 기반의 문서를 처리하기 위해 구조화하고 포맷팅하는 데 사용되는 언어
- 일정한 규칙에 따라 태그(tag)와 속성(attribute)을 사용하여 문서의 구조와 의미를 표현
- 텍스트 문서와 파일이 기종과 독립적으로 응용 프로그램 간에 교환될 수 있도록 이식성을 높이기 위해 설계
- Example
- HTML (HyperText Markup Language)
- WWW 웹 페이지의 구조와 컨텐츠를 정의
- XML (eXtensible Markup Language)
- 다목적 마크업 언어, 데이터 저장,교환,공유를 주 목적으로 두고 있음
- SVG (Scalable Vector Graphics)
- 벡터 기반 시각화된 그래픽 기술을 위한 마크업 언어
- HTML (HyperText Markup Language)
- 참고
https://terms.tta.or.kr/dictionary/dictionaryView.do?word_seq=048464-2
검색 엔진 최적화(Search Engine Optimize)
- 웹 페이지에서 검색 엔진 결과 페이지(SERP)에서 상위에 나타나도록 해 ****검색엔진에서 더 찾기 쉽도록 사이트를 개선하는 프로세스
- 검색엔진에서 콘텐츠를 더 쉽게 크롤링하고 색인을 생성
- SEO를 제공하는 서비스들 각자 고유의 알고리즘과 전략을 사용하여 제공
- 참고
https://developers.google.com/search/docs?hl=ko
버그(Bug)
- 컴퓨터 프로그램 또는 소프트웨어에서 발생하는 문제나 오류를 가리키는 용어
- 예기치 않은 동작
- 디버깅을 통해 문제를 빠르게 식별하고 수정, 업데이트 해야함
에러(Error)
**Java 기준
- 프로그램 코드에 의해서 수습이 될 수 없을 만한 치명적인 심각한 오류
- 프로그램의 비정상적인 종료일 경우, 막을 수 없음
- 메모리 부족 OutOfMemoryError, 스택오버플로우 StackOverflowError 등의 오류는 복구 불가
- 종류
- 컴파일 에러 : 컴파일 시 발생하는 에러
- 런타임 에러 : 프로그램 실행중 발생하는 에러
- 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 에러
예외(Exception)처리
**Java 기준
- 프로그램 오류가 발생했을 때, 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류에 대해서 이에 대한 사전 처리, 대비를 위한 코드를 짜는 것
- 예기치 못한 예외 발생으로 인한 실행 프로그램의 갑작스런 비정상 종료를 막고, 정상적인 실행상태를 유지하느도록 하는것
- Java에서는 예외 Exception 클래스를 정의되어, 예외 발생 시, 해당 인스턴스가 만들어짐
- 목적에 따라 의도적으로 발생시킬 수있음
- Java에서는 예외 Exception 클래스를 정의되어, 예외 발생 시, 해당 인스턴스가 만들어짐
- 참고
- 남궁 성 , “Java의 정석” , 도우출판414p.
트래픽(Traffic)
- 네트워크를 통해 전송되는 데이터의 양이나 패킷의 흐름
- 모든 종류의 데이터의 흐름을 포함
- 데이터 트래픽일 경우, 실제 데이터의 양, 네트워크 트래픽일 경우, 데이터의 흐름에 따라 걸리는 네트워크/시스템에 걸리는 부하를 통칭하기도 함
'Sparta 내일배움캠프 Java 5기 > [사전캠프] Missions ✓' 카테고리의 다른 글
DAILY_MISSION.04 웹개발 용어 정리 3 (0) | 2024.03.21 |
---|---|
DAILY_MISSION.04 웹개발 용어 정리 2 (0) | 2024.03.20 |
DAILY_MISSION.03 비슷한 직무 JD 분석 (2) | 2024.03.18 |
DAILY_MISSION.02 JD 분석 (1) | 2024.03.14 |
DAILY_MISSION.01 Starter Note (0) | 2024.03.13 |