본문 바로가기

전체 글22

객체지향의 5대 원칙 SOLID OOP의 5대 원칙 SRP (단일 책임 원칙) OCP (개방, 폐쇄 원칙) LSP (리스코프 치환 원칙) ISP (인터페이스 분리 원칙) DIP (의존 역전 원칙) Single Responsiblity Principle (단일 책임 원칙) - 소프트웨어의 메소드,함수,클래스는 단 하나의 기능(책임)만을 가져야한다- 응집도는 높고 결합도는 낮은 프로그램 한 클래스가 수행할수있는 기능이 많아지면 클래스 내부의 함수끼리 강한 결합이 발생할 가능성이 높아진다 이는 유지보스에 비용이 증가하게 되므로 따라서 책임을 분리시킬 필요가 있다. Open-Closed Principle (개방 폐쇄 원칙) - 기존의 코드를 변경하지않고 기능을 수정하거나 추가할수 있도록 설계를 해야한다- OCP에 만족하는 설계를 할 때 변경되.. 2021. 1. 16.
프레임워크와 라이브러리의 차이 프레임워크는 뼈대나 기반구조를 뜻하고, 제어의 역전 개념이 적용된 대표적인 기술입니다 소프트웨어에서의 프레임워크는 소포트웨어의 특정 문제를 해결하기위해서 상호 협력하는 클래스와 인터페이스의 집합 완성된 어플리케이션이 아닌 프로그래머가 완성시키는 작업을 해야 한다 프레임워크 특징 - 특정 개념들의 추상화를 제공하는 여러 클래스나 컴포넌트로 구성 - 추상적인 개념들이 문제를 해결하기 위해 작업하는 방법을 정의합니다 - 컴포넌트들은 재사용이 가능합니다 - 높은 수준에서 패턴들을 조작할수있습니다. 라이브러리의 특징 -단순 활용 가능한 도구들의 집합 -개발자가 만든 클래스에서 호출하여 사용, 클래스들의 나열로 필요할 클래스를 호출해서 사용 프레임워크와 라이브러리의 차이점 프레임워크와 라이브러리의 차이는 제어 흐름.. 2021. 1. 16.
스프링 MVC의 개념 스프링 MVC 모델2 MVC는 Model View Controller 의 앞 글자를 딴것이다 모델은 로직이나 dao,vo든 객체를 생성하고 넣고 로직으로 연산하는 단계다 뷰는 객체를 표현해주는 단계이다. (jsp를 생각하면 된다) 컨트롤러는 모델과 뷰를 연결해주는 개념이다 어떤 모델의 정보를 어떤 뷰에서 쏠지 연결할지 를 해주는게 컨트롤러다. 스프링에서의 mvc 모델2 의 구조를 보면 이렇게 된다 웹브라우저에서 리퀘스트가 오면 디스페쳐서블릿이 핸들러맵핑을 거쳐 컨트롤러를 찾는다. 컨트롤러를 호출후 데이터는 모델단의 비지니스로직을 거쳐 넘어오고 뷰단으로 정보를 처리한다 여태껏 공부하면서 몇 가지 했던 메모를 옮겨 적을려합니다. 틀린 내용이 있다면 언제든지 댓글에 수정 부탁드립니다. 제가 공부하면서 적은 내.. 2021. 1. 16.
자바의 실행 구조 자바의 자료구조는 다음과같다 그림참조 jdk의 자바 컴파일러가 자바파일을 클래스파일로 변환후 메소드영역과 스태틱영역에 클래스파일의 정보를 넣는다 스택영역인 쓰레드에서 객체(클래스의 실체)를 불러 올려면 방법이 두가지이다 첫번째로 클래스멤버(필드 + 메서드)가 static인경우 이경우 처음에 스태틱영역에 클래스멤버의 정보가 저장되고 이경우 스택영역에서 바로 클래스멤버를 호출할수있다 두번째는 정공법인 쓰레드에서 메소드(스태틱)영역에있는것을 힙영역으로 불러와 힙영역의 주소를 얻어와서 객체를 호출하는 방법이다 사용법은 타입 변수 = new 클래스(); 이다 즉 클래스메소드영역에서 힙영역으로 불러오고 힙영역의 주소를 쓰레드(스택)영역에서 가진다 이 주소에서 정보를 얻어서 처리 클래스멤버 = 필드 + 메서드 필드 .. 2021. 1. 16.
728x90