オブジェクト指向言語論 第十四回 知能情報学部 新田直也 テトリスの開発 Swingを使用 開発期間:9時間40分 コード行数:903行 http://silverbullet.is.konan-u.ac.jp/ lectures/ProgrammingLanguage/tetris.html 開発の様子 プログラミング能力 の個人差 プログラミング能力の差は大きい. 最優秀者は最低者の約10倍! 最優秀者は平均作業者の約2.5倍! 上位半分の平均値は下位半分の平均値の2倍 以上! 何が違うのか? 知識を十分に持っている. 必要以上に考え込まない. → まず動かして試してみる. 作業に取り掛かる前によく考える. → きちんと設計してからプログラミング. テトリス開発の流れ 9時間40分の作業の内訳 最初の実行 設計 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% テトリス開発の流れ 9時間40分の作業の内訳 設計 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% テトリス開発の流れ 9時間40分の作業の内訳 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% テトリスの完成 何が違うのか? 作り始めて20分後に動かしている →まず動かして試す. 1時間24分かけて設計している. →設計してからプログラミング. ソフトウェアの設計とは? 後の作業をやり易くするためのもの. 巨大なソフトウェアの開発では,プロジェクト の成否を決める. ソフトウェアの品質も左右する. 技術者の経験と勘に頼っている. テトリスの設計(1) 画面の構成物にどのようなものがあるか? Block: Tetromino: PiledBlocks: テトリスの設計(2) 構成物を適切に分類する Model Movable Tetromino PiledBlocks テトリスの設計(2) 講義で話せなかったこと プログラム理論: コンパイラやインタプリタの内部処理: 最適化 構文解析 ガベージコレクション 他のプログラミングパラダイム: 型理論 意味論 計算モデル 関数型プログラミング(特にLisp) アスペクト指向 開発手法:(後期のソフトウェア工学で…) デザインパターン リファクタリング 参考文献,URL Java Eclipse http://www.uml.org/ デザインパターン: http://www.eclipse.org/ UML: http://java.sun.com/j2se/1.4.2/ja/download.html E.Gamma, R.Helm, R.Johnson, J.Vlissides著,本位田真一, 吉田和樹 訳:「オブジェクト指向における再利用のための デザインパターン 改訂版」, ソフトバンクパブリッシング. フレームワーク: R.Johnson, 中村宏明, 中山裕子,吉田和樹著: 「パターンとフレームワーク」, 共立出版 ソフトウェアテクノロジーシリーズ1. 講義を終えるに当たって… 日本のソフトウェア産業 2000年の日本のソフト ウェアの輸出額は輸入 額の100分の1程度. 1995~2000年の間の カスタムソフトの輸入の 伸びは約8倍(32%). 輸入元は米国89%, 欧州7%と続く. 中国,インドへのオフショ アリングの増加. 「ソフトウェア輸出入統計調査」 電子情報技術産業協会(2003) ソフトウェア産業の未来 ソフトウェアの高度化,大規模化 アプリケーション コンポーネント指向 ダウンサイジング アプリケーション アプリケーション アプリケーション 低級言語 高級言語 OS アジャイル ハードウェア ハードウェア OS フレームワーク ミドルウェア 高級言語 ビジネスモデリング ハードウェア SOA OS ハードウェア オープンソース 世界の潮流を読むこと!!
© Copyright 2024 ExpyDoc