전체 글 45

[JAVA] 다차원 배열 (Java Array) / 배열의 복사

[JAVA] 2차 배열 (Java Array) / 배열의 복사 다차원 배열이란? => 자료형이 같은 1차원 배열의 묶음으로써, 배열 안의 배열구조 [선언과 할당] //자료형[][] 배열명 = new 자료형[부모배열크기][자식배열크기]; int[][] arr = new int[3][4]; //자료형 배열명[][] = new 자료형[부모배열크기][자식배열크기]; int arr[][] = new int[3][4]; //자료형[] 배열명[] = new 자료형[부모배열크기][자식배열크기]; int[] arr[] = new int[3][4]; //선언과 동시 초기화 int[][] arr = { {10,10,10,10}, {20,20,20,20}, {30,30,30,30} }; [가변배열의 선언] => 다차원 배열 ..

[JAVA] 자바 변수의 종류(기본형)

[JAVA] 자바 변수 type (기본형) 변수의 종류는 간단하지만 매번 느낌 오는대로 쓰고 있어서 속 시원하게 한번 정리해놓으려고 한다. JAVA 에는 8가지 기본형 변수가 있다. 기본형은 실제 값을 저장한다. (참조형은 객체의 주소를 저장하는 반면) 1) boolean (논리형) : true or false 1 byte 2) char (문자형) : 'A' 와 같은 하나의 문자를 저장할 때 사용한다 2 byte 3) byte (정수형) : 이진데이터를 다루는 때 사용 1 byte 4) short (정수형) : C 언어와의 호환을 위해 추가되었다 2 byte 5) int (정수형) : 말 그대로 integer (정수), 가장 많이 사용된다 보통 int 로도 충분하지만, 특별히 4 byte 보다 더 큰 용..

[자바스크립트] 기본형과 참조형의 차이 / 깊은복사 & 얕은복사

[자바스크립트] 기본형과 참조형의 차이 / deep copy & shallow copy [요점정리] 기본형은 변수를 할당한 후, 해당 저장소에 값을 저장하며, 참조형은 변수를 할당한 후, 해당 저장소에 주소를 저장한다. 이런 차이점으로 인하여, 기본형은 복사 후 원본값이 변경될 경우, 복사본의 값은 변하지 않고 그대로인 반면, 참조형은 복사 후 원본값이 변경될 경우, 서로가 참조하고 있는 주소값이 같은므로, 원본값과 복사본의 값이 둘다 변경된다. 여기서 깊은복사(deep copy) 와 얕은복사(shallow copy)가 구별된다. [데이터의 구조] 1) 기본형(primitive type) : String, Number, Boolean, Null, Undefined, Symbols 기본형은 하나의 저장소가..

[AngularJS] $location 함수(메소드) & 이벤트 사용하기

[AngularJS] $location 메소드/이벤트 사용하기 AngularJS 에서 제공하는 $location! URL 을 조작하거나, 페이지 이동기능에 많이 쓰이는 친구인데, 간단하게 정리해보자 [메소드] 1) absUrl() 전체 URL 을 return 한다 getter 의 역할만 수행한다 //예시 URL : https://example.com:8080/#/12?category=901018 var temp = $location.absUrl(); // => "https://example.com:8080/#/12?category=901018" 2) url([url]) 파라미터가 없다면, slash(/) 이후의 URL 을 return 한다 파라미터가 있다면, slash(/) 이후의 URL 을 변경한 후,..

[Git] cherry-pick: 다른 branch commit 복사해오기

[Git] cherry-pick: 다른 branch 의 commit 현재 branch 에 적용하기 git 을 사용하여 협업하다보면 여러 branch 에서 작업하는 경우가 있는데, 다른 branch 의 commit 을 현재의 branch 로 그대로 가져오고 싶을 때가 있다. 간단히 정리해보자 [cherry-pick 명령어 사용하기] 현재 나는 branch A 에 있는데, branch B 에 작업해놓은 commit 을 그대로 가져와서 적용하고싶다. 이런 때 아래의 명령어를 사용한다. (먼저 해당 commit 의 hash 가 필요하다) $ git cherry-pick

[Git] pull 되돌리기 & 원격에 올라간 commit 되돌리기

[Git] pull 되돌리기 & 원격에 올라간 commit 되돌리기 git 을 사용하여 협업하다보면, 실수하거나, 뭔가 버그가 있어서 되돌리고 싶은 경우가 있다. 간단히 정리해보자 1) pull or merge 의 취소 remote branch 의 소스를 pull 받았는데, 뭔가 아닌 것 같다. pull 받기 전의 내 local 소스로 돌아가고 싶다. 이런 때, git terminal 에 아래의 명령어를 입력한다. //pull 취소 (pull 직전의 상태로 되돌아감) $ git reset --hard ORIG_HEAD //merge 취소 $ git reset --merge ORIG_HEAD 2) 원격에 올라간 commit 되돌리기 작업을 commit 하고, push 하여 remote branch 에 올렸..

[Git] local branch 생성/삭제 & remote branch 연동/삭제

[Git] 로컬브랜치 생성 후, 원격브랜치 연동하기       git 을 사용하여 협업을 하다보면, 새로 브랜치를 따고, 원격 브랜치와 연동하고, 브랜치를 삭제하는 등의 행위를 자주 하게된다.이를 쉽게 정리해보자      [local branch 생성]//만들고자 하는 로컬 브랜치 이름을 정하면 된다$ git branch         [생성한 local branch 로 체크아웃]//방금 생성한 로컬 브랜치로 이동한다$ git checkout or$ git switch         [local branch 와 remote branch 연동]//로컬 브랜치가 바라볼 원격 브랜치 이름을 입력해준다$ git branch --set-upstream-to origin/        [local branch 삭제..

[자바스크립트] 쓰로틀링 - 이벤트 실행 제어하기

[자바스크립트] throttling - 이벤트 실행횟수 제한 너무 많은 이벤트가 지속적으로 발생할 시, 과부화를 일으켜 사용자 환경에 버벅거림을 줄 수 있다. 이를 막기위해, 하나의 이벤트가 실행되는 동안은 같은 이벤트가 또 실행되지 않도록 제한을 주는 기술이다. [사용법] var temp; document.addEventListener('scroll', function() { if(!temp) { temp = setTimeout(function() { temp = null; //type your code here }, 500); } }) [간단원리] 이벤트 발생시, 먼저 timeout 이 존재하는지 확인 후, 존재한다면 아무것도 안함 만약 timeout 이 존재하지 않는다면, 새로운 timeout 을 ..

[자바스크립트] 디바운싱 - 마지막 이벤트만 실행하기

[자바스크립트] debouncing - 맨 마지막 이벤트만 캐치하기 너무 많은 이벤트가 지속적으로 발생할 시, 과부화를 일으켜 사용자 환경에 버벅거림을 줄 수 있다. 이를 막기위해 동일한 이벤트를 묶어서, 맨 마지막에 발생한 이벤트만 실행되게 만드는 기술이다. 특히 Ajax call 을 동반한 스크롤, 검색창, 버튼클릭 이벤트에 주로 쓰일 수 있겠다. (Ajax 요청을 최소화) [사용법] var temp; document.addEventListener('scroll', function() { if(temp) { clearTimeout(temp); } temp = setTimeout(function() { //type your code here }, 500); }) [간단원리] 이벤트 발생시, 먼저 tim..