Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Jinny] 스프링 카페 미션 - step1, 2 구현 #30

Merged
merged 30 commits into from
Apr 1, 2023

Conversation

jinny-l
Copy link

@jinny-l jinny-l commented Mar 30, 2023

Jane, 안녕하세요.
Jinny입니다.

PR로 처음 인사 드려요. 5주동안 잘 부탁드립니다!

우선 카페 미션 1, 2단계 구현 완료되어 PR 보내며, 머지 요청드립니다.
코드 외에 PR, 커밋 형식 등 부족한 부분이나 있으면 언제든지 가감없이 말씀 주세요!

미션을 진행하면서 스프링에 대한 이해도가 없고 김영한님의 스프링 강의 보고 따라한 부분이 많아
어디까지가 강의 편의성을 위해 짠 코드인지 판단이 안되었고, 따라서 구현한 부분이 많았습니다.

미션 관련 설명은 하기에 간략하게 기재해두었으며,
더 자세한 내용은 README에 작성해 두었습니다. 리뷰 시 참고가 되면 좋겠습니다.

감사합니다.


✨ 기능 목록

  • 회원 가입 기능

    • 가입하기 페이지에서 회원 가입 폼을 표시하는 기능
    • 회원 가입 완료 후 확인 버튼을 누르면 회원 목록 조회 페이지로 이동하는 기능
  • 회원 목록 조회 기능

    • 목록 조회 페이지에서 가입한 회원들의 목록을 출력하는 기능
    • 가입한 회원 ID를 누르면 프로필 페이지로 이동하는 기능
  • 회원 프로필 조회 기능

    • 회원 프로필 페이지에서 개별 회원 프로필 정보를 출력하는 기능
  • 게시글 쓰기 및 저장 기능

    • 게시글을 작성하고 저장하는 기능
    • 게시글 작성 완료 후 메인 페이지로 이동하는 기능
  • 게시글 목록 조회 기능

    • 작성된 게시글 목록을 조회하는 기능
  • 게시글 상세 보기 기능

    • 게시글 목록 클릭 시 상세 페이지에 접속하는 기능

📌 URL 및 메서드 컨벤션

기능 URI templates HTTP 메서드
회원 가입 /user/create /user/form.html POST
회원 목록 조회 /users /user/list.html GET
특정 회원 프로필 조회 /users/{userId} /user/profile.html GET
게시글 쓰기 /article/write /qna/form.html POST
게시글 목록 조회 /articles /index.html GET
게시글 상세 보기 /articles/{index} /qna/show.html GET

🧑🏻‍💻 구현 과정

  • 주로 김영한님 강의를 보고 따라서 기능을 구현하고, 이해되지 않는 동작 원리는 중간중간 구글링하며 공부했습니다.
  • 초반에는 문제가 발생하면 어디에서 문제가 발생한 것인지 파악조차 못했습니다.
    그래서 HTTP 공부하다가 스프링 강의보다가 갈피를 잡지 못한 것 같습니다.
  • 그냥 강의 보면서 따라하다보니, 감으로 알게된 부분이 많은 것 같아서 남은 4주동안 Spring 원리에 대해 공부해야 할 것 같습니다.

✏️ 공부한 내용

  • Template Engine
  • Thymeleaf 문법
  • HTTP get, post method
  • Model 객체를 파라미터로 받는 이유
  • @GetMapping @PostMapping 동작 원리
  • WebMvcConfigurer

* 파일:
  - form.html
  - list.html
* 경로
  - 기존: static 폴더
  - 변경: templates 폴더
* 경로
  - 기존: static 폴더
  - 변경: templates 폴더
* 매핑 URL:
  - / : index.html
  - /user/create : form.html
  - /user/list : list.html
* 매핑 URL:
  - / : index.html
  - /user/create : form.html
  - /user/list : list.html
* User.java : 회원을 의미하는 객체
- 해결할 이슈: Get 방식으로 정보 주고 받는 기능 구현
* 구현 기능:
  - 가입하기 페이지에서 회원 가입 폼을 표시하는 기능
  - 회원 가입 완료 후 확인 버튼을 누르면 회원 목록 조회 페이지로 이동하는 기능
* 구현 기능:
  - 목록 조회 페이지에서 가입한 회원들의 목록을 출력하는 기능
* 경로
  - 기존: static 폴더
  - 변경: templates 폴더
* 구현 기능:
  - 가입한 회원 ID를 누르면 프로필 페이지로 이동하는 기능
  - 회원 프로필 페이지에서 개별 회원 프로필 정보를 출력하는 기능
* 구현 기능:
  - 게시글을 작성하고 저장하는 기능
  - 게시글 작성 완료 후 메인 페이지로 이동하는 기능
* 구현 기능:
  - 게시글 목록 클릭 시 상세 페이지에 접속하는 기능
@janeljs janeljs self-requested a review March 30, 2023 17:18
Copy link

@janeljs janeljs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Jinny 안녕하세요~ 리뷰어 Jane입니다.
step 1-2 진행하시느라 너무 고생 많으셨어요 👏🏻 👏🏻
전반적으로 리드미, 커밋메시지, 코드 다 깔끔하게 작성해주셔서 읽기가 편했습니다ㅎㅎ

스프링에 대한 이해가 없으셔서 영한님 코드를 보고 따라 구현한 부분이 많다고 하셨는데요.
조금은 더 코드에서 Jinny의 자율성을 발휘해도 좋겠다는 생각이 들었습니다. 더 엉뚱하고 더 말이 안되게 짜셔도 괜찮으니 꼭 직접 생각하고 고민해보신 후 코드를 작성해주세요.

내일 리뷰드릴까 하다가 오늘을 버리지 말고 학습하시라구(ㅎㅎㅎ) 새벽에 PR 올라온거 보자마자 리뷰 답니다 😄 찬찬히 공부하고 정리해보시고, 막히시는 것 있으시면 편하게 코멘트주세요 ❤️

+) 다음부터는 PR 제출하신 후 reviewer에 지정까지 부탁드릴게요~!
(그래야 리뷰어 어드민에 Jinny PR이 올라와 제가 늦지 않게 리뷰할 수 있답니다. 이번에는 우연히 봤어요ㅎㅎ)

@jinny-l
Copy link
Author

jinny-l commented Mar 31, 2023

Jinny 안녕하세요~ 리뷰어 Jane입니다. step 1-2 진행하시느라 너무 고생 많으셨어요 👏🏻 👏🏻 전반적으로 리드미, 커밋메시지, 코드 다 깔끔하게 작성해주셔서 읽기가 편했습니다ㅎㅎ

스프링에 대한 이해가 없으셔서 영한님 코드를 보고 따라 구현한 부분이 많다고 하셨는데요. 조금은 더 코드에서 Jinny의 자율성을 발휘해도 좋겠다는 생각이 들었습니다. 더 엉뚱하고 더 말이 안되게 짜셔도 괜찮으니 꼭 직접 생각하고 고민해보신 후 코드를 작성해주세요.

내일 리뷰드릴까 하다가 오늘을 버리지 말고 학습하시라구(ㅎㅎㅎ) 새벽에 PR 올라온거 보자마자 리뷰 답니다 😄 찬찬히 공부하고 정리해보시고, 막히시는 것 있으시면 편하게 코멘트주세요 ❤️

+) 다음부터는 PR 제출하신 후 reviewer에 지정까지 부탁드릴게요~! (그래야 리뷰어 어드민에 Jinny PR이 올라와 제가 늦지 않게 리뷰할 수 있답니다. 이번에는 우연히 봤어요ㅎㅎ)

@janeljs
말씀주신 것처럼 다음 미션에서는 좀 더 스스로의 생각을 반영해서 진행해보겠습니다!
금요일이 PR 마감시간이어서 촉박하게 올리는 것보다 미리 올리고 오늘 좀 더 수정하구 리뷰 요청하려구 assign을 안 했습니다 ㅠㅠ
그런데도 새벽에 리뷰해주셔서 감사합니다!

Copy link

@janeljs janeljs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

코멘트 드린 내용 중 반영 안된 부분이 있다면 다음 단계에 반영해주시고, 이번 PR은 여기서 머지할게요~
질문들 다시 답변 드렸으니 또 모르는 부분 있으시면 편하게 질문주세요 😄

@janeljs janeljs merged commit a3d9425 into codesquad-members-2023:jinny-l Apr 1, 2023
@janeljs janeljs assigned janeljs and unassigned janeljs Apr 6, 2023
@janeljs janeljs self-assigned this May 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants