野次馬エンジニア道

野次馬な気持ちでプログラミングをあれこれと綴ります

Object Oriented Programming

JavaScriptでオブジェクト指向 (5) - ECMAScript 6で

以前ES5でまとめたが、最近ES6のコードの目にする機会が急激に増えた気がする。 Babelの babeljs.ioのオンラインの変換をみながらclassの利用方法から確認してみた。 クラスの定義 以前の例をES6で書き直す //ES6以前 var Foo = function(_name){ this.name …

CoffeeScriptでオブジェクト指向 - クラス定義と継承

以前のJavaScriptに続いて js2coffeeで結果を見ながら文法から触れてみる。 変数の宣言と関数 セミコロン不要*1 varは書かない curly braces の代わりにインデントで書く functionの代わりに-> 関数名の後にカッコを書かずに引数を並べる 任意の引数も渡せる…

JavaScriptでオブジェクト指向 (4) - ECMAScript 5の関数で

以前に一度まとめたが、下記を読んで興味がわいたので久しぶりにJavaScriptを。 オブジェクト指向JavaScriptの原則作者: Nicholas C. Zakas,和田祐一郎出版社/メーカー: オライリージャパン発売日: 2014/06/18メディア: 単行本(ソフトカバー)この商品を含…

JavaScriptでオブジェクト指向 (3) - プロパティとアクセス制御

前回は継承を調べた。 プロパティ オブジェクトを定義したときは何らかのプロパティを定義することがほとんど。 どこに定義するかで、クラス経由かインスタンス経由でアクセスできるかが変わる。 function Foo(){} var bar = new Foo(); Foo.val = 'somethin…

JavaScriptでオブジェクト指向 (2) - 継承

前回は、クラスの定義の方法をまとめた。 StringとObjectの関係 継承関係にあるStringとObjectを見直してみる。 var foo = new String(); foo instanceof String // true String.prototype instanceof Object // true String.prototypeがObjectのインスタン…

JavaScriptでオブジェクト指向 (1) - クラス定義

プロトタイプベースのオブジェクト指向とよく本に書かれていますがいまいちピンとこない。早速野次馬的に入門してみます。 オブジェクト 型がなきゃ不安だ。という訳で見慣れたリテラルをオブジェクトとして見てみる。 var a = {foo:bar}; var a = new Objec…