2013年12月31日火曜日

macOS Mavericksの容量とXcodeの容量


Mavericksのクリーンインストール後のディスク容量と、
更にXcodeのインストール後のディスク容量を調べました。
スクリーンショットのサイズかわっちゃった・・・。

・Mavericksインストール直後。使用12.5GB程度か。「その他」が多い。


・Xcodeインストール後。15GB程度に。Xcode自体は2.5GBてとこか。
 ・・・って、「その他」どこいった。
 Mavericks、おめーは「その他」か「アプリ」かはっきりしろ。
てかこんなに空くんだったらSSD手持ちの40GBでよかったやん。


MacBook Pro をSSDに換装してMavericksをクリーンインストール

mac環境をリフレッシュすべく、クリーンインストールしようと決意。
モデルは「MacBook Pro 15-inch、Late 2008」です。
ついでにSSDを入手して換装しました。
これで我々はあと10年戦える!

① 準備

② HDD→SSDに換装
  バッテリーカバーを外して、HDDドライブを取り外し。
  交換自体は+ドライバーだけですが、HDDのマウンタ?(足みたいなの4つ)を外すのに星形ドライバーが必要です。

③ 復元ディスクをさしてoption押しながら起動
  セットアップ画面が立ち上がるので、画面に従ってインストール。
  OS本体はAppleからダウンロードされるので、「残り時間11時間です」からのスタート・・・
  一日作業です(放置ですが)。


以上。

2013年11月21日木曜日

iPadAirを購入したので、ヨドバシでiPad2を買い取ってもらいました

ヨドバシアキバでiPad Airを購入しました。

11月現在、買い替えキャンペーンで旧機種買い取り10%金額アップだそうで。
以前使っていたiPad2を買い取りに出しました。

査定価格は13500円になりました。結構いい値段だと思います(Air高かったし)。

上限価格はiPad2(16GB)の場合は15000円でしたが、
「使用感による減額で10%マイナス」とのことで上記価格に。
2年間使い倒したとはいえ、傷もない美品だと思っていただけに残念。

以下、流れ。

仕事終わって18時過ぎにヨドバシアキバにGO。
とりあえず1Fのmac売り場で「iPad2持ってきたんですけど。Air購入のレシートもってきましたー」「2Fの買い取りカウンターへお願いしますー」で2Fへ。



2F隅の買い取りカウンターへ。
よく彷徨いてるから場所はしってたけど分かりづらい場所。書籍と鞄の売り場の間。
「買い取りお願いしますー」「査定に30分ほどお時間頂きますー」でその間に飯屋に。



「査定価格13500円ですー」「分かりましたー」で買い取り書類にサイン。
「買い取りのお金をご用意するのに10分ほどお待ちいただきますー」
「じゃあそのへんで本見てますー」と言って2F彷徨いてたら探されてしまった。
で、買い取りカウンターではなくレジへご案内。



本コーナーのレジにて13500円お渡し。完了。

2013年6月9日日曜日

Ruby技術者試験(Silver)自分用まとめ

公式サイト掲載の出題範囲を元に、出題予想問題の間違いやすいところのまとめ。

【実行環境】
   * 実行方法
   * コマンドラインオプション
  → ARGV[0]とか、コマンドライン引数の拾い方。
   * 環境変数
   * irb

【文法】
   * コメント
   * リテラル
  → ヒアドキュメント。
    「-」の 有無で、終了キーワードのインデント可否を問う。
  → ””と’’の違い。
    「”#hoge”」は式展開され、直前の変数hogeの値が文字列出力される。
    あと、「"hoge" 'hoge'」のように空白挟んでも一文字列となる。
    0で始まるのは8進数。
    'hoge'を%q!hoge!と指定できる。!を'として扱うという意味。
    ?\nだと\nの文字コードが出力される。
             指数表現について、3e-2 は 3.0*10-2乗を表す。
  → 正規表現
    最低これだけ以下だけ覚えておく。
    []は中に列挙した、いずれかの文字にマッチする。
    [^]がついた場合、括弧内に列挙されていない文字にマッチする。  
    \Aは文字列の先頭を指定する。
    \Zは文字列の末尾を指定する。
    \Sは空白以外。
    String#scan

   * 変数/定数とスコープ
  → (ローカル変数)頭文字が英字小文字か_、二文字目以降が英数字。
  → 問題「偽になるものを選べ」・・・nil、false
  → 問題「コード例外が発生しないものを選べ」
    スコープに注意。以下パターン参考。
    a) 変数が参照できずNameError例外が発生する
    b) 代入は実行されないが、宣言のみ有効となり、変数の中身はnil
    c) ブロック外の宣言、ブロック内で代入は可能
    d) 宣言されていない変数の自己代入は不可
    e) ブロック内で宣言した変数はそのブロック内のみ有効

   * 演算子
  → 再定義できないのは、=、?:、..、…、&&、and、||、orなど。
    私見だけど、基礎的な構文(C言語とかにもあるような)は再定義不可か。
    Arrayだと+、[]、<=>とかは再定義できる。
   * 条件分岐
   * ループ
   * 例外処理
  → begin/rescue/ensure
   * メソッド呼び出し
   * ブロック
   * メソッド定義
   * クラス定義
   * モジュール定義

【組み込みライブラリ】
   * 組み込み関数
   * 組み込みクラス
  → eqlとequalの差。
    eqlが値比較でequalはアドレス比較。
  → hashとarrayのメソッド。
    似てるの多いけどindex使う関数なんかはhashにはないので注意。
  → Arrayクラス頻出メソッド。
    map/collect
    &
    concat
    compact
    find/detect
    inject
    delete
    reject
    -
    |
    +
    slice
    join
    sort (<=>(大小比較)の定義が必要)
  → Hashクラス頻出メソッド
    length
    invert
    delete_if
    clear
    invert
  → Stringクラス頻出メソッド
    index
    delete(範囲指定)
    split
    chomp
    chop
    -はないので注意
  → Fileクラス頻出メソッド
    dirname
    open(引数)
    seek
    join
  → Dirクラス頻出メソッド
    glob 
  → IOクラス頻出メソッド
    seek
  → Timeクラス頻出メソッド
    strftime(書式指定文字列)
    %Y年(4桁)と%y(年2桁)
    %m月
    %M分

【オブジェクト指向】
   * ポリモルフィズム
   * 継承
  → class huge < object ; end
 * mix-in
  → includeメソッドで複数のモジュールをクラスに取り込むことができる
  → extendメソッドで特定のオブジェクトにモジュールを取り込むことができる

こんなもんかな?
とりあえず以上。

2013年2月3日日曜日

rubyの破壊的メソッド

【破壊的メソッドとは】

 『オブジェクトの内容を変更してしまうメソッドで、文字列や配列、ハッシュ などにあります。同名のメソッドがあって、一方はオブジェクトのコピーを 作って返し、もう一方は変更されたオブジェクトを返すようになっている場合、 !のついた方が破壊的メソッドです。ただし、!がつかないメソッドの中にも String#concatのように破壊的なものはあります。』

【破壊的・非破壊的の両方が存在するメソッド】
String#chop、chop!
String#chomp、chomp!
(あとで追記)

【破壊的しかないメソッド】
 String#concat
 String#shift
 String#unshift
 String#pop
 String#push
(あとで追記)

【私見・疑問】
 ・破壊かどうかは覚えないとだめなのか?
  → 覚えるしかない。
    自分で定義する場合はどちらか分からなくならないように、
    両方定義したほうがいいのかも