🚨 오늘의 문제상황 오늘 JSON.stringify() 를 재귀함수로 구현하는 과제가 있었다. 코드작성은 어렵지 않았는데 예상치도 못한 곳에서 시간을 많이 쏟았다. 바로, Template literals... 이게 왜 돼..? 라는 말만 수 십번 외치면서 알게 된
이 책에서는 소프트웨어 설계를 코드를 만들고, 테스트하고, 유지보수하기 쉬운 프로그래밍 방법을 선택하기 위해 미적 감각을 사용하는 것이라고 말한다. 소프트웨어 설계를 위한 미적 감각은 계층형 설계를 통해 키울 수 있을 것이라 기대한다.여기서 계층형 설계는 소프트웨어를
지금까지는 카피-온-라이트 방식으로 데이터의 불변성을 유지해왔다. 라이브러리나 레거시 코드가 데이터를 변경한다면 카피-온-라이트 방식으로 데이터를 관리할 수 없다. 이런 경우, 어떻게 데이터의 불변성을 유지할 수 있을까?MegaMart에서 한달에 한 번씩 블랙 프라이데
만들고 싶은 거 만들기오늘 주어진 일 오늘 해결하고 자기사용해보고 싶은 라이브러리 잘 안 되더라도 일단 시도해보는 자세밤에 자고 아침에 일어나는 삶요즘 열심히 살고 있지 않다는 생각이 드는데 불안하지가 않다. 왜지? 안 불안해서 불안하다... 솔직히 뭐가 불안한지도 정
Representational State Transfer Application Programming Interface웹에서 사용되는 데이터나 자원을 HTTP URI로 표현하고, HTTP 프로토콜을 통해 요청과 응답을 정의하는 방식아래 단계를 모두 충족해야 REST AP
props는 객체부모 컴포넌트에서 자식 컴포넌트로 상태나 데이터를 전달할 때 보통 사용컴포넌트의 자체 props를 수정해서는 안 된다.단방향, 하향식 데이터 흐름 원칙에 위배됨부모 컴포넌트에서 자식 컴포넌트로 전달하고자 하는 값과 속성 정의 {name: cat}prop
function 키워드 사용그냥 함수와 class 함수를 구분하기 위해서 class 함수의 이름은 명사로, 첫 글자는 대문자로 지어준다.prototype 을 이용하여 메서드를 정의해야 한다. 클래스함수이름.prototype.메서드이름 의 형태로 정의할 수 있다. 함수를
장바구니 동작제품 개수 가져오기 👉 읽기제품 이름으로 제품 가져오기 👉 읽기제품 추가하기 👉 쓰기제품 이름으로 제품 빼기 👉 쓰기제품 이름으로 제품 구매 수량 바꾸기 👉 쓰기제품에 대한 동작가격 설정하기 👉 쓰기가격 가져오기 👉 읽기이름 가져오기 👉 읽기
암묵적 입력과 암묵적 출력을 없애 액션을 계산으로 만들 수 있다. 그러나 모든 액션들을 없앨 수는 없다. 액션은 필요하니까! 액션을 만드는 것을 피할 수 없으니 액션을 더 좋게 만드는 방법을 정리해보려 한다.비즈니스 요구 사항은 장바구니에 담긴 제품을 주문할 때 무료
JavaScript 의 모든 객체는 부모 역할을 담당하는 prototype 이라는 객체를 가지고 있다. 객체 지향의 상속 개념과 비슷하게 부모인 prototype 의 프로퍼티, 메소드를 상속받아 사용할 수 있다.지금까지 arr.push() , arr.slice() 등과
💡 객체 지향 프로그래밍 (Object Oriented Programin) : 데이터와 기능, 함수들을 묶어 하나의 객체로 만들어 사용한다.💡 절차적 프로그래밍 (Procedural Programming) : 데이터를 중심으로 함수를 만들어 사용한다.좋은 설계를 하
함수가 일급객체라서 고차함수로 활용가능하다.🤔 벌써 모르는 단어가 두 개나 있다. 일급객체❓ 고차함수❓일급객체는 first-class citizens, first-class type, first-class object, first-class value 등 등...굉
신기한 브라우저의 세계 - window 편 자바스크립트를 공부하면서 window.어쩌구 의 형태로 이루어진 문법들을 가끔가다 한 번씩 보았다. 지금까지는 그 문법에 대해 깊게 생각하기 보다 그냥 window 객체 중 하나구나~ 정도로만 알고 지나갔다. 그러다 이번
MegaMart는 온라인 쇼핑몰이다. 사용자가 쇼핑 중 장바구니에 담겨 있는 제품의 금액 합계를 볼 수 있는 기능이 중요한 기능 중 하나이다.장바구니에 담은 상품들의 합계가 20달러가 넘으면 제품의 구매 버튼 옆에 무료 배송 아이콘을 표시해 주려고 한다.합계 금액이 바
함수형 코딩에서는 액션과 계산, 데이터를 구분하는 일을 아주 중요하게 생각한다.문제에 대해 생각할 때도, 코딩을 할 때도, 코드를 읽을 때도 모두 액션, 계산, 데이터로 나누어 생각할 수 있다. 우리가 일상에서 자주 하는 장보기를 액션, 계산, 데이터로 나눌 수 있다.
상황에 따라 다른 this, window 객체, bind(), apply(), call() 메서드에 대해 정리했습니다.
Chapter 2 현실에서의 함수형 사고 🌟 토니 피자 토니는 로봇이 피자를 만드는 가게를 운영한다. 함수형 사고를 이용하여 주방과 재고 창고를 관리하고 있다. 액션과 계산, 데이터로 구분하여 계층형 설게 원칙을 세우고, 이를 통해 분산 시스템을 사용하며 가끔 실