Artwork

内容由iteration podcast, John Jacob, and JP Sio - Web Developers提供。所有播客内容(包括剧集、图形和播客描述)均由 iteration podcast, John Jacob, and JP Sio - Web Developers 或其播客平台合作伙伴直接上传和提供。如果您认为有人在未经您许可的情况下使用您的受版权保护的作品,您可以按照此处概述的流程进行操作https://zh.player.fm/legal
Player FM -播客应用
使用Player FM应用程序离线!

The SPA Episode (Single Page Apps)

1:02:03
 
分享
 

Manage episode 280214951 series 1900125
内容由iteration podcast, John Jacob, and JP Sio - Web Developers提供。所有播客内容(包括剧集、图形和播客描述)均由 iteration podcast, John Jacob, and JP Sio - Web Developers 或其播客平台合作伙伴直接上传和提供。如果您认为有人在未经您许可的情况下使用您的受版权保护的作品,您可以按照此处概述的流程进行操作https://zh.player.fm/legal

John: Welcome to Iteration, a podcast about programming, development, and design.

  • John Intro — My name is John and I am a software developer for a home services startup.
  • JP Intro — Hi, I'm JP and I am a software developer at a small analytics startup

https://macwright.com/2020/05/10/spa-fatigue.html

Topics / Guiding Questions

What's a SPA?

From the article

  1. The main UI is built & updated in JavaScript using React or something similar.
  2. The backend is an API that that application makes requests against.

The more techincal one:

https://developer.mozilla.org/en-US/docs/Glossary/SPA

An SPA (Single-page application) is a web app implementation that loads only a single web document, and then updates the body content of that single document via JavaScript APIs such as [XMLHttpRequest]() and Fetch when different content is to be shown.

This therefore allows users to use websites without loading whole new pages from the server, which can result in performance gains and a more dynamic experience, with some tradeoff disadvantages such as SEO, more effort required to maintain state, implement navigation, and do meaningful performance monitoring.

Why do developers choose SPAs?

Do end-users care about SPAs?

What SPAs have you worked on / maintained?

  • 0 —

When should you reach for a SPA?

  • That's the right use case: Desktop app to the web.
  • Breaks REST might be a good time to consider
  • Community

What's wrong with this SPA's?

Increased complexity — Development and deployment

  • Often times: 2 repositories, 2 languages or frameworks
    • (Rails + Vue)
    • (Node + Angular)
    • (Rails + React)

SEO + Speed — Have to do "Server Side Rendering"

  • This reminds me of the light switches for "Smart" light bulbs. You've increased the complexity by a factor of 10 to get the exact same results.

Maintainability? Stability?

If not a SPA then what? (Is this a different Episode?)

What's good about server rendered?

  • How much you get for free
  • Async fetching
  • State management
  • URL's just work
  • Strong Conventions
  • Stable minimal maintenance

What's bad about Server Rendered?

  • Page Reload
  • Can feel clunky
  • Less Reactive
  • Mobile App — Now what? SPA lays a stronger groundwork

What's good about SPA's

  • Benefits are for the user
  • Developer Ego's
  • Data foundations
  • Breaks CRUD
  • Community
  • Pushing technology forward is a good thing.

What's bad about SPA's

  • How much of a pain in the ass it is to Manage URL's
  • Complexity — Front end + Back end
  • Authentication
  • Image Upload
  • Multiple API endpoints for a single page
  • State is way harder in a SPA
  • Debugging

Closing Thoughts

  • SPA's are great when you are breaking "REST / CRUD"
  • SPA's are great when you need multiple consumers of the same data
  • This is highly personal, you gotta go with what you love.
  • WiFi

Picks

  continue reading

78集单集

Artwork

The SPA Episode (Single Page Apps)

iteration

113 subscribers

published

icon分享
 
Manage episode 280214951 series 1900125
内容由iteration podcast, John Jacob, and JP Sio - Web Developers提供。所有播客内容(包括剧集、图形和播客描述)均由 iteration podcast, John Jacob, and JP Sio - Web Developers 或其播客平台合作伙伴直接上传和提供。如果您认为有人在未经您许可的情况下使用您的受版权保护的作品,您可以按照此处概述的流程进行操作https://zh.player.fm/legal

John: Welcome to Iteration, a podcast about programming, development, and design.

  • John Intro — My name is John and I am a software developer for a home services startup.
  • JP Intro — Hi, I'm JP and I am a software developer at a small analytics startup

https://macwright.com/2020/05/10/spa-fatigue.html

Topics / Guiding Questions

What's a SPA?

From the article

  1. The main UI is built & updated in JavaScript using React or something similar.
  2. The backend is an API that that application makes requests against.

The more techincal one:

https://developer.mozilla.org/en-US/docs/Glossary/SPA

An SPA (Single-page application) is a web app implementation that loads only a single web document, and then updates the body content of that single document via JavaScript APIs such as [XMLHttpRequest]() and Fetch when different content is to be shown.

This therefore allows users to use websites without loading whole new pages from the server, which can result in performance gains and a more dynamic experience, with some tradeoff disadvantages such as SEO, more effort required to maintain state, implement navigation, and do meaningful performance monitoring.

Why do developers choose SPAs?

Do end-users care about SPAs?

What SPAs have you worked on / maintained?

  • 0 —

When should you reach for a SPA?

  • That's the right use case: Desktop app to the web.
  • Breaks REST might be a good time to consider
  • Community

What's wrong with this SPA's?

Increased complexity — Development and deployment

  • Often times: 2 repositories, 2 languages or frameworks
    • (Rails + Vue)
    • (Node + Angular)
    • (Rails + React)

SEO + Speed — Have to do "Server Side Rendering"

  • This reminds me of the light switches for "Smart" light bulbs. You've increased the complexity by a factor of 10 to get the exact same results.

Maintainability? Stability?

If not a SPA then what? (Is this a different Episode?)

What's good about server rendered?

  • How much you get for free
  • Async fetching
  • State management
  • URL's just work
  • Strong Conventions
  • Stable minimal maintenance

What's bad about Server Rendered?

  • Page Reload
  • Can feel clunky
  • Less Reactive
  • Mobile App — Now what? SPA lays a stronger groundwork

What's good about SPA's

  • Benefits are for the user
  • Developer Ego's
  • Data foundations
  • Breaks CRUD
  • Community
  • Pushing technology forward is a good thing.

What's bad about SPA's

  • How much of a pain in the ass it is to Manage URL's
  • Complexity — Front end + Back end
  • Authentication
  • Image Upload
  • Multiple API endpoints for a single page
  • State is way harder in a SPA
  • Debugging

Closing Thoughts

  • SPA's are great when you are breaking "REST / CRUD"
  • SPA's are great when you need multiple consumers of the same data
  • This is highly personal, you gotta go with what you love.
  • WiFi

Picks

  continue reading

78集单集

Todos los episodios

×
 
Loading …

欢迎使用Player FM

Player FM正在网上搜索高质量的播客,以便您现在享受。它是最好的播客应用程序,适用于安卓、iPhone和网络。注册以跨设备同步订阅。

 

快速参考指南