tanaka's Programming Memo

プログラミングについてのメモ。

2015-02-01から1ヶ月間の記事一覧

TypeScriptの概要、Macへのインストール、チュートリアル

Microsoftが開発しているいわゆるaltJSというJavaScriptのコードを生成する言語。オープンソース。再利用や規模の拡大に耐えうるコードを書くのにはJavaScriptはいくらか機能が不足していたり、分かりにくいイディオムに頼らねばならない。そこで利用するの…

Underscore.js

Backbone.jsをやるにあたり必要そうなので事前に概要を勉強。 JavaScriptの便利なライブラリ eachやmap、templateなどで簡単に書くことができる 教材… Underscore.js入門 (全10回) - プログラミングならドットインストール 公式サイト. Underscore.js 勉強し…

BackboneJS

BackboneJS概要 技術評論社. フロントエンジニア養成読本 Web環境の変化に耐えるJavaScriptの設計と指針 p83-84より マナーを守るためのベースを提供 短期的な生産性の向上やコードの縮小はない 中・長期的な生産性や保守性の向上 MVC、イベントシステム、ル…

パーフェクトJavaScript勉強メモ(22)

前へ 22章 実践Node.jsプログラミング p502 ネットワークやファイルを非同期で処理する実例紹介 HTTPサーバ処理 http関連のAPIはhttpモジュール httpモジュールでは基本的なHTTP機能を提供 HTTPサーバ処理の基本 http.ServerクラスがHTTPサーバ処理の中心 イ…

パーフェクトJavaScript勉強メモ(21)

前へ | 次へ 21章 サーバサイドJavaScriptとNode.js サーバサイドJavaScriptの動向 p472 ネットスケープ社が提供していた時代があった 一度廃れたが復活してきた HTML5やAJAXなどや、Java仮想マシン上で動くJVM言語の盛り上がりの影響 JVMのJavaScript実装で…

パーフェクトJavaScript勉強メモ(20)

前へ | 次へ 20章 Web APIの実例 p439 Web APIのカテゴリ p440 Google Translate API Googleの翻訳用API 補足:現在は有料になっている Google Maps API p445 Google Static Maps APIは、画像タグのURLに仕込むことで、画像を得られる マイマップ p446 イン…

パーフェクトJavaScript勉強メモ(19)

前へ | 次へ 19章 Web APIの基礎 Web APIとWebサービス p422 APIとはApplication Programming Interfaceの略 Web APIが想定するシステム Web APIは、HTTPでリクエストを送り、結果を受け取る規約のこと Web APIの歴史 スクレイピング Webページはもともと人…

Unityのエラーの行数がおかしい

Unity4.5.1において、エラー行数がエラー内容と一致しなくなることがある。コメントに日本語を利用していることが原因だったことがあり、ソースコードから日本語のコメントを削除したら治った。最新版では未確認。もともと日本語対応は微妙なところがあるの…

パーフェクトJavaScript勉強メモ(18)

前へ | 次へ 18章 WebWorkers WebWorkers概要 p408 WebWorkersとは WebWorkersの動作 通常のJavaScript実行環境をメインスレッド、Web Workersにより生成されるバックグラウンドのものをワーカと書籍では呼ぶ ワーカは複数生成できる メインスレッドとワーカ…

パーフェクトJavaScript勉強メモ(17)

前へ | 次へ 17章 WebSocket WebSocket概要 WebSocketとは p393 1本のHTTP接続上で双方向のメッセージやりとりができる HXMLHttpRequestとServer-SentEventsを利用したやりとりよりも効率がよく、設計や実装もシンプル 補足:2015/2/12現在、Operamini以外の…

パーフェクトJavaScript勉強メモ(16)

前へ | 次へ 16章 ストレージ Web Store p376 Web Storeとは WebStorageの容量は、書籍の時点では5MB程度 p377 オリジンごとに共有され、読み書きができる localStorageオブジェクトとsessionStorageオブジェクトにプロパティの読み書きをすればよい localSt…

パーフェクトJavaScript勉強メモ(15)

前へ | 次へ 15章 デスクトップ連携 Drag Drop API Drag Drop APIとは p358 DataTransferは、ドラッグ操作でブラウザとデスクトップ上のファイルのやりとりができる インターフェース ドラッグイベント ドラッグ要素とドロップ領域それぞれに必要なイベント…

パーフェクトJavaScript勉強メモ(13)(14)

前へ | 次へ 13章 HTML5概要 HTML5の歴史 HTML5の登場の経緯 p339 HTML5を推進するためにApple,Mozilla,OperaがWHATWGというコミュニティを設立。Web技術の仕様を策定し、W3Cへフィードバックをする HTML5の現状 p339 2011年当時のHTML5の状況。当時はまだIE…

パーフェクトJavaScript勉強メモ(12)

前へ | 次へ 12章 ライブラリ ライブラリを使うべき利用 p310 クライアントサイドJavaScriptで大変なのは、クロスブラウザ対策。特にIE8以前対策 jQueryの特徴 書籍の時点での最新版は1.6.2 MITライセンス p311 jQuery本体と、UIコンポーネントはjQuery UIと…

HTML要素の追加

HTML要素を追加する時のパフォーマンスをチェックしてみた。 テスト環境:MacBookAir2014 追加方法 innerHTML DocumentFragment appendChild innerHTML文字列結合 Firefox 17-25ms 27-38ms 32-40ms 15-25ms Google Chrome 25-30ms 52-90ms 55-80ms 20-35ms S…

NodeListのテスト結果

パーフェクトJavaScriptのp254のテストを実行した結果 MacBookAirで実施 1行目は、1000個のspanをgetElementByTagNameで取得して、1000回のループを回して、spanの回数を毎回lengthで取得してエレメントにアクセスした時の時間 2行目は、1000個のspanをgetEl…

パーフェクトJavaScript勉強メモ(11)

前へ | 次へ 11章 実践クライアントサイドJavaScript p281 DOM操作とイベントの扱いがクライアントサイドJavaScriptの基本 スタイル スタイル変更方法 classNameプロパティでclass名を変更する スタイル操作でもっとも簡単な方法 p282 指定した要素が隣接要…

パーフェクトJavaScript勉強メモ(10)

前へ | 次へ 10章 イベント イベントドリブンプログラミング p266 ブラウザにイベントが発生した時の関数を登録しておいて、呼び出してもらう IE8以前は独自の実装になっている イベントハンドラ/イベントリスナの設定 イベントハンドラは、1つの要素・イ…

パーフェクトJavaScript勉強メモ(9)

前へ | 次へ 9章 DOM DOMとは DOM Level1 p246 Coreモジュール…HTMLに限らない一般的なDOM操作についての仕様 HTMLモジュール…HTML文章向けのメソッド p247 getElementsByTagName…タグ名を指定して要素を取り出す createElement…要素を作成 appendChild…要素…

パーフェクトJavaScript勉強メモ(8)

前へ | 次へ 8章 クライアントサイドJavaScript クライアントサイドJavaScriptの重要性 p224 Webアプリケーションの発達 JavaScriptの高速化 p225 Google ChromeやFirefoxは6週間ごとにバージョンアップする JavaScriptの役割 見た目の分かりやすさや使いや…

(7)ミスの処理(2015.1改訂版)

←(6)ブロックを消す(2015.1改訂版) (8)スコアと残機の実装(2015.1改訂版)→ ボールが落下したら、ゲームオーバーになるようにしよう。Unityでは、接触の判定をif文などで自分で判定する必要はない。ボールの跳ね返りでも利用したコライダー(Collider)を利用す…

パーフェクトJavaScript勉強メモ(7)

前へ | 次へ 7章 データ処理 配列と正規表現は重要 配列 p187 順序のある要素の集まり JavaScriptの配列はオブジェクトなので、要素の追加、書き換えができる JavaScriptの配列 []で、配列要素をカンマ区切りすることで生成可能 []のみの場合、空の配列にな…

パーフェクトJavaScript勉強メモ(6)

前へ | 次へ 6章 関数とクロージャ p159 関数宣言文(function 関数名(引数リスト){})と関数リテラル式(function (引数リスト){}) 関数呼び出しの整理 メソッド呼び出し…オブジェクトから呼び出す。呼び出し元のオブジェクトの参照をthisに持つ。applyやcall…

パーフェクトJavaScript勉強メモ(5)

前へ | 次へ 5章 変数とオブジェクト 変数の宣言 p109 変数が宣言されていなければ初期値を代入するイディオム var a = a || 7; ||は4章でやった論理演算子。左のオペランドがtrueの時は左のイディオム、つまりaにもともと入っていた値が代入され、falseの時…

(6)ブロックを消す(2015.1改訂版)

←(5)ボールを動かす(2015.1改訂版) (7)ミスの処理(2015.1改訂版)→ ブロックを壊せるようにする ここまでで、ボールを跳ね返すことが出来るようになった。次に、ブロックが壊れるようにしてみよう。 作業の流れ ブロックにボールが衝突すると、 【Unity】では…

(5)ボールを動かす(2015.1改訂版)

←(4)プレイヤーバーの実装(2015.1改訂版) (6)ブロックを消す(2015.1改訂版)→ブロック崩しのボールの動きを、自分で実装しようとすると案外大変である。ブロックに横からぶつかったか、縦からぶつかったか、斜めからぶつかったかで跳ね返る方向を変えるには、…

パーフェクトJavaScript勉強メモ(4)

前へ | 次へ 4章 文、式、演算子 予約語 p70,71 予約語一覧。将来の予約語を見るとclassやextendsなどがある 識別子 p71 変数名や関数名など、何かを指定するための単語 単語の長さの制限はない Unicodeの単語なので、日本語を使うことは可能だが推奨しない …

パーフェクトJavaScript勉強メモ(3)

前へ | 次へ 3章 JavaScriptの型 p39 JavaScriptの変数に型はないが、値やオブジェクトには型がある 基本型は以下の5つ 文字列型 数値型 ブーリアン型 null型 undefined型 上記以外はオブジェクト型 p40 基本型変数と参照型変数がある 基本型変数は、値がそ…

(4)プレイヤーバーの実装(2015.1改訂版)

←(3)登場するオブジェクトの動かし方(2015.1改訂版) (5)ボールを動かす(2015.1改訂版)→プレイヤーを操作できるようにしてみよう。 リジッドボディの追加 (3)の方針に従って、リジッドボディ(Rigidbody)コンポーネントを追加する。コライダーはCubeを作った時…

(3)登場するオブジェクトの動かし方(2015.1改訂版)

←(2)シーンの作成(2015.1改訂版) (4)プレイヤーバーの実装(2015.1改訂版)→ Unityのキャラクタ Unityでキャラクタを制御する時は、リジッドボディ(Rigidbody)コンポーネントか、キャラクタコントローラ(Character Controller)コンポーネントを利用すると楽で…