PRO(4)
-
우아한 테크 캠프 PRO 2기 - 4주차 그럴듯한 서비스 만들기 후기
4주차는 개발환경과 운영환경을 구축해보는 인프라 시간이었다. 인프라 구축을 제대로 해본 경험이 없었기 때문에 처음엔 당황했지만 하나하나 개념을 알아가면서 진행하니 어려운것은 없었다. 인프라 구축시 진행했던 내용은 아래와 같다. 1. AWS 네트워크 망 분리 VPC 생성 인터넷 게이트웨이 생성 서브넷 생성 (public 웹서버 2개, public Bastion서버 1개, private DB서버 1개) 라우팅 테이블 설정 넷 게이트웨이 생성 시큐리티 그룹 설정 2. 서버 설정 bastion 서버에서 각 서버 접속가능하게 각 서버에 공개키 설정 bastion 서버에 각 서버의 별칭 세팅(hosts파일) 히스토리에 시간값 세팅 세션 타임아웃 세팅 프롬프트에 각 서버별칭 나오게 설정 감사로그 남기도록 설정 DNS..
2021.06.18 -
우아한 테크 캠프 PRO 2기 - 3주차 인수 테스트 주도 개발 후기
ATDD 3주차가 끝나버렸다. 3주차는 지하철 관리 프로그램을 ATDD 기반으로 개발하는 것이 목표였다! ATDD자체는 어려운 개념이 아니였다. 그냥 TDD앞에 인수 테스트라는 전구간 테스트를 먼저 작성해두고 그 아래에서 TDD를 진행하면 된다. 인수 테스트를 한 번 작성해두면, 단위 테스트 처럼 자주 바뀔 일이 없고, 지금 개발하려고하는 내용의 방향과 목표를 확실하게 잡아주는 역할을 하기 때문에 TDD할 때 가장 많이 고민하게 되는 "뭘 테스트해야하지?"라는 고민을 많이 해결할 수 있어서 개발자가 인수 테스트를 작성하는 수고스러움에 비해 더 많은 장점이 있는 설계 방법이라고 생각되었다. 앞으로는 나도 ATDD 기반으로 개발을 할 수 있도록 해야겠다. JPA 3주차는 지하철 관리 프로그램을 개발하였는데,..
2021.06.16 -
우아한 테크 캠프 PRO 2기 - 2주차 JPA 후기
2주차 JPA 후기 2주차 git 저장소: https://github.com/ybh89/jwp-qna.git 2주차 미션을 완료했다. 2주차 미션을 간단 요약을 하면 아래와 같다. 엔티티 매핑 연관관계 매핑 레거시 코드 TDD로 리팩토링하기 나는 JPA에 대해서는 이미 학습되어 있고 경험도 있었기 때문에 쉽게 넘어갈 수 있었다. 나에게 핵심은 레거시 코드를 TDD로 리팩토링하는 것이었다. QnA 서비스가 이미 레거시 코드로 작성되어 있었고 질문과 답변을 삭제하는 기능을 TDD로 리팩토링하는 것이다. 기능 요구 사항은 아래와 같다. 질문 데이터를 완전히 삭제하는 것이 아니라 데이터의 상태를 삭제 상태(deleted - boolean type)로 변경한다. 로그인 사용자와 질문한 사람이 같은 경우 삭제할 수..
2021.06.01 -
우아한 테크 캠프 PRO 2기 - 1주차 로또 TDD 후기
1주차 로또 TDD 후기 1주차가 완료되었다. 다행히 일정대로 미션수행을 완료하였고 생각보다 정말 쉽지 않다는 걸 깨닫았다. 1주차에는 그냥 간단한 로또 프로그램을 개발하는 것이다. 요구사항에 대해 간략히 요약해보자면, 자동 로또 번호가 생성기능, 수동 생성 기능, 보너스 볼 기능 사용자는 콘솔을 이용하여 로또 구매 가격, 로또 수동 구매 개수, 수동 구매 로또 번호, 보너스 볼 등 입력받는다 입력받은 정보를 이용하여 사용자의 로또 담청 보상금을 계산하여 결과를 콘솔로 보여준다. 어떻게 보면 정말 간단한 프로그램이다. 기능 구현은 누구든지 할 수 있다. 하지만 이 교육은 기능 구현이 목적이 아니다. 이 미션을 수행할 동안, 기능 요구사항이 아닌, 프로그래밍 요구사항이 주어진다. 예를들어 클린코드를 위한 ..
2021.05.27