개발 환경 잡기
개발도구 : Intellij IDEA Ultimate
IntelliJ IDEA – the Leading Java and Kotlin IDE (jetbrains.com)
소스코드 관리 : Git
Git 호스팅 : GitHub
GitHub: Let’s build from here · GitHub
Git GUI : GitKraken Pro
GitKraken Legendary Git Tools | GitKraken
개발 목적
게시판 서비스 프로젝트 목표
- 누구나 이해하기 쉬운 소재로 명확한 기능 요구사항을 만든다.
- 요구사항을 구현하는데 도움이 되는 각종 문서 작업을 경험한다.
- 자바 + 스프링 부트로 프로젝트 요구사항을 실제로 구현하는 기술적인 방법을 익힌다
- 최신 버전의 기술을 사용해 보면서 기술 동향을 파악하고 새로운 문제와 해결 방법을 확인한다.
- 기획과 문서 작성부터 개발, 형상관리, 테스트, 배포 까지 개발 프로세스 전반을 경험한다.
다양한 형태의 문서 작업 - 원활한 협업의 초석
- 문서를 통해 개발한 프로젝트의 목적, 내용, 진행상황을 공유 ( 왜 하는지가 특히 중요)
-- 무엇을, 어떻게 : 업무의 가이드, 동료의 생산성을 높여줌
-- 왜 : 함께 움직이는 원동력, 동료가 더 나은 방법을 제안하거나, 내 생각의 오류를 잡아줌
- 내용이 구체적일 수록 동료들의 프로젝트 개발 내용이 잘 동기화되고 진행이 막히지 않음
-- 주의할 사항은 과도한 정보의 범람 업데이트되지 않았거나 잘못된 정보가 주는 혼란
- 백업이 용이 : 문서는 지나간 일을 다시 꺼내야 할 때 쉽게 찾게 도와줌
- 기억이 짧고 왜곡되지만 문서는 수정 가능하고 발전하며 오래감
- 업무 기록을 남김으로써 업무 진척 사항과 내 성과가 잘 드러남
이 게시판 만들기 프로젝트에서 해볼 문서 작업
- diagrams.net(구 draw.io) : 도메인과 ERD 설계, 유즈케이스
- 구글 시트 : API 디자인
- 깃 + 깃헙 : 커밋 메시지 작성, 프로젝트 관리 및 협업 환경 꾸미기
개발의 목적 - 고객의 문제를 해결 ( + 하는 과정을 공부 )
- 고객의 니즈와 문제를 정리
-- 고객이 원치 않거나 고객의 문제를 해결해줄 수 없는 개발은 의미가 없다.
-- 공부가 목표 - 이 부분에서 다소 자유롭게 ( 실패가 용인됨 )
- 문제 -> 요구사항 -> 기능(feature) 도출 -> 구현 방안의 기획 -> 개발 계획 수립 -> 실행
제약사항 : 기술 스택이 정해져 있음 ( 제약 == 집중과 효율)
이 게시판 만들기 프로젝트에서 해볼 개발 작업
- IDE : IntelliJ IDEA ( Ultimate Edition )
- 언어 : Java 17
- 프레임워크 : spring boot 2.7.0
- 빌드 도구 : gradle 7.4.1
- git GUI : GitKraken - git 형상 관리와 브랜치 전략 활용
- 각종 개발 전략과 도메인 설계, 실무 디자인 패턴, 비즈니스 로직의 구현
추가 다운로드 플로그인
(기능)
CamelCase (3.0.12)
GitToolBox (212.9.0)
JPA Buddy (2022.2.4.-221)
Key Promoter X (2022.1.2)
presentation Assistant (1.0.9)
Ideolog (203.0.30.0)
spring Boot Assistant (0.14.0)
(색상/테마)
ANSI Highlighter (1.2.4) -> 이후 유료 플로그인으로 바뀜
Atom Material icons (64.0.0)
Grep Console (12.12.211.6693.0)
One Dark theme (5.6.0)
이 게시판 만들기 프로젝트에서 해볼 테스트와 배포
- 테스트
-- JUnit 5.8.2
-- 각종 테스트 라이브러리 (Mockito, AssertJ등)
-- 스프링 부트 슬라이스 테스트 테크닉
-- 깃헙 : 테스트/빌드 자동화
-배포
-- 클라우드 서버에 배포 (Heroku)
-- 깃헙 : Heroku 배포 자동화
Reference
Cloud Application Platform | Heroku
'프로젝트 > 게시판 서비스' 카테고리의 다른 글
4. API 테스트 정의 (0) | 2023.12.01 |
---|---|
3. 데이터베이스 접근 로직 구현 (0) | 2023.11.30 |
2. 데이터베이스 접근 로직 테스트 정의 (1) | 2023.11.30 |
1-2 프로젝트 기획 (필요한 기술 정리) (0) | 2023.11.24 |
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!