Contenu connexe Plus de Hiroshi Oyamada (20) プログラミングについて深く知る1. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
プログラミングについて深く知る
株式会社パソナテック キャリアサポート部
小山田 浩
3. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
まずは歴史をふりかえる
• プログラミング言語と料理の両方の歴史を振り
返ると一定の系統が存在するようにみえる
料理
小麦文化
お米文化
プログラミング言語
C言語 Visual Basic
Haskell
※プログラミング言語の系統は別資料参照
4. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
系統から読み取れそうなこと
料理
小麦文化 お米文化
プログラミング言語
haskell
それぞれの文化(流儀)の違いを超えるのは大変!
C言語
Visual Basic
5. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
料理を厳密に考えると?
•調理方法
焼く/煮る/蒸す/茹でる
•食材
魚/肉/米/乾物/野菜
6. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
プログラミングの世界にあてはめると?
制御式、演算子、変数、配列、ハッシュ
ライブラリ
調理方法
食材
フレームワーク調理手順
8. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
制御式
• 料理の世界で様々な調理方法があるようにプロ
グラミングの世界でも調理方法に相当する制御
式は何種類か存在
• 代表的な制御式
条件分岐(if、caseなど)
繰り返し(for、whileなど)
• 最新の言語は少ない労力で同じ事が実現可能
9. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
Rubyのコードの例(1から5まで順番に表示)
for i in [1,2,3,4,5] do
puts i
end
[1,2,3,4,5].each do ¦i¦
puts i
end
(1..5).each {¦i¦ puts i}
C言語に馴染みがある人に
比較的わかりやすい書き方
Rubyの流儀にならった書
き方
Rubyの流儀にならった書
き方(単寿な処理ならこう
いうコードになりがち)
11. Copyright (C) 2008 Pasona Tech Inc. All Rights Reserved.
ライブラリのイメージ
ネットワーク関連
文字列処理
DB接続
画像処理
その他
Java
ネットワーク関連
文字列処理
DB接続
画像処理
その他
.NET
ネッ
文字列処理
DB
その他
Perl
ネット
文字列処理
DB
その他
Ruby
14. Copyright (C) 2007 Pasona Tech Inc. All Rights Reserved.
調理手順を考えると?
• 下準備
野菜:下ゆで、適当な大き
さに切る
肉:下味をつけておく
炊き込みご飯:出汁を取
る、コメを研ぐ
• 下準備をしておけば、あとは
いっきに調理が可能で効率が
良い
16. Copyright (C) 2008 Pasona Tech Inc. All Rights Reserved.
下準備が完璧でも出来ない事もある
下準備
和食のフルコースの調理イメージ
「洋風なデザート
が食べたい」
仕上げ 仕上げ 仕上げ 仕上げ 仕上げ
洋風な料理は
一から調理
17. Copyright (C) 2008 Pasona Tech Inc. All Rights Reserved.
フレームワークにあてはめると?
下準備
何かのフレームワーク
「xxな機能も追加
して欲しい」
仕上げ 仕上げ 仕上げ 仕上げ 仕上げ フレームワー
クで想定して
いないものは
一からプログ
ラミング