프로젝트(53)
-
[Salle] Last week - 진행사항
지난주 회원가입 페이지 구현에 있어 꽤 많은 변경사항이 있었습니다. 생각지 못한 어려운 부분들이 많이 나온게 주된 이유였습니다. 예를 들어 처음 기획에선 회원가입/로그인을 SSO(로그인 한번으로 인증절차를 생략할 수 있는 기능)로 구현하고자 했습니다. 그런데 Google API와 OAuth2.0 관련 자료를 읽고 참고 블로그를 뒤져봐도 Spring Security를 연동시키는 부분이 이해가 가질 않더라구요. 따라할 수 있는 웹서비스 만들기 강좌를 구매해둔게 있어서 따라가다가 TDD에 치중돼있는 경향을 보여 결국 제일 간단한 방식의 기능만으로 회원가입을 구현한다는 결론에 다다랐습니다. 느낀 점은 혼자하니 물어볼 사람도 없고 구글링해도 다들 각자 방식으로 설계를 하셔서 취사선택 조차 쉽지 않다는 사실입니다...
2020.11.24 -
[Salle] 1. 회원가입 페이지
Spring Boot로 중고거래 웹사이트를 만들어보고 있습니다. 제대로된 첫 프로젝트인만큼 손이 많이가고 시행착오도 겪고 있습니다. 하나의 완성된 프로젝트를 만드는 것도 중요하지만 원하는 기능을 구현하는 방법들을 배우는 것을 중점으로 두고 끝까지 만들어 해보겠습니다. 노션 기획안 바로가기 [프로젝트] 중고거래 웹 marketplace salle(살래) 기획서 목차 www.notion.so #201116 - 회원가입 페이지 (진행중) 두줄요약 첫 술에 배부를 수 없다. 기능은 핵심만 구현하고 그 이상은 추가 배포?때를 노리자. (노트북 포맷 필요...) 진행사항 회원가입 페이지 TDD로 테스트 진행중 - MockMvc API 사용 URI getmapping 테스트 - 성공! 회원정보 - email, pas..
2020.11.17 -
[예약사이트] 3. 가게 추가
가게 추가 기능을 구현했습니다. 프로그래밍적 지식은 테스트 할 때 사용할 수 있는 Mock object(가짜객체) - mockito라는 프레임워크와 HTTPie 라는 소프트웨어에 대해 알아보겠습니다. 1) Review 이외에도 강의를 들으면서 어렴풋이 설계방식이나 객체 구현 흐름을 알 수 있었습니다. 가령 Controller를 먼저 생성하고 Service에 메서드를 만들어 준 다음 Repository에 인터페이스 메서드를 구현해주는 순서로 이루어진다는 점입니다. 또한 Controller와 Service 메서드가 생성되면 곧바로 테스트를 만들어 진행하는 점이 아직 익숙지 않은데요, 처음 보는 개념들이 많아 이 강의를 듣고 바로 TDD 개발을 진행시킬 순 없겠지만 배경지식을 차곡차곡 쌓아간다는 느낌으로 진행..
2020.10.22 -
[예약사이트] 2. 가게 목록과 가게 상세 구현
위 프로젝트는 인강보면서 코드도 같이 치고 있습니다. 구체적인 API 메서드 활용보다 큰 덩어리 설계를 어떻게 하고 Spring 기능들은 어떻게 활용하는지에 중점을 두는 것이 미래 웹 사이트를 구현할 때 도움이 될 거라 생각합니다. 이번 글에서 다룰 프로그래밍적 지식은 Layer Architecture이며 DI는 Spring 복습 겸 조금만 다뤄보겠습니다. 참고로 구현할 기능은 제목처럼 가게목록과 가게상세 입니다. 1) Layer Architecture 웹을 구현할 때 UI와 기능에 따라 객체들을 구분해 관리하는 객체 지향 프로그래밍 구조입니다. 즉 Controller 객체들은 interfaces package로 구분되며 코드를 최소화하여 DB와 WEB에 접근하는 단순명료한 코드들로 이루어져야 합니다. ..
2020.10.21 -
[예약사이트] 1. TDD와 REST API
Spring 강의를 다 마쳤기 때문에 혼자 프로젝트를 만들어보려던 찰나에 예전에 구매해둔 웹 개발 마스터 패키지 온라인 강의가 생각났습니다. Spring Boot 레스토랑 예약사이트를 구현하는 프로젝트였고 이해도가 낮아 접었던 강좌였습니다. 아직 무엇을 어떻게 만들어야겠다는 생각까지 없어서 Spring 복습 겸 강좌의 프로젝트를 완성시켜 보기로 마음 먹었습니다. 이번 글에선 TDD(Test Driven Development)의 필요성과 간단한 사용법을 설명하고, REST API를 사용해 가게 목록을 Front-end에서 받아 JSON으로 전달해주는 기능을 구현하는 실습을 진행해보겠습니다. 1) TDD 테스트 주도 개발은 결과물이 나오기 전 코드를 구현하는 단계에서부터 Test를 실시하는 개발방법입니다. ..
2020.10.19 -
[Spring Boot] 주식시장(Stock Market) 확인 웹사이트 만들기 (2) - MyBatis, MySQL ②
#Spring Boot #MyBatis #MySQL 1. Spring Boot에 MyBatis 연동하고 MySQL 테이블 생성하기 지난 글에서 MyBatis에 대한 개념을 알아봤습니다. Spring Boot Java 클래스 설정에 앞서 MySQL 다운로드와 스키마, 테이블을 생성하는 사용법을 알아보겠습니다. 1) MySQL 다운로드 공식홈페이지에서 받아줍니다. 저도 구글링으로 해결했기 때문에 Spring Boot 위주로 설명하는 글 특성 상 다운로드 방법은 간단히 기술하겠습니다. MySQL 홈페이지 -> DOWNLOADS 탭 클릭 MySQL Community(무료버전) Downloads 클릭 MySQL Community Server 클릭 MySQL Installer for Windows > Go to D..
2020.09.14