본문 바로가기

전체 글97

Enum에 내가 설정한 문자열 값으로 출력하기 보통 어떤 상태값을 enum으로 많이 사용합니다! 저도 판매 글을 올릴때 상태값을 아래와 같이 기본 설정을 in_progress로 두었습니다. 그리고 postman으로 요청한 후 db를 확인해 보면 status 값에 "0"이 뜨는 것을 확인할 수 있는데요! 이건 enum class에 제가 설정한 값의 인덱스 값이 들어간 것입니다, 아래가 제가 설정한 enum SaleStatus인데요. IN_PROGRESS가 인덱스 0, COMPLETED가 인덱스 1로 DB에는 표현 됩니다! 따라서 저는 잘 입력된 것임을 확인할 수 있죠. 만약에 인덱스값 말고 제가 설정한 스트링 값으로 DB에도 저장하고 싶다면 에너테이션 하나를 필드값에 붙여주면 됩니다. 게시글의 satus 필드값 위에 @enumerated를 이넘타입은 .. 2023. 11. 14.
객체 지향적으로 개발해야 하는 이유 자바의 빼놓을 수 없는 특징은 '객체 지향적인 언어'라는 점이다. 객체 지향이 왜 장점이고, 우리는 왜 객체 지향적으로 개발을 해야 할까? 왜 절차 지향 프로그래밍에서 객체 지향 프로그래밍으로 넘어오게 된 것일까? 먼저 객체 지향 프로그래밍(OOP)은 소프트 웨어 개발 패러다임 중 하나의 방법으로, 모델링을 사용하여 코드를 구조화하는 방법이다. 객체 지향 프로그래밍에서 사용하는 개념 5가지를 생각하면 이해하기 쉽다. 1. 클래스 클래스는 객체의 설계도다. 클래스는 객체를 생성하기 위한 필드(속성), 메소드(동작)를 정의한다. 변수와 함수를 밀접하게 하나의 클래스 소속으로 만들면 관리하기가 쉽다. 2. 객체 객체는 클래스를 기반으로 만들어진 실체이다. 객체의 설계도를 바탕으로 실제 데이터를 포함하고 특정 .. 2023. 11. 2.
[자바] split 사용 방법 코딩테스트 새로운 버전으로 readline()을 사용하게 되면서 split에 대해 헷갈리는 부분이 있었다. "a, b, c" 라는 문자를 받으면 나는 그걸 쪼개서 ["a", "b", "c"]라는 문자배열로 만든 후 가공해야 한다. 단순하게 나는 아래와 같이 생각했다. String[] cars = Console.readLine().split(","); 이러면 알아서 쪼개 들어갈 줄 알았다 ^^..(민망) 하지만 내가 원하는 값을 얻으려면 String answer = Console.readLine(); String[] args = answer.split(","); 위와 같이 입력된 값을 String 으로 받고, 쪼개서 배열에 입력해주어야 한다. 가끔 내가 이렇게 생각이 짧을 때가 있다. 허허.. 2023. 10. 31.
미니프로젝트 회고록 미니프로젝트가 끝이 났다. 공식적인 기간은 한 달, 비공식적 기간은 +2-3주 일산에서 서울을 왕복하며 진행한 프로젝트라 힘든 부분도 있었지만 부대끼면서 협업할 수 있던 재밌는 경험이기도 했다. 마주한 고난과 깨달은 점, 개선해야할 점을 기록해보겠다 1. 난생 처음 마주한 워터폴 이번이 두 번째 프로젝트인데 첫 번째 플젝을 애자일로 진행했으니 난생 처음 마주한 건 맞다 ㅎㅎ 끝없는 설계.. 우리 조가 다른 조보다 먼저 시작했는데 그 이유가 바로 워터폴 방식을 도입했기 때문이다. 메소드 명부터 모든 로직을 설계했다. 설계 회의를 하루에 3시간도 넘게 한 것 같다. 비대면으로도 만나고 그렇게 설계 회의, 설계 수정 회의를 2-3주 하다보니 너무 지쳤다. 설계가 끝나야 코딩을 할 수 있기에 계속 토론만 한 기.. 2023. 10. 24.
git flow 익히기 1. create repository 프로젝트 취지에 맞게 설정해준다. 2. 원격과 연결 git init git commit -m "" git branch -M main git remote add git push -u origin main git branch -b dev // 개발 브랜치 만들기 차례대로 위의 명령어를 입력해준다. main 브랜치는 배포용이고 dev 브랜치는 개발용이다. 3. 팀원들을 초대한다. 내가 만든 레포지토리에 settings를 들어가면 collaborators가 있다. 여기에 add people을 눌러 팀원들의 깃허브 네임이나 깃허브에 등록된 이메일을 적는다. 그럼 팀원 이메일로 join mail이 전송될 것이다. 그리고 팀원들은 join 후, clone까지 진행하면 된다. (팀.. 2023. 10. 19.
.gitignore에 작성한 파일이 업로드 됐을 때 yml에서 민감 정보 마스킹 처리 후 .gitignore에 민감 정보를 적어둔 파일을 지정해주었습니다. 그런데 push가 되었더라구요. 주변에서 캐시 삭제하라길래 명령어를 기억해둬야겠다 싶어 블로그에도 기록해두겠습니다. git rm -r --cached . --cached를 붙이면 스테이징 영역에서만 파일이 삭제됩니다. 이 명령어를 작성한 후에 다시 add -> commit -> push를 시도해보세요! 2023. 10. 17.