일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- spring
- IT
- 정보처리기사
- 공채
- Effective Java
- 뮤텍스
- 컴퓨터공학
- java
- 깃
- 신입사원
- 이펙티브 자바
- github
- 알고리즘
- 컴퓨터과학
- Public
- 디지털
- OS
- 개발
- CS
- 스터디
- 세마포어
- 메모리
- 스프링
- 우리카드
- 자바
- package-private
- 프로그래밍
- 운영체제
- 신입
- 깃허브
- Today
- Total
목록전체 글 (116)
주니어 개발자 성장기
XML이란? 마크업 언어를 만드는데 사용하도록 권장하는 다목적 마크업 언어이다. 주로 다른 종류의 시스템, 특히 인터넷에 연결된 시스템끼리 데이터를 쉽게 주고 받을 수 있게 하여 HTML의 한계를 극복할 목적으로 만들어졌다. HTML과 달리 웹상에서 구조화된 문서를 전송가능하도록 설계되었으며, 데이터에 의미를 부여하는 메타데이터를 기술할 수 있다. 출처: 위키백과 + 나무위키 스프링 컨테이너는 다양한 형식의 설정 정보를 받아 들일 수 있게 유연하게 설계 되어 있다. 자바 코드, XML, Groovy등 최근, 애노테이션 기반의 AnnotationConfigApplicationContext를 구현체로 사용한다. GenericXmlApplicationContext는 xml을 사용하는 컨테이너다. (과거에 많이..
BeanFactory 스프링 컨테이너의 최상위 인터페이스 스프링 빈을 관리하고 조회하는 역할 'getBean()'을 제공한다. ApplicationContext BeanFactory 기능을 모두 상속받아서 제공한다. 빈을 관리하고 검색하는 기능을 BeanFactory가 제공 해주는데 둘의 차이는? 애플리케이션을 개발할 때는 빈은 관리하고 조회하는 기능은 물론이고, 수 많은 부가기능이 필요하다. ApplicationContext가 제공하는 부가 기능 ApplicationContext는 아래의 인터페이스들을 상속 받고 있다. MessageSource - 메시지 소스를 활용한 국제화 기능 예를 들어, 한국에서 들어오면 한국어로, 영어권에서 들어오면 영어로 출력 EnvironmentCapable - 환경 변수 ..
*Appconfig 는 @Configuration 애노테이션이 있고 Bean이 등록되어있는 설정 클래스다. ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); 위에서 'ApplicationContext'를 스프링 컨테이너라고 한다. 'ApplicationContext'는 인터페이스다. 스프링 컨테이너는 XML을 기반으로 만들 수 있고, 애노테이션 기반의 자바 설정 클래스로 만들 수 있다. 'AppConfig'를 사용했던 방식이 애노테이션 기반의 자바 설정 클래스로 스프링 컨테이너를 만든 것이다. 스프링 컨테이너 생성 과정 1. 스프링 컨테이너 생성 'new AnnotationConfi..
IoC(Inversion of Control) 프로그램의 제어 흐름을 직접 제어하는 것이 아니라 외부에서 관리하는 것을 제어의 역전(IoC)라고 한다. 즉, 구현체가 아니라 DI를 해주는 외부의 어떤 것(클래스, 프레임워크 등)이 프로그램의 제어권을 갖게 되는 것을 말한다. *프레임워크 vs 라이브러리 프레임워크는 프로그래머가 작성한 코드를 제어하고, 대신 실행한다. (ex) Junit) 반면, 라이브러리는 프로그래머가 작성한 코드가 직접 제어의 흐름을 담당한다. DI(Dependency Injection) 어떤 클래스의 추상화의 구현체를 외부에서 생성, 연결해주는 것 의존 관계는 정적인 클래스 의존 관계와, 실행 시점에 결정되는 동적인 객체(인스턴스) 의존 관계, 둘을 분리해서 생각해야 한다. 정적인 ..
SRP란 한 클래스는 하나의 책임만 가져야 한다. Single responsibility principle 하나의 클래스는 하나의 역할만을 해야한다. 예를 들어, 할인 정책, 회원 관리, 주문 관리 등의 역할부터 구현 객체를 생성, 연결, 실행 하는 등의 관심사도 분리가 필요하다. OCP란 확장에는 열려있지만, 변경에는 닫혀있어야 한다. Open/Closed principle 소프트웨어 요소를 확장하더라도 코드를 변경할 필요가 없다는 의미이다. 다형성(인터페이스)과 DI를 이용해 이 원칙을 지킬 수 있다. DIP란 구체화에 의존하는 것이 아니라, 추상화에 의존해야 한다. 의존관계 주입(Dependency Injection)은 이 원칙을 따르는 방법 중 하나다. Dependency inversion pr..
일반 정보 From 유저 에이전트의 이메일 정보 일반적으로 잘 사용되지 않음 검색 엔진 같은 곳에서, 주로 사용 요청에서 사용 Referer 이전 웹 페이지 주소 현재 요청된 페이지의 이전 웹 페이지 주소 A -> B로 이동하는 경우 B를 요청할 때 Referer: A를 포함해서 요청 Referer를 사용해서 유입 경로 분석 가능 요청에서 사용 참고: referer는 단어 referrer의 오타 User-Agent 유저 에이전트 애플리케이션 정보 user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 클라이언트의 애플리케이션 정보..