https://vuejs.org/ Vue.jsVue.js - The Progressive JavaScript Frameworkvuejs.org The ProgressiveJavaScript Framework 란 무엇인가? - 간단한 화면 ui 개발부터 라우팅, SSR 등의 애플리케이션 레벨의 개발을 지원하는 프레임워크 라우팅(routing) : 페이지 간의 이동SSR(Server Side Rendering) : 서버 사이드 렌더링 - 리액트와 더불어 실무에서 가장 많이 사용되고 있는 프런트엔드 개발 라이브러리- 리액트에 비해 진입 장벽이 낮고 쉽게 배울 수 있다.- 개발 생산성이 높고 자바스크립트 지식이 크게 요구되지 않는다.- 프런트엔드, 백엔드 등 점차 직무적으로 전문화 되고 있는 상황에서 처음 개발..
스프링컨테이너스프링이 아닌 스프링컨테이너라고 하는 이유가 있다.스프링이라는 프레임워크에 가장 기반이 되는 기술은 스프링컨테이너이다.사실 같은 말로 사용해도 된다.Ioc/DI 컨테이너라고도 부른다Dependency Injection (의존관계 주입)기존의 ObjectFactory는 사실 BeanFactory이다.Bean은 그냥 자바의 컴퍼넌트 오브젝트 모델에 붙인 이름이다.그냥 오브젝트라 불러도 된다. 그래서 BeanFactory라고 불러도 된다.현재의 ObjectFactory는 다음과 같은 구조로 서비스를 호출한다. BeanFactory를 사용하려면 아래의 그림과 같은 ObjectFactory가 또 필요로 하게 된다.public class Client { public static void main(..
원칙 : 객체지향 설계 원칙패턴 : 객체지향 디자인 패턴첫 원칙은 관심사 분리였다.개방 폐쇄 원칙 (Open-Closed Principle (OCP))- 무엇 하나가 열려있다면 무엇은 닫혀있다.-> 클래스나 모듈은 확장에는 열려 있어야 하고 변경에는 닫혀 있어야 한다.-> 무슨 뜻이야??-> 확장은 하는데 코드는 바뀌면 안된다. 관심자 분리 1~4까지 보았다면 이제는 PaymentService는 prepare라는 메소드를 사용할 때에 그 데이터를 Api에서 읽어오든 DB에서 읽어오든 코드 수정이 필요하지 않게 되었다. 높은 응집도와 낮은 결합도- 응집도가 높다는 것은 하나의 모듈이 하나의 책임 또는 괌심사에 집중되어있다는 뜻.- 변화가 일어날 때 해당 모듈에서 변하는 부분이 크다.- 책임과 관심사가 다..
현재는 Client에서 paymentService를 부를 때 어떤 것을 부를 지에 대해 책임을 가진 것이 된다. public class Client { public static void main(String[] args) throws IOException { //PaymentService paymentService = new PaymentService(new WebApiExRateProvider()); ObjectFactory factory = new ObjectFactory(); PaymentService paymentService = factory.paymentService(); Payment payment = paymentService.prep..
package com.hellopayment;import java.io.IOException;import java.math.BigDecimal;import java.time.LocalDateTime;public class PaymentService { private final ExRateProvider exRateProvider; public PaymentService() { this.exRateProvider = new WebApiExRateProvider(); } public Payment prepare(Long orderId, String currency, BigDecimal foreignCurrencyAmount) throws IOException { ..
package com.hellopayment;import com.fasterxml.jackson.databind.ObjectMapper;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.math.BigDecimal;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.time.LocalDateTime;import java.util.stream.Collectors;public class PaymentService { public Paymen..
package com.hellopayment;import com.fasterxml.jackson.databind.ObjectMapper;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.math.BigDecimal;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.time.LocalDateTime;import java.util.stream.Collectors;public class PaymentService { public Paymen..
- Total
- Today
- Yesterday
- 리터럴
- 인터셉터
- 향해플러스백엔드
- filter
- JPA
- 예외처리
- react실행
- 백엔드 개발자 역량
- 컨트
- Java
- 향해99
- 항해플러스
- 스프링공부
- Intercepter
- 로그인
- React
- exception
- BindingResult
- hypertexttransferprotocol
- reject
- 향해플러스
- 항해99
- rejectValue
- 백엔드 개발자 공부
- thymleaf
- ArgumentResolver
- HTTP
- SpringBoot
- jpa api
- 스프링부트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |