投稿

8月, 2012の投稿を表示しています

Sapporo.js - 2012/08/26 に参加してきたよ!

参加してきたのでメモー 「Javascript: The Good Parts」 の読み合わせ(前半) 前回どこだっけw p.91 array.slice からということでw array.slice(start, end) 配列の一部分のコピーを生成するよ マイナス値を指定した場合は配列の末尾側からの指定 (実際には"指定した値 + length"を指定したような扱いらしい) array.slice(0) で配列のコピーできるよ! arguments のコピーとかでもよく使われる Array.prototype.slice.apply(arguments); array.splice(start, deleteCount, item...) 配列の要素を置き換える 破壊的操作! slice とは引数の指定の仕方が異なるぜー 戻り値に削除された要素が入ってくる 戻り値とか、破壊的操作とかあんまり直感的じゃない感 array.sort(comparefn) 配列自身の中身をソートしたものに置き換える 破壊的! 戻り値もソートされてる 対象となった配列もソートされている Object.freeze を使うとソートも禁止できる この場合、sort をかけても順番は変更されない この場合でも slice でコピーされた配列についてはソート可能 // コピー後の配列をソートする a.slice().sort() 数値の配列は正しく並べ替えることはできない! 要素の並べ替えは文字列とみなしてソートしてしまうのだぜー 自分で比較関数を用意すればおk a.sort(function (a, b) {    return a- b; }); 比較関数を引数で渡せるよ 比較結果が同じだった場合に別の方法でさらに比較する、みたいなことも可能 @y_jono さんの発表 - 「Javascript: The Power of Simplicity」 初発表! おお、意外?! テーマ:Javascript の表現力は世界一ィィィー 表現力がある -> 製薬がない Javascript のオブジェクト指向で良いプログラムを書く

getopt は Mac と Ubuntu であんまりこんぱちびりてぃーないぜー。。。

イメージ
getopt コマンドは Mac と Ubuntu で互換性が低いというのにハマりました。。。 シェルなんかでオプションを処理するのに使用する getopt コマンドというのがあります。 この getopt、Mac 環境のもの(BSD)と Ubuntu 環境のもの(GNU)で提供しているオプションとかが結構違うみたいなのです。 github にあげている dotfiles のセットアップ用シェルがうまく Mac 環境で動いていなくて、原因を調べたらどうやらこれのようでした。。。 経緯は知らないのですが、GNU で拡張された部分が大量だったってことなんでしょうかねぇ。。。 Mac での man ページ。オプションに関する説明が全然ない。。。 Ubuntu 環境での man ページ。ちょっとしか写ってないけど、オプションの説明がちゃんとしている。。。 ちなみに getopts というのもありますが、こっちは bash とかの組み込み関数。用途は似たような感じ。確かロングオプションをサポートするのに getopt を選択したように覚えています。

Ruby & アジャイル開発セミナーに行ってきたよ!

2012/8/6 の "Ruby & アジャイル開発セミナー"に参加してきました! 内容的には"そうだよなー"っていうこととか"なるほどなー"っていうことが多くて、本当に参加してよかったなぁという内容でした。 特に心に残ったのは次の言葉達です! 新しい言語を学ぶときに大切なのは周りにその言語を好きな人がいるか "とにかく粘り勝ち" さっさと失敗してもらう  "KPT で Problem ばっかり出てつらいときは Keep と Try だけにしてみる"