• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
本当のオブジェクト指向は可読性を上げる
 

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

on

  • 2,043 views

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

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

Statistics

Views

Total Views
2,043
Views on SlideShare
1,748
Embed Views
295

Actions

Likes
9
Downloads
0
Comments
0

10 Embeds 295

http://yoshiko.hatenablog.jp 187
http://blog.hyec.jp 51
https://twitter.com 44
http://feedly.com 4
https://6200091002875652065_ae350ce893cf8db5621e7ee696123fe9dcd2a43f.blogspot.com 2
http://www.slideee.com 2
https://www.chatwork.com 2
http://yoshiko.hatenablog.jphttp 1
https://tweetdeck.twitter.com 1
http://s.deeeki.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

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