0. 접근자 (Access Modifier) 0-1 public - 모든 클래스에서 접근가능 0-2 protected - 현재 클래스와 이를 상속한 클래스에서만 접근가능 0-3 private - 현재 클래스에서만 접근가능 1. Class의 속성의 기본 접근자는 Java와 다르게 public이다. class Customer { firstName: string lastName: string constructor(firstName: string, lastName: string) { this.firstName = firstName this.lastName = lastName } } let customer = new Customer("Pilseong", "Heo") console.log(customer.first..
-1. Typescript를 쓰는 이유는 자바스크립트에서 범하기 쉬운 사용자의 에러를 최소한으로 줄이기 위해서이다. -1-0 호출할 수 있는 메소드 이름과 속성과 반환값을 인지하여 사용자의 실수로 보이는 경우 모두 에러를 표시한다. 0. Typescript는 stong type system어서 type이 매우 중요하다. 아래 1-4까지 4가지가 주로 쓰인다. 0-1 boolean 0-2 number 0-3 string 0-4 any 0-5 undefined, null 0-6 기타 등등 (Array, Tuple, Enum, Void 등등 많이 있다.) 1. Typescript의 기본동작 1-1 Typescript는 Type inference를 사용하여 입력 값이 자명한 경우 타입을 설정하지 않아도 알아서 ..
기본적인 Typescript 개발 설정하기 0. 기본적인 세팅 0-1 Editor - Typescript는 MS에서 만든 것이라 MS에서 만든 VS Code가 좋다. 0-2 node 0-3 npm 0-4 tsc 1. Typescript 코드 생성 1-1 .ts 확장자를 가지는 코드를 작성한다. 2. 코드 컴파일 2-1 브라우저는 Typescript를 이해하지 못한다. 2-2 Typescript를 Javascript로 변환이 필요한데 이 과정을 transpiling이라고 한다. 2-3 컴파일을 위해 tsc 명령어를 사용한다. ts 확장자 파일을 컴파일하여 js 확장자 파일을 생성한다. 2-4 생성된 Javascript는 node로 실행할 수 있다. 3. 코드 실행 4. tsc 컴파일러는 에러가 발생해도 j..
0. 이 포스트는 Spring : AOP with Java Config 의 연속이다. 1. Aspect 클래스 내의 Advice의 실행순서는 정의된 것이 없다. 그냥 랜덤이다. 2. Advice의 순서를 관리하고 싶은 경우에는 advice마다 별도의 Aspect 클래스를 만들어 순서를 정할 수 있다. 2-1 @Order annotation을 사용하여 순서를 정할 수 있다. 2-2 @Order(숫자) 형식으로 순서를 정할 수 있는데 숫자가 낮을 수록 우선순위가 높다. 2-2-1 숫자는 -1, -100같은 음수도 가능하다. 2-2-2 순차적으로 사용할 필요가 없다. 1, 3, 100 이런 식으로 마음 대로 설정할 수 있다. 2-3 같은 숫자가 할당 되는 경우는 그 Aspect 클래스들만 랜덤으로 실행된다. ..
1. 이 포스트는 Spring AOP with Java Config - @Pointcut annotation의 연속이다. 2. point cut의 조합은 2-1 하나의 advice 메소드에 여러 개의 point cut expression을 적용하거나 2-2 특정한 조건에서만 실행하도록 메소드를 정의할 수 있다. 2-3 조합에는 &&, ||, ! 논리 연산자를 사용할 수 있다. 2-4 논리 연산자의 조합은 if statement처럼 처리되며 true일 경우만 실행대상이 된다. // and 연산 @Before("expressionOne() && expressionTwo()") // or 연산 @Before("expressionOne() || expressionTwo()") // and와 !연산 @Before..
0. 이 포스트는 Spring : AOP with Java Config 시리즈의 연속이다. 1. @Pointcut annotation의 목적은 하나의 point cut expression을 여러 advice 메소드에서 사용하기 위한 것이다. 1-1 즉 여러 개의 advice 메소드를 동일한 조건에서 사용할 경우에 중복을 제거하기 위함이다. 1-2 장점을 나열해 보면 쉬운 재사용, 한 곳에서 수정할 수 있음, 여러 포인트 컷의 공유와 조합이 편리함 2. @Pointcut 메소드를 정의한다. 2-1 아래의 코드의 forDAOPackage메소드는 @Pointcut으로 수식되어 있다. 2-2 단순히 point cut expression의 중복을 줄이기 위해서 사용하였다. 2-3 아래 소스는 예전의 소스와 동일하..
1. 이 포스트는 Spring AOP with Java Config 의 연장이다. 2. 포인트 컷 정의에서 parameter에 들어갈 pattern을 wildcard를 통해 지정할 수 있다. 2-1 () parameter가 없는 메소드 정의 2-2 (*) 하나의 parameter를 받는데 모든 타입을 다 허용한다. 2-3 (..) 어떤 타입의 parameter형태도 다 허용한다. 3. 각 wild 카드에 해당하는 예제들 3-1 모든 리턴 타입을 허용하는 add로 시작하고 parameter가 없는 메소드를 허용하는 예제 3-1-1 이미 바로 전 포스트에서 보여 주었다. // AOP Advice 클래스 @Aspect @Component public class LoggingAspect { // @Before(..
0. 이 포스트는 Spring AOP with Java Config 시리즈의 연속된 내용이다. 1. Point Cut Expression은 어떤 메소드가 실행되어야 할지 AOP Proxy가 결정하는데 정보를 제공한다. @Aspect @Component public class LoggingAspect { // @Before(value = "execution(public void addAccount())") @Before(value = "execution(public void pe.pilseong.spring_aop_review.dao.AccountDAO.addAccount())") public void beforeAddAccountAdvice() { System.out.println("\n\nExecuti..
- Total
- Today
- Yesterday
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib