6th UMC 프로젝트도 잘 마쳤으니 1박 2일 해커톤에 참여하더라도 충분히 뭐라도 할 수 있을 거라고(?) 생각해서 7th Ne(o)rdinary Hackathon[24.11.23 ~ 24.11.24]에 참가했다. 결론부터 말하자면... 아직 한참 부족하다. 🥲 프로젝트에 크게 기여하진 못 했지만 내가 뭘 했는지, 저번 해커톤과는 어떻게 다른지, 어떤 걸 배웠는지... 그런 것들을 전부 기록해두려고 한다. 이번엔 CMC분들도 함께 하는 프로젝트라 얻어갈 것도 많고, 아이디어 메이킹이나 프로젝트 개발도 신속하게 진행됐다. 아이디어 메이킹 나는 Web 개발자 3명과 Spring Boot 개발자 3명인 N팀에 배정됐다. 각 파트마다 CMC분들이 1명씩은 있어서 정말 든든했다. CMC분들은 해커톤에 거의 필..
🐛이슈- 발생한 오류 copy & paste- 오류가 발생한 상황 간략히 설명git pull origin main으로 원격 리포지토리에 새로 생성한 dev 브랜치를 받아오려고 했지만 실패했다. 이후 git fetch origin main도 실행해봤지만 결과는 같았다. 😓원인과 해결방안- 오류가 발생한 원인 간략히 설명- 해결방안 설명git fetch {리포지토리}를 사용하면 해당 리포지토리에서 브랜치나 태그 정보를 받아올 수 있다. 위에서 실패한 git fetch origin main은 origin main에 있는 정보를 받아온다는 거라 당연히 dev 브랜치의 정보를 받아올 수 없었다.Fetch branches and/or tags (collectively, "refs") from one or mor..
🐛이슈- 발생한 오류 copy & paste- 오류가 발생한 상황 간략히 설명프로젝트 기초 세팅을 끝내고 깃허브 리포지토리에 git push를 하려고 했다. 아래 명령어를 순서대로 입력해서 원격 저장소와 연동하고, git pull을 받은 뒤 git push를 해서 진행하고 있었다.$ git init$ git remote add origin {리포지토리 주소}$ git add .$ git commit -m "git init"$ git pull origin main$ git push origin main 그런데 git pull까진 정상적으로 작동했지만, git push에서 아래 오류가 발생했다.kej43@DESKTOP-HPA6R33 MINGW64 ~/HyThon (main)$ git push origin ..
첫 해커톤에서 CI/CD 파이프 라인을 구축하느라 애썼던 기억이 있어서 참고용으로 UMC 6th 워크북을 다시 보면서 정리해두려고 한다. AWS에 대한 자세한 내용은 나중에 따로 공부하면서 추가해야겠다. [해커톤] 6th UMC HACKATHON Seoul6th UMC HACKATHON Seoul7월 4일 낮부터 5일 낮까지 첫 해커톤에 참여했다. 신청은 6월 중순쯤 받았는데 워크북도 거의 끝나가고 있던 터라 7월쯤 되면 해커톤에 참여할 역량이 있을 거라고 생각했고, 선dev-meung.tistory.com CI/CDCI(Continuous Integration) - 지속적 통합CI는 코드가 수정될 때마다 지속적으로 편하게 통합되어 빌드, 테스트를 하는 과정을 말한다.UMC에선 테스트까진 다루지 않고 지..
프로젝트를 진행할 때, API 구현이 끝나면 로컬 환경에서 swagger로 테스트해 보고 git push 한 뒤 PR을 올리기로 했었다. PR이 승인되면 develop 브랜치에 머지하고, 배포(개발) 환경에서 잘 돌아가는지 확인하고 나서야 안심했던 기억이 있다. 로컬 환경에서 테스트할 때나 PR을 올리기 전 매번 application.yml을 수정해야 했는데, 이게 참 간단하면서도 번거로웠다. 아래에 application.yml의 일부를 가져와 봤다. spring.datasource.url(username, password) 부분에서 로컬 환경과 배포(개발) 환경의 값을 다르게 설정해야 정상적으로 테스트할 수 있다.spring: # 로컬 datasource: url: jdbc:mysql://loc..
1. 부트스트랩 적용하기부트스트랩(Bootstrap)간단한 웹 페이지를 만들기 위해 프로젝트를 생성한 뒤, HTML을 편리하게 개발하기 위해 부트스트랩을 적용했다.부트스트랩(Bootstrap)은 웹 사이트를 쉽게 만들 수 있도록 도와주는 HTML, CSS, JS 프레임워크다. 하나의 CSS로 휴대폰, 태블릿, 데스크탑까지 다양한 기기에서 작동한다. 또, 다양한 기능을 통해 웹 사이트를 제작, 유지, 보수할 수 있다.3학년 1학기 웹프레임워크개발 강의에서 Django를 배울 때 함께 배운 적이 있는데, 이걸 사용하면 백엔드(?)스러운 딱딱한 화면도 그럴싸하게 변한다. CSS 말고 JS도 적용할 수 있어 간단하게 움직이는 웹 페이지를 만들 수 있다. 부트스트랩 공식 사이트에서 파일을 다운받고 압축을 풀어 사..
https://www.acmicpc.net/problem/29704다양한 난이도의 문제 N개가 주어지고, 앞으로 T일의 제출 기한이 남아있다. 제출 기한 내에 문제를 제출하지 못하면 문제마다 정해진 벌금을 내야 한다. 혜민이는 하루에 한 문제만 해결할 수 있고, 가능한 적은 금액의 벌금을 내려고 한다. 문제를 해결하는 데 소요되는 일수와 그 문제를 제출 기한 내에 해결하지 못할 경우 내야 하는 벌금이 주어질 때, 혜민이가 내야 하는 벌금의 최소 금액을 구하는 문제다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 코드를 구현해야 할지 고민한 과정- 문제에 들어오는 범위를 파악하며 어떤 알고리즘을 쓸 수 있을지 고민해 가는 과정ex. 가능한 시간 복..
1. HTTP 응답스프링(서버)에서 응답 데이터를 만드는 방법은 크게 3가지로 나눌 수 있다.정적 리소스ex. 웹 브라우저에 정적인 HTML, CSS, JS를 제공할 때 사용한다.뷰 템플릿 사용ex. 웹 브라우저에 동적인 HTML을 제공할 때 사용한다.HTTP 메시지 사용HTTP API를 제공하는 경우에는 HTML이 아니라 데이터를 전달해야 하므로, HTTP 메시지 바디에 JSON 같은 형식으로 데이터를 실어 보낸다. 아래에서 하나씩 알아보자. 정적 리소스스프링 부트는 classpath의 다음 디렉토리에 있는 정적 리소스를 제공한다./static, /public, /resources, /META-INF/resources src/main/resources는 리소스를 보관하는 곳이면서 classpath의 시..