目次
- ユーザインタフェース作成環境
- Twitter
- 情報ショートカット
- レポート課題
- システム中のユーザインタフェースの比率
- インタフェース作成の面倒さ
- インタフェース作成の面倒さ (cont'd)
- リアルタイム性
- 様々な要素技術
- アプリケーション部とインタフェース部の交錯
- AppとI/Fの分離
- 分離の困難さ
- 並列処理
- 並列処理 (cont'd)
- 例外処理
- エラー処理記述の面倒さ
- 柔軟性/頑強性
- ユーザ補助機能
- 評価/再設計の繰り返し
- 解決法1: UIMS
- UIMS = User Interface Management System
- Seeheimモデル
- UIMSの問題点
- 解決法2: UI記述言語
- Languages for Developing User Interfaces
- UI記述言語の問題点
- 解決法3: ツールキット
- 各種のグラフィックツールキット
- オブジェクト指向ツールキット
- 例: NeXTstepのプログラム
- UIツールキットの問題点
- UIツールキットの問題点 (cont'd)
- 解決策4: 状態遷移プログラミング
- 状態遷移機械の問題点
- 拡張状態遷移機械単純な状態遷移機械を拡張したモデル
- 状態遷移プログラミング
- 状態遷移プログラミング例
- 変換後のソース
- 解決策5: 並列プログラミング
- 並列処理はUIプログラミングに非常に重要
- ツールキットの並列動作
- 並列プログラミングの問題点
- 解決法6: インターフェースビルダ
- インターフェースビルダ
- NeXTのインタフェースビルダ
- Xcodeのインタフェースビルダ
- インターフェースビルダの問題点
- 解決法7: 制約プログラミング
- 参考: Cinderella
- Ivan SutherlandのSketchpad
- 制約システムの問題点
- 解決法8: 例示プログラミング
- Viscuit
- 例示システムの問題点
- どうするのがよいか?
- 工夫のいろいろ
- From scratch, 小規模システムの場合
- From scratch, 大規模システムの場合
- ウィンドウシステムの場合
- プロトタイプシステムをとりあえず動かす場合
- プロトタイプシステムを作る
- 結局何を使うといいの?
- Abstract01
- Processing
- Processing視覚化本
- Built with Processing
- Processingの入手
- 線を描く
- 四角を描く
- 円を描く
- 色の指定
- 文字を描く
- 繰り返しなど
- setup()とdraw()
- マウス位置取得
- マウス操作取得
- 関数/変数リファレンス
- Webで公開
- Canvas
- Canvasの特徴
- Canvasの描画
- line.html
- rect.html
- circle.html
- bezier.html
- Processing.js
- Processing.jsの利用
- Prrocessing.js利用例
- まとめ
- End