Vol.223
Virtual DOM is pure overhead by Rich Harris Jump to heading
仮想DOMは純粋なオーバーヘッドになる Jump to heading
Reactが立ち上げられたとき、コアメンバーであるPete Hunt氏によるセミナーで、DOM操作が遅いゆえに、仮想DOMを使った実装は非常に早いという考えが広まったが、実際の所それはオーバーヘッドになっているのではないか?この記事では、Rich氏によるこの考えについての深い考察を展開しながら、仮想DOMが優れている点とメリット、なぜ使われているかについて解説し、Svelteの利点を紹介へと繋げていく。
Building the most inaccessible site possible with a perfect Lighthouse score by Manuel Matuzovic Jump to heading
Lighthouseで100点をとりながら、最もアクセシブルでないサイトを作る Jump to heading
Manuel氏はLighthouseを使った面白い実験を行い、自動テストを盲目的に信用してしまう危険性について指摘する。この記事では、LighthouseはWebサイトのアクセシビリティを0-100のスコアで判定し、そのサイトがどれほどアクセシブルであるかを評価できるサービスであるが、そのLighthouseで100のスコアを獲得しながらも、実際の所アクセシブルでないサイトを作ることもできてしまう例を示す。
The difference between keyboard and screen reader navigation by Léonie Jump to heading
キーボードユーザーとスクリーンリーダーユーザーのナビゲーションの違い Jump to heading
キーボードを使用してナビゲーションするユーザーと、スクリーンリーダーを使用してナビゲーションするユーザーを比較して、そこにある問題を明らかにする。キーボードユーザーのTabのフォーカスと、スクリーンリーダーユーザーのTabのフォーカスは区別するべき点であり、そうでなければ、スクリーンリーダーのユーザーのナビゲーションは機能しなくなると指摘する。Smaching TVではスクリーンリーダーの動作を確認する動画を提供している。
Unpacking hoisting by Axel Rauschmayer Jump to heading
JavaScriptのHoistingの仕様は、ES6の環境において使用できるconst
やlet
と、それ以前から使用できるvar
とでは、異なる挙動をとる。Axel氏はこの混乱を起こしやすい仕様について、実際のコードを交えながら明らかにしていく。
Enabling Modern JavaScript on npm by Jason Miller Jump to heading
モダンなJavaScriptは、少ないコードで実装をすることができるが、実際の所古いブラウザをサポートするために、トランスパイルしてnpmモジュールとして配信されることが多い。しかしながら、トランスパイルされたコードは大きくなり、エンドユーザーの初期ロードの時間とランタイムのパフォーマンスに大きな影響を与える。この記事では、この問題について深掘りし、どういった解決法があるのか、詳しく解説していく。
In Brief Jump to heading
- What happens when you extract a function anyway? by Kevin Baribeau: testdouble.jsのリファクタリングを行う過程で、どのようなアプローチをとったのかについて紹介する。複雑な機能も、小さな関数に分割することでリーダブルな実装ができる例
- Understanding grid placement through building a HTML periodical table by Hui Jing: 周期表のようなものをCSS Gridで実装を試してみる。WebsiteSetupOrgに掲載されていたテーブルをどのようにCSS Gridで実現できるのか
- The problem with web components by Adam Silver: 現時点でのWeb Componentの欠点について解説し、どう対応するのかについて考察する
- Your first performance budget with Lighthouse by Ire Aderinokun: Lighthouseを利用したパフォーマンスバジェットを設定する方法と、Githubとの連携について
- What Mike Monteiro Taught me About Feedback by Johannes Ippen: クライアントからのフィードバックについてどのように対処するべきかについて