운영체제란?
운영체제란? 정의 컴퓨터 시스템의 하드웨어, 소프트웨어적인 자원들을 효율적으로 운영 및 관리함으로써 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 하는 시스템 소프트웨어입니다. 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 즉, 중개자 역할을 해주는 프로그램입니다. 종류 크게 임베디드, 서버, 모바일, 데스크톱 4개의 시장으로 나누어져 있고, 임베디드는 리눅스 계열, 서버는 유닉스 계열, 모바일은 안드로이드, 데스크톱은 윈도우 계열의 점유율이 가장 높습니다. 기능 프로세스 관리 : OS에서 동시에 실행되는 많은 프로세스를 효율적으로 관리 파일 관리 : 파일 생성, 수정, 삭제, 조작, 백업 등등 네트워크 관리 : 네트워크 서비스 성능, 오류..
2022. 11. 8.
스프링 MVC 동작 원리
스프링 MVC 소개 Model 평범한 자바 객체 POJO 도메인 객체 또는 DTO로 화면에 전달하거나 화면으로부터 전달받은 받은 데이터를 담은 객체 View HTML, JSP, 타임리프 데이터를 보여주는역할, 다양한 형태가 가능하다 HTML, JSON, XML,... Controller 스프링 @MVC 사용자 입력을 받아 모델 객체의 데이터를 변경하거나, 모델 객체를 뷰에 전달하는 역할 입력값 검증 입력 데이터를 모델 객체로 변경 변경된 모델 객체를 뷰에 전달 MVC 패턴의 장점 동시다발적인 개발 가능 - 백엔드, 프론트엔드 개발자가 독립적으로 개발 진행가능 높은 결합도 - 논리적으로관련있는 기능을 하나의 컨트롤러로 묶거나, 특정 모델과 관련있는 뷰를 그룹화 가능 낮은 의존도 - 모델, 뷰, 컨트롤러는..
2022. 8. 1.
스프링 AOP
Spring AOP (Aspect-oriented Programming) OOP를 보완하는 수단으로, 흩어진 Aspect를 모듈화 할 수 있는 프로그래밍 기법 흩어진 관심사 (Crosscutting Concerns) Class A { Aspect X, Aspect Y, Aspect Z} Class B { Aspect X, Aspect Y, Aspect Y} Class C { Aspect X, Aspect Z} 각 클래스에서 중복된 관심사를 갖는 경우에 AOP를 적용하면 Aspect X {A,B,C} Aspect Y {A,B} Aspect Z {A,C} 다음과 같이 Aspect들로 모듈화 할 수 있다. AOP 주요개념 Aspect와 Target Advice(해야할 일들) Join point와 Pointcu..
2022. 8. 1.