iAnime.jsのソースが素敵に見える件
ianime.jsが読みやすく今風のJavaScriptだなと思ったので自分の学習用にちょっとまとめてみた。
ianime.js 0.29
http://ianimejs.googlecode.com/svn/trunk/src/ianime029.js
1.匿名関数でグローバル変数の汚染を防ぐ
(function(){ ... })();
参考:JavaScript++かも日記:匿名関数で匿名スコープ&インスタンス
2.メソッドのインデント
メソッドのインデントが無く、それが読みやすいなと思いました。
iA.prototype = { add: function(param) { ... }, addSequence: function(seq) { ... }, }
3.privateメソッドのプリフィクスはアンダーバー
function _move(e,r,x,y) { e.style.left = x + "px"; e.style.top = y + "px"; }
4.effectの追加の部分
YUI Compressor が圧縮しやすいコードを書くテクニックに関する一考察にあるように、YUI Compressorで圧縮率を高めるためにiAnime.effectsをローカル変数に入れていますが、そのまま参照するより読みやすくなっている気がします。これは好みの問題かな。
var effects = iAnime.effects; // for better compression effects.fadeout = function(element, t, x, y) { this.move(element, t, x, y); iBrowse.setOpacity(element, 1-t); }; effects.fadein = function(element, t, x, y) { this.move(element, t, x, y); iBrowse.setOpacity(element, t); };
もう少し中の仕組みのほうも読んでみます。
JS入門(仮)あたらめTenjin.JS(仮)
以前から企画だけはあがっていたJS入門(仮)を明日行うことになりました。テーマは一応「楽しくなるコーディングについて語る」です。ぜひお気軽にご参加ください。
追記:告知文章をアップデートしました。
日時:12月22日 13:30〜17:00 (13:00開場、13:30開始の予定)
場所:正晃テックオフィス
福岡市中央区今泉1-13-17 向栄ビル2F(MAP)
予定人数:20人弱
参加費:お茶代程度(500円?)
参加方法:js-intro1 AT kiwanami.netにメールを送るテーマ:楽しくなるコーディングについて語る
話し手:
- id:brazil - (ネタ準備中)
- id:kiwanami - (JSの勉強の仕方とは?、小ねた:作ったもののうちどれか)
- 藤田さん - (謎のステータスコード12152)
- 今門君 - (mozreplやjavascript-mode)
- ヌーラボから誰か
中心になるのはJavaScript周辺ですが、Perl,PHP,Java,Curlなど、Web周辺で
オチが「楽しい」と「JavaScript」に持っていければ何でもOK。分野やトピックの例:
・JSの勉強の仕方・はじめ方 ← 辛くない始め方
・学習の順番、言語とアルゴリズム、実装と設計、情報源
・ソース読む:Prototype.js、その他写経すべきライブラリなど・JSの開発方法 ← 辛くない開発
・開発環境
→エディタ、リファレンス、デバッグ、コンソールなど・サーバー技術との絡み ← 異なる言語をどう楽に扱うか
・GWTとかRJSとかJSFとか、JSを隠すもの(本当に使えるのか?)
・WebAPI
・全部JS・デザインとの絡み ← CSSやHTMLがスパゲティにならないように
・CSSとJS
・ユーザーインタフェース、ユーザビリティ一般
・Web標準・その他
・小ねた
・作ったもの自慢
・調べた、最近分かった、面白いトピックなど
・他所のJS紹介とか形式:
一人あたり、20分講演+10分議論で、2人毎に10分休憩。内容や当日の雰囲気に
よっては増減有。今回は日が短いので、ネタ提供を基にしてみんなで語り合う
という形。まずは、0次会として一度やってみて、どうするか考えてみようという方針。