Fork me on GitHub

2015-10-08 JS: React 0.14, ESLint의 사용법, ES6의 꼬리 호출 최적화

Translator: U-Yeong Ju Edit on GitHub See Revisions

JSer.info #248 - React v0.14가 정식 릴리즈 됐습니다.

reactreact-dom으로 패키지 분할, refs 사양 변경, 스테이트리스한 함수 컴포넌트 추가, react-tools를 더이상 권장하지 않거나 react/addons에 있던 모듈을 다른 패키지로 분리하는 등 여러가지 사항이 변경됐습니다.

자동으로 변경 가능한 부분은 react-codemod를 사용하여 대응할 수 있습니다.

기타 변경 사항에 관해서는 아래 문서를 참고하세요.


ESLint v1.6.0이 릴리즈됐습니다. ESLint: The Next-Generation JavaScript Linter – Smashing Magazine에 ESLint가 무엇인지에 관해 설명돼 있습니다. 이 문서의 작성자 Nicholas C. Zakas는 ESLint를 개발한 사람입니다.

어떠한 방식으로 사용하는지, 플러그인이나 규칙 설정 방법, 검증 뿐만 아니라 --fix 명령어를 이용해 누락된 세미콜론을 삽입하거나 들여쓰기를 올바르게 맞추는 등 코드 자체를 수정하는 방법 등에 관해서도 작성돼 있습니다.

아래 문서에 ESLint의 플러그인 구조에 관해서 자세히 작성돼 놓았으니 참고하시길 바랍니다.


JavaScript - 꼬리 호출 최적화 - Qiita(일본어)에는 ES6 사양에 포함돼 있는 꼬리 호출 최적화에 관해 작성돼 있습니다.

왜 재귀 호출을 하면 스택 오버플로우가 발생하는지, 콜 스택이란 어떤 것인지 등 사전 지식부터 차례대로 설명하고 있어 이해하기 쉽습니다.


헤드라인


React v0.14 | React

facebook.github.io/react/blog/2015/10/07/react-v0.14.html

React ReleaseNote

React 0.14 정식 버전이 릴리즈됐습니다.
reactreact-dom으로 패키지가 분리 됐고, refs의 사양이 변경 됐습니다. 또, 스테이트리스한 컴포넌트 추가됐으며 이제 react-tools를 권장하지 않습니다.


Video.js Blog - Video.js 5: The Only Thing That’s Changed Is...

blog.videojs.com/post/130143694631/video-js-5

JavaScript library 영상 ReleaseNote

Video.js 5가 릴리즈됐습니다.
ES6로 재작성 됐으며 Less에서 Sass로 CSS 확장 언어를 옮겼고, HLS를 Flash 없이 지원합니다. 그리고 접근성을 개선했으며 플러그인 설정 값 전달 방식을 변경했습니다. 또 CDN에 Fastly를 이용하도록 하는 등 다양한 변경 사항이 있습니다.


Release v2.3.0 · jscs-dev/node-jscs

github.com/jscs-dev/node-jscs/releases/tag/v2.3.0

JavaScript Tools ReleaseNote

JSCS 2.3.0이 릴리즈됐습니다.
disallowIdenticalDestructuringNames, disallowNestedTernaries, requireSpaceAfterComma 규칙이 추가됐습니다.


Node v4.1.2 (Stable) | Node.js

nodejs.org/en/blog/release/v4.1.2/

node.js ReleaseNote 보안

Node.js 4.1.2이 릴리즈됐습니다.
io.js 3.x 이후에 있었던 http server DoS에 관한 보안 취약점 수정을 포함했습니다.


ESLint v1.6.0 released - ESLint - Pluggable JavaScript linter

eslint.org/blog/2015/10/eslint-v1.6.0-released/

JavaScript Tools ReleaseNote

ESLint v1.6.0이 릴리즈됐습니다.
--fix에 대응하는 규칙과 no-undef 규칙에 typeof 옵션을 추가했으며 envnashorn을 추가하는 등 다양한 변경 사항이 있습니다.


Ember.js - Ember.js 2.1 and 2.2 Beta Released

emberjs.com/blog/2015/10/04/ember-2-1-released.html

JavaScript library

Ember.js 2.1와 2.2β가 릴리즈됐습니다.


protractor/CHANGELOG.md at 2.5.0 · angular/protractor

github.com/angular/protractor/blob/2.5.0/CHANGELOG.md

JavaScript testing E2E ReleaseNote

Protractor 2.5.0가 릴리즈됐습니다.
AngularJS 2를 지원하고, useAllAngularAppRoots 옵션이 추가됐습니다.


아티클


ESLint: The Next-Generation JavaScript Linter – Smashing Magazine

www.smashingmagazine.com/2015/09/eslint-the-next-generation-javascript-linter/

JavaScript Tools

ESLint를 사용법과 설정법 그리고 플러그인에 관해 설명하고 있습니다.


cycle.js로 MVI 기반으로 에디터를 구현해본 이야기 - ✘╹◡╹✘(일본어)

r7kamura.hatenablog.com/entry/2015/10/04/062333

JavaScript Rx 설계

cycle.js의 아키텍쳐에 관해 설명합니다.
「이벤트 소스를 받는 함수와 반환하는 함수」가 어떻게 사용되는 것인지 또 MVI란 어떤 책임으로 분리하는지 이야기합니다.


Asynchronous code gets easier with ES2016 Async Function support in Chakra and Microsoft Edge | Microsoft Edge Dev Blog

blogs.windows.com/msedgedev/2015/09/30/asynchronous-code-gets-easier-with-es2016-async-function-support-in-chakra-and-microsoft-edge/

ECMAScript MSEdge

MSEdge에서 플러그인으로 지원하는 async/await에 관한 글입니다.
async/await를 사용하면 코드를 어떤 식으로 작성할 수 있는지, 동작 원리나 어떤 식으로 구현돼 있는지 설명합니다.


JavaScript - 꼬리 호출 최적화 - Qiita(일본어)

qiita.com/pebblip/items/cf8d3230969b2f6b3132

ECMAScript JavaScript

ES6의 꼬리 호출 최적화 구조에 관해 설명합니다.
왜 스택오버플로우가 일어나는지, 콜-스택은 무엇인지, 어떻게 최적화가 이뤄지는지 이야기하며 재귀 함수 패턴에 관해 잘 정리돼 있습니다.


Customizing ES6 via well-known symbols

www.2ality.com/2015/09/well-known-symbols-es6.html

ECMAScript JavaScript

Symbol에 기본으로 정의돼 있는 well-known symbols의 사용법에 관해 작성돼 있습니다.
ECMAScript 네이티브 메서드는 well-known symbols를 참조합니다. 이 개념을 기초로 메서드를 정의하여 객체 자체의 동작 방식을 변경하는 방법이 작성돼 있습니다.


Immutable Data Structures and JavaScript

jlongster.com/Using-Immutable-Data-Structures-in-JavaScript

JavaScript library

JavaScript에서의 immutable에 관해 작성돼 있습니다.
Redux 등을 사용할 때 Immutable 객체가 적합하지만 현재 자바스크립트엔 관련 사양이 없기 때문에 Immutable.js이나 seamless-immutable 등의 라이브러리르 사용해 구현합니다.
관련 라이브러리를 사용할 때의 장점과 단점을 이야기하고 있습니다.


슬라이드, 영상


BrazilJS 2015 - YouTube

www.youtube.com/playlist?list=PLg2lQYZDBwORUpJTu5MxI71iEQIyc_Lno

JavaScript イベント 영상

BrazilJS 2015의 영상이 올라와 있습니다.


사이트, 서비스, 문서


relax/relax

github.com/relax/relax

node.js React CMS

Node.js와 React로 만든 CMS입니다.


staltz/flux-challenge

github.com/staltz/flux-challenge

Flux 샘플

Flux 아키텍처를 사용해 구현한 문제와 답 저장소입니다.
submissions/아래에 각각의 답이 있고 다양한 형태의 Flux 구현을 볼 수 있습니다.


Accelerated Mobile Pages Project

www.ampproject.org/

HTML spec

AMP HTML이라고 하는 HTML의 서브-셋 정의를 준하는 것으로 모바일에서도 빠르게 페이지가 출력되는 것을 목표로 한 규격이나 라이브러리입니다.


소프트웨어, 도구, 라이브러리


jeffbski/wait-on · GitHub

github.com/jeffbski/wait-on

node.js library console Tools

다양한 wait 패턴을 실행할 수 있는 Node.js로 구현한 커멘드 라인 도구입니다. 파일의 존재 유무 확인, HTTP HEAD/GET, TCP, Socket의 응답 대기 등을 실행할 수 있습니다.


documentationjs

documentation.js.org/

JavaScript document

JSDoc 어노테이션 포멧을 지원하는 문서 생성 도구입니다. JSON, HTML, Markdown으로 출력 가능합니다.


도서


O'Reilly Japan - JavaScript를 이용한 데이터 비쥬얼라이제이션 입문(일본어)

www.oreilly.co.jp/books/9784873117461/

JavaScript d3.js book

2015년 10월 21일에 출간된 JavaScript를 이용한 데이터 시각화에 관한 도서입니다.


Pull Request to this article
JSer.info Slackに参加する