1. 본인이 작성했던 코드 중 공유하고 싶은 코드를 이유와 함께 마크다운 code block 을 사용해 올려주세요
언어 상관없음
어떤 로직이든 상관없음
단, 길이가 길지 않은 함수 단위가 좋습니다
해당 code block 에 올려주세요
@PostMapping(value = "/members/new")
public String create(MemberForm form) {
Member member = new Member();
member.setName(form.getName());
memberService.join(member);
return "redirect:/";
}
spring 을 공부하면서 PostMapping, GetMapping 을 사용하였던 코드의 일부 입니다.
이번 기회에 nest.js typescript를 이용하여 프로젝트를 만들고 싶습니다.
2. Layered Architecture(계층 아키텍처)에 대해서 설명해 주세요
프로그래밍 개발에서 많이 채택 되는 아키텍처.
다른 계층에서 발생하는 문제나 알고리즘들은 굳이 신경 쓸 필요 X .
그러다 보니 유지보수와 테스팅이 쉬운게 장점.
총 4개의 계층으로 나누어서 진행
- Presentation Layer
- Business Layer
- Persistence Layer
- Database Layer
3. Dependency Injection(의존성 주입)의 개념과 함께, 왜 필요한지 작성해 주세요
의존성 주입 개념
- 외부에서 두 객체 간 관계 결정해주는 디자인 패턴이다.
- 직접적으로 작성하는게 아닌 외부 의존관계에서 런타임 시 관계를 동적으로 주입해 주는걸 뜻한다.
의존성 왜 필요한가?
- 각 코드들이 강하게 결합되어 있을 경우 제약이 많아지고 확장성이 떨어진다.
- 의존성 주입을 하여 결합도를 낮추고 객체의 유연성을 높일 수 있기 때문
4. 본인이 사용하는 언어의 Functional Programming(함수형 프로그래밍) 스펙을 예제와 함께 소개해 주세요
함수형 프로그래밍 정의
- 대입문을 사용하지 않는 프로그래밍, 문제 해결을 위한 작은 함수를 작성하는 뜻
let grade = [80,70,90,85,100]
grade.filter((value) => value>=90);
grade.sort(fun(a,b) {
return a-b;
});
grade.map((value) => value *2);
5. (코드 작성) 다음 스펙을 만족하는 delay 함수를 작성해 주세요 (hint: Promise 사용)
1. 본인이 작성했던 코드 중 공유하고 싶은 코드를 이유와 함께 마크다운 code block 을 사용해 올려주세요
2. Layered Architecture(계층 아키텍처)에 대해서 설명해 주세요
3. Dependency Injection(의존성 주입)의 개념과 함께, 왜 필요한지 작성해 주세요
4. 본인이 사용하는 언어의 Functional Programming(함수형 프로그래밍) 스펙을 예제와 함께 소개해 주세요
5. (코드 작성) 다음 스펙을 만족하는 delay 함수를 작성해 주세요 (hint: Promise 사용)
결과값
6. 강의를 통해서 기대하는 바, 또는 얻고 싶은 팁을 적어주세요
이번 프리온 보딩 백엔드를 하면서 제가 가지고 있던 프론트 지식에 더불어 백으로 데이터 베이스를 연동하는 프로젝트를 진행하고 있습니다. 또한 그동안 기능성만 중시하였다면 가독성과 유지보수를 쉽게 하기 위한 노력의 발판으로 삼아 앞으로 나아가고 싶습니다.