끊임없이 검증하라

나에게 당연할지라도

분류 전체보기 67

P3_GPT API로 프로그래밍 AI 웹서비스 만들어보기(spring Boot+React)_2 리액트+스프링 부트 연동1

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 우선 프로젝트를 진행하기 전에 개발 환경을 조금 정해놓고 싶어서 조금 고민을 했습니다. 백엔드는 주력인 스프링 부트를 가져가지만 프론트엔드의 경우에 간편하게 타임리프만 사용할지 아니면 요즘 개발자 사이에서 핫한 스벨트를 써볼지 등등 이거저거 생각은 해봤지만 기왕 이렇게 된거 우리 GPT에게 질문을 해보기로 했습니다. Q : 스프링 부트와 가장 잘 어울리는 프론트엔드 프레임워크 하나만 추천해줘 A : React.js is a popular front-end framework that pairs well with Spring Bo..

Project 2023.02.05

P3_GPT API로 프로그래밍 AI 웹서비스 만들어보기(spring Boot+React)_1 API TEST

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 우선 제가 맨 처음에 chatGPT에 대해서 들었을땐 아무래도 영어에 최적화 되어 있어서 한글로 질문하면 시간이 2배 정도 더 걸린다고 하더라구요. 그렇기 때문에 처음 생각만 할 때는 한글로 된 개발자의 질문을 파파고 api를 통해 영어로 번역하고 그것을 GPT에 질문하고 나온 대답을 다시 파파고로 번역해서 보여주는 것을 생각했습니다. 그런데 실제로 GPT를 사용해서 한글로된 질문 몇 개를 해보니 속도 차이가 그리 나지도 않고 답변도 한글로 잘만 해주더라구요. 그래서 문득 궁금해져서 GPT에 직접 질문을 해봤습니다. Q : 선..

Project 2023.02.04

P3_GPT API로 프로그래밍 AI 웹서비스 만들어보기(spring Boot+React)_Ready

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 건강이 너무 안 좋아서 운동을 하기로 결심했더니 몇 달 동안은 다른 일은 손에도 잡지 못했습니다... 물론 제가 게으른 것도 있겠지만 원체 살면서 운동이라고는 해본적도 없고 하루에 한 끼 먹는게 일상이었다보니 하루 세 끼 챙겨가면서 운동만 해도 온몸에 진이 빠지네요... 이제 슬슬 운동 습관도 붙어가는 것 같아서 취업 준비 전에 마지막으로 프로젝트 하나만 더해보려 합니다. 요즘 chatGTP가 핫하다고 해서 저도 호기심으로 가서 몇 번 써봤는데 생각보다 이게 물건이더라구요. 그래서 다시 개발 공부도 시작할 겸 openAI에서 ..

Project 2023.02.02

글 리뷰_1_'백엔드 개발자를 꿈꾸는 학생개발자에게'

※ 이 포스트는 개발 학습 과정에서 읽게 된 포스트 중 좋은 글들을 정리해둘겸 작성하는 글이므로 자신이 개발 입문 레벨에서 접근하는 것이 아닌 정확한 지식이 필요하시다면 원문을 읽고 스스로 검색해보시는 걸 추천드립니다. 사실 저번 3달 동안 코로나에 걸려 그 후유증으로 학습을 게을리했습니다...'라는 정말 현실도피적인 핑계를 대며 포스팅의 서두를 여는 제가 참 한심합니다. 그런 허접한 핑계 대신 포스팅을 잠시 쉬었던 또다른 이유를 대보자면 최근 블로그 포스팅을 하며 든 생각이 '아니 학습할 시간도 부족하고 아는 것도 없는 주제에 무슨 정보글을 쓰냐?'라는 것이었습니다. 포스팅을 하면서 아무리 시간을 적게 쓰더라도 만만치 않은 학습 시간을 빼앗게되고 물론 포스트를 작성하는 과정이나 이후 수정하는 과정에서 ..

Fadet's box 2022.10.05

Spring_짧2_415 오류와 Content-Type, @RequestBody

※ 이 포스트는 스프링 실습 과정에서 작성하기 때문에 정보가 부정확할 수 있는 부분이 있습니다. 따라서 참고만 해주시고 틀린 부분이 있을 경우 알려주시면 감사하겠습니다. 이번 포스트는 제 깃허브의 https://github.com/kth1017/project_newPostLink 레포를 바탕으로 작성했습니다. 해당 레포의 ControllerTest를 작성하다 Test는 통과했지만 실제 톰캣 구동 후 해당 메소드를 실행했을때 415 오류가 발생하여 이번 포스트를 작성합니다. 기본적인 HTTP 지식이 있다는 것을 가정하므로 자세한 설명은 생략하겠습니다. 원인 탐색 실습을 하다가 테스트를 작성하여 통과하고 실제 톰캣 구동에서 415 오류를 만나게 되었습니다. 415 오류는 처음 만나는거라 당황했었는데 해결이 ..

Spring 2022.07.24

Spring_짧1_ControllerTest와 @ModelAttribute, @RequestBody

※ 이 포스트는 스프링 실습 과정에서 작성하기 때문에 정보가 부정확할 수 있는 부분이 있습니다.따라서 참고만 해주시고 틀린 부분이 있을 경우 알려주시면 감사하겠습니다. 이번 포스트는 김영한님의 '스프링 MVC 1편 - 백엔드 웹개발 핵심 기술' 강의를 일부 인용하였습니다.스프링에 대해 더 자세히 공부하고 싶으신 분은 인프런에서 해당 강의를 수강하시길 추천합니다.이번 포스트 제 깃허브의 https://github.com/kth1017/project_newPostLink 레포를  바탕으로 작성했습니다. 해당 레포의 ControllerTest를 작성하다 특정 메소드에서 NPE가 발생하여 그것을 해결하기 위해 이것저것 살펴봤습니다. 아래 나열한 코드에 대한 자세한 설명은 생략토록 하겠습니다. 필요하시다면 댓글로..

Spring 2022.07.18

P2_페이지 내 하이퍼 링크 달아주는 코드_4_TDD(2)

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 이전 포스트에 이어 테스트코드를 마저 작성하겠습니다. 테스트 코드 예시 - domain, repository 나머지 저번 포스트에는 테스트 메서드인 코드입력()을 자세히 살펴봤습니다. 이제 다음으로는 TDD에서 중요한 내가 얼마만큼의 테스트코드를 작성하는 것이 적절한가?를 판단하는 작업을 해보겠습니다. # 준비 - TestData 역시 테스트 코드를 작성하려고 보니 실제 로직에 사용할 allCode의 길이가 너무 길어 테스트 코드에 다 담기는 부적절할 것 같습니다. 따라서 더미 데이터용 TestData 클래스를 하나 따로 만들..

Project 2022.07.02

5_짧_th:field와 th:value

※ 이 포스트는 실습 과정에서 학습한 사항을 기록으로 남기기위해 작성하므로 정말 단순 참고용으로만 봐주세요. 다른 포스트들과 달리 글을 다듬지 않아 많이 투박할 수 있습니다. 궁금한 사항이나 틀린 내용이 있다면 알려주시면 감사하겠습니다. 사용 환경 : java11, spring 2.4.1, thymleaf 김영한님의 스프링 mvc 2의 타임리프 파트 학습 중 꽤 헤맨 부분이 존재해서 포스트로 남기려고 합니다. 일반적으로 타임리프로 html 작성할때 input 태그에 th:field를 자주 넣으실거라 생각하는데요. 여기서 제가 처음에 실습하다 헷갈린 것이 th:field와 th:value를 같이 쓰다 헤맨 적이 있습니다. 예시를 들어 설명하면, 아래는 제 프로젝트 코드 중 일부를 가져왔습니다. 입력된 ht..

Spring 2022.06.25

P2_페이지 내 하이퍼 링크 달아주는 코드_3_요구사항 분석과 TDD

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다.따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 이전 포스트에선 웹으로 원래 로직을 이식하여 작동'만'하는 엉터리 코드를 작성하였습니다. 언급했듯 그렇게 코드를 이상하게 작성한 이유는 이번 포스트부터 잘못된 설계와 코드를 비교하는 과정을 작성하기 위한 빌드업이라고 이해해주시면 될 것 같습니다. 이전 포스트를 문제로 이번 포스트를 해설로 봐주시면 좋을 것 같습니다만 아직 저도 많이 부족한 수련생이기 때문에 자신이 더 좋은 생각이 있으시다면 알려주시면 감사할 것 같네요. 테스트코드와 TDD TDD란 Red-Green-Refactor 사이클로 이루어진 개발 방법론을 의미합니..

Project 2022.06.17

P2_페이지 내 하이퍼 링크 달아주는 코드_2_웹으로 이식

ㄱ* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. Index 1 준비 2 스프링 프로젝트 생성 3 컴포넌트 4 view 구성 5 이식을 위한 코드 분리 6 domain 설정 7 리포지토리 8 서비스 9 컨트롤러와 뷰 준비 이제 본격적으로 로직을 반영하여 웹으로 이식하겠습니다. 우선 이번 글에 작성된 스프링 코드는 일부러 정말, 매우, 아주 잘못된 코드이며 설계부터 이상합니다. 그 이유는 다음 글부터 올바른 코딩을 위해 겪는 과정을 설명하기 위한 빌드업이기에 이번 글을 읽으시면서 어떤 부분에서 무엇이 잘못되었는지 체크해보시는 것도 괜찮을 것 같습니다. 물론 인덱스 링크 기능만..

Project 2022.06.17