반응형

전체 글 99

[ES6 JavaScript] arrow 함수

일반적으로 ES5에서 함수를 표현할 때는 function 키워드를 사용합니다. ES6에서는 함수를 짧게 표현할 수 있는 방법을 제공합니다. 그것이 바로 화살표 함수입니다. 화살표 함수를 어떻게 표현하는지 알아보겠습니다. // ES5 function let getDouble = function(num) { return num * 2; } // ES6 화살표 함수 let getDouble = (num) => { return num * 2; } getDouble(2);// 4 가장 기본적인 함수 표현입니다. 숫자 num을 입력받아 두 배로 곱한 값을 반환해주는 함수 입니다. 기존 function에서 화살표 함수로 바꾸려면 function 키워드를 제거하고 소괄호와 중괄호 사이에 => 키워드를 사용하면 화살표 ..

JavaScript 2020.09.23

[궁금해서] 미니언즈 랜덤 피규어 35종을 다 모으려면 얼마나 많은 해피밀 세트를 먹어야할까?

맥도날드에서 새로운 해피밀 장난감을 선보였습니다. 그것은 바로 랜덤 미니언즈 피규어입니다. 미니언즈를 평소에 너무 좋아하기 때문에 회사 동료들과 함께 해피밀을 먹으며 맥도날드 미니언즈 피규어를 수집하고 있습니다. 그런데, 이런 생각이 들었습니다. 35종을 모두 수집하기 위해서는 얼마나 많은 햄버거 세트를 먹어야할까? 계산하기 위한 수학적인 공식이 있겠지만, 저는 프로그래머이기 때문에 프로그래밍으로 해봤습니다. 코드는 아래와 첨부합니다. 최적화를 염두하고 만들진 않아 속도는 많이 느린 것 같습니다. 몇 가지 조건을 두고 테스트를 해보았습니다. 1. 5천만 국민이 테스트한다고 가정하고 5천만번 반복 2. 골든 미니언은 제외. 순수 35종만 수집한다고 가정 3. 모든 미니언은 동일한 등장 확률을 갖는다. 이러..

Thinking 2020.08.05

React 클래스형 컴포넌트 생명주기

constructor() 컴포넌트 생성 시점에 호출 constructor 함수는 생명주기 함수는 아니지만, 클래스형 컴포넌트가 생성될 시점에 호출되므로 생명주기에 포함. render() 컴포넌트가 그려질 때 호출 componentDidMount() 컴포넌트가 처음 화면에 그려지면 호출 componentDidUpdate() 화면이 업데이트되면(새로 그려지면) 호출 componentWillUnmount() 컴포넌트가 사라질때 호출. 아래 diagram을 참고하시면 좀 더 이해하기가 좋을 것 같습니다. https://projects.wojtekmaj.pl/react-lifecycle-methods-diagram/ React Lifecycle Methods diagram Fully interactive and ..

React 2020.07.22

[JavaScript Patterns] Memoization(메모이제이션)

함수에 프로퍼티를 추가하는 방법으로 결과(반환 값)를 캐싱하여 다음 호출 시점에 복잡한 연산을 반복하지 않게 하는 패턴을 Memoization(메이모제이션) 패턴이라고 한다. var func = function(param) { if (!func.cache[param]) { console.log(param + ' is not cached!'); func.cache[param] = Math.pow(2, param); } else { console.log(param + ' is cached!'); } return func.cache[param]; } func.cache = {}; func(2); // 2 is not cached! func(4); // 4 is not cached! func(2); // 2 i..

JavaScript 2020.07.18

2020년 상반기 회고

개발자로 일한지 꽤 오래된 것 같은데, 크게 성장하지 못한 내 모습을 생각하며 후회를 할 때가 종종있다. 지금의 내 모습에 만족한다면 다행이지만, 만족은 못하고 후회만 반복하고 있다. 이렇게 지내다가는 후회만하다 개발자로서의 인생을 마무리 할 것 같은 두려움도 생긴다. 이왕이면 개발자로서의 마지막 모습이 최고의 실력을 가진 개발자는 아니더라도 주위에서 괜찮은 개발자였다는 평을 듣고 마무리하고 싶다. 그렇게 되기 위해서는 좀 더 노력해봐야하는 게 아닐까 생각한다. 올해는 조금 덜 후회하는 한 해를 보내기 위해, 그 중간의 시기에서 회고해보고자 한다. 첫 회고다보니 정리가 잘 될까 걱정이 들지만, 그래도 시작이 중요하니까 한 번 써내려가본다. 1. 회사 1-1. Scrum Master 2017년 초에 Scr..

Thinking 2020.07.05

[Unity] sprite 동적으로 변경하기(Resources.LoadAll)

Unity 개발을 하다보면 Sprite를 동적으로 변경해야하는 경우가 발생합니다. 이때 어떻게 처리를 해야하는지 살펴보도록 하겠습니다. 오늘은 Resources.LoadAll API를 이용할 예정입니다. 먼저 선행되어야할 작업은 Sprite의 경로를 확인하는 것입니다. Resources.LoadAll API를 이용하여 Sprite를 가져오기 위해서는 반드시 Resources 폴더내에 Sprite가 존재해야합니다. 그래야 정상적으로 Sprite를 로드할 수 있습니다. 위 이미지와 같이 Resouces/Sprites/Player 폴더에 있는 "Player01"이라는 Sprite를 가져온다고 가정해보겠습니다. 그렇다면 아래와 같은 소스를 이용하여 Sprite를 가져올 수 있습니다. Sprite[] sprite..

Unity 2020.07.03

[JavaScript] Array.find()

Array의 find 메서드에 대해 알아보겠습니다. 메서드의 이름처럼 특성 요소를 찾을때 사용합니다. 기본 구조는 아래와 같습니다. Array.find(callback[, thisArg]) callback 함수와 callback의 this로 사용할 객체를 받습니다. thisArg는 생략 가능합니다. callback 함수는 아래와 같은 매개변수를 받습니다. - element: callback 함수에서 처리할 현재 요소. - index: callback 함수에서 처리할 현재 요소의 인덱스. - array: find 메서드를 호출한 배열 find 함수는 간단합니다. 배열의 모든 요소를 순회하며 callback 함수를 호출합니다. 만약 callback 함수가 true를 반환하게 되면 순회를 멈추고 true를 반..

JavaScript 2020.06.05

[JavaScript] Array.reduce()

기본 구조는 아래와 같습니다. Array.reduce(callback[, initialValue]) callback 함수와 initailValue 매개변수를 받습니다. initialValue는 생략가능하며, 생략한다면 배열의 첫번째 값으로 초기화 됩니다. 이러한 규칙으로 인하여 initialValue를 제공하지 않는다면 첫번째 배열 값을 건너뛰어 실행되고, initialValue를 제공하면 첫번째 배열 값도 포함하여 실행됩니다. 아래는 실제로 테스트해본 결과입니다. callback함수는 네 개의 매개변수를 갖습니다. accumulator: reduce 매서드의 핵심입니다. 번역하면 누산기 정도로 말할 수 있습니다. 콜백의 반환값을 누적합니다. current value: 처리할 현재 요소의 값입니다. cu..

JavaScript 2020.06.03

[Git-TF] Clone

현재 다니고 있는 회사에서는 소스 코드 관리 시스템으로 TFS(Team Foundation Server)를 사용하고 있습니다. 요즘엔 git이 대세라고는하지만, 오래전부터 사용하고 있는 소스 관리 시스템이고 소스관리뿐만 아니라 버그, 이슈, 결함등 솔루션에 대한 전반적인 관리 기능까지 포함하고 있어 쉽게 git으로 옮길 것 같진 않습니다. 그래서 저는 TFS 환경에서 git을 사용할 수 있는 git tf를 사용해보고 있습니다. git tf는 아래 링크에서 다운받을 수 있습니다. Git-TF Git-TF is a set of cross-platform, command line tools that facilitate sharing of changes between TFS and Git. www.microso..

Tool 2020.05.28
반응형