본문 바로가기

전체 글

(95)
네트워크 유형 / 범위 주요 네트워크 유형 1. 중앙집중식 네트워크 (Centralized Network)모든 데이터와 리소스가 중앙 서버에 집중된 구조클라이언트는 중앙 서버를 통해 데이터에 접근함 장점데이터 관리가 용이하고 보안 관리가 쉬움 단점중앙 서버에 문제가 생기면 전체 네트워크가 영향을 받음 2. 비집중식 네트워크 (Decentralized Network)여러 개의 중앙 서버가 존재하여 데이터와 리소스를 분산 관리함클라이언트는 여러 서버를 통해 데이터에 접근함 장점중앙 서버의 부하를 분산시켜 성능을 향상시킬 수 있음 단점관리와 보안이 복잡해질 수 있음 3. 분산 네트워크 (Distributed Network)데이터와 리소스가 여러 노드에 분산되어 있는 구조각 노드는 독립적으로 데이터를 처리하고 공유함 장점높은 확장성과..
네트워크 토폴로지 네트워크 토폴로지란?: 네트워크의 물리적/논리적 구조물리적 구조 : 네트워크의 실제 물리적 배치와 연결 방식. 케이블, 장비 등의 배치가 어떻게 이루어지는지논리적 구조 : 데이터가 네트워크를 통해 어떻게 흐르는지 스타형 토폴로지 (Star Topology) 모든 노드가 중앙 허브(스위치 또는 라우터)에 직접 연결됨중앙 허브가 모든 데이터를 수신하고 전송함 장점관리가 용이함특정 노드에 문제가 생겨도 전체 네트워크에 영향을 미치지 않음단점중앙 허브에 문제가 생기면 전체 네트워크가 작동하지 않음설치 비용이 높을 수 있음 버스형 토폴로지 (Bus Topology) 모든 노드가 단일 중앙 케이블(버스)로 연결됨데이터는 양방향으로 전송되며, 각 노드는 버스를 통해 데이터를 주고받음 장점설치가 간단하고 저렴적은 양의..
네트워크 정의 / 필요성 컴퓨터 네트워크란?: 두 대 이상의 컴퓨터나 기기가 데이터를 주고 받을 수 있도록 연결된 시스템하드웨어(라우터, 스위치, 케이블 등)와 소프트웨어(프로토콜, 애플리케이션 등)로 구성됨라우터 : 데이터 패킷을 목적지까지 전달하는 장치. 서로 다른 네트워크를 연결하고, 데이터 전송 경로를 선택스위치 : 네트워크 내의 장치들을 연결하고 데이터 패킷을 목적지까지 전달하는 장치. 네트워크 트래픽을 효율적으로 관리케이블 : 네트워크 장치들을 물리적으로 연결하는 데 사용되는 선. 일반적으로 이더넛 케이블 사용>> 데이터를 효율적으로 전송하고 공유할 수 있도록 함>> 이메일 전송, 파일 공유, 웹 페이지 열기 등 다양한 작업이 네트워크를 통해 이루어짐  네트워크의 장/단점 장점효율적인 자원 공유 : 프린터, 스캐너, ..
Spring Bean / 생명주기 스프링 컨테이너 : 애플리케이션의 구성 요소를 생성 및 관리> 개발자가 직접 객체를 생성하고 관리하는 부담을 줄여줌> 스프링 빈을 생성하고 의존 관계를 주입하는 역할Bean (스프링 빈) : 스프링 컨테이너가 관리하는 객체스프링 컨테이너에 의해 생명 주기가 관리됨제어 역전 (IoC) / 의존성 주입 (DI) 기능 Bean의 정의와 역할 스프링의 객체 !Spring IoC 컨테이너에 의해 인스턴스화되고 관리됨애너테이션 추가 / XML 파일 설정을 통해 Bean이 선언됨** MyBean 클래스에 @Component 애너테이션을 붙이면 클래스가 빈으로 등록됨** 빈의 이름은 클래스 이름의 첫 글자를 소문자로 바꾸어 관리 → myBean으로 등록됨 다양한 역할 수행데이터 액세스 계층의 리포지토리웹 요청을 처리하..
MVC 패턴 MVC Model - View - Controller 소프트웨어 아키텍처 디자인 패턴 사용자 인터페이스 / 비즈니스 로직을 분리하고, 각각을 독립적으로 유지 Model 데이터가 들어있는 객체 데이터를 관리하고 변경이 발생하면 View에게 알림 DB와의 연동을 위한 DAO(Data Access Object)와 데이터 구조를 표현하는 DO(Data Object)로 구성 ex) 쇼핑몰의 검색 기능 - 검색 키워드가 넘어오면 (뷰를 통해) 관련된 상품의 데이터를 찾아 결과를 뷰에 전달 View 데이터를 사용자에게 보여주는 사용자 인터페이스(UI) 모델의 데이터를 특정 형식으로 표현하여 사용자에게 보여줌 사용자 입력을 받아 컨트롤러에 전달 ex) 검색 키워드를 받아 컨트롤러에 전달 / 검색 결과를 모델로부터 받아..
HTTP / REST API API (Application Programming Interface) 소프트웨어나 어플리케이션 간의 상호작용을 가능하게 하는 도구/규약들의 집합 한 프로그램이 다른 프로그램에 기능이나 서비스를 제공하거나 요청할 수 있도록 하는 인터페이스 제공 프로그램 간의 통신에 사용되는 언어/메시지 형태 ≫ REST API : HTTP에서 REST한 방식을 따르는 API HTTP (HyperText Transfer Protocol) WWW에서 데이터를 주고 받기 위한 프로토콜 클라이언트와 서버 간에 통신을 가능하게 하며, 주로 웹 브라우저와 웹 서버 간의 데이터 교환에 사용됨 클라이언트-서버 모델 사용 요청을 보내는 쪽 : 클라이언트 요청을 받아 응답하는 쪽 : 서버 클라이언트(웹 브라우저)가 서버에 요청을 보내고,..
스프링 프레임워크 / Spring Boot 프레임워크 구조적으로 고정된 부분을 재사용할 수 있도록 하고, 응용별 특정 기능을 추가적인 사용자 작성 코드에 의해 선택적으로 구현 가능하도록 하는 포괄적인 추상 구조 프레임워크를 사용하는 이유 정형화된 부분을 간단하게 구현 가능 필요한 부분만 집중해서 개발 ≫ 스프링 프레임워크 : 애플리케이션 개발에 필요한 기반을 제공해서 개발자가 비즈니스 로직 구현에만 집중할 수 있게끔 하는 것 스프링 프레임워크의 특징 POJO (Plain Old Java Object) 순수 Java 만을 통해서 생성한 객체 Java 및 Java 스펙에 정의된 기술만을 사용 POJO가 아닌 상황 (외부 라이브러리를 import하여 상속 받아 객체 생성 : 외부 모듈에 의존하는 상태)에서는 상속 받은 객체의 변경이 발생하면 해당 기술..