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
Qt でウェブサービスを作ろう
Search
Tasuku Suzuki
July 12, 2013
Programming
8.4k
0
Share
Qt でウェブサービスを作ろう
シンプルで強力なウェブフレームワーク Silk の紹介です。
Tasuku Suzuki
July 12, 2013
More Decks by Tasuku Suzuki
See All by Tasuku Suzuki
Slint_の紹介.pdf
tasuku
0
82
CES_2017_Demo_-_lessons_learned_and_Qt_Compositor_Overview.pdf
tasuku
0
130
開会の挨拶
tasuku
0
3.5k
地味に便利な Qt の ◯◯
tasuku
0
9.7k
Qt ではじめるクロスプラットフォームアプリケーション開発 2015/Spring
tasuku
0
1.6k
Qt ではじめるクロスプラットフォームアプリケーション開発
tasuku
0
1.1k
Qt talk at Ubuntu 14.04 Release Party
tasuku
0
2k
Qtではじめるクロスプラットフォームアプリケーション開発
tasuku
0
3.3k
Qt 5 / ONE FRAMEWORK TO RULE THEM ALL
tasuku
0
170
Other Decks in Programming
See All in Programming
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
210
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.5k
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
890
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
22
11k
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
320
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
330
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
920
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
280
アーキテクチャモダナイゼーションとは何か
nwiizo
17
5.1k
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
120
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6.5k
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
1
300
Featured
See All Featured
Believing is Seeing
oripsolob
1
110
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
How to train your dragon (web standard)
notwaldorf
97
6.6k
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
KATA
mclloyd
PRO
35
15k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
For a Future-Friendly Web
brad_frost
183
10k
We Are The Robots
honzajavorek
0
210
Game over? The fight for quality and originality in the time of robots
wayneb77
1
160
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
570
Designing Powerful Visuals for Engaging Learning
tmiket
1
340
Transcript
Qt でウェブサービスを作ろう 2013/07/13 名古屋Qt勉強会#9 Tasuku Suzuki
自己紹介 • 鈴木 佑 @task_jp – 北海道札幌市出身 – 東京都墨田区在住 –
趣味:プログラム書くこと – 職業:今はプログラマー • 株式会社 PTP では Qt エンジニアを募集しています!
時代はウェブサービス • 勝手なイメージ – なんか楽しそう – なんか一発当てられそう – なんかモテそう –
なんか有名になれそう • よし、ウェブサービス作れる人になろう!
なにをつくるの? • 公式ウェブサイト – PC/Tablet/Mobile – 開発者向け API • 公式クライアント
– iOS/Android – Windows/Mac
どうやってつくるの? • サーバーサイド – Java? Ruby? PHP? Perl? Python? JavaScript?
– HTML5? XML? JSON? WebSocket? • クライアントサイド – HTML5? Cocoa? Java?? .NET? GTK+3? – Sencha? Titanium? PhoneGap?
めんどくさいのでこうならんか? • サーバーサイド – Qt • クライアントサイド – Qt
クライアントサイドは余裕 • デスクトップは得意分野 – Windows/Mac/Linux • 年末にリリースの Qt 5.2 –
iOS &Android に正式対応予定 • その他 – Blackberry も Ubuntu Touch も Qt 動く
問題はサーバーサイド • C++ で書きたくない • Qt はオーバースペック? • そもそもウェブ用のフレームワークじゃないし •
• 色々問題はありますが…
Qt のウェブフレームワーク作った • Silk: http://silk.qtquick.me/ – もちろんこのサイトは Silk で動いています
色んな機能に対応 • HTML, CSS • XML, JSON • WebSocket •
GET/POST • Cookie • Database(optional) • SMTP • OAuth 1.x • Bootstrap 2.3 • Process 呼び出し • Background タスク • 細かい機能も色々
1分クッキング • http://instantserver.io/ でサーバーを立てる – 35分だけUbuntu無料サーバーが立ち上がる • Silk のバイナリをダウンロードして実行する $
wget http://db.tt/iS9S3be3 -O silk.tar.gz $ tar xf silk.tar.gz $ ./silk/bin/silk
ウェブサービスを作ってみた • http://tweet2pocket.com/ – 「あとで」「後で」で始まる自分のつぶやきを、自 動で Pocket に保存する簡単なサービス
構成図 Silk UI(QML 700行強) Daemon(QML 100行弱) HTML/CSS Twitter pocket
デモ
TODO: tweet2pocket.com • 再起動したら認証情報がすべて消える • 複数端末からのログインに未対応
TODO: Silk • 改名 〜 素敵なプロジェクト名募集中 • ユーザー登録/認証/認可の仕組み – OAuth
2 サーバー? – ActiveDirectory/LDAP 対応? • その他色々な機能 • スケーラビリティ
素敵なウェブサービス作ってよ! • 早希がAmazonの新商品をお知らせ on Silk • Jenkins とか Gerrit のクローンとか
• http://qtquick.me/ • http://qt5.jp/ • フィードバックも募集しています!
協力者募集中! • 様々な機能の実装 • ドキュメント • テスト • セキュリティ •
宣伝! • @task_jp までお気軽にお声掛けください