Reactivity와 Proxy 간단히 알아보기
·
개발/Javascript
React, Vue 같은 라이브러리나 프레임워크들을 쓰는 목적은 여러가지가 있겠지만 하나의 페이지에서 데이터를 동적으로 변경하기 위함(SPA)도 있을 것 이다. Vue에 대해 공부하던 중 Vue는 일반 객체를 제외한 반응형 객체들은 변경사항을 추적하기 위해 Proxy 객체로 변환한다는 사실을 알게 되었고 관련된 개념이 모자라 간단히 정리해보려고 한다.반응성 (Reactivity)Vue 공식 문서에선 반응성(Reactivity)에 대해, "변경"에 대한 제어를 선언적으로 수행하는 프로그래밍 패러다임이라고 나와 있다. 간단히 말해 내부에서 변경을 어떤식으로 이루어지게 하는지보다 해당 방식을 통해 변경을 이뤄지게 하겠다에 대해 중점이 맞춰진 방식이란 말이다. (여기서 선언형 프로그래밍이 이해가 되지 않는다면..
Monte Carlo Walker (ref. Nature Of Code)
·
활동/개인 프로젝트
몬테 카를로(Monte Carlo) 방식은 무작위로 추출된 난수를 이용하여 함수의 값을 계산하는 통계학의 방법이라고 한다. 위 이미지의 코드와 같은 경우에는 다음과 같이 이용되었다. (여기서의 난수라 함은 0~1 사이의 값을 얘기한다.) 1. 난수 값을 r1에 저장한다. 2. r1이 난수일 확률 probability를 계산한다. (probability = r1 으로 둔다.) 3. 또 다른 난수 r2를 저장한다. 4-1. r2가 probability 보다 크다면, 작은 보폭을 선호. 4-2. r2가 probability 보다 작다면, 큰 보폭을 선호. 5. 두가지 경우 중, 원하지 않는 결과라면 1로 돌아가고 원하는 결과면 r1을 return 한다. 그리고 Math.random을 사용하는 과정에서 최소값,..
Javscript의 Math.random과 정규분포에 대해
·
개발/Javascript
요새 Nature of Code 라는 책을 간간히 보고 있는 중인데, Javascript의 Math.random 이라는 함수가 단순히 난수를 생성하는 지 또는 정규분포를 나타내는지 궁금하여 알아보게 되었다. 수학적 지식이 뛰어나지는 못해 작성한 것이 정확하진 않을 수 있습니다. 참고만 해주세요... 오류가 있다면 지적 부탁드립니다. ECMA 공식 문서를 참고해보면, Math.random에 대해 다음과 같이 적혀있다. US: Returns a Number value with positive sign, greater than or equal to +0𝔽 but strictly less than 1𝔽, chosen randomly or pseudo randomly with approximately unifor..
자바스크립트 관점에서 정리한 클래스(Class)와 프로토타입(Prototype)에 대하여
·
개발/Javascript
※ 이 글은 예전 블로그에서 퍼온 글입니다. 가독성이 나쁘다면 예전 블로그 에서 읽어주세요.※ 글 중 모르는 단어나 개념이 있으실까봐 맨 아래에 참고할만한 사이트들을 남겨둡니다.1. 객체지향 프로그래밍(Object-Oriented-Programming)객체지향 프로그래밍은 현실 세계에 존재하는 객체(Object)를 소프트웨어 세계에서 표현하기 위해 객체의 핵심적인 부분만을 추상화해 모델링 하려고 하는 프로그래밍 패러다임을 말합니다.이해가 잘 안되신다면 객체를 사물이나 과일로 바꿔 이해하면 쉽습니다.붕어빵을 예로 들자면, 팥 붕어빵이라는 객체를 소프트웨어 세계에서 구현하기 위해 팥 붕어빵의 핵심적인 특징(붕어 모양, 팥)을 생각해 모델링 하고자 하는 것입니다.각 객체들을 독립적인 기능을 지닙니다. 하지만 ..