전체 글

function func() { }const func =  () => { };자바스크립트 함수 작성 방법함수 작성하는 방법을 총 3가지로 분류했다. 1. 함수 선언문 (Function Declaration)2. 함수 표현식 (Function Expression)3. 화살표 함수 (Arrow Function) 그 밖에 추가적인 내용은 포스팅에 담도록 할 예정이다. 함수 선언문(Function Declaration)가장 기본적인 함수 작성 방법으로, `function 함수명() { }`을 사용하며 함수 선언문을 통해 함수를 정의하고 어디서든 호출 가능하다.함수 호이스팅이 일어난다. →함수 선언 전에 호출 가능.example() // 함수 호이스팅 function example() { console.log('..
Execution Context자바스크립트 엔진은 코드가 작성된 자바스크립트 파일을 그대로 실행하는 것이아니라, 사실상 함수의 실행 방식과 비슷한 원리로 작동한다. 자바스크립트 엔진은 스크립트 파일을 구동할 때 기본적으로 두 가지 주요 단계를 거친다.Creation (Pre-parsing) Phase: 실행하기 전에 변수와 함수가 어떤 것인지 분석하고 필요한 메모리 공간을 예약한다.Execution Phase: 변수에 값을 할당하고 함수가 실제로 실행된다.자바스크립트 엔진 구성: Stack + Heap자바스크립트 엔진은 Stack + Heap 두개만 기억하면 된다. 자바스크립트 함수 동작원리도 마찬가지로 두개만 기억하자.Stack(스택): 함수 호출 순서대로 함수가 저장되고 실행되는 공간 = 실행 컨텍스..
"Hoisting"Hoisting ?본격적인 포스팅에 앞서 Hoisting(호이스팅)이라는 개념을 먼저 이해하는 것이 중요하다. 어원: Hoisting `명사` 끌어 올리기, 들어올려 나르기 Hoisting(호이스팅)은 변수 선언과 함수 선언이 코드 실행 전에 자바스크립트 엔진에 의해 최상단으로 끌어 올려지는 현상을 말한다. 자바스크립트 코드가 작성된 순서대로 실행되는 것처럼 보이지만, 실제로는 선언과 초기화가 미리 처리되기 때문에 예상치 못한 동작을 경험할 수 있다. 코드가 실행되기 전에 변수 선언과 함수 선언이 코드의 최상단으로 이동된다. 이는 선언만 이동되며, 변수의 값 할당은 호이스팅 되지 않는다.JavaScript 호이스팅은 인터프리터가 코드를 실행하기 전에 함수, 변수, 클래스 또는 임포트(i..
What is Functional Programming?함수형 프로그래밍 패러다임자바스크립트는 함수형 프로그래밍 패러다임을 추구하며 추가로 객체지향 프로그래밍 패러다임도 지원한다.객체지향 프로그래밍 패러다임의 여러 패턴을 적용하려면 클래스(상속)와 객체를 활용할 수 있다.타입스크립트를 통해 인터페이스(다형성)를 도입할 수 있다.따라서 자바 개발자가 객체지향 프로그래밍을 모두 이해하는 것과 같이 자바스크립트 개발자가 제대로 개발하기 위해선 함수형 프로그래밍에 대한 모든 이해가 필요하다.  일급함수: 함수 변수 + 함수 파라미터 + 함수 반환일급함수란, 일급 객체로 취급되는 개념이다. 함수가 마치 숫자나 문자열처럼 일반적인 값으로 다루어질 수 있다는 의미.일급 함수를 지원하는 언어는 함수를 변수에 저장하거나..
git commit -m "Blog Posting #6🫡"개발자협업의 필수 도구실무에서 Git 브랜치 전략 및 Zone 구별실제 현업에서는 개발, 테스트, 배포를 위한 Zone을 구분하여 관리한다고 한다. 이를 효율적으로 운영하기 위해 다양한 Git 브랜치 전략을 사용하며, 대표적인 전략중 하나가 git-flow 이다. 개발 결과물을 테스트하기 위한 Develop Zone과 실제 유저들이 사용하기 위해 배포하는 Production Zone 그리고 이러한 Zone과 연동하여 관리하는 Git 브랜치 전략을 알아보도록 하겠다. (전략을 git-flow라고 명함)https://techblog.woowahan.com/2553/ 우린 Git-flow를 사용하고 있어요 | 우아한형제들 기술블로그안녕하세요. 우아한형..
git commit -m "Blog Posting #5🫡"개발자협업의 필수 도구 Git 구조: 로컬 Git의 영역 파악Git에서 코드의 변경 사항은 여러가지 영역을 거친다.Git은 코드의 상태를 여러 단계로 나누어 관리한다. 여기서는 4개의 주요 영역을 중심으로 설명할 예정이다. 1. Working Directory(작업공간):로컬에서 실제로 작업을 수행하는 공간. 이곳에서 파일을 수정, 삭제, 추가하는 등의 작업이 이루어진다.로컬 작업공간에서 작업할 브랜치 선택 → `git checkout`Tracked: Git이 추적하는 파일 → 이전에 Git에 추가된 파일들.Untracked: Git이 아직 추적하지 않은 파일 → 새로 생성된 파일 또는 수정된 파일들의 집합이 중에서 Commit 하고자하는 것을을..
git commit -m "Blog Posting #4🫡"개발자협업의 필수 도구Conflict 충돌 해결: Rebase & Merge: 4개의 Merge 전략Git에서 원격 브랜치와 로컬 브랜치를 병합할 때, 상황에 따라 적용할 수 있는 4가지 Merge전략에 대해 설명해볼 예정이다.Remote 원격에서 가져온 FETCH_HEAD와 로컬 HEAD를 Merge하는데에 3가지 방식이 존재한다.Fast-Forward: Local에 어떠한 내 작업도 없을 때 →  Remote에 타인의 작업 그대로 가져와 붙이기3-Way Merge: Remote에 있는 타인의 작업 그대로, 내 작업을 그대로 보존하고 → 새 머지 커밋 생성Rebase: Remote에 있는 타인의 작업 그대로, 그 위에 내 작업을 처음부터 다시 ..
git commit -m "Blog Posting #3🫡"개발자협업의 필수 도구 Pull = Fetch + Merge: 원격 Github에서 최신 브랜치 가져오기로컬 브랜치를 원격 브랜치와 동기화하기 위해선 `git pull`명령어를 사용한다. 이 명령어는 사실 두 개의 작업을 결합한 것으로 `fetch`와 `merge`가 함께 실행된다.Fetch: 원격저장소에서 최신 커밋이나 브랜치를 로컬 저장소로 가져오는 작업. 이 과정에서 원격 저장소에서 새로 생성되거나 삭제된 브랜치 및 최신 코드가 로컬로 내려받아진다.git fetch -p `git fetch -p` → `p = prune`Merge: 가져온 원격브랜치의 최신 코드를 로컬 브랜치의 현재 코드와 병합하는 작업. 이 과정에서 로컬 브랜치에 있는 변..
1000_sang
CHEONSANG-DEV