タグ

ブックマーク / zenn.dev/ak (4)

  • フロントエンドが遅いと言われた時に

    Webアプリケーションで、ブラウザ上でJavaScriptを用いてAPIからデータを取得して画面に反映する挙動が遅いと言われた時にフロントエンド側が確認することと対処方法。 ユーザのボタンクリックなどのアクションをトリガーとして、APIからデータを取得し画面に反映するというシナリオがあった際に、ユーザのアクションから画面への反映に時間を要しているという状況を想定しています。 Largest Contentful Paint (LCP)が遅い場合に関しては、別のアプローチになるので今回は除外します。 当にフロントエンドがボトルネックになっているか まず最初にすることは、APIのレスポンスタイムと、APIのデータを画面に反映する処理のどちらがボトルネックになっているかの確認です。 ユーザのアクションから画面への反映までの時間の中でAPIのレスポンスが大部分を占めている場合、プリフェッチなどの

    フロントエンドが遅いと言われた時に
    solidstatesociety
    solidstatesociety 2022/08/06
    なぜデザイナーと話すフェーズからカツカツなの?とかそう言う話かと思った
  • ロックマンエグゼで快適なネット対戦ができるようになるかもしれない話

    みなさん、ロックマンエグゼという作品を知っていますか? ロックマンエグゼは、カプコンから2001年に発売されたゲームボーイアドバンス(以降、GBA)用のゲームソフトで、ポケモンと同様にGBAの人気を支えたゲームです。 ナンバリング作品として、1~6までがGBAで発売されました。2005年に発売した6でストーリーが終了したため続編は発売されていません。 エグゼシリーズの人気コンテンツの1つに通信ケーブルを使った通信対戦機能があります。 現在でもインターネットを介して通信対戦をする人がいるほどです。 ネット対戦? 実は、GBA体にインターネットに接続する機能はありません。 最近はスマホやゲーム機がもれなくインターネットと接続して情報をやりとりする時代ですが、GBAが発売されたのは2001年なのでインターネット接続機能はありませんでした。 なので先ほど述べた通信対戦も、2台のGBA同士を有線の

    ロックマンエグゼで快適なネット対戦ができるようになるかもしれない話
  • ブラウザレンダリングの仕組み

    フロントエンド用語を100秒で解説するチャンネルを作りました! よかったらチェックしてみてください! はじめに 以前書いた記事「Webページがブラウザに表示されるまでに何が起こるのか?」で ブラウザレンダリングについて詳細に知りたいという意見をいただいたので、調べてまとめてみました。 全体図 レンダリングの大まかな流れです。 HTMLのダウンロード サーバから送られてきたHTMLをダウンロードします。 HTMLの解析 サーバから送られてきたHTMLファイルは、「0」と「1」でできたデータになっています。 ブラウザは、サーバから受け取ったデータをそのままHTMLとして解釈することはできないので、自分で扱うことができる形、つまりDOMに変換する必要があります。この作業を 解析 ( Parse ) と言います。 HTMLをダウンロードしたら、すぐにこの解析作業に入ります。作業は以下のようなステッ

    ブラウザレンダリングの仕組み
  • Reactを自作しよう

    この記事は Build your own React を翻訳したものです。 Reactを1から書き直していきます。 実際のReactコードのアーキテクチャに従いますが、最適化機能と必須ではない機能は今回は実装しません。 Step 1: createElement関数 Step 2: render関数 Step 3: 並列モード Step 4: ファイバー Step 5: Render Phase と Commit Phase Step 6: 差分検出 Step 7: 関数コンポーネント Step 8: Hooks Step 0 復習 最初にいくつかの基的な概念を確認しましょう。 React、JSX、およびDOM要素がどのように機能するかをすでに理解している場合は、この章はスキップしても構いません。 今回は、次のわずか3行のコードをReactアプリの例として使用します。 const ele

    Reactを自作しよう
  • 1