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
サーバサイドアプリケーションエンジニアのためのVue.js & UIkit
Search
Toshiki Ohnogi
January 15, 2020
Programming
3
3.5k
サーバサイドアプリケーションエンジニアのためのVue.js & UIkit
v-kansai #13 Lightning Talkの発表資料です。
Toshiki Ohnogi
January 15, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
PHPカンファレンス関西2025 基調講演
sugimotokei
6
1k
CIを整備してメンテナンスを生成AIに任せる
hazumirr
0
400
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
4
520
[Codecon - 2025] Como não odiar seus testes
camilacampos
0
100
フロントエンドのパフォーマンスチューニング
koukimiura
6
2.3k
Flutterと Vibe Coding で個人開発!
hyshu
1
180
商品比較サービス「マイベスト」における パーソナライズレコメンドの第一歩
ucchiii43
0
240
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.4k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
3
320
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
900
MCP連携で加速するAI駆動開発/mcp integration accelerates ai-driven-development
bpstudy
0
220
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
4
490
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Speed Design
sergeychernyshev
32
1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Writing Fast Ruby
sferik
628
62k
Documentation Writing (for coders)
carmenintech
73
4.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Transcript
SSAEのためのVue.js & UIKit v-kansai, 2020-01-14 Toshiki Ohnogi
自己紹介 基本情報 - 大野木俊樹(HN: Nogissh) - 神奈川県横浜市出身 - 2019年卒(新卒) 仕事
- 大阪の人材ベンチャー - アプリケーションエンジニア フィールド - サーバサイドアプリケーション - Web API - Domain Modeling - 離散最適化(凡人) - 機械学習(非DL) @nogissh
結論から言います
Vue.js & UIKitでの開発が爆速(体感) 有限時間下で複数のアプリケーションを構築可能 自主研究 賃貸管理システム (アルバイト) DJ支援 データ管理 Vue.js
(JavaScript Framework) UIKit (CSS Framework) &
ある1日の時間 この時間大切!
人生は短すぎる やりたいこと、やらないといけないこともたくさん サーバサイド アプリケーション サーバ管理 仕事 自学自習 余暇・睡眠 機械学習・最適化
フロントエンド (クライアント) バックエンド (サーバ) 領域の切り分け
ひとくちに「フロントエンド」といっても フロントエンド アプリケーション スタイル UXリサーチ 「人に魅せる」のは奥が深い... 不快の少なさ 見た目のよさ 親しみやすさ フロントエンドだけでも没入したくなる
サーバサイドエンジニアの活躍場所 サーバサイドアプリケーション フロントエンド アプリケーション モデリング 高速API アーキテクチャ 機械学習 外部連携 自動化
外界 こっちで 勝負したい
本質ではないことは早く済ませよう Vue.js (JavaScript Framework) UIKit (CSS Framework) & OOUI (OOP)
Component (OOP) SPA (ROA API) Component (OOP) サーバサイドプログラミングの知見を活かすことができます
実は全く領域の異なる「スタイル」 インフラストラクチャ サーバサイド アプリケーション スタイル リサーチ フロントエンド アプリケーション ユーザ寄り 本質的に異なる領域にも関わらず
どちらも手をつけて辛くなっていく 得意な領域で アウトプットを出すことが重要 UI・UX領域はそのあと
UIKitの紹介
UIKit: 高機能なモダンCSSフレームワーク <div class="container"> <div class="uk-card uk-card-default uk-card-body"> <h1 class="uk-text-lead">hello,
world</h1> <p>Sample text here.</p> <button class="uk-button uk-button-default uk-button-primary">Click!!</button> </div> </div> 記憶コストが低いことは爆速開発において重要 特徴 • パワフルなデフォルトのスタイル • 接頭辞の存在 ◦ 名前衝突の回避 ◦ 学習および記憶コストの軽減 uk-***-***
可視性の高いドキュメント
Vue.js & UIKitの簡単な紹介
導入しやすい組み合わせ Vue.js UIKit 導入のしやすさもピカイチ > npm install uikit
言わずもがな簡単なVue.js <template> <div> <p>hello, world</p> </div> </template> <script> export default
{ name: 'SampleComponent' } </script> 見慣れた光景 Vue.js
UIKitを適用する <template> <div class="uk-card uk-card-body"> <h1 class="uk-text-lead">Welcome</h1> <p>hello, world</p> </div>
</template> <script> import 'uikit/dist/css/uikit.css' export default { name: 'SampleComponent' } </script> UIKit classを追加するだけで立派な Card が完成
Modalもラクラク実装 <template> <div class="uk-container"> <div> <button class="uk-button uk-button-body" href="#sample-modal" uk-toggle
>Open</button> </div> <div id="sample-modal" uk-modal> <div class="uk-modal-dialog uk-modal-body"> <p>hello, world</p> <button @click="hide">Close</button> </div> </div> </div> </template> <script> import UIKit from 'uikit' import 'uikit/dist/css/uikit.css' export default { name: 'SampleModalComponent', methods: { hide: function () { UIKit.modal('#sample-modal').hide() } } } </script> Modal of UIKit
まとめ 本質に全力投球するためにはVue.jsとUIKitのタッグが強力! > npm install uikit 今すぐ install ! フロントエンジニアにもおすすめ!
社内ツール作って欲しい とりあえず ログイン画面が欲しい 体裁だけでも整えたい! パフォーマンスに集中できる! Object Oriented Clean Component
Thanks!!