본문 바로가기

기타113

[REST API] REST에서의 Resource REST API에 대해서 제대로 알고 싶다라는 생각에 찾아보던 중 괜찮다고 느껴진 사이트가 있습니다. 바로 https://restfulapi.net 이라는 사이트 입니다. 실제 로이필딩의 논문을 기반으로 상당히 자세하게 그리고 실무에 가깝게 풀어져 있었습니다. 물론 논문에 대한 해석은 모두 같을 수 없으며 다를 수 있습니다만 도움이 될것 같아서 들고왔습니다. 오늘은 여기서 본 내용중 Resource에 대한 내용을 정리해보도록 하겠습니다. 리소스(Resource) REST API의 주요한 정보는 리소스라고 합니다. 여기서 말하는 리소스는 일반적으로 말하는 파일, 이미지 뿐만 아니라 우리가 일반적으로 교환하는 모든 정보를 포함합니다. 예를 들어 문서, 이미지, 일반적인 서비스, 리소스들의 집합, 객체 등이 .. 2019. 9. 29.
[REST API] REST API에 관하여_6가지 제약조건 안녕하세요. 한 달 전 정도에 REST API사용에 주의할 점이라는 주제로 Youtube를 본 것을 정리한 적이 있습니다. 이때의 아이디어를 떠올려 새로운 게시물을 연재해 볼까 합니다. 오늘의 주제는 REST API의 6가지 제약조건입니다. 이전 포스팅에서 REST API는 REST 아키텍처를 따르는 시스템이라고 했습니다. 그리고 그 구성요소로는 아래와 같다고 했었습니다. Client-Server Stateless cache uniform interface layered system code-on-demand 이때는 Uniform Interface에 대해서 중심적으로 설명드렸습니다. 이번에는 전체적으로 한번 짚고 넘어가 보려고 합니다. 잘부탁드리겠습니다. 개요 REST는 Representational S.. 2019. 9. 24.
[Spring & Design Pattern] Spring에서 발견한 디자인패턴_Singleton Pattern 안녕하세요. 오늘은 Spring에서 발견한 디자인 패턴의 3번째 시간으로 SingleTon 패턴에 대해서 알아보도록 하겠습니다. SingleTon Pattern이란? OOP에서 모든 객체들은 라이프 사이클(Life cycle)을 가지고 있습니다. 처음에 객체가 생성되고 GC에 의해서 삭제되기까지가 하나의 라이프 사이클입니다. 객체를 여러개를 만들지 않고 1개만 만들고 이를 공유해서 쓰고싶을 때가 있습니다. 이렇게 하면 객체 생성에 대한 비용 및 데이터 공유를 쉽게 할 수 있죠. 대표적인 예를 들면 DB의 Transaction을 관리하는 클래스가 그렇습니다. 이때 사용할 수 있는 pattern이 싱글톤 패턴(singleton pattern)입니다. Singleton Pattern이란 인스턴스를 1개로 제한.. 2019. 9. 23.
[ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log [ethereum]Ethereum 설치 및 실행 [ethereum]Smart Contract(Lottery 시스템) 제작 [ethereum]ethereum과 통신해보기 [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum & java]web3j를 통해 ethereum과 통신해보기 [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - basic [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log 안녕하.. 2019. 9. 18.
[java & ethereum] Smart Contract(Lottery 시스템)를 web3j를 통해 통신해보기 - basic [ethereum]Ethereum 설치 및 실행 [ethereum]Smart Contract(Lottery 시스템) 제작 [ethereum]ethereum과 통신해보기 [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum & java]web3j를 통해 ethereum과 통신해보기 [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - basic Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log 안녕하세요. 저번시간에 우리는 web.. 2019. 9. 9.
[Spring & Design Pattern] Spring에서 발견한 디자인패턴_Proxy Pattern Spring의 특징이라고 하면 IoC(또는 DI), PSA(Portable Service Architecture) 그리고 AOP(Aspect-Oriented Programming)가 있습니다. 이 개념이 무엇인가? 에 대해서는 이번 포스팅에서 언급하진 않겠습니다. 궁금하신 분은 저의 Spring 카테고리에 하나씩 설명이 되어있으니 해당 포스팅들을 참고 부탁드립니다. 저는 다른부분에 대해서 말해보려고 합니다. AOP는 관점지형 프로그래밍으로 main기능이 아닌 기능(Logging / Transaction)을 묶음으로 하여 Main Function을 잘 구성할 수 있게 해주는 방식입니다. 따라서 비즈니스 로직의 중간에 소스코드를 삽입해야하는데 이를 지원해주는 방식은 일반적으로 3가지로 구현이 가능합니다. S.. 2019. 9. 6.
[Spring & Design Pattern] Spring에서 발견한 디자인패턴_template method pattern Spring Boot로 개발을 하다보니 그 중심이 되는 DispatcherServlet이 궁금해 졌었습니다. 그래서 이전에 DispatcherServlet의 전체적인 프로세스를 간략하게 정리한 [Spring]DispatcherServlet Code로 분석하기 - reqeust & response process 포스팅을 진행 했었습니다. DisaptcherServlet을 분석하던 중 다양한 Design Pattern이 사용됬다는 것을 확인했고 이를 포스팅 하고 싶어졌습니다. 오늘은 DispatcherServlet에서 사용된 디자인 패턴 중 하나인 Template method Pattern에 대해서 알아보도록 하겠습니다. template method pattern 서로 다른 유사한 컴포넌트가 있을때, 공통 .. 2019. 9. 4.
[java & ethereum] web3j를 통해 ethereum과 통신해보기 [ethereum]Ethereum 설치 및 실행 [ethereum]Smart Contract(Lottery 시스템) 제작 [ethereum]ethereum과 통신해보기 [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum & java]web3j를 통해 ethereum과 통신해보기 [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - basic Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log 저번시간까지 우리는 POST 통신을 .. 2019. 9. 2.
[ethereum] Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum]Ethereum 설치 및 실행 [ethereum]Smart Contract(Lottery 시스템) 제작 [ethereum]ethereum과 통신해보기 [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum & java]web3j를 통해 ethereum과 통신해보기 [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - basic Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log client에서 ehtereum을 통.. 2019. 8. 28.
[Ethereum]Ethereum의 Transaction 처리 Life Cycle 분석 안녕하세요. 많은 분들이 web3를 이용하여 Ethereum과 통신하고 있습니다. web3는 well-made 프로젝트이기 때문에 우리가 그 안에서 어떻게 돌아가는지 까지 알 필요가 없게 잘 만들어져어있습니다. 하지만 그렇기 때문에 web3에 대해서 의존적일 수 밖에 없으며 커스터마이징 하는것도 힘듭니다. 그래서 이번에 어떻게 Ethereum의 smart-conract와 transaction을 주고 받는지, 그리고 그 내용을 분석해보았습니다. Transaction이 발생할 때 보통 본인의 private Key와 Nonce값으로 먼저 Sign을 하는데 이런 부분은 이번 포스트에서는 제외하겠습니다. 궁금하신 분은 아래를 보시면 좋은 참고가 될 것 같습니다. Transaction Flow 기본 Transact.. 2019. 8. 23.
[ethereum] Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Ethereum 설치 및 실행 [ethereum]Smart Contract(Lottery 시스템) 제작 [ethereum]ethereum과 통신해보기 [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum & java]web3j를 통해 ethereum과 통신해보기 [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - basic Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log 안녕하세요. 이번주는 Solidity.. 2019. 8. 21.
[ethereum]ethereum과 통신해보기 [ethereum]Ethereum 설치 및 실행 [ethereum]Smart Contract(Lottery 시스템) 제작 [ethereum]ethereum과 통신해보기 [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - basic [ethereum]Smart Contract(Lottery 시스템)과 통신해보기 - event & log [ethereum & java]web3j를 통해 ethereum과 통신해보기 [ethereum & java]Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - basic Smart Contract(Lottery 시스템)과 web3j를 통해 통신해보기 - event & log 이번주에는 Java를 이용하여 eth.. 2019. 8. 12.