$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ionic V3 ー> V5 アップデートのツラミ / The pain of Ionic u...
Search
acnaman
May 20, 2020
Programming
1
760
Ionic V3 ー> V5 アップデートのツラミ / The pain of Ionic update
2020-05-20 PWA Night vol.16 ~オンラインLT大会!~ 発表資料
acnaman
May 20, 2020
Tweet
Share
More Decks by acnaman
See All by acnaman
問いのデザイン2章 / "The Design of Questions" Chapter 2
acnaman
0
870
ABDで勉強会したらそれがチームビルディングになった話 / ABD is one of team-building method
acnaman
1
550
違和感 それはカイゼンのチャンス / Discomfort is an opportunity for Kaizen.
acnaman
0
570
オンライン登壇で意識したいこと / What online speakers should be aware of
acnaman
0
130
元読書嫌いが読書会を始めるまでの歩み
acnaman
0
230
カイゼンを始めて変わったこと
acnaman
1
1.5k
Other Decks in Programming
See All in Programming
Basic Architectures
denyspoltorak
0
120
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
370
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
360
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
590
チームをチームにするEM
hitode909
0
370
AIコーディングエージェント(Gemini)
kondai24
0
270
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
140
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
780
Vibe codingでおすすめの言語と開発手法
uyuki234
0
110
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
630
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
130
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
280
Featured
See All Featured
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
26
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
130
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
44
The agentic SEO stack - context over prompts
schlessera
0
560
Between Models and Reality
mayunak
0
150
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Being A Developer After 40
akosma
91
590k
Deep Space Network (abreviated)
tonyrice
0
21
Building Applications with DynamoDB
mza
96
6.8k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
90
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
60
37k
Transcript
Ionic V3 ー> V5 アップデートの ツラミ 2020/5/20 PWA Night 加藤翼 @acnaman
自己紹介 • 加藤翼 • インフォテック株式会社 新規事業T プログラマー • GitHub : acnaman
• Twitter : acnaman_dev • コミュニティ運営メンバー 2
おことわり • スライドはアップ済みです • 基本ツイート等OKですが、1スライドの みダメなやつがあります →該当スライドのときにアナウンスします • ハッシュタグは #pwanight
で! • お酒片手(or両手)にお聞きください 3
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 4
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 5
知ってる人〜? Twitterアンケートに反応もとむ! 6
Ionicとは • モバイル向けJavaScriptフレームワーク • PWAの作成 • iOS/Androidネイティブアプリへの変換 • TechFeedとかで使われてます 7
メジャーバージョンの変遷 V3 2019年1月 V4 V5 2020年1月 8
メジャーバージョンの変遷 V3 2019年1月 V4 V5 2020年1月 独自路線の単体 フレームワーク (Angularベース) 他フレームワークとの
連携が可能 ※Vue対応はbeta 9
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 10
Ionic V3で構築したPWA • 新規事業のプロトタイプ • モバイル利用を想定したPWA • Ionic + Firebase
• 新規事業のため詳細は非公開です 11
V3に限界がきた • TypeScriptのバージョンアップに追随 しない ◦ プロダクションビルド時のエラー ◦ Jestのエラー →V5出たしアップデートしよう! 12
npmで最新落とせば いけるっしょー > npm install ionic/angular@latest こんな感じ? アップデート舐めてたぼく 13
npmで最新落とせば いけるっしょー > npm install ionic/angular@latest こんな感じ? アップデート舐めてたぼく 14 否
メジャーバージョンの変遷 V3 2019年1月 V4 V5 2020年1月 独自路線の単体 フレームワーク (Angularライク) 他フレームワークとの
連携が可能 大アップデート 破壊的な変更 ※Vue対応はbeta 15
「破壊的変更」の説明資料 1962行分の 「破壊的変更」 @IonicのGitHub 16
公式の移行ガイド さらっと 「プロジェクト作り直せ」 って書いてある 17
つらすぎるので移行方法書いた 18
一部抜粋 19
CLIのバージョンアップ 新しいCLIをインストール パッケージ名すら変わっているという罠 20 V3 V5 CLIパッケージ名 ionic @ionic/cli
チェックツールを使う 「破壊的な変更」のチェックツール チェックツール:https://github.com/ionic-team/V4-migration-tslint 21 V3のソースファイル チェックツール レポートログ
ソースの移行方法 旧プロジェクト (チェックツール分修正済み) > ionic generate XXX 新プロジェクト 生成されたファイルに 中身をコピペする
新Ionic用の ファイルを生成 22 新プロジェクト作成+ionic generate →生成されたファイルに中身をコピペ
続きはQiitaで! https://qiita.com/acnaman/items/b44b09b1f0c0c341c081 23
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 24
ツラミ1:開発が止まる • ぼっち開発者 • アップデート作業中は機能追加ができ ない 25 機能 追加 アップ
デート
どうすべきだったか? • 機能が多くなる前にバージョンアップ すべきだった 26 対象ファイル少ない 対象ファイル多い
ツラミ2:重くなる • アプデ後の初期ロードが遅い ◦ ファイル数の増加 ▪ 79ファイル → 1122ファイル ◦
Angularの最適化できてない 27
どうすべきだったか? • Angularのチューニング ◦ service-workerでキャッシュ制御 ◦ Lazy Load 28 ただし頻繁に更新する時期だと
やりづらい 学習コスト高いの が悩み…
もちろん良かったことも • TypeScriptのエラーは消滅 • Angularの恩恵を受けられる ◦ V3はAngularの機能を使い切れない ◦ ドキュメント豊富 29
これから新しく作る場合はIonic V5で作りましょう
まとめ • IonicはPWAを作れるフレームワーク • V3→V4で大きなアップデートがあった • アップデート手順はQiitaにまとめた • アップデートしても全てが良くなるわ けではない(重くなるなど)
30