Tiny Mouse's Diary

Tiny Mouse の日記

16/03/10 のツイート

  • まだ寝てたい posted at 06:30:27
  • 朝ご飯なう p.twipple.jp/ICXJB posted at 06:55:04
  • 鼻水が出て咳き込む posted at 08:00:05
  • I'm at 東急 大井町線 中延駅 (OM04) - @tokyu_official in 品川区, 東京都 4sq.com/1TMGdC8 posted at 08:20:06
  • I'm at すずかけ台駅 (Suzukakedai Sta.)(DT24) - @tokyu_official in 町田市, 東京都 4sq.com/1Yz23Io posted at 09:22:24
  • 顧客を訪問 posted at 09:40:12
  • I'm at たまて箱 4sq.com/1QF8LJM posted at 13:10:21
  • 昼ご飯なう p.twipple.jp/oIGgl posted at 13:20:21
  • 顧客を離脱 posted at 16:50:21
  • I'm at 江田駅 (Eda Sta.)(DT17) - @tokyu_official in 横浜市, 神奈川県 4sq.com/1U4FD29 posted at 17:20:22
  • I'm at 表参道駅 (Omote-sando Sta.)(G02/Z02/C04) - @tokyometro_info in 港区, 東京都 4sq.com/1QJ3OkA posted at 18:02:04
  • I'm at 銀座駅 (Ginza Sta.) (G09/M16/H08) - @tokyometro_info in 中央区, 東京都 4sq.com/1M8qTHT posted at 18:15:10
  • I'm at ドトールコーヒーショップ 銀座マロニエ通り店 in 中央区, 東京都 4sq.com/1p9Qo6g posted at 18:30:05
  • 軽く夕食 p.twipple.jp/bd3lZ posted at 18:35:13
  • I'm at マイスペース銀座マロニエ通り4sq.com/1TNToCV posted at 19:00:16
  • 参加します。RT hifive ソースコードリーディング - connpass bit.ly/1Tl7OIF posted at 19:10:05
  • hifive 。HTML5 企業 Web システムのための開発プラットフォーム。新日鉄住金ソリューションズ。 posted at 19:20:58
  • 設計で意識したこと。スコープ分割。分担・分散開発のために。 posted at 19:22:56
  • ソースファイルの分割。フレームワーク全体で共有する変数・関数のためのソースファイルと個別モジュールのソースファイル。 posted at 19:23:43
  • JavaScript のスコープ。関数ごとのスコープ。ブロックスコープがない。 posted at 19:24:54
  • JavaScript の関数はネストして定義できる。変数のスコープのネスト構造をネストチェーンという。ある変数を参照するとチェーンを辿って最初に見つかったものが使われる。 posted at 19:28:11
  • JS ファイルの最初のスコープはグローバルスコープ。ブラウザの場合は window オブジェクト。 posted at 19:29:19
  • 上位のスコープで定義された変数や関数を呼ぶつもりで下位のスコープで定義された変数が呼ばれることがある。 posted at 19:31:51
  • スコープを意識しないで記述すると変数や関数のコンフリクトや上書が起こる。 posted at 19:32:35
  • スコープを作る。即時関数を使う。(function(){ … })(); 。 posted at 19:33:38
  • hifive の個別モジュールのソースファイル。即時関数を使ってスコープを作ってそこにコードを書いてある。 posted at 19:36:25
  • hifive のフレームワーク全体で共有する変数・関数のはグローバルスコープに書いてある。 posted at 19:37:25
  • モジュール間で連携したい。個別モジュールのソースファイルのグローバルスコープに連携したいものを書いておく。 posted at 19:38:30
  • ビルドする(リリースする JS ファイルを作成する)とき全てのソースファイルを連結して即時関数でくるむ。 posted at 19:41:05
  • hifive のコード記述順序ルール。①定数、②変数キャッシュ、③スコープ内で使用する変数、④スコープ内で使用するクラス定義、⑤モジュールのコード本体、⑥ファイル読込で即時実行するコード、⑦外から見える変数を公開。 posted at 19:44:25
  • スコープのための即時関数に引数を指定してスコープ内で使用することもできる。 posted at 19:46:25
  • スコープのための即時関数の引数を使ってモジュールで使用する外部ライブラリのバージョンを特定することができる。 posted at 19:52:10
  • 例えば環境チェックを起動時に一度だけ実行する。環境チェックを即時関数に書いて結果をグローバル変数にセットしておく。var … = (function(){ … })(); 。 posted at 19:54:27
  • 例えば特定のパラメータを内包した関数を作る。引数を取った関数をラップした関数を返す。ラップした関数を呼出するとどこで呼ばれても this を固定して引数で渡された元の関数を実行する。own(function(){}); 。 posted at 19:58:01
  • JavaScript のオブジェクトはクラスでなくオブジェクト。だからオブジェクトのソースコードを変えずにプロパティである関数を実行時に差替できる。 posted at 20:02:06
  • 高速な実行のために。事前に準備する。例えばオブジェクトをパースする機能が頻繁に実行されるならパースした結果を事前に関数にしておいて利用する。 posted at 20:09:47
  • 実行の回数を減らすために。事前に準備する。例えばプロパティを都度ループして走査すると重いのでキャッシュしておいて利用する。 posted at 20:14:01
  • ミニファイしないコードは問題ないがミニファイしたコードが実行エンジンによって問題あるなんてことがある posted at 20:20:39
  • テストツール Pitalium 。 posted at 20:40:05
  • Pitalium 。実行したスクリーンショットを正解画像と比較して合否判定する。 posted at 20:42:09
  • 乾杯! RT hifive ソースコードリーディング - connpass bit.ly/1Tl7OIF posted at 21:00:25
  • I'm at 東銀座駅 (Higashi-ginza Sta.) in Chūō, Tōkyō-to 4sq.com/1M8Nowe posted at 21:40:07
  • I'm at 都営 浅草線 中延駅 (A-03) in 品川区, 東京都 4sq.com/1M8Qqke posted at 22:05:10
  • 帰宅なう posted at 22:15:13