분류 전체보기 11

[Swagger] SpringBoot Swagger로 api문서 자동화!

이 프로젝트는 내가 만들어보고 계속 조금씩 키워가고 싶은 욕심도 있지만 전적으로 나의 학습과 발전이 우선시 되어야 하는 프로젝트이다.. 백엔드 사이드에서 가장 중요한 api문서화를 자동으로 해주는 swagger라는 기능을 사용해보려고 한다! Swagger란?? OAS(Open Api Specification)를 위한 프레임워크이다. 개발자들의 필수 과제인 API문서화를 쉽게 할 수 있도록 도와주며, 파라미터를 넣어서 실제로 어떤 응답이 오는지 테스트도 할 수 있다. 또한, 협업하는 클라이언트 개발자들에게도 Swagger만 잘 전달해주면 API Path 와 request, response 값 및 제약 등을 한 번에 알려줄 수 있다. 서버로 요청되는 URL리스트를 HTML 화면으로 문서화 및 테스트 할 수 ..

[DDD란?] Domain Driven Design

먼저 지금 자바 스프링에 대해 다시 공부를 하고있다.. 김영한님의 인강을 들으며 공부중인데 이제 공부한 내용을 써먹어야지 내것이 되는거지 듣는다고 다가 아니니깐... 그래서 wagwagt 프로젝트에 백엔드를 java spring 으로 만드려고하는데 아키텍쳐에 대해서도 공부를 해보고 싶었고 최근 DDD란 것도 채용 공고에 많이 보여서 알면 좋을 것 같다는 생각이 들었다!! 그래서 공부할겸 사이드프로젝트에 DDD를 적용하여 개발을 해보려고 한다!! 우선 DDD가 뭔지 알아보기 위해 유튜브에서 카카오 파트너 페이지 팀에서 발표한 DDD 발표를 듣고 정리해봤다. 그리고 좀 더 검색을 해서 참고한 내용을 정리해보려고 한다! 1. Domain Driven Design 이란? 도메인 주도 설계를 이해하기 위해서는 객..

[WagWagT] DB 설계하기(feat.drawio)

개발하기 전에는 철저한 설계가 먼저 선행되어야 한다! 그래서 우선 간단한 기능을 추가할 예정이기 때문에 ERD 부터 그리고 ClassDiagram을 통해 API를 설계할 예정이다. 그리고 내가 생각한 최소 기능에 대한 1차 기획안이다. 1.회원가입/회원탈퇴가 가능 해야한다. - ID,PW,이름,이메일 정보만 받는다. - 회원탈퇴시 재가입 가능하다. 2. 로그인/로그아웃이 가능 해야한다. - 로그인 후 10분동안 동작이 없으면 자동 로그아웃 된다. 3. 로그인한 사람만 게시물을 작성할 수 있다. 4. 게시물에 대한 좋아요기능 또한 로그인한 유저만 가능하다. 5. MBTI테스트는 로그인하지않아도 가능하다. 6. 메인화면에 인기 게시물 10개씩 보여준다. 7. 메인화면에 최신 게시물 10개씩 보여준다. 8. ..

[React.js] Component란 무엇일까?

컴포넌트란 무엇인가... 되게 추상적으로 머리에는 그려지는데 설명을 못하겠다! 근데 React 컴포넌트랑 프로그래밍 측면에서 컴포넌트가 좀 다른 점이 있는것 같다 ..! 그래서 한번 자세히 알아보자!! 먼저 컴포넌트란? - 프로그래밍에 있어서 컴포넌트란 재사용이 가능한 각각의 독립된 모듈을 뜻한다. ( 교체 가능한 부품 ) - 컴포넌트 개념을 잘 적용한 소프트웨어란 부품(인터페이스를 구현받는 클래스)만 바꾸어주었을 시 오류없이 잘 작동되는 것을 의미한다. 컴포넌트는 구현, 명세화, 패키지화, 그리고 배포 될 수 있어야한다. 1. 소스코드(soure code)가 아닌 실행코드(execute code) 기반으로 재사용할 수 있도록 이미 구현(implemetntation)이 완료되어 있어야만 한다. 2.컴포넌..

[React.js] 리액트의 기본 useState란?

리액트를 공부해보니 useState가 가장 흔하게 사용되고 중요한 내용으로 생각이 들었다. 아직 지식이 얕기때문에 추후에 생각이 바뀔지도 모르지만 우선은 내생각이니..! useState에 대해 정리해보자! useState란 무엇인가? useState는 함수형 또는 클래스형 컴포넌트의 상태를 관리하고, 변경할 수 있도록 도와주는 하나의 React Hook 이다. (컴포넌트와 Hook에 대해서도 정리해야겠다) 한마디로 로컬의 데이터 상태를 관리할 수 있게 해주는 기능! 하나의 useState 함수는 하나의 상태 값만 관리할 수 있기 때문에 컴포넌트에서 관리해야 할 상태가 여러 개라면 useState를 여러번 사용해야 함!! state란 무엇일까? state만 제대로 이해하고 사용 할 수있으면 react의 절..

[React 사이드프로젝트] 리액트를 선택한 이유 (feat.DreamCoding)

5월에 회사를 그만두고 6월에 들어갈 회사에서 리액트를 공부를 조금 했으면 좋겠다고 해서 인강을 찾아보다가 드림코딩 앨리님의 리액트 강의가 좋다는 평이 많아서 강의를 선택하게 되었다! 드림코딩을 선정하기 전에 생활코딩에 react무료 강의가 있어서 먼저 들어보았다! 처음 리액트 입문 후기를 남긴 글을 원래 나의 블로그에 정리해놓았다! https://jihoon2723.tistory.com/entry/%EB%A6%AC%EC%95%A1%ED%8A%B8-%EC%9E%85%EB%AC%B8%EA%B8%B0 리액트 입문기.. 리액트를 공부를 시작하게 되었다! 처음이라 기초를 차근차근 알고싶어서 인프런 강의들을 뒤져보다가 생활코딩 무료 리액트 강의를 발견하였다!!! 길지않은 강의 였기에 이틀에 걸쳐 다 들을 jiho..

[wagwagt] 4. 아이패드로 결과 및 로고 그리기..

우선.. 화면 설계도 없이 그냥 생각나는 구조대로 만들었다 ㅎ 거기다 디자인도 엉망 ㅋㅋ 이런 느낌으로 메인 화면을 구성했는데 모두 내가 내 손으로 그린거다 ㅎ wwt 로고는 맨 처음 1번 게시물에서 설명했던 뜻이 있는 wagwagt의 줄임말이다 ㅎ 먼가 ww를 t (=tail) 이 감싸고 있는 것 처럼 표현하고 싶었는데 나중에 다시 보완을 해야할듯 ㅎ 그리고 가장 메인 강아지 사진 ㅋㅋ 이것도 그냥 대충 아이패드로 그린건데 그냥 우선 좀 귀여운것 같아서 냅뒀다 ㅎ 나중에 업데이트 예정.. 결과는 이런식으로 일일히 그려서 이미지로 저장했다 ㅎ 이제.. 좀 개발적인 요소에 집중해서 업그레이드를 시켜보자..제발!! 디자이너가 왜 필요한지 깨달은 소중한 경험 ㅎ

[wagwagt] 3. React로 테스트 사이트 만들기!

평소 자바만 사용하다가 어찌저찌 새로운 회사에서의 요구로 리액트를 공부하게 되었었다.. ㅎ 드림코딩 앨리님의 강의를 들으면서 리액트를 공부하면서 내가 만들어보고 싶은걸 만들면서 공부를 하면 더 재밌겠다 싶어서 만들어보게 되었다! 처음엔 예전에 공부를 하면서 팀 프로젝트로 만들었던 강아지 성격유형별 매칭 서비스와 관련한 강아지 관련 서비스를 제공하는 사이트를 만들어보고 싶었다. 그런데 처음부터 너무 많은 기능을 넣으려고 하는 것은 욕심이라고 생각해서 가볍고 누구라도 바로 사용해볼 수 있는 사이트를 먼저 만들어야겠다 싶어서 mbti 테스트를 만들어야겠다 생각했다! 아무튼 리액트 코딩은 배운것 ( useState, useEffect 등 ) 적용해가면서 공부해보는 느낌으로 한거라 그렇게 복잡하게 코딩을 하지 않..

[wagwagt] 2. wrtn.ai 이용 강아지 mbti 생성 하기

강아지의 성격을 분류하거나 테스트 하는 서비스들이 꽤나 있었다! 그런데 대부분 유료였고, 어떻게 분류했는지 연구 문서나 자료들을 찾아보기에 어려웠다.. 외국 문서에는 있을수도 있을거라 생각하긴 하는데 외국어를 잘 못해서 검색하는 법도 어렵드라.. 그래서 전문성은 없지만 우선은 사용자들이 재미를 위해, 신뢰도는 없을지라도 한번 재미를 위해 만드는것도 괜찮겠다 라는 생각으로 뤼튼 에이아이에게 도움을 요청했다 ㅎ 뤼튼 에이아이를 사용한 이유는 챗 GPT4 는 유료로 결제하고 사용해야 하는데 뤼튼에서는 무료로 사용할 수 있었기 때문에!! 그래서 나는 각 열 여섯가지의 MBTI의 특성과 가장 비슷한 강아지 종을 추출했다. 왜냐하면 강아지들은 종별로 비슷한 특성을 가지는 경향이 있기 때문이다! 우리집 귀여운 보리를..

[wagwagt] 1. 이름과 도메인 선정 스토리..

왜 wagwagt인지 그냥 보면 잘 모르긴 할것같다.. 근데 뭐 네이버도 그냥 보면 무슨뜻인지 모르니깐 괜찮을것같다 ㅎ 내가 처음에 생각한건 그냥 강아지 관련 사이트를 만들고싶었다. 근데 처음에 가볍고 재미있는게 생각난게 mbti였는데 그냥 개bti 라고 이름을 정했었다 ㅎ 근데 이런저런 이름들을 가지고 도메인을 찾아보니까 웬만한건 다 있드라ㅎ 그래서 또 wrtn ai 한테 의견을 구하고 내 아이디어 컨펌을 받음 ㅋㅋ 근데 나는 생각을 못했찌만 똑똑한 ai가 강아지들은 꼬리로 대화한다~ 라는 흥미롭고 재미난 이야기를 해줬다 ㅋㅋ 근데 우리 보리를 생각해보면 그런것같아서 되게 유레카 였다! 그래서 이것저것 찾아보니 waggle이라는 단어가 `꼬리를 흔들다` 라는 뜻이 있었다 근데 뭔가 wagglewaggl..