분류 전체보기
-
Git 커밋 메세지 컨벤션협업 Tip 2024. 10. 22. 13:22
커밋의 단위는 기본적으로 하나의 기능 혹은 오류 수정이다. 하나의 커밋에 기능이 2개 들어간다거나, 꽤나 자주 보이는 "중간 커밋" 어쩌구는 좋지 않다.협업할 때 어떤 커밋으로 돌아가야 할 때, 직관적인 메세지를 넣어줘야 편하다... 전 세계 개발자들이 사용하는 컨벤션이 있는데 무조건은 아니지만, 잘 모르겠다면 그냥 이걸 쓰면 된다.type: 커밋의 작업 내용 간략히body (optional) : 상세 내용.........footer (optional) : 특정 이슈의 해결 작업일 때( 이슈가 해결되면 Jira 같은데서 관리하는 Issue 번호를 기입한다 ) 기본 Form에서 예시를 들자면, feat: 파일 업로드 기능 변경파일 서버 대신 AWS S3에 파일이 업로드 되도록 변경 - 원본 이미지 Bu..
-
Git을 위한 쓸만한 설정들협업 Tip 2024. 10. 22. 11:24
1. 윈도우와 맥의 줄바꿈 호환 문제git config --global core.autocrlf (윈도우: true / 맥: input)core.autocrlf 뒤에 윈도우면 true를, 맥이면 input 2. pull을 위한 전략 설정git config pull.rebase falsegit config pull.rebase true 3. 기본 브랜치명이 master인데 main으로 변경하는 방법 (다른 이름으로도 가능)git config --global init.defaultBranch main 4. push할 때 로컬 브랜치랑 같은 이름인 원격 브랜치로 하고 싶을 때( git push origin main 처럼 안하고 그냥 git push 만 하고 싶을 때 사용)git config --global ..
-
API 에러 응답 논쟁Java & Spring 2024. 9. 19. 16:32
API 개발자의 응답에 클라이언트 개발자의 이슈가 제기됨. (아래 예시는 그냥 예시일 뿐)HTTP/1.1 200 OK{ "errorCode": "1001", "description":"This is invalid Email."}HTTP code가 200인데 에러가 발생하는게 이상하다는게 이번 주제다.내가 보기엔 맞는 말인것 같은데, 생각보다 백엔드에서 이게 문제라고 보지 않는 경우가 있다.일단 백엔드 입장은 통신은 잘됐으니까 200이 맞고, 에러코드랑 내용을 전달했으니 문제 없지 않나요?개발팀 전체에서 협의가 된 부분이고, 이게 문화면 크게 문제라고 하기에도 애매한 상황인 것 같다.게다가 어떤 분은 HTTP code를 계속 노출하면, 해커의 무작위 요청으로 시스템을 분석할 여지가 있어 정부의 시큐어 ..
-
EDI 구축 회고록Java & Spring 2024. 8. 29. 15:04
전 회사는 중고차 해외 유통, 물류업계라 해운 선사와 협업이 많았다. 수출 물량이 많을 때면 선적관리팀이 선하증권을(이하 B/L) 발급받기 위해 밤낮 고생을 하면서 수기로 서류작업을 했다. EDI는 이럴 때 필요하다.1. EDI는 뭘까?구글링하면 여러 개념이 나오는데, 간단히 말해서 두 기업이 사전에 약속한 포맷으로 (Json, XML 등) 사업에 필요한 데이터를 주고 받는 시스템이다. 그럼 왜 필요할까?2. EDI로 얻는 기업의 이익일단 EDI는 EDI서비스를 제공하는 업체 솔루션을 사도 되고, 자체적으로 구축해도 된다. EDI가 필요해지는 시기는 사업의 규모가 커지며, 데이터가 많아지지만 인력 충원은 없을 때 특히 빛을 발한다. 일단 서류 작업이 없어지고, 휴먼 에러 방지, 내부 인력의 업무 효율 증..
-
EC2에 springboot 배포 할 때 만나는 에러AWS 2024. 8. 13. 17:13
1. 빌드도구를 maven을 쓸 때 (mvn command not found)springboot 프로젝트의 테스트 코드를 실행해보고 싶을 땐, mvn test 명령어를 쓴다. (gradle은 ./gradlew test)EC2 Linux에 maven이 설치되지 않았을 경우 mvn이 없다고 나올텐데 (1) EC2 환경이 Ubuntu/Debian 기반 Linux 일 경우sudo apt-get updatesudo apt-get install maven(2) EC2 환경이 CentOS/Fedora 기반 Linux 일 경우 (요즘 이쪽 계열에 Rocky Linux도 있는 걸로 암)sudo yum install maven(3) MacOS 일 경우brew install maven 설치가 다되면 mvn -v 명령어로 ..
-
코딩테스트를 위한 공식들 - (Collection)코테풀다끄적 2024. 8. 8. 22:47
눈감고도 수저로 밥을 먹듯, 문제를 풀 때 바로 튀어나오도록 반복해야하는 것들 1. Array를 List로 바꾸는 가장 간단한 2가지 방법 - Arrays.asList( ) : primitive type은 안됨 - Arrays.stream( array ).boxed().collect(Collectors.toList()) 추가!! Arrays.stream( array ).mapToInt(Integer::intValue).toArray() -> int[] 를 리턴해야할 때. 2. List를 Array로 바꾸는 2가지 방법 - Integer[] arr = list.toArray(Integer[]::new) : List 객체의 toArray를 쓰고 파라미터로 변경할 배열의 생성자를 넣는다. - int[] ..
-
AWS 삽질 기록AWS 2024. 6. 21. 15:40
(오래 전에 작성만 해놓고 안올렸던 글이라 버전이 좀 최신은 아님)AWS 프리티어로 배포공부를 하다가 부딪힌 조그마한 문제들을 기록한다.인스턴스 OS는 Amazon Linux AMI 1. putty에 ppk 파일 등록 어케함?Windows에서 EC2에 ssh로 접근하려면 putty를 사용하는게 좋다.putty에서 EC2 접속을 위해서는 Private key file for authentication항목에 ppk파일의 (putty private key) 경로를 설정해주어야한다. perm key를 ppk로 변환하는것은 구글링하면 바로 알 수 있는데, 정작 ppk 파일 설정하는게 UI가 어디로 사라져버렸다. (이거 때매 괜히 애먹음 ㅡㅡ;;) 정답은 Connection - SSH - Auth - Credent..
-
알아두면 좀 뽀대나는 사실들 ◖⚆ᴥ⚆◗코테풀다끄적 2024. 5. 19. 16:24
※ 이 내용은 계속 추가될 예정~ 1. 배열보다 리스트를 순회할 때 순회 비용이 더 많이든다.2. ArrayList를 처음 초기화하면 길이가 무한대가 아니고 10이다. (max length / 2 만큼씩 계속 늘어난다고 봤던거 같음...)1. 참조형 변수는 기본형 변수와 달리 Stack 메모리가 아닌 Heap 메모리에 저장된다.2. 참조형 변수는 말그대로 참조를 하기 때문에 간접 조회가 일어난다. 때문에 기본형 변수를 메모리에서 조회하는것보다 느리다. (참조형 : stack(실제 값의 주소) -> heap(실제 값) / 기본형 : stack(실제 값))