Language48 NVM을 활용하여, Node Version을 관리하는 방법 서론 오늘은 NVM을 활용하여, Node Version을 관리하는 방법에 관해서 알아보도록 하겠습니다. 설치 방법 설치 방법에는 2가지가 있습니다. curl로 설치 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash wget으로 설치 wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash 그러면 아래와 같은 메세지가 출력됩니다. => Appending nvm source string to /home/lesstif/.bash_profile => Appending bash_completion source string to /hom.. Language/JS(Node.js) 2023. 4. 22. [Java] JDK, JRE, JVM 서론 이 글은 자바를 공부하기 전에 알아두면 좋을 것들!! #1(링크)를 참조하여 정리한 글임을 밝힙니다. 본론 자바의 특성 유명한 문구죠. "Write Once, Run Anywhere". C언어의 경우, 운영체제마다 각각 다른 컴파일러가 존재합니다. 같은 바이트 코드임에도, 운영체제에 따라 다르게 해석됩니다. 그러나 자바는 하나의 컴파일러만 존재하고 각 운영체제에 맞게 바이트 코드를 변환해주는 JVM이 존재합니다. 따라서 어떤 운영체제든, 같은 컴파일러를 사용할 수 있고 이로인해 운영체제와 상관 없이 일정하게 코드를 호환할 수 있습니다. 컴파일 되기까지 자바 언어를 컴퓨터가 이해하려면 0과 1로 구성된 바이너리로 변환되어야 합니다. 이를 컴파일이라고 합니다. 운영체제마다 컴파일러가 다른데, 앞서 말했.. Language/Java & Kotlin 2022. 5. 22. [Java] 자주 쓰이는 util 클래스 정리하기 (1) HashMap 서론 오늘은 자바 프로그래밍을 하면서 유용하게 쓰이는 util 클래스 중 하나인 HashMap에 관해 정리하는 시간을 갖겠습니다. 본론 정의 먼저, Map은 key와 value로 구성된 객체를 저장하는 자료구조입니다. key와 value는 모두 객체이며, value는 중복될 수 있지만 key 값은 중복될 수 없습니다. 식별자로 유일한 key를 갖으므로 O(1)의 탐색시간을 특성을 갖고 있습니다. HashMap은 이러한 Map의 인터페이스를 구현한 대표적인 Map 컬렉션입니다. 차이점은 Map의 key 값을 저장할 때 Hashing(해싱)을 사용하여 많은 양의 데이터를 검색할 때 빠른 속도로 탐색할 수 있도록 돕는다는 점입니다. 선언방법 HashMap은 아래와 같이 선언할 수 있습니다. 첫번째 제너릭 인자.. Language/Java & Kotlin 2022. 5. 12. [Javascript] Array.prototype.forEach vs Array.prototype.Map 서론 오늘은 배열을 순회하는 내장 메서드인 forEach와 Map의 차이점을 알아보도록 하겠습니다. 본론 forEach 먼저 forEach에 대해서 살펴보겠습니다. const arr = [1, 2, 3, 4, 5]; arr.forEach((i) => console.log(i+1)); console.log(arr); 배열을 순회하며, 각 원소에 1을 더하는 간단한 함수를 forEach 메서드의 콜백함수로 등록해줍니다. 아래와 같이 출력되는 것을 볼 수 있습니다. 2 3 4 5 6 [1, 2, 3, 4, 5] forEach 메서드를 사용하면 원본 배열에 영향을 주지 않으며, 반환 값도 없습니다. map 이번엔 map 메서드를 살펴보겠습니다. 동일한 예제를 사용하여 비교해보겠습니다. const arr2 = [.. Language/JS(Node.js) 2022. 4. 3. React Native/Typescript 환경에서 절대경로 설정하는 방법 서론 대상독자 RN 개발 시, 절대경로 사용하고 싶은 개발자 학습목표 오늘은 RN Expo와 타입스크립트 환경에서 절대 경로를 설정하는 방법에 대해서 알아보겠습니다. 본론 babel-plugin-module-resolver 설치하기 yarn add -D babel-plugin-module-resolver babel-plugn-module-resolver란 라이브러리를 설치해줍니다. babel.config.js 수정하기 그런 뒤, babel.config.js 파일에서 해당 값에 맞게 설정해줍니다. 이 때, baseUrl로 들어가는 경로에 절대경로로 설정해주고 싶은 값이 들어가도록 설정해주는 것이 중요합니다. module.exports = function () { return { presets: ["babe.. Language/Typescript 2022. 4. 1. React Native/Typescript 환경에서 데코레이터 함수 사용하는 방법 서론 대상독자 타입스크립트 개발 시, 데코레이터 함수를 사용하고 싶은 개발자 학습목표 타입스크립트 환경에서 데코레이터 함수를 설정하는 방법에 대해서 알아보겠습니다. 본론 먼저 필요한 패키지들을 설치합니다. babel과 babel plugin 설치하기 yarn add -D @babel/core @babel/plugin-proposal-decorators @babel/plugin-proposal-decorators란 라이브러리를 설치해줍니다. babel.config.js 수정하기 그런 뒤, babel.config.js 파일에서 해당 값에 맞게 설정해줍니다. module.exports = function () { return { ..., plugins: [ ["@babel/plugin-proposal-deco.. Language/Typescript 2022. 4. 1. [Javascript] 자바스크립트 함수와 클래스의 this binding 서론 오늘은 자바스크립트에서의 함수와 클래스의 this binding의 차이점에 대해서 알아보도록 하겠습니다. 차이점을 알기 위해선, this가 동작하는 방식에 관해 이해해야 합니다. 본론 함수에서의 this 함수에서의 this는 실행환경(런타임)과 함수가 선언된 방식에 따라서 다릅니다. 먼저 런타임이 node.js에서 확인해보도록 하겠습니다. 함수 선언식과 함수 표현식으로 선언된 함수 안에서의 this는 global 객체를 가리킵니다. 반면, 화살표 함수로 선언된 this는 module.exports를 가리킵니다. 그 까닭은 후자에선 상위 스코프의 this를 가리키는데, 전역 스코프에서의 this가 가리키는 것이 module.exports 이기 때문입니다. function printThis() { co.. Language/JS(Node.js) 2022. 3. 29. [자바스크립트] map 함수에서 비동기 콜백 처리하기 학습목표 Promise.all을 활용하여, 비동기 콜백함수의 응답을 처리할 수 있다. 본론 흔히 배열을 순회해, 원하는 형태의 값으로 변환할 때 우리는 Array.prototype.map 함수를 사용합니다. 문제는 map 함수를 순회하는 과정에서 네트워크 요청을 거쳐야 한다면 일반 콜백함수가 아니라, 비동기 콜백을 처리해야 할 것입니다. 이 때, 비동기 콜백 함수가 실행된 결괏값을 리턴 받으려면 어떻게 해야 할까요? Promise 대신 말이죠. 정답은 Promise.all을 사용해주면 됩니다. Promise.all(iterable) Promise.all 메서드는 파라미터로 순회 가능한 객체를 전달 받을 수 있습니다. 이 경우에는 map 함수의 리턴 값이 되는 객체가 되겠죠. 리턴 값은 요청이 성공적일 때.. Language/JS(Node.js) 2022. 3. 28. [예외처리] Python 에러 종류와 예외처리 서론 학습목표 파이썬에서의 예외처리 방법에 대해서 학습한다. 파이썬에는 어떤 종류의 에러 객체들이 알고 활용할 수 있다. 본론 오늘은 간단하게 Python에서의 예외처리와 자주 발생되는 에러의 종류에 대해서 정리해보도록 합니다. 대표적인 에러 종류 8가지 IndentationError SyntaxError IndexError ValueError NameError TypeError AttributeError KeyError IndentationError 이 에러는 정확하게 들여쓰지 않으면 발생됩니다. 파이썬에서는 들여쓰기로 스코프를 판단하는데, 아래와 같이 올바르게 들여쓰기를 처리하지 않으면 에러가 발생됩니다. # 잘못된 들여쓰기의 예 def introduce_name(name): print(name) >.. Language/Python 2022. 3. 27. [Algorithm] 코딩테스트를 위한 Python 기본 문법 정리 서론오늘은 코딩테스트 문제 풀이를 위해서 빼놓을 수 없는 기본 문법에 대해 알아보도록 하겠습니다.본론입출력입력함수 : input()input 함수를 통해 입력 값을 받아올 수 있습니다.a = input()>>> "안녕하세요 반갑습니다"print(a) // 안녕하세요 반갑습니다공백을 기준으로 나누기 : split()input()의 리턴값은 문자열입니다. 따라서 이번엔 문자열 내장함수인 split을 통해, 주어진 문자열을 공백을 기준으로 나눌 수 있습니다. 반환값은 리스트 형태입니다.b = input().split()>>>> "3 5 6 7"print(b) // ['3', '5', '6', '7']문자열을 정수형으로 바꾸기 : map (변환 함수, iterable)이번엔 map 함수를 통해, 문자열 리스트를.. Language/Python 2022. 2. 23. [Typescript] 자주 쓰이는 Utility Types 정리하기 본론 오늘은 타입스크립트에서 자주 활용되는 Utility Types에 관하여 간단하게 정리하는 시간을 갖겠습니다. Partial Partial은 모든 타입을 옵셔널하게 불러옵니다. Pick Pick은 특정 타입의 일부분을 불러와 사용합니다. 타입의 key 값을 통해 가능합니다. interface Todo { title: string; description: string; completed: boolean; } type TodoPreview = Pick; const todo: TodoPreview = { title: "Clean room", completed: false, }; Required 모든 타입을 필수 타입으로 지정합니다. 기존 속성타입이.. Language/Typescript 2022. 2. 16. [Python] 기본 문법 정리하기 (자바스크립트와의 차이점) 서론대상독자기존 자바스크립트 기본 문법에 대해서 알지만, 새롭게 파이썬을 학습하려는 개발자학습목표자바스크립트와의 문법적 차이를 알며, 실제 파이썬으로 코딩할 수 있다.본론변수선언먼저 자바스크립트와는 다르게, 파이썬에는 var, const, let 과 같은 변수선언문이 없습니다. 따라서 변수에 값을 할당 할 때, 변수 이름만 적고 값을 할당해주면 됩니다. 아래와 같이 말이죠. 또 기본적으로 let과 var처럼 값을 재할당 할 수 있습니다.name = 'joonfluence'print(name) // joonfluencename = 'heyJoon' // heyJoon기본 자료형자바스크립트 자료형과의 차이자바스크립트에는 7가지 자료형이 있습니다. 6가지 기본 자료형(Primitive Type)에 속하는 nu.. Language/Python 2022. 2. 13. 이전 1 2 3 4 다음 반응형