Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PWAで誰でも簡単ネイティブアプリ開発
Search
NakanishiTetsuhiro
April 28, 2018
Technology
0
2.1k
PWAで誰でも簡単ネイティブアプリ開発
Used in JavaScript MeetUp Okinawa Vol.3
NakanishiTetsuhiro
April 28, 2018
Tweet
Share
More Decks by NakanishiTetsuhiro
See All by NakanishiTetsuhiro
コメントの書き方から見る 良いコードについての考察
nakanishitetsuhiro
0
630
SelfIntroduction
nakanishitetsuhiro
0
49
Laravelで設計する際の ベストプラクティスを探る
nakanishitetsuhiro
0
2.2k
MackerelでECS on Fargate 監視してみた
nakanishitetsuhiro
0
880
WebエンジニアによるWebエンジニアのための今だからこそおすすめしたいLinux環境
nakanishitetsuhiro
1
96
本番環境をECSで構築した話
nakanishitetsuhiro
0
900
Laravel5でjobque実装した話
nakanishitetsuhiro
0
100
Laravel5でJob_Queue実装した話_v1.0.1
nakanishitetsuhiro
1
55
社会人による社会人のための友達づくりのすゝめ
nakanishitetsuhiro
0
50
Other Decks in Technology
See All in Technology
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
750
今だから言えるセキュリティLT_Wordpress5.7.2未満を一斉アップデートせよ
cuebic9bic
2
180
P2P通信の標準化 WebRTCを知ろう
faithandbrave
5
1.7k
サービスを止めるな! DDoS攻撃へのスマートな備えと最前線の事例
coconala_engineer
1
200
振り返りTransit Gateway ~VPCをいい感じでつなげるために~
masakiokuda
4
220
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
18k
[SRE NEXT] ARR150億円_エンジニア140名_27チーム_17プロダクトから始めるSLO.pdf
satos
5
3.3k
RapidPen: AIエージェントによる高度なペネトレーションテスト自動化の研究開発
laysakura
1
310
安定した基盤システムのためのライブラリ選定
kakehashi
PRO
3
140
スプリントレビューを効果的にするために
miholovesq
1
110
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
20
7.7k
TROCCO今昔
gtnao
0
130
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Writing Fast Ruby
sferik
628
62k
Being A Developer After 40
akosma
90
590k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
108
19k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Transcript
PWAで誰でも簡単ネイティブアプリ開発!
自己紹介 中西哲大(テツさん、てっちゃん) 株式会社Re:Build Webエンジニア リモートワーク歴1ヶ月 好き:Python, Go, Linux, Laravel, Vue.js
音楽好き(ギター弾くのと歌うの好き) PyData.Okinawaオーガナイザー
PWAとは? Progressive Web App の略 基本的には全画面表示のブラウザってイメージ バックグラウンドでService Workerが常駐している HTML +
CSS + JSでアプリ開発できる
PWAとは? モバイルのSafariやChromeからホーム画面に追加するだけでインス トール完了 Service Workerの機能を利用するのでブラウザがService Workerに 対応している必要あり HTTPS必須 (GitHubPagesで公開可能!)
Service Workerとは リッチなオフライン体験、定期的なバックグラウンド同期、プッシ ュ通知など、これまでネイティブアプリを必要としていた機能が Web にもやってきます。Service Worker はそれらの機能を提供す る基盤技術です。
Service Workerのおおまかなライフサイクル
AppCacheっていう似た機能が昔あった 以前にも、オフライン体験を Web にもたらすものとして AppCache というものがあった AppCache の重大な問題として、たくさんの意図しない挙動があっ たこと、シングルページ Web
アプリにはうまく動いてくれたもの の、複数のページにまたがるサイトではうまく動いてくれないとい う設計・・・ Service Worker はこれらの弱点を避けるように設計されている 「Service Worker の紹介」https://developers.google.com/web/fundamentals/primers/service‑ workers/?hl=ja より引用
ServiceWorker対応状況
PWAはWebアプリとネイティブアプリのいい とこどり! 端末がオンラインのときのみ指定したファイルをアップデート オフラインのときはキャッシュされたファイルをもとに起動 Webエンジニアも簡単に実装できる! AppStoreやGooglePlayの審査がいらない!
iOSの11.3からのPWA対応でできるようになったこと (https://medium.com/@takeshiamano/iosの11‑3からのpwa対応ででき るようになったこと‑313f638a172b)
PWA、いいんじゃないでしょうか!(´ω`)
今日の目標 1. GitHubPagesでPWAを公開 2. 色々なPWAをインストールして遊んでみる(時間があれば)
サイトをPWA化するのに必要なもの ファイル名 目的 manifest.json PWAに関する設定を記述するところ sw.js ServiceWorkerに関する処理をかくところ
None
https://github.com/NakanishiTetsuhiro/redroom2018 https://nakanishitetsuhiro.github.io/redroom2018/
それでは実際のコードを見ていきましょう
シンプルなPWAサンプルここに置いておきますね (https://qiita.com/kazaoki/items/e93b88556fcd05d28ddc)
PWAが色々おいてあります PROGRESSIVE WEB APPS
PWAに対応しているWebサービス(一部) Twitter Instaglam SUUMO WEGO
ご清聴ありがとうございました! あとでどこかに資料アップするので詳しく見たい方はどうぞ
参考サイト シンプルなPWAサンプルここに置いておきますね (https://qiita.com/kazaoki/items/e93b88556fcd05d28ddc) vue‑pwa‑boilerplate (https://qiita.com/radiocat/items/034904a094d07c389a4f#vue‑ pwa‑boilerplate) はじめてのプログレッシブ ウェブアプリ (https://codelabs.developers.google.com/codelabs/your‑first‑ pwapp‑ja/#0)