(Javascript | mithril ) m.mount – 양방향 바인딩 & 템플릿 렌더링

mithril 관련 글 mithril 앱의 기본 구성 및 m() m.render – 가상 DOM 렌더링하기 * m.mount – mithril을 이용한 양방향 바인딩 & 템플릿 렌더링 m.prop 양방향 바인딩을 위한 데이터 래퍼 m.withAttr 양방향 바인딩을 위한 양방향 바인딩을 위한 이벤트 매퍼 m.component – mithril 앱을 컴포넌트 화하기 Todo 앱 m.route – 단일페이지 애플리케이션 및 라우팅 규칙 m.request – 서버 API와 통신하기 마운팅은 mithril 내 앱 컴포넌트가 생성한 결과물(가상 DOM)을 HTML DOM내에 렌더링하는 작업을 의미한다. m.render은 m()으로 생성한 가상 DOM을 한 번 처리하여

(Javascript | mithril ) m.component – 앱을 컴포넌트화하기

본격 mithril 탐구. 가독성을 위해서 본 문서에서는 LiveScript로 예제를 작성합니다. mithril 관련 글 mithril 앱의 기본 구성 및 m() m.render – 가상 DOM 렌더링하기 m.mount – mithril을 이용한 양방향 바인딩 & 템플릿 렌더링 m.prop 양방향 바인딩을 위한 데이터 래퍼 m.withAttr 양방향 바인딩을 위한 이벤트 매퍼 * m.component – mithril 앱을 컴포넌트화하기 Todo 앱 m.route – 단일페이지 애플리케이션 및 라우팅 규칙 m.request – 서버 API와 통신하기 m.component는 controller + view로 이루어진 컴포넌트를 다른 컴포넌트 내에 임베드할 수 있게 하는 기능이다. 페이지마다

스도쿠 문제 풀이 작성하기 (LiveScript)

스도쿠 문제를 풀어주는 프로그램을 만들어보자. 스도쿠 풀이 방법은 여러 접근법이 있지만, 여기서는 가장 간단하게 임의의 한 빈칸에서 출발해서 ‘쓸 수 있는 숫자 후보’들을 하나씩 넣으면서 다음 빈칸으로 이동하는 식으로 진행한다. 여기서 사용할 언어는 Livescript이다. 노드 스도쿠 문제풀이에 사용하고자 하는 방식은 일종의 깊이 우선 탐색이다. 각 칸에서 사용가능한 후보 숫자 중 하나를 적용하고 다른 칸으로 이동한다. 이 때 적용할 수 있는 후보 숫자가 없으면 어딘가 잘못된 것이므로 이전 노드에서 다른 후보 값을 사용하고 재탐색한다. 또한 노드는 1)처음부터 값이 주어진 칸, 2)공란,

LiveScript + NodeJS

back call livescript는 자바스크립트로 컴파일되는 스크립트 언어로, 그 문법적 특징이 하스켈 의 것을 많이 참고하고 있다. 예를 들면 괄호없이 함수를 호출한다거나, 함수 파라미 터간의 컴마를 생략할 수 있다거나 하는 것들이 있다. 한 때 흥미삼아서 조금 만져보다가 관뒀었는데, 갑자기 모 사이트에서 NodeJS 튜토리얼을 몇 개 따라해보려다가1 생각이나서 그 사이트의 튜토리얼 코드들을 라이브스크립트로 코딩해봤더니 이거 썩 괜찮더라. 특히 화살표(->)를 이용한 익명함수 정의 문법2을 이용해서 함수를 인자로 전달하거나 함수가 함수를 리턴하는 것을 좀 더 간단하게 표기할 수 있게 한다. 예를 들어 이벤트핸들러를 등록하는