タグ

OOに関するt-wadaのブックマーク (83)

  • オブジェクト指向とは何ですか?

    回答 (8件中の1件目) 英語では「object-oriented」で「OO」と略され、1960~1980年代のプログラミング手法(OOP)から始まり、その応用としてソフトウエアの設計・分析の手法(OOD/OOA)、近年はユーザーインターフェース・エクスペリエンスのデザイン(OOUI/OOUX)、オブジェクト指向存在論(OOO)なる哲学分野にまで、広く使われる用語です。ここではOOPについて説明を試みます。 オブジェクト指向の「オブジェクト」は、1967年に発表されたSimula 67 [1] というプログラミング言語に組み込まれた当時としては新しい同名の言語機能(あるいはそれに準ずる...

    オブジェクト指向とは何ですか?
    t-wada
    t-wada 2019/02/18
    「メッセージ指向」と「クラス指向」が共にオブジェクト指向プログラミングを名乗った故の混乱。メッセージ指向は可能な限りの遅延結合、クラス指向は比較的早期の結合を是とする点で相容れない
  • オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方

    2016年9月2日紙版発売 2016年9月2日電子版発売 Sandi Metz 著,髙山泰基 訳 B5変形判/304ページ 定価3,608円(体3,280円+税10%) ISBN 978-4-7741-8361-9 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 オブジェクト指向設計の名著として名高い“Practical Object-Oriented Design in Ruby”,待望の翻訳版!使いこなせるようになるととても便利なオブジェクト指向ですが,「なんとなく」の理解で使っていると,大きな罠にかかってしまいます。書は,保守性を上げて運用コストを下げるア

    オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方
    t-wada
    t-wada 2016/08/23
    おお Sandi Metz の『Practical Object-Oriented Design in Ruby』が翻訳されるのか!これは読もう。
  • オブジェクト指向と20年戦ってわかったこと - Qiita

    この記事の内容 オブジェクト指向と10年戦ってわかったこと Twitterやはてブコメントを見たら、「わかりやすかった」というコメントもあったのですが、どちらかというとネガティブ方面なコメントが多く目につきました。マサカリという用語で忌憚なく意見を言う風潮については別にいいんですが、「わかりにくい」「間違っている」「古い」みたいなコメントは何も生み出さないし、みんなでニコニコポエムを投稿しあうやさしいインターネッツになったらいいなって思ったので、僕もオブジェクト指向について投稿しようと思います。 何原則? 3原則じゃなくて4では?みたいなコメントもあったのですが、別に3でも4でも5でも重要ではないかなって思います。この4原則の出どころがどこかは知らないですが、C++かSmalltalkあたり(このあたりの話を見かけたのはJava登場前だった気がする)をターゲットとしている気がします。Jav

    オブジェクト指向と20年戦ってわかったこと - Qiita
    t-wada
    t-wada 2016/05/11
    いいポエムだ
  • クラス設計の原則 — みんなのウェディングエンジニアリングブログ

    みんなのウェディングの高井です。 クラスベースのオブジェクト指向プログラミング言語を利用している人であれば、クラスとは、ありふれていて普段から利用するものです。にもかかわらず、良いクラスをつくるというのは、なかなかに難しいことです。 先日、みんなのウェディングでアルバイトをしてくれている学生さんのコードレビューをしていたときにも、それを強く感じました。 実践的プラグマティックには「ソフトウェアの規模や文脈にあわせて、適切に抽象化していただきたい」という以上のことを言っても仕方がないところなのですが、それだけでは経験の浅いプログラマーにとって、まったく分からないという話になってしまいます。 というわけで、今回はクラス設計の原則についてのお話しです。 Bertrand Meyerのクラス設計の原則 Bertrand Meyerは『オブジェクト指向入門 第2版』の中で、クラス設計について章をひと

    クラス設計の原則 — みんなのウェディングエンジニアリングブログ
    t-wada
    t-wada 2015/10/21
    "良いクラスというものは、分析的に定義できるというものではなく、経験的に理解されるもの" "より多くのコードを書き、より多くのコードを読むことで、より良いクラスをつくることができるようになります"
  • YAPCでおもしろ発表してきた - hitode909の日記

    YAPCおもしろ発表してきた. はてなブログの開発を振り返って設計の進化と最高の設計を紹介するという話. speakerdeck.com なぜか大人気発表みたいになってて,会場満員で,すみませんこんなところに来ていただいてすみませんというかんじだった. 紹介したはこちら.予約投稿で仕込んであって,発表終わったら,こちらから買ってくださいとかやろうと思ってたけど,すっかり忘れてた. YAPCの発表で紹介した - hitode909の日記 質問たくさんいただいて,よいかんじにおさまったと思う. 「難しくて挫折するという問題がありますよね」「歯をい縛って実装しろって書いてあった」 #yapcasiaE— そらは (@sora_h) 2015, 8月 21 Q: 「コメントの良い書き方は?」 A: 「オブジェクト指向入門下巻に書いてあります」 ↓ 「買って読みます。」 #yapcasiaE

    YAPCでおもしろ発表してきた - hitode909の日記
    t-wada
    t-wada 2015/08/21
    満員で部屋に入れなかった講演。これは聴きたかった……
  • bliki: Tell Dont Ask

    Tell-Don't-Ask is a principle that helps people remember that object-orientation is about bundling data with the functions that operate on that data. It reminds us that rather than asking an object for data and acting on that data, we should instead tell an object what to do. This encourages to move behavior into an object to go with the data. Let's clarify with an example. Let's imagine we need t

    bliki: Tell Dont Ask
    t-wada
    t-wada 2015/07/30
    "Tell, Don't Ask" について。図が分かりやすい。
  • Tell, Don't Ask | The Pragmatic Bookshelf

    This website uses cookies for account and order processing. By using this site you understand and agree to our use of cookies, our Terms Of Use, and Privacy Policy Alec Sharp, in the recent book Smalltalk by Example [SHARP], points up a very valuable lesson in few words: Procedural code gets information then makes decisions. Object-oriented code tells objects to do things. — Alec Sharp That is, yo

    t-wada
    t-wada 2015/07/30
    オブジェクト指向プログラミングのプラクティス "Tell, Don't Ask" について。デメテルの法則やコマンドクエリ分離原則に照らしながら説明。
  • オブジェクト指向の法則集 - Qiita

    この記事は、故石井勝さんが1999年に書いた記事を Qiita に転載するものです。オブラブ(objectclub.jp)にて記事をホスティングしていましたが、現代でも十分に読める内容なので、たくさんの方に読んでもらいたいと思い、若干の編集(リンクとコンテキスト追加)を平鍋が行い、転載します。今でも、読みやすく、カジュアルな語り口のよい記事です。 オブジェクト指向の法則集(転載元:http://objectclub.jp/community/memorial/homepage3.nifty.com/masarl/article/oo-principles.html ) なお、この記事の他にも石井さんのオブジェクト指向やRubyに関する多くの記事をオブラブの「まさーるのページ」で読むことができます。では、以下に石井勝さん(旧メールアドレス masarl@nifty.com)の記事を転載します

    オブジェクト指向の法則集 - Qiita
    t-wada
    t-wada 2014/09/10
    まさーるさんが書いた技術文書が Qiita に載るの、なんというか感慨深い。もっと多くの人に伝わって欲しい。
  • オブジェクト指向JavaScriptの原則

    TOPICS Web , JavaScript 発行年月日 2014年06月 PRINT LENGTH 200 ISBN 978-4-87311-681-5 原書 The Principles of Object-Oriented JavaScript FORMAT PDF 書はJavaScriptが持つオブジェクト指向的な言語特性や、その特性を強力にサポートするECMAScript 5の機能を紹介し、それらの特性や機能を活かすプログラミングの方法、考え方、パターンについて、深くそして簡潔に解説する書籍です。書を通じて、C++Javaなど「クラスベースのオブジェクト指向言語」に慣れたプログラマはJavaScript特有のクラスを持たないオブジェクト指向プログラミングの世界への知識を得ることができ、JavaScriptプログラマはJavaScriptのオブジェクトに関する理解をさらに深

    オブジェクト指向JavaScriptの原則
    t-wada
    t-wada 2014/07/08
    『JavaScriptで学ぶ関数型プログラミング』が非常に面白かったので(http://www.oreilly.co.jp/books/9784873116600/)、カウンターパートとしてこの本も読んでみようかな
  • https://qiita.com/tokomakoma123/items/a33feffe947a958a2d3a

    t-wada
    t-wada 2014/06/16
    "Joe Armstrongは「オブジェクト指向はクソか?」という発言の後で「Erlangはオブジェクト指向」であるという興味深い発言をしています"
  • Modern JavaScript Applications: Design Patterns

    It's presented how classical OOP approaches and design patterns can be used for modern JavaScript applications.

    Modern JavaScript Applications: Design Patterns
    t-wada
    t-wada 2014/05/02
    GoF のデザインパターンをモダン JavaScript の視点から整理する試み。良く出来ている資料。
  • デザインパターンとともに学ぶオブジェクト指向のこころ を読んだ - takatoshiono's blog

    読んだ理由 最近、ソフトウェアの設計力が不足していると感じる。もっといい感じにクラスを設計して、オブジェクト指向ぽいプログラムを書けるようになりたい。しかもスピード感を持ってやりたい。ということで、いまさらだけど、オブジェクト指向についてもう一度学んでみようと思った。を読めばいいという訳じゃないけど、とりあえずもっと知識を増やしたい。渋谷の東急百貨店 7F の丸善&ジュンク堂書店に行って、 オブジェクトデザイン (Object Oriented SELECTION) エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践) オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES) の3冊で悩んだ結果、これを買った。決める要因となったのは、 ついでにデザインパターンについて理解を深められたらいいなと思った これまで

    デザインパターンとともに学ぶオブジェクト指向のこころ を読んだ - takatoshiono's blog
    t-wada
    t-wada 2014/05/01
    いいエントリ。絶版書も他社から復刊すれば出会うべきときに出会えるようになるし、こういうエントリも出てくる。ということで復刊した丸善出版++
  • Object design rough talksへ行ってきました - 虎塚

    金曜の夜、Object design rough talksへ行ってきました。Twitterのハッシュタグは #ObjectDesign でした。 Object design rough talks on Zusaar http://www.zusaar.com/event/5037004 面白かったトークの抜粋と感想を書きます。 t_hysshさん「オブジェクト指向レッスン」 内容 『TohughtWorksアンソロジー』から引用したオブジェクト指向で実装するためのルールと、林さんが独自に考えられたルールの紹介でした。 感想 こういったルールは、チームでコーディング方法を統一することを目的とするなら機能しそうだなぁと思いました。 また、林さんは、実際に仕事でチームに適用したところそこそこ上手くいったとおっしゃっていたので、オブジェクト指向を理解している人が、そうでない人のコードをレビュー

    Object design rough talksへ行ってきました - 虎塚
    t-wada
    t-wada 2014/05/01
    予定が被って参加できなかったので、こういうエントリはとてもありがたい
  • オブジェクト指向分析設計の問題点とあるべき姿

    Kenichiro Ota @oota_ken 満期の計算ならまだしも、金利やポジションの計算とかになるとよほどうまく抽象化しないとポリモルフィズムの恩恵にはあずかれなくて、しかし、そこまでの努力が当に労力に見合ったものであるかというのが難しいところなのです。 Kenichiro Ota @oota_ken もちろん、デリバティブや多通貨会計、外国為替みたいに質的にオブジェクト指向とマッチングしやすい分野もあるわけで、やっぱりドメインごとに適用するテクノロジーは異なるという結論にならざろうえないのです。 Masayoshi Hagiwara @masayh この時点でこの技術(OO)の限界を感じます。どんなに優れた技術でも扱いにくいものは適切とは言えません。デザインパターンの導入なくしていい設計ができないのも同じ理由。@oota_ken よほどうまく抽象化しないとポリモルフィズムの恩恵

    オブジェクト指向分析設計の問題点とあるべき姿
    t-wada
    t-wada 2014/04/16
    こんな議論を発掘しましたぞ
  • オブジェクト指向プログラミングとは何か? · eed3si9n

    2013-09-18 oop はどう定義されるべきだろうか? 純粋オブジェクト指向プログラミング 純粋オブジェクト指向プログラミングは以下のように定義できる: オブジェクトを使ったプログラミング。 オブジェクトとは何か? 他のオブジェクトへの参照を保持し、事前にリストアップされたメッセージを受信することができ、他のオブジェクトや自分自身にメッセージを送信することができるアトムで、他には何もしない。メッセージは名前とオブジェクトへの参照のリストから構成される。 これでおしまい。言い回しは僕が考えたものだけど、アイディアはオブジェクト指向という言葉を作った張人 Alan Kay (2003) からのものだ。これ以外は、直接 oop に関係無いか、実装上の詳細だ。 この定義から導き出せるものを考えてみよう。 まずは名前空間だ。C の関数と違ってメッセージ (別名メソッド) はオブジェクトごとに

    t-wada
    t-wada 2014/02/06
    "オブジェクト指向がもたらすのは問題のドメインをコードに落としこむ方法だと思う。これはプログラマと世界の間のインタラクションのことであって、コードとコンピュータ間のことではない" コメント欄も必見
  • 2011年に読んだ論文紹介 または私は如何にして心配するのを止めて静的に型付けされたオブジェクト指向言語を愛するようになったか

    2011年に読んだ論文紹介 または私は如何にして心配するのを止めて静的に型付けされたオブジェクト指向言語を愛するようになったか 書いた人: ると 書いた日: 2011年12月18日 今年読んだ面白CS論文紹介カレンダーの5日目の記事です。 もくじ Sound polymorphic type inference for objects または私は如何にして心配するのを止めて静的に型付けされたオブジェクト指向言語を愛するようになったか Covariance and Contravariance: Conflict without a Cause 共変と反変: 理由無き対立 What is Object-Oriented Programming? バック・トゥ・ザ・オブジェクト・オリエンテッド・プログラミング Sound polymorphic type inference for objec

    t-wada
    t-wada 2014/01/18
    “私は如何にして心配するのを止めて静的に型付けされたオブジェクト指向言語を愛するようになったか” おもしろい
  • 意外と知られていない構造化プログラミング、あるいは構造化プログラミングはデータも手続きと一緒に抽象化する、あるいはストロヴストルップのオブジェクト指向プログラミング史観

    意外と知られていない構造化プログラミング、あるいは構造化プログラミングはデータも手続きと一緒に抽象化する、あるいはストロヴストルップのオブジェクト指向プログラミング史観 書いた人: ると 型プログラミング言語史観(1) 〜あるいはオブジェクト指向における設計指針のひとつ〜という記事がありました。手続き型からの発展としてのオブジェクト指向という史観を書いた記事です。しかし、そこで次のように述べられている史観は少々単純化しすぎです。 手続き型プログラミングでは手続きを抽象化することで保守性を挙げることに成功したが、データを守ることには失敗してしまった。そこでオブジェクト指向はデータと手続きをひとかたまりにすることでデータを外から守るというコンセプトを打ち出した。 手続き型プログラミングの時代は、少なくとも思想的にはそこまで暗黒的ではありませんでしたし、「データと手続きをひとかたまりにする」の

    t-wada
    t-wada 2014/01/18
    "データと手続きをひとかたまりにすることでデータを外から守るというコンセプトを打ち出したという訳ではありません" "オブジェクト指向プログラミングの要点はデータ型間の共通性を継承により明確にする"
  • Beyond MVC

    PHP Advent Calendar 2013 - 6日目 昨日は@fivestrさんのComposerを使った簡単Travis CI設定でした。 TL;DR オブジェクト指向/MVCでうまく捉えきれていなかったものは何なのか?MVCから続くソフトウェアアーキテクチャーの「その先」は何なのか?Reenskaug博士を知っていますか? WikipediaによればReenskaug博士は1930年生まれ。MVCという概念が世の中に送り出された論文『MODELS - VIEWS - CONTROLLERS (pdf)』は1979年ですから、49歳の時ということになります。1960年からソフトウェアを書き始め、1973年からオブジェクト指向でソフトウェアを開発しており、現在でも現役でソフトウェアの世界にいらっしゃいます(ex 2009年の講演)。「プログラマ歴42年 (* Clean Coder

    Beyond MVC
    t-wada
    t-wada 2013/12/06
    “実装の問題としてクラスの関係がどうだとか、どことどこに関連があるのが正しい/間違いだとかいうレベルのことではない” "MVCがそれだけではうまく整理しきれなかったものは、実は手続き・振る舞い"
  • 角谷信太郎 × 和田卓人 ピアソン技術書のゼロ年代と俺たち ―"OO厨"史観のふりかえりと、技術書翻訳のこれから―: ジュンク堂書店Podcast

    ジュンク堂書店の店頭で行われているトークセッションやイベントなどを配信するポッドキャスト(ベータ版)です。 *予告なく終了する場合がありますのでご了承下さい。 iTunes Storeでも公開されました!iTunesをご利用の方は、このページから iTunes - Podcast - ジュンク堂書店「ジュンク堂書店Podcast」 「iTunesで見る」をクリックし、「無料購読」をクリックすると登録できます。 送料無料、最短当日出荷の丸善&ジュンク堂ネットストア もぜひご利用下さい ※このトークセッションの配信は終了しました。 2013/9/28収録 角谷信太郎(Rubyist-ist, OO厨・ピアソン歴13年) × 和田卓人(TDD,OO厨・ピアソン歴13年) 2013年8月1日、ピアソン桐原は英国ピアソングループより分離独立し、桐原書店として再スタートを切ることを発表しました。その結

    t-wada
    t-wada 2013/10/24
    9/28 に @kakutani さんとジュンク堂で行ったトークセッションの podcast と動画(youtube)が公開されました。よろしくお願いします!
  • ピアソン技術書のゼロ年代と俺たち―"00厨"史観のふりかえりと、技術書翻訳のこれから― イベント・フェア詳細 | 丸善&ジュンク堂ネットストア

    「ピアソン技術書のゼロ年代と俺たち ―"00厨"史観のふりかえりと、技術書翻訳のこれから―」 ジュンク堂書店 池袋店 開催日時:2013年09月28日(土)19:30 ~ フェア・イベント一覧 開催店舗ページへ トークイベント 角谷 信太郎(Rubyist-ist, OO厨・ピアソン歴13年) 和田 卓人(TDD,OO厨・ピアソン歴13年) 2013年8月1日、ピアソン桐原は英国ピアソングループより分離独立し、桐原書店として再スタートを切ることを発表しました。その結果、現存するピアソン桐原の技術書は全て書店の店頭在庫を残して入手困難となりました。 ピアソンの技術書はコンピュータサイエンスやソフトウェア開発プロセス、オブジェクト指向設計やプログラミング技術を知るための最も権威ある原典を何冊も日の読者に届け、ゼロ年代の技術者の学びを支えていました。 そんなピアソンのエデュケー

    t-wada
    t-wada 2013/09/07
    9/28にジュンク堂池袋で「ピアソン技術書のゼロ年代と俺たち―"OO厨"史観のふりかえりと、技術書翻訳のこれから―」というトークセッションを @kakutani と行います(申込は店頭 or 電話)。よろしくお願いします!