
Next.js はじめ方(feat. 地図サービス開発)
vroomfan
¥5,620
初級 / Next.js, SEO, vercel, ssr, ssg, csr
4.5
(47)
Next.jsの基本を扱う講座です。 Next.jsで地図サービスを最初から最後まで開発してみます。
初級
Next.js, SEO, vercel
実務で活用できるWeb APIを扱います。一度は必ず直面するであろう要件を解決するための武器を、ぜひ手に入れてください。
学習した受講者のレビュー
5.0
특별한 청어
よく使われるWeb APIを見て回ることができてよかったです。エッセンスだけが集められていますね!!気軽に聞ける良い講義です。最高 👍
5.0
망고
WEB APIについてより詳しく知ることができて良かったです。もう少し実務的な観点や例示のコードを見せていただけたら、もっと良かったと思います
5.0
Jang Jaehoon
良い講義をありがとうございます!
ブラウザでWeb APIが動作する仕組み
Web Workerで負荷を軽減する方法
異なるコンテキスト(window、tab、iframeなど)間で通信する方法
Timer, Animationをより正確に使用する方法
几帳面なFE開発者のためのWeb API
豊富なサンプルで分かりやすくスピーディーに理解!
FE開発を進める中で自然と触れることになるfetchやsetTimeoutだけでなく、Worker、MessageChannel、MutationObserverといった、別途学習が必要なAPIもあります。
一般的なFE機能の実装にとどまらず、タブの非アクティブ化への対応、異なるタブ間でのデータ転送、重複するサーバーリクエストの削減など、徹底したバグ対応や最適化のためにはWeb APIが不可欠です。
実務を進める中で、難しい要件の実装や、特殊なバグへの対応、パフォーマンスの最適化など、様々な問題をWeb APIで解決できることを知りました。
実務で直面しうる状況を反映した例を通じて、詳細な要件をWeb APIで実装する方法を学んでいただければ幸いです。
地図上でユーザーの移動動線を可視化する
時間情報が含まれた座標データに基づき、経過時間ごとに地図上に線を描画して移動経路を可視化する必要があります。データは以下の通りです。
[{ lng: 127.10, lat: 37.50, time: 1000ms }, { lng: 127.11, lat: 37.51, time: 1700ms }, { lng: 127.12, lat: 37.52, time: 2100ms }, ...]
setTimeout(drawLine, 1000); setTimeout(drawLine, 1700 - 1000); setTimeout(drawLine, 2100 - 1700); ... このように、それぞれの time に合わせて setTimeout を連続で呼び出せばよいでしょうか?
setTimeoutが意図通りに動作しない状況もありますか?ある場合、どのように対応すべきでしょうか?
複数タブのデータを同期する
タブAの投稿作成ページで新しい記事を作成したとき、タブBの投稿一覧ページでも作成した新しい記事がすぐに表示される必要があります。
タブAで新しい投稿を作成した際、その投稿の情報をタブBに渡し、タブBでこの値を使ってリストの状態(state)を更新すればよいでしょうか?{ type: 'newPost', title: 'title_1', author: 'author_1', ... }
タブAで新しい投稿が作成されたという通知をタブBに送り、タブBでその情報を受け取ったときに一覧取得APIを再実行すればよいでしょうか?
{ type: 'refetchPosts' }
それでは、異なるタブ間で上記のようなデータをやり取りする方法は何でしょうか?
Chromiumのコードを通じてWeb APIが動作する仕組みを理解
タブが非アクティブになった時のタイマーの動作と対応方法
Workerでメインスレッドの負荷を減らす
WebSocket接続を最小化してサーバー負荷を軽減する
異なるブラウジングコンテキスト間でデータを転送する
アニメーションをCSSではなくJSで制御する
実務のための追加のWeb API
ブラウザのソースコードを通じて、Web APIがJavaScriptの機能をどのように拡張するのか、ブラウザでどのように実装され動作しているのかを学習します。
タブが非アクティブになった際のsetTimeoutの挙動を確認し、タイマーを正確に実装する方法を学習します。
メインスレッドやサーバーに負荷が発生する状況を、Workerを利用して解決する方法を学習します。
異なるウィンドウ、異なるタブ、Shadow DOMといった隔離された状況での通信を可能にするWeb APIを学習します。
アニメーションを Web Animation API と requestAnimationFrame で制御する方法を学習します。
MutationObserver、requestIdleCallbackなど、実務のための追加のWeb APIレッスンがアップデートされます。
Q. 講座の難易度はどのくらいですか?
基本的なReactの文法、イベントループの概念、ウェブ関連の基礎知識は習得していることを前提に進められます。基礎知識さえあれば、新しいWeb APIはスムーズに付いていくことができます。授業資料の中で理解できないコードがあれば、お気軽に質問を残してください。
Q. 授業はどのような方式で進められますか?
セクションごとに新しい課題が提示されます。まず、その課題を基本的なJS/CSSで解決する方法を確認し、そのコードで発生する可能性のあるバグや例外状況を調べます。その後、問題をより確実に解決するためのWeb APIを紹介し、Web APIを使って目的の機能を実装します。
Q. 授業で使用する特別なライブラリはありますか?
JavaScript Web APIの講座であるため、別途ライブラリを学ぶ必要はありません。ただし、スムーズな授業進行のためにzod(TS validation)やws(ウェブソケット)などのライブラリがpackage.jsonに含まれています。
💾受講前の注意事項
Web、Javascript、Reactに関する基礎知識が必要です。
授業で使用された全ソースコードを提供します。授業ではコードを一行ずつ読み上げることはせず、授業の進行に必要な部分だけを読み上げるため、コードを一緒に確認することをおすすめします。
👨🎓 推奨される学習方法
提供される授業資料のコードと授業動画を一緒に見ながら受講されることをおすすめします。
セクションの最後に出題されるミッションは、ご自身で解いてみることをお勧めします。
学習対象は
誰でしょう?
実務でsetTimeout、fetch Web APIだけを使っている方
複雑な要件をWeb APIの概念で解決したい方
前提知識、
必要でしょうか?
React, Javascript 基本文法
npmの使い方
1,047
受講生
51
受講レビュー
87
回答
4.5
講座評価
2
講座
こんにちは。
スタートアップで5年間フロントエンドエンジニアとして働いています。
React、Next.js、地図、チャート、UIライブラリなどを扱っています。
全体
25件 ∙ (2時間 5分)
講座資料(こうぎしりょう):
1. Web APIとは
03:05
2. Web APIは魔法ではない
09:15
3. 授業方式の紹介
01:52
全体
4件
5.0
4件の受講レビュー
受講レビュー 938
∙
平均評価 4.9
受講レビュー 4
∙
平均評価 5.0
受講レビュー 52
∙
平均評価 4.7
受講レビュー 8
∙
平均評価 5.0
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!
新規会員登録で25%OFF
¥1,908
25%
¥2,538