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
なぜModdableで作るのか(あるWeb屋さんの場合)
Search
Shinya Ishikawa
December 11, 2019
Programming
0
130
なぜModdableで作るのか(あるWeb屋さんの場合)
TC53セミナーの発表資料です。
Shinya Ishikawa
December 11, 2019
Tweet
Share
More Decks by Shinya Ishikawa
See All by Shinya Ishikawa
Moddableで始めるJavaScript×IoT開発
meganetaaan
0
170
Other Decks in Programming
See All in Programming
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
140
CSC307 Lecture 08
javiergs
PRO
0
670
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
230
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.5k
CSC307 Lecture 07
javiergs
PRO
1
560
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
4k
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
750
並行開発のためのコードレビュー
miyukiw
0
1.2k
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
210
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.4k
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
280
CSC307 Lecture 10
javiergs
PRO
1
660
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1371
200k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Raft: Consensus for Rubyists
vanstee
141
7.3k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
460
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
How to Ace a Technical Interview
jacobian
281
24k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
Code Reviewing Like a Champion
maltzj
527
40k
Navigating Team Friction
lara
192
16k
Transcript
なぜModdableで 作るのか (あるWeb屋さんの場合) 石川 真也 Why I make with Moddable -
from a web developer’s perspective
自己紹介 石川 真也( @meganetaaan) 組み込み開発を始めたい Web開発者 SIerでWebフロントエンド開発 →ModdableとM5Stackを使って趣味Maker活動 →ロボット屋さんでUI/UX開発 Self introduction
Moddableはいいぞ! Moddable is AWESOME! お伝えしたいこと
Moddableは Web開発者にいいぞ! Moddable is AWESOME for web developers! お伝えしたいこと IoTプロダクトを作りたいWeb企業
スマート機器を作りたいメーカーに朗報!
なぜModdableで作るのか? 1) UI開発を強力にサポート 2) 最新のECMAScriptに対応 Web開発者が簡単に習得できて、効率よく開発できるから Why I make with
moddable
1) UI開発を強力にサポート 1)Strong support for UI development
公式UIフレームワークpiu • モダンなUI構築のための機能が全部入り • 高速・省メモリなメディア処理機能 ☑文字 ☑画像 ☑音声 ☑アニメーション/トランジション •
UI開発の生産性を高める設計 ☑レスポンシブデザイン ☑コンポーネント指向によるUIプログラミング https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/piu/piu.md Piu, the official UI framework of Moddable
デモ1: bongo cat https://github.com/meganetaaan/moddable-examples
None
デモ2: Twitter クライアント https://github.com/meganetaaan/moddable-examples
None
メディア処理…☑文字 • ビットマップフォントを表示できる ◦ 日本語フォントに対応 ◦ 使用する文字のみフォント化して容量節約 https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/piu/piu.md Media processing
… ☑Text
メディア処理…☑画像 • 様々な形式の画像を統一されたI/Fで表示できる ◦ bmp, jpeg, png, gif(アニメーション含) ◦ アルファチャンネル付き画像
https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/piu/piu.md Media processing … ☑Image
設計…☑レスポンシブデザイン • 複数のディスプレイサイズに対応したUIを作れる https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/piu/piu.md 240x320 320x480 Design … ☑Responsive UI
設計…☑コンポーネント指向 • UIを再利用可能なコンポーネントとして設計する手法 • コンポーネントを階層的に並べてUIを組み立てる https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/piu/piu.md Application Header Body Icon
Title PageCount Tweet User Content Impression Design … ☑Component oriented
☑他にも色々 • アニメーション/トランジション • タッチ/ドラッグ操作 • 画面のスクロール • ローカリゼーション(多言語対応) https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/piu/piu.md
☑So many other advantages
WebのUIを開発する感覚で 組み込みの画面ができる ポイント 20 days training 10 days implementation \
AW YEAH… / Can develop embedded screens feeling like Web UI
2) 最新のECMAScriptに対応 2)Comformance for latest ECMAScript
最新のECMAScriptに対応 • ECMAScript2018 に99%準拠 ◦ RegExp ◦ Promise、async/await ◦ クラスとprivateフィールド
◦ BigInt • 標準→実装のみならず、実装→標準としてproposalも ◦ TC53 https://github.com/wingsuitist/ecmascript-logo Conformance for the latest ECMAScripot
「最新の」ECMAScriptで書く利点 • 広く使われている:技術者の調達容易性↑ ◦ Web開発者の87%がECMAScript2015以上での開発を経験 • 様々な開発支援ツールが使える:生産性↑ ◦ エディタ(VisualStudio Code)
◦ 型システム(TypeScript) ◦ Lint ツール/ フォーマッタ(ESLint/Prettier) ◦ パッケージ管理(npm) ※ ※https://2018.stateofjs.com/javascript-flavors/es6 Advantage of using the latest ECMAScripot
デモ3:開発のようす(Lチカ) Live coding of “LED ticker”
型システム • TypeScript ◦ JavaScriptに型システムを追加した代 替言語 ▪ ビルド時にJavaScriptに変換する ◦ プロパティ名や値の間違いに早く
気づける ◦ VisualStudio Code等のエディタと 組み合わせて型の補完が効く https://github.com/meganetaaan/moddable-boilerplate Type system
Lintツール/フォーマッタ • ESLint ◦ 文法チェックツール ◦ JavaScriptのベストプラクティス (よい書き方)を強制 • Prettier
◦ インデント等の自動修正 https://github.com/meganetaaan/moddable-boilerplate Linter / Formatter
パッケージ管理 • npm ◦ JavaScriptのパッケージ管 理システム ◦ 前述の各ツールのインス トールと実行を管理 ◦
簡単なタスクランナーも兼 ねる $npm run deploy:m5stack →TypeScriptの変換、ビルド、書き込みを一挙に行う 注意:Web向けのnpmライブラリは基本的に使用不可 • ブラウザAPIが使われている • メモリを潤沢に使える前提がある https://github.com/meganetaaan/moddable-boilerplate Package manager
標準に準拠している →Webエコシステムの 資産を活用できる ポイント Belong the Web standard -> Take
benefit of the Web ecosystem
まとめ:なぜModdableで作るのか? 1) UI開発を強力にサポート モダンな設計手法と強力なメディア処理でWeb UIのように画面を作り込める 2) 最新のECMAScriptに対応 標準に準拠しているからWebエコシステムの資産を活用できる 「実践Moddable」booth.pmにて頒布中! https://hokunan-shobo.booth.pm/items/1574940
Web開発者が簡単に習得できて、効率よく開発できるから Conclusion