■
MacBook Air 11インチ欲しい!
自宅用に11インチあるけど、会社用にも1枚欲しい!
ほんと、MacBook Air は、何枚あっても足りないぜよ。
macbookにインストールしているアプリケーション
macbook pro 15, macbook air 13, macbook air 11 にインストールしているアプリケーション。
- Atok 2009
- 日本語入力。
- Google日本語入力と比較して、普通の単語変換をしてくれるので使用。
- Atok 2010の新機能は必要なかったので2009のまま使用。
- Quicksilver
- コマンドランチャー。
- HotkeyでQuicksilverを起動→起動したいアプリケーションのスペルを入力で、アプリケーション起動するので非常に重宝。
- このアプリケーションがあったので、macに乗り換えられた。
- Quicksilverから殆どのアプリケーションを呼び出すので、Dockにはアプリケーションを登録していない。
- Firefox addon
- TextWrangler
- テキストエディタ(メイン)。
- Cmd+[,Cmd+]でインデントの上げ下げが出来るので使用。
- Kod
- テキストエディタ。
- Cool。UIが自分好み
- まだ、Version 0.0.3なので今後に期待。
- homebrew
- Eclipse IDE for Java Developers 3.5 Mac OS X 64bit
- IDE
- 3.6だと、コンテンツアシスタントが遅い問題とsubversiveのインストールに失敗する問題があったため、3.5を使用している。
- Eclipse Subversive Plugin
- Subversionプラグイン。
- git用のプラグインをインストールすると、ショートカットキーが被るので、使い分けをどうするか悩んでいる。
- iStat menus
- システム情報をメニューバーに表示。
- シェアウェアになる前の、1つ前のバージョンを使用。
- 何故か、ネットワークのUP/DOWNスピードが表示されない。
- Perian
- コーデック。
- Flip4Mac
- QuickTime PlayerでWMVを見る。
- AppCleaner
- アプリケーション アンインストーラー。
- VMware Fusion
- 仮想PCソフト。
- Xbench
- TimeMachineEditor
- バックアップ実行のサイクルを日 / 週 / 月単位で指定。
- LangSwitch
- アプリケーション毎にデフォルト以外の言語で起動できる。
- MacZip4Win
- Windowsで開いても文字化けしないzipファイルを作成。
- MainMenu (シェアウェア)
- メンテナンスツール。
- StartupSound.prefPane
- 起動音の大きさをコントロール。
eclipseに対応したmavenマルチモジュール プロジェクトの作成
maven3でマルチモジュールプロジェクトを作成する場合、デフォルトのディレクトリ構成では、親プロジェクト ディレクトリの下に子プロジェクト ディレクトリを格納する形になる。
例: 親プロジェクトが guide-ide-eclipse、子プロジェクトがguide-ide-eclipse-site、guide-ide-eclipse-core、guide-ide-eclipse-module1
問題点
親プロジェクトと子プロジェクトには依存関係がある。そのため、親プロジェクトディレクトリからのディレクトリ構成が必要になる。
eclipse上のsubversionから親プロジェクトをチェックアウトした場合、子プロジェクトはjavaプロジェクトとして認識されない。
一旦、親プロジェクトをeclipseから削除(物理削除はしない)した後で、子プロジェクトを個別にインポートする必要がある。
これは、面倒ということで親プロジェクト ディレクトリと子プロジェクト ディレクトリを同じ階層に持つ構造に変更する。
例:
eclipseに対応したmavenマルチモジュール プロジェクトの作成
親プロジェクトの作成
$ mvn archetype:create -DgroupId=guide.ide.eclipse -DartifactId=guide-ide-eclipse $ cd guide-ide-eclipse/
親プロジェクトの設定
- 不要なsrcディレクトリを削除
- project/packaging 要素を 「pom」に変更。
- project/modules 要素を追加。
- project/dependencies 要素を削除。
$ rm -rf src $ vi pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>guide.ide.eclipse</groupId> <artifactId>guide-ide-eclipse</artifactId> <version>1.0-SNAPSHOT</version> <packaging>pom</packaging> <name>guide-ide-eclipse</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <modules> </modules> </project>
子プロジェクトの作成
$ mvn archetype:create -DgroupId=guide.ide.eclipse -DartifactId=guide-ide-eclipse-site $ mvn archetype:create -DgroupId=guide.ide.eclipse.core -DartifactId=guide-ide-eclipse-core $ mvn archetype:create -DgroupId=guide.ide.eclipse.module1 -DartifactId=guide-ide-eclipse-module1
※子プロジェクトの作成に成功すると、親プロジェクトのpom.xmlのproject/modules 要素に子プロジェクト名
が追記される。
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> .... <modules> <module>guide-ide-eclipse-site</module> <module>guide-ide-eclipse-core</module> <module>guide-ide-eclipse-module1</module> </modules> </project>
子プロジェクト間の参照関係の設定
guide-ide-eclipse-module1にguide-ide-eclipse-coreの設定を追加する。
$ cd guide-ide-eclipse-module1
$ vi pom.xml
guide-ide-eclipse-module1/pom.xml
<?xml version="1.0"?> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <parent> <artifactId>guide-ide-eclipse</artifactId> <groupId>guide.ide.eclipse</groupId> <version>1.0-SNAPSHOT</version> </parent> <groupId>guide.ide.eclipse.module1</groupId> <artifactId>guide-ide-eclipse-module1</artifactId> <version>1.0-SNAPSHOT</version> <name>guide-ide-eclipse-module1</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>guide.ide.eclipse.core</groupId> <artifactId>guide-ide-eclipse-core</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>
動作確認
ここまでが、通常のmavenマルチモジュール プロジェクトの作成手順になる。
正常に作成できたか確認するため、プロジェクトのインストールとeclipse関連のファイルの生成を実行する。
$ cd ..
$ mvn install
$ mvn eclipse:eclipse
親プロジェクト ディレクトリと子プロジェクト ディレクトリを同じ階層に持つディレクトリ構成に変更
mavenのディレクトリ構成をeclipseで使いやすいディレクトリ構成に変更する。
変更前のディレクトリ構成
変更後のディレクトリ構成
- guide-ide-eclipse
- pom.xml
- guide-ide-eclipse-site
- pom.xml
- guide-ide-eclipse-core
- pom.xml
- guide-ide-eclipse-module1
- pom.xml
前の動作確認で作成したインストールとeclipse関連のファイルは削除しておく(必要ないかも)。
$ mvn clean $ mvn eclipse:clean
guide-ide-eclipseディレクトリを作成し、親プロジェクトのpom.xmlを移動する。
$ mkdir guide-ide-eclipse $ mv pom.xml guide-ide-eclipse/
project/modules 要素の参照設定を変更する。
$ cd guide-ide-eclipse
$ vi pom.xml
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> .... <modules> <module>../guide-ide-eclipse-site</module> <module>../guide-ide-eclipse-core</module> <module>../guide-ide-eclipse-module1</module> </modules> </project>
以上で、設定手順は完了になる。
もし、relativePathが何とか、のエラーが出た場合、子プロジェクトのproject/relativePath要素に親プロジェクト ディレクトリの参照を追加する。
guide-ide-eclipse-module1/pom.xml
<?xml version="1.0"?> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <parent> <artifactId>guide-ide-eclipse</artifactId> <groupId>guide.ide.eclipse</groupId> <version>1.0-SNAPSHOT</version> <relativePath>../guide-ide-eclipse</relativePath> </parent> .... </project>
参考資料
下記のURLの内容を抜粋したので、原文読んだ方が分かりやすいかも。
Macbookのセキュリティ強化
Macbookのセキュリティ強度を少しだけ上げた。
自動ログイン:OFF & Firewall:ON
- Sytem Preferences
- Security
- Require password [ 5 minutes ] after sleep or screen saver begins: ON
- For all accounts on this computer
- Disable automatic login: ON
- Use secure virtual memory: ON
- Disable Location Services: ON
- Firewall: ON
- Advanced:
- Enable stealth mode: ON
- Security
ファームウェアパスワードの設定
ファームウェアパスワードを設定することにより、下記の設定が有効になる。
- 「C」キーを使って CD-ROM ディスクから起動する機能を無効
- 「N」キーを使って NetBoot サーバから起動する機能を無効
- 「T」キーを使って (この機能を利用できるコンピュータ上で) ターゲットディスクモードで起動する機能を無効
- 「D」キーを使ってインストール DVD の Diagnostic ボリュームから起動する機能を無効
- 起動時に「command」キーと「S」キーを同時に押してシングルユーザモードで起動する機能を無効
- 起動時に「command」、「option」、「P」、「R」の各キーを同時に押してパラメタ RAM (PRAM) をリセットする機能を無効
- 起動時に「option」キーを押して「Startup Manager」にアクセスするときにパスワードを要求
ファームウェアパスワードのインストール手順は、下記になる。
動作確認は、下記の手順で実行する。
- Mac OS X 起動時に「option」キーを押して「Startup Manager」にアクセスするときにパスワードを要求することを確認する。
詳細は、下記のURL参照。
FileVaultの設定(未実施)
FileVaultの設定はしていない。
TimeMachineでホームフォルダ全体が1つのファイルとしてバックアップされることになるので、バックアップに時間がかかるようになるから。
セキュリティを高めると、利便性が低くなるので匙加減が難しい。
(Macbook Air|Macbook Pro) の Eclipse 起動時間を測定
OSの起動時間
電源ボタンを押してからログイン画面が表示されるまでの時間を計測した。手計測なので1秒くらいの誤差はある。
- MBA 13inch Core2 Duo 1.86GHz/4GB/TOSHIBA 128GB SSD: 約13秒
- MBP 15inch Core i7 2.66GHz/8GB/INTEL 160GB SSD: 約21秒
MBPは、起動時にDVD-ROMにアクセスしている部分も遅い要因と思う。あと、VMWareも入れているので厳密な比較にはなっていない。
Eclipseの起動時間
Eclipse for Java Developer 3.5を起動してからIDE画面が表示されるまでの時間を計測した。プラグインは、subversive, android をインストールしている。
- MBA 13inch Core2 Duo 1.86GHz/4GB/TOSHIBA 128GB SSD: 約10秒
- MBP 15inch Core i7 2.66GHz/8GB/INTEL 160GB SSD: 約6秒
Core i7の分だけ、Eclipseの起動は速い。ただ、起動した後の操作(エディタ・ビューの切り替え等)は、ワンテンポだけMBAが遅いくらい。
追記:
ワンテンポ遅いだけなのだが、そのワンテンポが遅いのが気になる。MBP 15inchは、売りに出そうと考えていたが、暫く様子を見ようと思う。
Macbook Air 13inch のネットワーク転送速度
Macbook Air 13inch の有線LANと無線LANの転送速度を計測した。
有線LANは、ギガビットHUBにApple純正のUSB-Ethernetアダプタを使用して100Mbpsで接続している。
無線LANは、AirMac Exstream(5GHz, WPA2 Personal)に300Mbpsで接続している
なお、参考までに、Macbook Pro 15inch の有線LAN(1000Mbps)での接続速度も計測している。
計測方法は、16GBの単一ファイルをNASにコピーした速度を計測している。
$ time cp source.android.com.dmg /Volumes/Public/
実行結果は、下記になった。
# Macbook Air 13inch 有線LAN(100Mbps, USB-Ethernetアダプタ) real 25m0.327s user 0m0.037s sys 3m57.888s # Macbook Air 13inch 無線LAN(300Mbps, 5GHz) real 14m53.223s user 0m0.038s sys 2m38.863s # Macbook Pro 15inch 有線LAN(1000Mbps) real 7m5.913s user 0m0.040s sys 1m55.273s
思ったより、有線LAN(100Mbps, USB-Ethernetアダプタ)の速度が遅い結果になった。リンク速度からいうと一番遅いわけだが、無線LANの速度は遅いというイメージがあった。
これなら、Macbbok Airは、常時無線LANで運用しても構わないかもしれない。