
먼저 자바스크립트의 모듈시스템에 대해 설명하자면 기존에는 html 파일에서 태그를 이용하여 필요한 자바스크립트 파일들을 불러왔다. 이러한 방식에는 큰 문제가 있었는데 html 파일에서 불러와진 여러 자바스크립트들이 서로 다른 파일임에도 불구하고 서로가 의존적이게 되어버렸다... 부가적으로 파일들을 로드하는 순서도 중요했고... 이러한 점을 보완하기 위해 등장한 것이 바로 모듈 시스템이다. 간단히 말하면 외부에서 사용할 수 있게 특정 함수나 오브젝트 등을 모듈화 하고, 해당 모듈을 사용하려는 쪽에서는 필요한 모듈만 불러와서 사용하면 된다. 모듈을 정의하기 위한 문법에는 여러가지가 있다. (모듈 포맷) 대표적으로 AMD, CommonJS, ES6 등이 있는데 이 포스팅에서는 CommonJS와 ES6를 비교해..

트럭팩터 (혹은 버스팩터) 주로 애자일에서 사용되는 단어인데, 간단히 설명하면 다음과 같다. 팀원 중 몇명이 버스(혹은 트럭)에 치어죽어야 프로젝트가 심각한 상태에 놓이는지를 나타내는 지표다. 극단적인 표현일 뿐, 퇴사나 휴가 등으로 빠지는 경우로 이해하면 될 것 같다. 로또 팩터라고도 하는데, 로또에 당첨되면 퇴사를 하니 결국엔 같은 의미이다. 트럭팩터가 1 이라면 -> 특정인 1명만 빠져도 프로젝트가 심각해진다. 라고 이해하면 되는 것이다. 반대로 트럭팩터가 10 이라면, 10명이나 치어죽어야 프로젝트가 망한다는 뜻이니 트럭팩터가 높을 수록 해당 프로젝트의 리스크가 작다고 볼 수 있다. 즉 현재의 문제라기 보다는 잠재적인 문제점 (특히 인적자원) 을 나타내기에 좋은 지표라고 할 수 있다. 특정 인원에..

지난 강의까지 만든 REST로 구현한 간단한 CRUD API 를 실제로 호출해보겠습니다. resources 폴더 내에 있는 application.properties 파일 명을 application.yml 으로 변경합니다. 두 확장자 모두 설정 파일 입니다만, yml 파일이 지원하는 특유의 직관적이고 유연한 구조 덕분에 yml 파일이 최근들어 많이 사용되고 있습니다. application.yml 1 2 3 4 spring: h2: console: enabled: true cs 프로젝트 생성 시 dependency에 추가해두었던 H2를 활성화 했습니다. 실제로 CRUD 기능을 테스트 하기 위해서는 당연히 DB 테이블을 직접 확인해봐야겠죠? 다행히 H2 는 별도의 클라이언트 프로그램 없이 웹 상에서 콘솔을 제..

1편 강의에서 간단한 스프링부트 웹서버를 띄우는거까지 했으니 이번에는 특정 도메인 모델에 대한 CRUD 기능을 제공하는 API 를 만들어보겠습니다. 도서관리 기능을 제공하는 예제로 진행하겠습니다. 우선, 도서관리의 기본이 될 Book 클래스를 생성해 보겠습니다. 위와같은 패키지와 클래스 파일을 생성해주세요. Book 클래스 도서관리 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 @NoArgsConstructor(access = AccessLevel.PROTECTED) @Getter @Setter @Entity public cla..
빌더 패턴(Builder Pattern)은 일반적으로 객체를 생성할 때 사용하는 패턴이다. 특히 생성자에 들어가는 매개변수가 많을 때, 해당 클래스는 단순 생성자 호출 대신에 Builder 패턴을 사용하는게 유리하다. 빌더 패턴의 장점을 이해하기 쉽게 빌더 패턴 외의 객체 생성 방법을 먼저 보자. 1. 점층적 생성자 패턴( telescoping constructor pattern) 가장 일반적인 패턴이다. 간단히 요약하면 매개변수를 1개 받는 생성자, 2개 받는 생성자 ~ (반복) 결국에는 전부 다 받는 생성자까지 모두 만들어 주는 방식이다. 123456789101112131415161718192021222324public class Person { private final String name; pri..

맥북도 사게 된겸 스프링부트를 공부하게 되었다. (맥북이랑 뭔상관인가 싶긴하다.) 또한 IDE 로 기존에 써왔던 이클립스(STS) 말고 많이들 쓰고 있는 인텔리제이를 선택하였다. (처음 사용하면서 느끼는 점은.. 버벅임 없이 빠른 것과 자동완성이 정말 잘 나오는 것?) 인텔리제이와 스프링부트를 처음 배우는 입장에서 작성한 글인지라 수정해야할 내용이나 추가적으로 알아야할 내용에 대해서는 적극적으로 댓글 부탁드립니다. 개발 환경은 크게 다음과 같습니다. IDE: IntelliJ IDEA Ultimate JAVA: 1.8 ↑ 신규 프로젝트를 생성하면서, 왼쪽에서 Spring Initializer 를 선택한다. ↑ 위 화면을 참고하며 작성하되, Group 및 Artifact는 본인 맘대로 작성해도 무관하다. (..
- Total
- Today
- Yesterday
- vue.js
- promise
- es6
- 자바스크립트 엔진
- javascript
- vuejs
- springboot
- 빌더패턴
- 프로미스
- KCD
- 근본설
- 자바스크립트
- intellij
- javascript engine
- KCD2019
- nuxt
- jest
- await
- CommonJs
- 모듈시스템
- 테스트코드
- 인텔리제이
- 야누자이
- 스프링부트
- event loop
- 근본
- vue
- nuxtjs
- Builder
- 이벤트루프
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |