タグ

クラスに関するslay-tのブックマーク (8)

  • Pythonチートシート

    書はPythonでプログラミングする上で覚えておきたい、覚えておくべき、でも、忘れてしまいがちという構文をさまざまな要素ごとにギュッとまとめたPythonプログラマー必携とでもいうべき1冊だ。 Pythonが組み込みで提供する基的なデータ型や制御構造、関数、多数のデータを一括して扱うためのリストやタプル、辞書、集合といったデータ構造、クラス定義に関連するアレコレ、ファイル操作の基、モジュールやパッケージ、例外、さらには特殊メソッドまで、Pythonのコードを記述する際によくお世話になる構文や言語要素をまとめている。 書の内容を以下に示す。 基要素編:組み込みの基データ型、制御構造、演算子、関数定義の基など、Pythonプログラムを構成する基要素を紹介 関数定義編:位置引数とキーワード引数、デフォルト引数値、可変長引数、ラムダ式といった関数にまつわる詳細な知識をギュッと圧縮

    Pythonチートシート
  • 役割駆動設計で巨大クラスを爆殺する - Qiita

    大量のメソッドを保有し、数千、数万行単位にぶくぶく膨れ上がった巨大クラス。別名「神クラス」とも「大きな泥団子」とも呼ばれる、長大で複雑で密結合で極めて変更が困難なアイツ。 そんな巨大クラスの退治に有効な、ドメイン駆動設計を基思想とする「役割駆動設計」を紹介致します。 解決したい課題、狙う効果 数千、数万行単位の巨大クラスの登場を抑止する。 小さくシンプルな構造に落とし込み、堅牢で変更容易性の高い設計へ昇華させる。 例1:筆者をモデリング 分かりやすくなるよう、まず私を例にモデリングしてみます。私は以下のような特徴があります。 IT企業の従業員 家族がいる(, 子供) 趣味ゲーム制作している ダメな設計 何も考えずに人クラスとして設計すると、よく以下のような構造になりがちです。 従業員として仕事をする、父親として家族サービスする、趣味としてゲーム制作する、それぞれのメソッドが備わってい

    役割駆動設計で巨大クラスを爆殺する - Qiita
  • Javaのデータクラス、Brian Goetz氏がInfoQに語る

    Javaプログラミング言語の生産性とパフォーマンスに対して継続的に探求してきた成果を用いて、オラクルのJava言語アーキテクトであるBrian Goetz氏はデータクラスの実験的な概念を紹介した。これは将来言語に統合される可能性が高い。彼の研究はバリュータイプやパターンマッチングのような予定されている機能とデータクラスが自然にフィットすることを証明している。しかしこの概念がJava言語の一部となる準備を整えるには、なされるべき作業は多い。Goetz氏は時として"データは単にデータである"ことを前提としてデータクラスの課題とトレードオフを調査している。 動機 Javaクラスは今まで大量のボイラープレートコードを必要とした。クラスが単純か複雑かどうかにかかわらずだ。このことでJavaは"冗長すぎる"という評価であった。Goetz氏はこう説明している。 ごく普通のデータキャリアクラスを責任を持っ

    Javaのデータクラス、Brian Goetz氏がInfoQに語る
  • オブジェクト指向って便利なの? - JavaScript勉強会

    プログラミングのやり方って、いろんな方法が考えられてきました。 何かを作るとき、ゼロから作るのは大変だけど、先人の努力や工夫を拝借して作ると、その分だけ楽ができますね! プログラミングのやり方はまだまだ発展途上=改善の余地があるんだろうけど、現状はどうなっているのでしょうか? shokuren.hateblo.jp オブジェクト指向のやってることはわかるけど、説明してる人の何が言いたいのかはわからん 疑問が2つ。 一人で作ってて、小規模な案件なら、むしろ書く量が増えて面倒だったりしません? なので、そうしないほうがいいこともある?というのが一つ。 腕が上がるとor効率化を図るといつの間にかオブジェクト指向になってるとか?が2つ目。 オブジェクト指向ってどうなのさ? (1) オブジェクト指向プログラミングを使わない方が良い場合もあるの? (2) オブジェクト指向プログラミングは効率化に役立っ

    オブジェクト指向って便利なの? - JavaScript勉強会
  • 【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス - 圧倒亭グランパのブログ

    rubyを書き始めて間もない頃、 「なんで NoMethodError なんだ...。あ、メソッド定義にself 付けたら通った。」 みたいなことがありました。 rubyを読んでいると、そのあたりがハッキリとイメージできるようになったのでまとめておきます。 参考にした 年明けからひたすらRubyを読んでいます。読了したのは以下。 現在は Effective Ruby を読んでいます。 これらを読んでいくと、中途半端に理解していた部分がカチッとハマるのでオススメです。 ※ 今回のコードは ruby 2.2.0 で試したものです。 オブジェクトとクラスの関係 サンプルコードを見てみましょう。 class C def c_instance_method @my_var = 1 end end obj = C.new 当初、自分はオブジェクトとクラスの関係を以下のように考えていました。 (

    【ruby】 メソッド探索から見る、モジュール・特異メソッド・特異クラス - 圧倒亭グランパのブログ
  • 【javascript】やさしいクラスの作り方 - Qiita

    勉強がてら。「TypeScript使えばいいじゃん」「ES6」とか言わないで。 hogeクラスをつくるとき 1. 一般的なつくりかた // constructor var hoge = function(arg) { this.x = 5; this.y = 10; this.z = arg; }; // メソッド hoge.prototype = { f1: function() { return true; }, f2: function() { return false; } }; var instance = new hoge(1); // hoge {x: 5, y: 10, z: 1, f1: function, f2: function} var hoge = (function() { var FOOFOO = 777; // クラス内定数 // constructor v

    【javascript】やさしいクラスの作り方 - Qiita
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • [JavaScript] そんな継承はイヤだ - クラス定義 - オブジェクト作成 - Qiita

    JavaScript のオブジェクト作成においてクラス定義で継承を実装する方法はいくつかあります。 正しい継承はどうあるべきか、基から検証しながら考えてみたいと思います。 ※正しくクラス定義がエコ楽にできる様に追加記事書きました。 [JavaScript] getter/setterも使えるエコ楽なクラス定義 - もちろん継承も - private変数も 一番簡単なオブジェクトの作成方法 典型的な JavaScript のオブジェクトを簡単に作成してみて、それらを確認してみましょう。 var obj1 = {x: 12, y: "ab"}; var obj2 = new Object; // または new Object() obj2.x = 34; obj2.y = "cd"; // obj < Object var obj3 = [12, "ab"]; var obj4 = new

    [JavaScript] そんな継承はイヤだ - クラス定義 - オブジェクト作成 - Qiita
  • 1