タグ

oopとcに関するjjzakのブックマーク (8)

  • 碧落 - C 言語でオブジェクト指向プログラミングを行う

    はじめに この記事では C 言語でオブジェクト指向プログラミングを行う方法を、 アドレス帳ソフトの作成を例にしながら紹介します。 とは言っても、 現在「オブジェクト指向プログラミング」という言葉で表されることを完全に実現するわけではありません。 Bjarne 氏が言うところの 「データ抽象化のスーパーセットであるオブジェクト指向プログラミング」 を現実的な手間で実現します。 これによって次に挙げる点の向上を狙います。 安全性 可読性 他言語との相互運用性 オブジェクト指向とは オブジェクト指向という言葉が魔法の呪文のように唱えられた時代は終わったように思いますが、 オブジェクト指向という言葉は何を表すのでしょうか。 隠蔽、継承、多相性という 「オブジェクト指向の三原則」 を満たさなければオブジェクト指向言語ではないとしてプログラミング言語が批判されたこともありました。 しかし「オブジェクト

  • Cで実現する「ぷちオブジェクト指向」

    はじめに CodeZineではお初にお目にかかります、επιστημη(エピステーメー)です。最初のアーティクルはクラシックなCのお話。 昨今のアプリケーションはオブジェクト指向言語による実装が主流と言ってもいいでしょう。C++Java、VB.NETさらにはRubyPythonといったスクリプト言語まで、オブジェクト指向でない言語を探すのに苦労するくらいです。 記事では、今なお現役バリバリで活躍している手続き型言語の代表格(?)Cによる、オブジェクト指向のマネゴト(オブジェクト指向風味のCコーディングスタイル)を試みます。 対象読者 もっぱらCを主な開発言語として使ってはいるけども、オブジェクト指向に興味と憧れを抱いている方。 抽象データ型 手始めにオブジェクト指向の特徴の1つ、「抽象データ型(ADT:Abstract Data Type)」をCで実現してみます。抽象データ型とは、デ

    Cで実現する「ぷちオブジェクト指向」
  • http://www.malib.net/api/ja/node2.html

  • NyaRuRuが地球にいたころ

    github.com github.com InputMethodService#BACK_DISPOSITION_ADJUST_NOTHING InputMethodService#requestShowSelf(int) github.com HapticFeedbackConstants#KEYBOARD_PRESS HapticFeedbackConstants#KEYBOARD_RELEASE HapticFeedbackConstants#TEXT_HANDLE_MOVE HapticFeedbackConstants#VIRTUAL_KEY_RELEASE github.com EditorInfo#IME_FLAG_NO_PERSONALIZED_LEARNING 1 年遅れぐらいになりますが,OSS Mozc 関係で 2015 年にやったことのまとめです. 空き時間を利用

    NyaRuRuが地球にいたころ
  • 満足せる豚。眠たげなポチ。:オブジェクト指向で継承は使うべきではない?

    DB Magazine 10月号(古!)の『柔軟なシステムを作成するためのC♯によるオブジェクト指向開発の実践』という記事で、少し気になる記述があったので、ちと書いてみます。 「なお、継承は、ポリモーフィズム(多態性)を利用するときのみ使用するのが基となっている。」 「オブジェクト指向による設計では、既存クラスを継承することはあまりない。」 ということで、たしかにJavaやC#によるプログラミングでは委譲によって実装の再利用を行うことが定石となっています。継承はポリモーフィズムのための手段でしかないのかもしれません。記事はC#に関するもので、その意味では問題視するほどの記述ではありません。ただ、これだけ言い切られてしまうと、オブジェクト指向入門的な内容とも相まって誤解する人が増えるのでは、と気になりました。 当に「継承は悪で、委譲は正義」なのか? これは言語の制約によるものです。ここで

    jjzak
    jjzak 2008/08/21
    [][][lisp][ruby][mixin]
  • Ruby の Mix-in を C++ 風に解説 - Faith and Brave - C++で遊ぼう

    ※ これはイメージです こういうモジュール(機能の集まり)を定義して module action { void disp_name() { cout << "Akira" << endl; } }; それをインクルードすることでそのモジュールの機能が使えるようになる int main() { #include action; disp_name(); return 0; } モジュールをクラスの中でインクルードすると class person { public: #include action; void disp_age() { cout << "23" << endl; } }; インクルードしたモジュールはそのクラスのメンバとして使用できる person akira; akira.disp_age(); akira.disp_name(); ※ これはイメージでした これがプログラミ

    Ruby の Mix-in を C++ 風に解説 - Faith and Brave - C++で遊ぼう
    jjzak
    jjzak 2008/08/21
    [][][programming]
  • Object-oriented Programming with Ansi-C :: FreeTechBooks.com

    Object-oriented Programming with Ansi-C Posted: Fri Mar 23, 2007 7:13 am by ndaru Object-oriented Programming with Ansi-C Author : Axel-Tobias Schreiner, Computer Science Department, Rochester Institute of Technology Publication Date : October 1993 From the Preface: Object-oriented programming is the current cure-all — although it has been around for much more then ten years. At the core, ther

  • C 言語によるオブジェクト記述法 COOL

    C 言語によるオブジェクト記述法 COOL ver.2 C-language's Object Oriented Language ver.2 [検索] 目次 0. はじめに 1. クラスの記述, 属性の記述 2. 操作の記述 3. クラス属性の記述、定数の記述 4. 初期化操作と後始末操作の記述 4-1.処理効率優先インターフェイス 4-2.再コンパイル不要インターフェイス 4-3.動的バインディング・インターフェイス 5. 状態取得操作と状態設定操作とイベントハンドラの記述 6. 集約の記述、継承の記述 6-1.集約の記述 6-2.継承の記述 6-3.多重継承の記述 6-4.重複継承の記述 6-5.動的継承の記述 7. 多態性(多相性)、インターフェイス継承の記述 7-1.多態性の記述 7-2.多態性を持った生成の記述 7-3.多重継承の多態性の記述 7-4.重複継承の多態性の記述 7

  • 1