전체 글 238

IOC, DI, ObjectMapper

1. ObjectMapper text-> object , object -> text의 경우 사용한다. object mapper는 default 생성자를 필요로 하며 get method를 활용한다. 2. loC(Inversion of Control) : 제어의 역전 Java 객체를 new를 생성하여 개발자가 관리하는 것이 아니라 스프링에서는 Spring Container 또는 IoC Container에 모두 맡긴다. 제어의 역전: 객체의 관리를 컨테이너에 맡겨 제어권이 넘어간 것을 뜻함, 개발자 -> 프레임 워크로 제어의 객체 관리의 권한이 넘어감 제어 역전을 통해서 의존성 주입( DI (Dependency Injection) ), 관점 지향 프로그래밍(AOP(Aspect-Oriented Programmi..

static 변수

1. static 변수(클래스 변수, 정적변수) 여러 인스턴스가 공유하는 기준 값이 필요한 경우 사용 (공통으로 사용하는 변수가 필요한 경우) ex) 학생마다 새로운 학번을 생성하는 경우 인스턴스가 생성될 때 만들어지는 변수가 아닌 처음 프로그램이 메모리에 로딩될때 메모리를 할당 인스턴스 생성과 상관없이 사용 가능하므로 클래스 이름으로 직접 참조 ex) Student.serialNum = 100; static 변수는 인스턴스에서 공통으로 사용하는 영역 2. 변수의 유효 범위와 메모리 변수의 유효범위와 life cycle은 각 변수의 종류마다 다름 지역변수, 멤버변수, 클래스 변수는 유형범위와 life cycle, 사용하는 메모리가 다름 멤버 변수가 많으면 인스턴스 생성시 불필요한 메모리가 할당 stati..

Back-end/Java 2022.09.26

웹 개발

1. Web이란? WWW(World Wide Web, W3) 인터넷이 연결된 컴퓨터를 통해 사람들이 정보를 공유할 수 있는 전 세계적인 정보공간 - Web Site 네이버와 같은 HTML로 구성된 여러 사이트등 - API(Application Programming Interface) Kakao Open API, Naver Open API 등 - User Interface Chrome, Safari, Explorer, Smart Watch 등 2. REST(Representational State Transfer: 자원의 상태 전달) - 네트워크 아키텍처 - Client, Server : 클라이언트와 서버가 서로 독립적으로 분리되어 있어야한다. - Stateless: 요청에 대해서 클라이언트의 상태를 서버..

디자인 패턴

1. 디자인 패턴 설계 패턴을 정형화하여 유형별로 가장 최적의 방법으로 개발을 할 수 있도록 정해둔 설계 알고리즘과 유사 명확하게 답이 있는 형태가 아님 -> 프로젝트의 맞춰 적용 가능 2. Gof 디자인 패턴 GOF(Gang of Four)의 디자인 패턴 객체지향 개념에 따른 설계 중 재사용할 경우 유용한 설계를 디자인 패턴을 정리해둔 것 -> 잘 활용하면 경험이 부족하더라도 좋은 소프트웨어 설계 가능 디자인 패턴의 장점 개발자(설계자)간의 원활한 소통 소프트웨어 구조 파악 용이 재사용을 통한 개발 시간 단축 설계 변경 요청에 대한 유연한 대처 디자인 패턴의 단점 객체지향 설계/구현 초기 투자 비용 부담 3. 생성 패턴 객체를 생성하는 것과 관련된 패턴 객체의 생성과 변경이 전체 시스템에 미치는 영향 ..

객체지향

1. 객체지향 현실에 존재하는 사물들을 그대로 모델링하여 사물들의 행위와 속성을 정의 객체 중심으로 실제 사물이 동작하는 방식으로 설계 절차 지향보다 편리하게 설계 가능 사물 : 객체 (Object) 사물이 하는 행위: Method 변수(Variable): 해당 사물이 가지는 속성 2. 객체의 3요소 - 상태 유지 (객체의 상태) 객체는 상태 정보를 저장, 유지되어야한다. 이러한 속성은 변수로 정의 되어야한다. 속상값이 바뀌면 객체의 상태가 변경 될 수 있어야한다. - 기능 제공 (객체의 책임) 메소드에 의해 제공 외부로부터 직접 속성에 접근하여 변경하는 것이 아니라 객체가 제공하는 메소드로 기능이 제공되어야함 -고유 식별자 제공 (객체의 유일성) 각각의 객체는 고유한 식별자를 가져야함 카드번호, 계좌번..

접근 제어 지시자 & this

1. 접근 제어 지시자 (access modifier) 클래스 외부에서 클래스의 멤버 변수, 메서드, 생성자를 사용할 수 있는지 여부를 지정하는 키워드 자바에서는 4가지의 접근 지정자가 있음 (private, protected, public, 접근 지정자 생략(디폴드 접근 지정) private private 접근 지정자는 비공개를 지시하는 것 같은 클래스 내에서만 접근 가능 ( 외부 클래스, 상속 관계의 클래스에서도 접근 불가) public 모든 클래스들이 접근 가능 protected (1) 같은 패키지의 모든 클래스에 접근이 허용 (2) 다른 패키지에 있더라도 자식 클래스의 경우 접근 허용 default 접근 지정자가 생략된 멤버 = 디폴트 멤버 동일한 패키지 내에 있는 클래스들만 디폴트 멤버를 자유롭..

Back-end/Java 2022.09.12

인스턴스 & 동적 메모리

1. 용어 정리 객체 : 객체 지향 프로그램의 대상, 클래스의 인스턴스(생성된 인스턴스) 인스턴스: new키워드를 사용하여 클래스를 메모리에 생성한 상태 , 객체 클래스: 객체의 속성을 정의하고 기능을 구현하여 만들어 놓은 코드 상태, 객체를 만들어 내기 위한 틀 , 필드(멤버변수)와 메소드(멤버 함수)로 구성된다. 필드(멤버 변수): 객체 내에 값을 저장할 멤버 변수 메소드(멤버 함수): 클래스의 멤버 함수, 멤버 변수를 이용하여 클래스의 기능(객체의 기능)을 구현한 함수 참조 변수: 메모리에 생성된 인스턴스를 가르키는 변수 참조 값: 생성된 인스턴스의 메모리 주소 값 public class StudentTest { public static void main(String[] args) { Student..

Back-end/Java 2022.09.08