사소한 Tip과 개념들 42

argument와 parameter 차이점

영문 문서에서 Parameter와 Argument를 혼동하여 번역하거나 읽는 경우가 많습니다. 두 단어는 변수명과 전달값이라는 의미가 다른 용어 이기에 구분하여 사용해야 합니다. Parameter는 함수 혹은 메서드 정의에서 나열되는 변수 명입니다. 반면 Argument는 함수 혹은 메서드를 호출할 때, 전달 혹은 입력되는 실제 값입니다. Parameter의 실체는 변수이고 Argument의 실체는 값입니다. 따라서 두 단어는 명확하게 구분해야 합니다. 단어 번역 의미 Parameter 매개변수 함수와 메서드 입력 변수(Variable) 명 Argument 전달인자, 인자 함수와 메서드의 입력 값(Value) PARAMETER란? 한글 그대로 번역하면 '매개변수'란 뜻이다. 즉, 함수를 정의 할 때 외부..

JIRA와 깃허브, 인텔리제이 연동

저번 프로젝트 할 때 지라를 맛보기로 사용했었다. 하지만 다들 지라가 처음이라 잘 모르는 상태로 사용했고 매번 이슈를 따로 작성해야하는 번거로움이 있었다. 다음에는 제대로 연동해서 편리하게 사용하기 위해서 기록한다. https://www.lesstif.com/jira/jira-cloud-github-125305615.html 지라 클라우드(JIRA Cloud) 와 깃허브(github) 연동하기 www.lesstif.com https://jojoldu.tistory.com/260 IntelliJ를 JIRA와 연동해서 사용하기 안녕하세요! 이번 시간엔 IntelliJ로 이슈 트래커인 JIRA와 연동해서 업무를 진행하는 방법을 정리하겠습니다. 보통 JIRA와 같은 이슈트래커를 쓰는 회사에서 업무는 다음과 같은..

푸시 되돌리기, 소스트리 스태시 stash, reset 되돌리기, 깃, 깃헙, git, github

----푸시 되돌리기 git log --oneline : commit 이력 조회하기 git reset --hard "3f0f6ca745" : 돌아가고 싶은 commit 이후의 commit 삭제하기 git push -f origin feature/nayoon-refactor : github 원래대로 돌려놓기 git push -f origin test/tester3 ----------reset 되돌리기 git reflog git reset HEAD@{원하는 번호} https://ninano1109.tistory.com/3 Git push 취소 방법 (feat. '쫄보의삽질' 블로그 탄생 배경) 아래는 저의 생생한 경험담을 바탕으로 작성한 것 입니다. Github 관리 폴더의 이름을 실수로 변경하고 삭제해버렸..

JavaScript 변수 var, let, const 차이점

var : 중복 선언 O, 재할당O, 호이스팅, 이제는 거의 안 씀. let : 중복 선언 X, 재할당O, 호이스팅 but TDZ(Temporal Dead Zone) 존재 const : 중복 선언 X, 재할당X, 호이스팅 but TDZ(Temporal Dead Zone) 존재 원문 글에서 코드까지 같이 보는 게 더 이해가 쉽다. 1. 변수 선언 방식 우선, var는 변수 선언 방식에 있어서 큰 단점을 가지고 있다. 변수를 한 번 더 선언했음에도 불구하고, 에러가 나오지 않고 각기 다른 값이 출력되는 것. 이는 유연한 변수 선언으로 간단한 테스트에는 편리 할 수 있겠으나, 코드량이 많아 진다면 어디에서 어떻게 사용 될지도 파악하기 힘들뿐더러 값이 바뀔 우려가 있다. 그래서 ES6 이후, 이를 보완하기 위해..

saveAll과 deleteAll(deleteAllInBatch)

save 함수 한 번당 트랜잭션 Proxy 로직을 태웁니다. → 그렇기 때문에, 기존 트랜잭션이 있는 경우 해당 트랜잭션에 참여하게 되지만, 이러한 경우에도 어느정도 비용이 발생합니다. → 그래서, 다 건 조회 시 매번마다 위 비용이 발생하기 때문에 시간이 오래 걸립니다. 반면, saveAll 함수 전체에 하나의 트랜잭션이 존재하고, save는 내부 메소드 호출로 트랜잭션 Proxy 로직을 태우지 않습니다. → 그렇기 때문에, 트랜잭션 관련 비용이 발생하지 않습니다. → 그래서, 다 건 조회 시에 적합합니다. https://maivve.tistory.com/342 [Spring] JPA의 save와 saveAll의 성능 차이, 그리고 원인. 안녕하세요? 거두절미하고 바로 작성해보겠습니다. JPA에서 데이..

JWT에 대해 알아보자!

세션 기반 인증 방식 옛날에 토큰 기반 인증이 없었을 때 서버 세션을 사용해 인증을 했습니다. 클라이언트가 로그인 성공하면 서버가 유저 세션을 만들고 메모리나 데이터베이스에 저장한다. 서버가 클라이언트에게 세션 ID를 보낸다. 클라이언트의 브라우저에 세션의 ID만 쿠키에 저장하게 한다. 세션 데이터가 서버의 메모리에 저장되므로, 확장 시 모든 서버가 접근할 수 있도록 별도의 중앙 세션 관리 시스템이 필요합니다. 세션 기반 인증 방식 단점 중앙 세션 관리 시스템이 없으면, 시스템 확장에 어려움이 생깁니다. 중앙 세션 관리 시스템이 장애가 일어나면, 시스템 전체가 문제가 생깁니다. 만약 메모리에 세션 정보가 들어있다면, 메모리가 많이 사용될 수 있습니다. 규모 확장이 필요없는 소규모 프로그램 작성에서는 세션..

Java Primitive Type (원시 타입), Wrapper Class (래퍼 클래스) 차이점

원시 타입으로는 byte, short, int, long, float, double, boolean, char 이 있고, 래퍼 클래스로는 Byte, Short, Integer, Long, Float, Double, Boolean, Character 가 있습니다. 그렇다면 Primitive Type과 Wrapper Class는 무슨 차이가 있을까요? 결론적으로 Wrapper Class는 Primitive Type을 객체화한 것입니다. * wrap : 포장하다 말 그대로 원시 타입을 객체로 포장한 것입니다. int와 Integer를 예로 든다면 int의 경우 단순하게 숫자로서만 사용할 수 있지만 Integer의 경우 객체 형태로 생성되어 null 값이 들어갈 수 있고, . toString과 같은 메서드를 사..

깃 컨벤션

깃 컨벤션 💡 이 페이지는 깃 컨벤션에 대한 내용을 담고 있습니다. 아래의 컨벤션을 따르는 것은 개인의 판단이며 협업하는 사람들에게 작업 내용만 제대로 전해진다면 본인의 방법대로 해도 무방하다고 생각합니다. 다만 더 좋은 개발문화와 협업 프로세스를 만들기 위해 사용해보면 좋을 것 같습니다. 널리 쓰이는 Udacity Git Commit Message Style Guide를 따릅니다. 1. Commit 메시지 구조 기본 적인 커밋 메시지 구조는 제목,본문,꼬리말 세가지 파트로 나누고, 각 파트는 빈줄을 두어 구분한다. type : subject body footer 2. Commit Type (커밋 유형) -필수 타입은 태그와 제목으로 구성되고, 태그는 영어로 쓰되 첫 문자는 대문자로 한다. 태그 : 제목..

패키지 명명규칙, 명명법

명칭 소문자 사용/ 패키지명에 대문자는 사용하지 않는 게 좋습니다(권고) 모두 소문자로 작성하는 것이 관례 https://codedragon.tistory.com/228 패키지이름(Package Name) 명명규칙, 패키지 명명 방법 패키지이름(Package Name) · 애플리케이션을 구분하는 고유한 값 · 여러분이 만든 앱이 디바이스에 설치되었을 때 다른 앱들과 구분하는 역할을 하므로 유일무이해야 합니다. 패키지 명명 방법 명 codedragon.tistory.com https://kephilab.tistory.com/52 9. Java 자바 - 패키지 (package) 패키지 (package) 많은 클래스들을 체계적으로 관리하기 위함이다. 폴더를 만들어서 파일을 저장하듯, 패키지를 만들어서 클래스를..