本当のオブジェクト指向は可読性を上げる
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

本当のオブジェクト指向は可読性を上げる

on

  • 7,118 views

2014/7/28 PHP勉強会用の資料。

2014/7/28 PHP勉強会用の資料。

Statistics

Views

Total Views
7,118
Views on SlideShare
5,796
Embed Views
1,322

Actions

Likes
23
Downloads
8
Comments
0

20 Embeds 1,322

http://yoshiko.hatenablog.jp 492
http://www.engineyard.co.jp 468
https://twitter.com 188
http://blog.hyec.jp 129
http://feedly.com 7
http://127.0.0.1 7
http://www.slideee.com 6
https://6200091002875652065_ae350ce893cf8db5621e7ee696123fe9dcd2a43f.blogspot.com 5
http://digg.com 4
https://www.chatwork.com 3
http://s.deeeki.com 2
https://www.engineyard.co.jp 2
https://engineyard.co.jp 2
https://tweetdeck.twitter.com 1
https://www.inoreader.com 1
http://yoshiko.hatenablog.jphttp 1
http://0.0.0.0 1
http://localhost 1
http://www.google.co.jp 1
http://ec2-54-248-216-128.ap-northeast-1.compute.amazonaws.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

本当のオブジェクト指向は可読性を上げる Presentation Transcript

  • 1. 2014-07-28 GMOリサーチ 寺田 渉 Facebook: 寺田渉 Twitter: @wa_terada
  • 2. オブジェクト指向 って何なのか。 = オブジェクト指向の 読みやすさ に 気づいてもらう。
  • 3. ボードゲーム翻訳 CakePHP Cookbook翻訳 TED 字幕 翻訳 開発 (PHP/JavaScript/Java/Perl)
  • 4. 抽象化
  • 5. 抽象化 によって 可読性 を上げます
  • 6. 処理と変数を取りまとめる存在 (オブジェクト)を作り、 その存在に【的確な命名】を 行うこと。
  • 7. 処理は数百行あっても、 的確な名前を付けることで、 毎回中身を見なくてもよくする。 これが抽象化。
  • 8. 毎回中身(具象化先)を 見なければならないようなら、 抽象化としては失敗。
  • 9. オブジェクト指向の 鍵
  • 10. それなら 関数切り出し でいいんじゃない?
  • 11. そうです。 関数切り出しも抽象化の手法。
  • 12. 「関数」だけでなく、 その外側にある「状態」も あわせて取りまとめる存在を作り、 抽象化して 可読性をあげようとする。
  • 13. 【構造化プログラミング】 処理を (サブルーチン or 関数して)とりまとめて 抽象化 (=的確な命名) ↓ 可読性を上げる
  • 14. 【オブジェクト指向】 変数 とそれに 関連する処理 を (クラスとして) とりまとめて 抽象化 (=的確な命名) ↓ 可読性を上げる
  • 15. 何度もメソッドの中を 見なければいけない事態が 生じているのなら、 オブジェクト指向としては負け。
  • 16. MVC (フレームワーク) での 開発は (何度もクラスの中を見るけど) オブジェクト指向 じゃないの?
  • 17. オブジェクト指向では ありません!
  • 18. - 基盤の開発を共有 - 開発スタイルをルール化 することで、開発者によるブレをなくし、 開発効率を上げて安定化させるためにある。 開発者の設計力が十分でなくても 開発可能にするという側面もある。
  • 19. MVCを使って開発する場合、 可読性や抽象化を意識して オブジェクト設計しないので、 もうオブジェクト指向とは呼べない。 フレームワーク指向と呼ぶべきでしょう。
  • 20. フレームワークを オブジェクト指向の 先生にしないでくださいね!
  • 21. オブジェクトに抽象化することで 可読性が上がると思ったら オブジェクト化する → オブジェクト指向
  • 22. 理解/納得 出来ましたでしょうか?
  • 23. GMOリサーチでは、 一緒に働ける仲間(社員)を 募集しています。
  • 24. - GitHub / Git (git-flow) - PHPStorm - CakePHP - 必ずユニットテスト - Behat - 将来は英語話せるようにサポート
  • 25. - 無料のカフェ - お昼寝スペース(利用推奨) - 託児所 - マッサージルーム
  • 26. ぜひ Facebook 等で 寺田渉 まで ご連絡ください!!
  • 27. 以上、ありがとうございました。