JSer.info #313 - Node v7.4.0이 릴리즈됐습니다.
Buffer와 EventEmitter의 성능 개선이 이뤄졌습니다.
또, 이번 버전부터 npm의 버전이 v4.0.5로 변경됩니다.
npm v4에서는 prepublish
라이프 사이클이 prepublishOnly
와 prepare
로 분할됐습니다.
또, npm-shrinkwrap.json
에 기본적으로 devDependencies
가 포함돼도록 변경 됐습니다.
- npm shrinkwrap를 운용에서 사용하기 위한 요령 - Qiita(일본어)
- npm v3 이하 환경에서의 shrinkwrap 동작에 관해 작성돼 있습니다.
그 외에도 비권장 커맨드가 삭제되거나 일부 동작을 변경 및 개선하는 등 다양한 변경 사항이 있습니다. 자세한 내용은 아래 CHANGELOG를 참조해주길 바랍니다.
- npm/CHANGELOG.md at v4.0.5 · npm/npm
- 2016-10-24 JS: npm 4.0.0, Node.js v6.9.0 (LTS), webpack@2 마이그레이션 - JSer.info
- Yarn vs npm - The State of Node.js Package Managers | @RisingStack
- npm v4의 변경 사항에 관해서도 작성돼 있으니 함께 살펴보면 좋을 것 같습니다.
헤드리스 브라우저 PhantomJS 2.5.0 Beta가 릴리즈됐습니다.
의존하는 QTWebKit이 업데이트 되어 ES2015의 기능을 지원하게 됐습니다.
QTWebKit에 관한 변경 내용은 아래를 참고해주세요.
ryanmcdermott/clean-code-javascript에는 Clean Code의 내용을 기반으로 한 가이드라인이 작성돼 있습니다.
ES2015 기반으로 작성한 샘플 코드와 함께 읽기 쉽고 재사용 및 리팩터링하기 쉬운 코드에 관해 이야기합니다.
공지사항
JSer.info 6주년과 300회 기념 이벤트(일본어)는 이번 주말 2017/01/15(日)에 개최합니다(개장은 13:30부터).
행사 입장에 필요한 출입 ID는 connpass의 메시지를 통해 메일로 발송 됐을 것입니다. 한번 확인 부탁드립니다.
헤드라인
Introducing Inferno 1.0 – inferno_js – Medium
medium.com/inferno-js/introducing-inferno-1-0-f3da5c4e773b
Inferno 1.0이 릴리즈됐습니다.
Inferno가 왜 만들어졌는지 이야기하고 향후 로드맵을 소개합니다.
Node v7.4.0 (Current) | Node.js
nodejs.org/en/blog/release/v7.4.0/
Node.js 7.4.0이 릴리즈됐습니다.
Buffer, EventEmitter.once
의 성능이 개선 됐습니다.
[Release] PhantomJS 2.5.0 Beta - Google 그룹스
groups.google.com/d/topic/phantomjs/AefOuwkgBh0
PhantomJS 2.5.0β가 릴리즈됐습니다.
QtWebKit이 업데이트 되어 ES2015와 WebP를 사용할 수 있게 됐습니다.
Microsoft Edge build 15002 changelog - Microsoft Edge Development
developer.microsoft.com/en-us/microsoft-edge/platform/changelog/desktop/15002/
Windows 10 build 15002가 릴리즈 됐습니다.
MSEdge에서 Flash를 클릭해야만 재생되도록(Click to play) 변경 됐고 Web Payments를 시험적으로 지원하며 CSP 2.0과 WebVR API를 지원합니다. 또, 오리진이 다른 페이지에서의 setTimeout/requestAnimationFrame 호출을 억제하는 등 다양한 변경 사항이 있습니다.
아티클
ES6 arrow functions in depth
codesi.nz/es6-arrow-functions-in-depth/
Arrow Function관해 세세하게 소개하는 글입니다.
this
의 동작과 암묵적 return
에 관해 설명 돼 있습니다.
또, new
가 불가능한 점, new.target
나 arguements
를 사용할 수 없는 점에 관해서도 이야기합니다.
From Sass to PostCSS by Tyler Gaw
tylergaw.com/articles/sass-to-postcss
Sass였던 환경을 PostCSS로 바꾸기 까지의 일종의 삽질기입니다.
Sass의 구문과 PostCSS의 확장(cssnext)을 비교합니다.
ES proposal: import()
www.2ality.com/2017/01/import-operator.html
현재 Stage 3의 Proposal인 import()
에 관해 설명하는 글입니다.
dynamic module imports에 관한 사양에 대해 다루고 있습니다.
Yarn vs npm - The State of Node.js Package Managers | @RisingStack
blog.risingstack.com/yarn-vs-npm-node-js-package-managers/
npm v4와 Yarn에 관해 이야기합니다.
npm v4에서 추가된 기능을 소개하고 Yarn의 기능이나 lock 파일에 관해 소개합니다.
Web animation in 2017 | Nothing new
birtles.wordpress.com/2017/01/10/web-animation-in-2017/
Web Animation과 관련된 사양의 스테이터스가 정리돼 있습니다.
Building a custom tag input with Skate.js
hackernoon.com/building-a-custom-tag-input-with-skate-js-fbd4cdf744f
Web Components 프레임워크인 Skate.js를 사용해 태그 입력 컴포넌트를 만드는 과정을 소개합니다.
값이나 스타일을 정의하는 방법 등에 관해 작성돼 있습니다.
Flux를 사용하지 않고 React 컴포넌트 간 커뮤니케이션 하는 8가지 방법 - Qiita(일본어)
qiita.com/kyoshidajp/items/0ddb156d96bb6337f623
React 컴포넌트 간 값이나 상태를 전달하거나 동기화하는 패턴에 관해 소개하고 있습니다.
사이트, 서비스, 문서
ryanmcdermott/clean-code-javascript: Clean Code concepts adapted for JavaScript
github.com/ryanmcdermott/clean-code-javascript
클린코드를 자바스크립트 환경에서 실천하는 가이드 라인입니다.
읽기 쉬운 코드를 작성하는 방법과 객체 지향 프로그래밍 및 SOLID 실천법 등을 ES2015+ 문법을 사용해 알기 쉽게 소개돼 있습니다.
세로 쓰기 Web 보급 위원회(일본어)
세로 쓰기 CSS관해 설명돼 있는 사이트입니다.
소프트웨어, 도구, 라이브러리
Flow Runtime
codemix.github.io/flow-runtime/
Flow와 호환되는 런타임 타입 체크 바벨 플러그인입니다.
Flow로 작성한 코드를 런타임 체크할 수 있습니다.
talyssonoc/structure: A simple schema/attributes library built on top of modern JavaScript
github.com/talyssonoc/structure
ES2015 classes의 모델에 대응해 스키마를 정의할 수 있는 라이브러입니다.
작성된 스키마를 바탕으로 값을 검증하거나 직렬화 할 수 있습니다.
wheresrhys/fetch-mock: Mock http requests made using fetch (or isomorphic-fetch)
github.com/wheresrhys/fetch-mock
Fetch API의 목(Mock) 라이브러리입니다.
danculley/real-dom: A ~1K non-virtual DOM non-framework framework for simple apps
Redux 스러운 State 머신을 다루는 DOM 컴포넌트 라이브러리입니다. 컴포넌트 작성시엔 JSX로도 작성할 수 있습니다.
약 50줄 정도의 코드로 구현돼 있는 정말 작은 사이즈의 라이브러리입니다.
xvg
SVG path의 아웃라인 및 앵커를 표시하여 디버깅할 수 있도록 하는 Chrome 확장 플러그인입니다.
NodeKit
Node.js를 iOS/Android/Windows 등의 애플리케이션에 넣어 사용할 수 있도록 하는 프레임워크입니다.
JavaScript 바인딩에 JavaScriptCore나 ChackraCore를 사용합니다.
jlongster/prettier: Prettier is an opinionated JavaScript formatter.
탭 사이즈, 한 줄 사이즈 등을 설정해 코드를 일괄 정리할 수 있는 JavaScript 포멧팅 도구입니다.
도서
O'Reilly Japan - 처음 시작하는 JavaScript 제 3 판(일본어)
www.oreilly.co.jp/books/9784873117836/
2017년 1월 20일에 출간되는 Learning JavaScript의 번역서 입니다.
ES2015+에 대한 내용이 추가됐습니다.
Front-end Handbook 2017 · GitBook
www.gitbook.com/book/frontendmasters/front-end-handbook-2017/details
프런트엔드에 관한 정보를 정리한 2017년 버전의 전자 서적입니다. 2016년 버전은 아래 링크를 참고해주세요.