人工無脳が作りたかった このページをアンテナに追加 RSSフィード

2011-12-22

[][][]AppCodeを使う時知っていると幸せになれそうな事 多分その1 10:00 AppCodeを使う時知っていると幸せになれそうな事 多分その1 - 人工無脳が作りたかった を含むブックマーク AppCodeを使う時知っていると幸せになれそうな事 多分その1 - 人工無脳が作りたかった のブックマークコメント

AppCodeを使う時に、知っていたり、設定してあると幸せになれる事を幾つかまとめました、他にも色々あると思うけど、ぼくが幸せなヤツを。


設定画面は、Macではおきまりの「cmd+,」で開く事が出来ます。
左上のテキストボックスに適当な単語を入れて検索することが出来るので活用しましょう、左側の項目が絞られるだけではなく、左側の詳細画面も検索語句に引っかかる部分だけがハイライトされて表示されるので迷いません。
f:id:happy_ryo:20111222031717p:image

行番号を表示する


基本ですね。AppCodeではデフォルトではOffになっているのでOnにしましょう。
設定画面を開いて「line number」で検索してから、Editor→Appearanceと選択すれば、ハイライトされている該当項目が見つけられると思います。

f:id:happy_ryo:20111222031804p:image:w640

インクリメンタルサーチショートカットを割り当てる


インクリメンタルサーチが無いと、生命の危機を感じることがありませんか?ぼくはありませんけど、Keymapから設定することが出来るので好みのキーに割り当てましょう。
Keymapの画面で、テキストボックスに「Incremental search」と入れるとフィルタリングをかけることが出来ます。


フィルタリング
f:id:happy_ryo:20111222032013p:image


操作名をダブルクリック
f:id:happy_ryo:20111222032012p:image


キーを入力して設定する
f:id:happy_ryo:20111222032011p:image

インクリメンタルサーチ


インクリメンタルサーチはこんな感じ、普通の検索と何が違うの?と思われるかも知れませんが、任意の場所に移動した後そのまま作業できる、という点が通常の検索と異なります。
普通の検索(cmd+f)は、正規表現を使いたい時何かに便利です。
f:id:happy_ryo:20111222032158p:image

デバッガ

Xcodeデバッガよりも見やすくて楽だと思っています。ブレイクポイントの設定に関してはXcodeとたいして変わりません。
詳しく書こうと思ったけど今回は心が折れました。今度書きます。

Live Templates

よくあるアレです。
allocって入れてTabを叩くと.[.[ alloc] init]に展開されたりします(「.」は入りません)。設定画面の同名の項目内でデフォルトで登録されている物を確認する事が出来ます。自分でテンプレートを登録することも可能です、テンプレートエディット機能は強力で、細かい設定が可能です。

Xcodeのファイルテンプレートが使える

File→Newのメニューの中にFile from Xcode Templateという項目があるのでそれを選択すると、テンプレート選択のウィンドウが開きます。
f:id:happy_ryo:20111222032604p:image

各種ショートカットキー


補完 < Ctrl+space >

言わずと知れたアレです

クイックフィックス < Alt+enter >

警告が出たところでは取りあえずこれを押す

自動生成 < cmd+N >

自動生成系のメニューを開きます
f:id:happy_ryo:20111222032626p:image

オーバーライド < Ctrl+O >

オーバーライドするメソッドを選択するウィンドウを開きます。開いたウィンドウ内ではインクリメンタルサーチメソッドを検索する事が出来ます。
f:id:happy_ryo:20111222032648p:image

Implement < Ctrl+I >

プロトコルに定義されているメソッドを表示・選択するウィンドウが開きます。主な操作は、オーバーライドメソッドのウィンドウと同一です。

クラス名指定での移動 < cmd+O >

クラス名を指定して移動することが出来ます。Shiftを加えるとファイル名を指定しての移動が可能になります。
f:id:happy_ryo:20111222032714p:image

クラスのドキュメントを開く < Ctrl+J >

ドキュメントのあるクラスであれば、このショートカットでドキュメントを開くことが出来ます。
f:id:happy_ryo:20111222032737p:image

リネーム < Shift+F6 >

変数名とか変えるアレです。

メソッドのSignatureを変更する < cmd+F6 >

メソッド名や引数リファクタリングします。

コメントアウト < cmd+/ >

選択されているラインをコメントアウトします。

実行 < Ctrl+R >

作成中のアプリケーションを実行します。

デバッグ < Ctrl+D >

作成中のアプリケーションデバッグ実行します。F8でステップオーバーします。

宣言に移動 < cmd+B >

キャレットのある位置のクラスやメソッドの宣言された場所へ移動します。

バージョン管理系 < Ctrl+V >

バージョン管理系のウィンドウを開きます。
f:id:happy_ryo:20111222033152p:image

ウィンドウ移動系 < Ctrl+←→ > or < Ctrl+Tab > or < cmd+1~7・9 >

試してみてください。

行番号指定移動 < cmd+L >

名前の通りです。

メソッド単位での移動 < Ctrl+↑↓ >

メソッド単位で移動できます。

操作名を指定して実行 < Shift+cmd+A >

やりたいことを入力すると実行できるウィンドウが開きます。ショートカットが割り振られている操作は、操作名とあわせてショートカットキーも表示されるので便利です。最悪これだけ知っていれば、何となくやりたいことを入力してみると何とかなります。
f:id:happy_ryo:20111222033622p:image:w640




どんなIDEも、はじめは覚えることが多いですね。
時間があればAppCodeのチュートリアルとか、使い方とか書いてみたいけど、圧倒的に時間が足りない。
いや、速さが足りない。

2011-12-11

[][][]XCodeからappCodeへ乗り換える8つの理由 02:41 XCodeからappCodeへ乗り換える8つの理由 - 人工無脳が作りたかった を含むブックマーク XCodeからappCodeへ乗り換える8つの理由 - 人工無脳が作りたかった のブックマークコメント

以前、タイトルに「(数字)の理由」とか入れるとブクマが伸びると教えられましたが嘘だと思っています、happy_ryoです。
このエントリはiOS Advent Calendar 2011の11日目です。
昨日は、@watermint さんのエントリでした。


appCodeはJetBrains社が開発した、XCode代替IDEです。 InterfaceBuilderに対応する機能は無いので、その部分はXCode4を利用する必要があります。(JetBrainsの製品では他にIntelliJ IDEAが有名ですね。)


それでは、末広がりという事で8つの理由、はじめます。

コード補完が強力


XCodeのコード補完を「残念だ」と思ったことはありませんか? プロパティメソッドの順番はバラバラ…。自分が定義したプロパティ/メソッドなのか、親クラスが元々持っていた物なのか…。appCodeを使えばそんな悩みとはおさらばです。コード補完を実行すると自分の定義したプロパティ→自分の定義したメソッド→親が持つプロパティ→親が持つメソッドと表示されて、迷うことがありません。
「キャメルケース補完が使えればどれだけ生産性が上がろうだろう…。」と思ったことはありませんか?appCodeなら当然キャメルケース補完が使えます、これでメソッド名を上手く思い出せなくても大丈夫です。
f:id:happy_ryo:20111212005230p:image
f:id:happy_ryo:20111212005231p:image

[]を書かなくて良い!


XCodeでを書く時、辛くありませんか?辛いですよね。ぼくは、この仕様を考えた人に、どうしてこの仕様にしたのかを日本語で小一時間説明して欲しいです。appCodeならその辛さを味わうことはありません、コード補完を確定した時点で必要な分だけが挿入されて幸せな気分を味わうことが出来ます。
f:id:happy_ryo:20111212005536p:image

Enter


f:id:happy_ryo:20111212005537p:image

インスタンス変数を簡単にプロパティに出来る


インスタンス変数を定義して、ショートカット(ALT+Enter)一つで簡単にプロパティとして定義することができます、同じ作業を繰り返すのが嫌いなぼくたちにピッタリですね。

f:id:happy_ryo:20111212010832p:image

Enter


f:id:happy_ryo:20111212010831p:image

クイックフィックス機能が便利


ARCが実装されて、利用頻度は減りましたが、インスタンスを生成した時にreleaseやautoreleaseを忘れていると、エディタ上で警告してくれます。それだけに留まらず、警告の出ているライン上で特定のショートカット(ALT+Enter)or警告のマークをクリックすると、releaseかautoreleaseを選択して自動で挿入すること出来るのです。
ヘッダファイルにメソッドを定義しないまま、実装ファイル側にメソッドを書いてしまっても、メソッド名のラインに警告がでて、そこからヘッダファイルにメソッドを自動で定義したり、プライベートカテゴリに定義したりすることが出来ます。
その他にも、ARCに対応していないソースコードをARCを利用したプロジェクト上で書くと、自動でARCに対応したコードにマイグレートしてくれる等、ユーザーを強力にサポートしてくれます。

f:id:happy_ryo:20111212011949p:image
f:id:happy_ryo:20111212011756p:image

リファクタリングが鬼


メソッド引数を一つ足すだけなのに、どうしてこんな苦労をしなくちゃいけないんだ…」と思ったことはありませんか?appCodeならGUI引数を追加してボタンを一つ押すだけです。(ここでは関係ないですが、JavaIDEにはじめてリファクタリング機能を実装したのはJetBrainsでした)

f:id:happy_ryo:20111212013302p:image

Shift +F6


f:id:happy_ryo:20111212013301p:image

必要項目を入力して所定のボタンを押す


f:id:happy_ryo:20111212013300p:image

スペルチェック機能が強力


英単語に自信はありますか?appCodeならあなたのタイポを的確に指摘してくれます。プロジェクト中のタイポを全部検索して表示する機能も…。
f:id:happy_ryo:20111212015316p:image

ローカライズが簡単


@””で文字列が定義されている所でショートカット(ALT+Enter)を叩くと、その文字列ローカライズするかどうかを聞いてくれます。
f:id:happy_ryo:20111212020041p:image

Structureウィンドが無いなんてあり得ないよねー


個人的にXCodeを使っていて一番違和感を感じるところはココでした。メソッド名や、インスタンス変数名なんかが見られるアレです。
f:id:happy_ryo:20111212020356p:image




しつこく、ALT+Enterとか書いていますが、Eclipseで言うところの「困ったらCtrl+1押しとけ」とか「Ctrl+2」押しとけって言われるアレと似たような感じです。この8つ以外にも、デバッガXCodeより使いやすいとか、本当はObjective-Cの話とか書いた方が良いとか、コード補完とリファクタリングデバッガだけで十分乗り換えの理由になるとか、今更ながら思っています、ぶっちゃけこのエントリを書いて後悔しているので、この後悔を胸に来年も頑張ろうと思います。


ちなみに、appCodeでは意図的にXCodeと同じプロジェクトファイルを使っていますから、ユーザーはいつでも戻りたい時にXCodeに戻る事が出来るので、取りあえず使って見ましょう。

ダウンロードページ
ブログ
機能の簡単な一覧


明日は@TonnyXuさんです!

通りすがり通りすがり 2011/12/12 20:54 XCodeじゃなくて、Xcodeですね。

ghintsghints 2011/12/14 02:02 appCodeを知らなかった身としては、非常にありがたいエントリでしたよ。
感謝です。