본문 바로가기

Programming

RESTful Web Service 란? 1. REST의 이해 REST(Representational State Transfer)란 분산시스템 설계를 위한 아키텍쳐 스타일을 말하며 Roy Fielding의 2000년 박사논문에서 소개되고 정의되었습니다. REST는 표준은 아니지만 stateless하다거나, 서버/클라이언트 관계를 가지거나, 일정한 인터페이스를 가지는 것과 같은 하나의 제약사항을 나타내는 것입니다. 또한 REST는 엄격하게는 HTTP와 관련이 없지만, 일반적으로 연관이 있다고 말합니다. 2. REST의 원칙 Resource는 URI를 통하여 쉽게 이해할 수 있도록 표현되어야합니다. JSON 혹은 XML을 전송하여 data object나 attribute를 나타내야합니다. 메세지는 HTTP method를 이용하여 명시적으로 표현해야.. 더보기
Adapter Pattern (어댑터 패턴) 1. 어댑터 패턴이란? 소프트웨어 디자인 패턴중 구조 패턴에 속하는 디자인 패턴입니다. Adapter Pattern은 클래스의 인터페이스를 사용자가 기대하는 다른 인터페이스로 변환하는 패턴으로, 호환성이 없는 인터페이스 때문에 함께 동작할 수 없는 클래스들이 함께 작동하도록 해줍니다. 주로 기존 클래스의 소스 코드를 수정하지 않고 다른 사용자와 함께 사용하는데 자주 사용됩니다. 대표적인 예로는 XML 문서의 Document Object Model 인터페이스를 나타낼 수 있는(can be displayed) 트리 구조로 변환하는 어댑터가 있습니다. 2. 어댑터 패턴의 종류 어댑터 패턴은 크게 다음의 두가지로 분류됩니다. 객체 어댑터 패턴 - 위임을 이용한 어댑터 패턴 클래스 어댑터 패턴 - 상속을 이용한 .. 더보기
Decorator Pattern (데코레이터 패턴) 1. 데코레이터 패턴이란? 소프트웨어 디자인 패턴중 구조 패턴에 속하는 디자인 패턴입니다. Decorator Pattern은 주어진 상황 및 용도에 따라 어떤 객체에 기능을 동적으로 덧붙이는 패턴으로, 서브 클래스를 이용해 기능을 유연하게 확장할 수 있습니다. 2. 데코레이터 패턴 구현 2.1 Component Interface(or Abstract Class) public interface Component { public void method(); ... } 2.2 ConcreteComponent Class public class ConcreteComponent implements Component { @Override public void method() { ... } ... } 2.3 Decora.. 더보기
Singleton Pattern (싱글톤 패턴) 1. 싱글톤 패턴이란? 소프트웨어 디자인 패턴중 생성 패턴에 속하는 디자인 패턴입니다. Singleton Pattern을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴합니다. 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용됩니다. 이미지 출처: 위키백과(https://ko.wikipedia.org/wiki/%EC%8B%B1%EA%B8%80%ED%84%B4_%ED%8C%A8%ED%84%B4) 2. 싱글톤 구현 2.1 Eager initialization 가장 기본적인 singleton pattern으로서 private sta.. 더보기
[Markdown 문법] 9. 이미지 (Image) 9. 이미지 (Image) HTML의 태그에 대응하는 문법입니다. 문법은 아래와 같습니다. (예제) ![Alt text](파일경로) ![Alt text](파일경로 "title") 더보기
[Markdown 문법] 8. 강조 8. 강조 텍스트를 강조하고 싶을때 사용하는 문법입니다. 문법은 아래와 같습니다. (예제) **강조할 텍스트** 더보기
[Markdown 문법] 7. 링크 (Link) 7. 링크 (Link) HTML의 태그에 대응하는 문법입니다. 크게 2가지의 방법이 있으며, 문법은 다음과 같습니다. (예제) URL주소를 바로 링크로 만들고 싶으면 를 사용하면 됩니다. URL주소에 임의의 링크텍스트를 사용하고 싶으묜 [텍스트](링크주소) 를 사용하면 됩니다. 더보기