Skip to content

day12 #195

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

day12 #195

wants to merge 2 commits into from

Conversation

sakupi01
Copy link
Owner

@Jxck
Day12 の記事を執筆しました。お手隙でレビューいただけると幸いです!

Copy link

vercel bot commented Jul 28, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
blog.sakupi01.com ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 29, 2025 11:43am
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
git-kusa ⬜️ Skipped (Inspect) Jul 29, 2025 11:43am

Copy link

cloudflare-workers-and-pages bot commented Jul 28, 2025

Deploying studiosakupi01com with  Cloudflare Pages  Cloudflare Pages

Latest commit: 0ee39fd
Status: ✅  Deploy successful!
Preview URL: https://bb817b4b.studiosakupi01com.pages.dev
Branch Preview URL: https://feat-2025-advent-12.studiosakupi01com.pages.dev

View logs

Copy link

@Jxck Jxck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CSS の話どこいった感はある。
これで単に「SPA での CSS の扱い」を話したいだけなら、まあ無くてもいきなり SPA/MPA で説明しても良さそうな気もする。
まあ書きたいなら止めないが、書きたかっただけ感はちょっと感じた(みんな Ajax とか Web の起源とか触れがち)


モバイルデバイスの登場により影響を受けたのは、Web のユーザへの適応能力だけではありません。

モバイルの普及はネイティブアプリの普及を産み、ネイティブアプリの普及は Web 自体に大きな打撃を与えることになりました。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

こういう風に、先に「大きな打撃を与えた」みたいに断言しがちだけど、それ結構主観だし、書き方の結論ありき感が強いと思うんだよな。前置きなく「今の政治は腐ってる」で始める演説みたいな。

それより、「モバイルの登場は、〜が〜で、それにより Web の〜な部分を強調する結果となりました。これは Web にっとて大打撃でした/とみなすことができます。」みたいな組み立ての方がいい様に思う。

モバイルデバイスの登場により影響を受けたのは、Web のユーザへの適応能力だけではありません。

モバイルの普及はネイティブアプリの普及を産み、ネイティブアプリの普及は Web 自体に大きな打撃を与えることになりました。
ネイティブアプリの詳細な特長は割愛しますが、ネイティブ特有の機能を組み込めたり、デバイスにダウンロードして利用できるが故のメリットがあり、とにかく、「アプリ」という側面における Web の「弱み」が露見してくるようになりました。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

この話する上で特徴は割愛しちゃだめそう。
単に、ネイティブ機能にアクセスできるとか、オフラインでも使えるとか、今回の比較で取り上げる機能くらいはざっくり列挙しても大したリストにならないだろうし。


これに対して、Web は対応を急ぐ必要がありました。

この時期にブラウザエンジンを最適化したり、Service Workers や Web App Manifest が提案されて PWA の発展が渇望されたりしたのは、プラットフォーム側の対応の代表的な例です。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

今になると、本当に渇望してたんだっけ?その割にとんと話を聞かなくなったぞ。。感が強い。

Web にもそういう機能がないと、 App に見劣りして市場が離れちゃうんじゃないかという「危機感」は、(主に G に)あったとは思う。


この時期にブラウザエンジンを最適化したり、Service Workers や Web App Manifest が提案されて PWA の発展が渇望されたりしたのは、プラットフォーム側の対応の代表的な例です。

対して、SPA エコシステムの拡大は、「Web アプリの体験・開発容易性向上」という点において、Web エコシステムが出した「対ネイティブアプリの解決策」の一つと言えるでしょう。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ネイティブの対抗馬を PWA にするのはまだわかるが、PSA の流れは iPhone より前から始まってた気はするなぁ。Ajax の潮流から、連続的な発展の先にあるとは思うし。


## HTML per Request

SPA 以前の Web アプリケーションは、SPA との対比で、いわゆる「Multi-Page Application (MPA)」と表現することにします。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

「表現することにします」だとここで生み出された表現みたいだけど、一般表現だから「〜と表現します」でよい。


SPA 以前の Web アプリケーションは、SPA との対比で、いわゆる「Multi-Page Application (MPA)」と表現することにします。

MPA では、ページ遷移を基本としたアプリケーションを設計でした。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

を設計 -> の設計


- ページ遷移時に一瞬現れる「白い画面」(ホワイトフラッシュ)
- フォーム入力中のページ更新による入力内容の消失
- 画面の一部だけを更新したい場合でも、全体を再描画する必要がある
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

体言止めするなら揃える

- ページ遷移時に一瞬現れる「白い画面」(ホワイトフラッシュ)
- フォーム入力中のページ更新による入力内容の消失
- 画面の一部だけを更新したい場合でも、全体を再描画する必要がある
- ネットワークが遅い環境では、描画のたびに長いレイテンシが発生
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

レイテシ「の」

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

体言止めに揃えるなら

ネットワークが遅い環境で描画のたびに発生するレイテシ
とか

デスクトップアプリのみならず、モバイルの登場と普及により、ネイティブアプリの体験が一気に広まり、ユーザはもちろん Web アプリにも同様の体験を求めるようになりました。
「リンクされたドキュメント」として始まった Web に対して、次第に「アプリケーション」としての期待が高まり、その結果、MPA のデメリットが露呈してきました。

そんな中 2004年に登場した Gmail は、Web の「アプリケーション」としての可能性を大きく前進させるものとなります。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

iPhone が 2007 とかなのに、遡った対抗馬を出してくるのやっぱり時系列が変だな。

2005年、Jesse James Garrett が「[Ajax: A New Approach to Web Applications](https://designftw.mit.edu/lectures/apis/ajax_adaptive_path.pdf)」という Ajax の概説を発表し、Ajax という用語が広まりました。

Ajax は全く新しい”技術”ではなく、既存の Web 標準技術の組み合わせからなる”手法”です。
Ajax は「DOMの部分更新」「非同期通信」「リアルタイム性」という、これまでになかったパターンを実現可能にするものでした。
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

このパターンを提唱したんじゃなくて、もうすでに世にあるそのパターンに、名前を付けたのがこのブログの功績なんだけど、まあ細かいからいいか。

@sakupi01 sakupi01 force-pushed the feat/2025-advent-12 branch from 413fbc7 to 0ee39fd Compare July 29, 2025 11:41
@vercel vercel bot temporarily deployed to Preview – git-kusa July 29, 2025 11:41 Inactive
@sakupi01
Copy link
Owner Author

@Jxck レビューありがとうございます!修正しました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants