RubyCocoa を始めるのにとっかかりになりそうなサイト
自分の gmail ドラフトに貯めていたんだけど、外に出した方が良いので。
Ruby しか分からないのですが、RubyCocoa を覚えるとっかかりになりそうなサイトを集めました。
RubyCocoa のよく分からないメソッド名で困ったら、使い方の例は
cd /Developer/Examples/RubyCocoa grep -R 'initWithHogefuga' *
で探せば良さそう。あとグーグルで。
Cocoa のリファレンスは Xcode から右クリックで引ける。良い。
あとグーグルでw
# ずいぶんとっちらかってます、すいません。
# コメントも自分向けだったのでかなり適当です、間違いや不適当なものがあればコメント等で教えて下さい。
RubyCocoa 入門
http://limechat.net/rubycocoa/tutorial/
LimeChat for OSX の作者さんが公開している。確かに入門にぴったりです。
とりあえずこれを2,3度なぞると簡単な GUI を被せるくらいのことは出来るようになった。
delegate や dataSource についてはこちらを参照すると良いと思う。
あと LimeChat 自体のソースコードも公開されているので、慣れてきたら眺めてみると良さそう。
http://d.hatena.ne.jp/Psychs/ で最新版のリリースがアナウンスされてるいるみたい。
あと RubyCocoa を使っているプロジェクト一覧
妄想帳: RubyでMac OS Xアプリを作る練習。
http://oent.sblo.jp/article/7470855.html
試しにRSSリーダーを作った所、100行以下の規模で、XMLパーサを持ち、テーブル表示を持ったアプリケーションを作る事が出来ました。
地味ーなデモですが、Cocoa Bindingを利用する事でModel-View-Controllerが完全に独立した実装になっています。
自分でコンパイルして動作させたところ
@xmlDoc = NSXMLDocument.alloc.initWithContentsOfURL_options_error_(urlString, 0, nil)
がうまくいってないようだった。入れる URL の形式が違う? (http://d.hatena.ne.jp/ma_ko/)
kvc_accessor というのがあるのか。Cocoa binding と呼ばれているものの1つ?
item = NSMutableDictionary.dictionary
のところが参考になった。ありがとう。
BONNOH FRACTION 13: RubyCocoa でダウンローダを作ってみる その1
http://www.fraction.jp/log/archives/2007/11/23/Implements_Downloader_by_Ruby_Cocoa
その2もある。
http://www.fraction.jp/log/archives/2007/12/03/Implements_Downloader_by_Ruby_Cocoa_2
その3が予定されてる。
多くのスクリーンショットで Interface Builder 上での操作が説明されてる。
RubyCocoa 入門を見た後で見るとイメージしやすいし、まずトライするには手頃なレベルだと思った。
splhack: AmaTunes
http://blogger.splhack.org/2007/10/amatunes.html
カメラで読み取ったバーコードのISBNをAmazonで検索して、それをオーディオブック形式(m4b)に変換してiTunesにつっこむ代物
ぼんやりと考えたこと:
http://n.h7a.org/blog/
いくつか習作がある。RubyCocoa 経由で System よりの機能をスクリプトで呼び出すことを多くされている。
めずらしい。
blog.8-p.info: RubyCocoa で Skype に iTunes で再生してる曲を表示
http://blog.8-p.info/articles/2006/12/24/rubycocoa-skype-itunes
こちらも習作1つ
ひ日誌: LeopardでのRubyCocoaアプリ作成手順を動画にしてみた
http://www.fobj.com/hisa/d/20071028.html#p01
Youtube の動画がリンクされている。雰囲気をつかむのに良いかも。
hisaさんの Youtube
http://www.youtube.com/user/hisa
ひ日誌: rWiiRemote 更新
http://fobj.com/hisa/d/20061230.html
DarwiinRemoteのソースに入っているGraphViewを使わせていただいてます。オリジナルのObjective-Cで書かれたGraphViewをOSX.ns_importして使うこともできますが(動作確認済み)、Rubyで書き直してみました。RubyCocoa で OpenGL (NSOpenGLView) を使うサンプルにもなるかと思います。また、自分の勉強がてらCocoaバインディングを使ってみました。
rWiiRemote -- rWiiRemote.appやプロジェクトファイルなど
GraphView.rb -- DarwiinRemote の GraphView を Ruby で書いたもの
WiiRemocon.rb -- kvc_accessor や kvc_depends_on を使用、ビューとバインドするモデル(兼コントローラ)に相当
マイコミジャーナル: いま知るべきRubyCocoa - Mac OS X Leopard最新情報
http://journal.mycom.co.jp/articles/2007/07/27/WelcomeToRubyCocoa/menu.html
Leopard解体新書
第1回:RubyCocoaでWebページ表示
http://builder.japan.zdnet.com/sp/07leopard/story/0,3800082822,20359550,00.htm
第2回:もっとRubyCocoa
http://builder.japan.zdnet.com/sp/07leopard/story/0,3800082822,20360029,00.htm
第3回:ブリッジサポート - RubyCocoaの秘密
http://builder.japan.zdnet.com/sp/07leopard/story/0,3800082822,20360382,00.htm
第5回:ファイル監視を行うFSEvent
http://builder.japan.zdnet.com/sp/07leopard/story/0,3800082822,20360956,00.htm
ひ日誌 FlickerViewer RubyCocoa
Hacking Life: ジョジョの奇妙な冒険→WRYYYと翻訳する翻訳機をRubyCocoaで作る
http://d.hatena.ne.jp/beatinaniwa/20071222
習作。WWW::Mechanize と Google Translate での翻訳アプリ。
RubyCocoa で Cocoa 本
http://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=RubyCocoa%A4%C7Cocoa%CB%DC
RubyCocoaを始めた人のブログ#英語
http://redochre.wordpress.com/
Review of RubyCocoa Tutorials: RubyCocoa tutorial を総ざらい
http://redochre.wordpress.com/2007/11/30/review-of-rubycocoa-tutorials/
redartisan: Core Image とRubyCocoa #英語
http://redartisan.com/tags/rubycocoa
Screen Capture via RubyCocoa
http://redartisan.com/2008/1/12/rubycocoa-screen-capture
Apple Developer Center
Cocoarepl
http://fobj.com/hisa/d/20071102.html
NSWindowなどのオブジェクトを作るショートカット的なメソッド
手っ取り早く NSWindow を作って表示したいときは、以下のメソッドを使うことができます。NSWindow.create
NSWindow.create(800, 600) # width,height
NSWindow.create(0, 0, 800, 600) # left,top,width,height
NSWindow以外にもいくつかあります。以下は使用例:NSURL.create "http://www.apple.com/"
NSURL.create "/etc/httpd/httpd.conf"NSImage.create "/Library/Desktop Pictures/Aqua Blue.jpg"
NSImage.create "http://path_to_image_url/image.jpg"NSView.create
NSView.create(360, 240)
NSView.create(0, 0, 360, 240)
NSTextField.create(300, 20)
NSButton.create(300, 20)
NSSlider.create(300, 20)
これらのメソッドはアプリケーションパッケージ内のファイル:
CocoaRepl.app/Contents/Resources/cocoa_sweets.rb
に定義されています(ソースがパッケージに含まれていて読んだり変更したりできるのもRubyCocoaの醍醐味のひとつ)。
sudo gem install syntax でコードのカラーリングがされるようになる。
gem newcocoa
http://metaatem.net/2007/05/27/your-first-few-days-on-rubycocoa
http://www.youtube.com/watch?v=aVIvapSmvC0
後でもっと良いのが無いか調べる
http://images.metaatem.net//hello_world_newcocoa2.mov
newcocoaがどんなものかはこっちで
http://www.fobj.com/hisa/d/20070527.html#p01
Rucola
Rucola is a light weight framework that helps you write RubyCocoa apps.
Rucola new version movie 1 hour !?
http://superalloy.nl/misc_files/rubycocoa/rucola_building_an_app_bdd_style.mov
# 作者さんのblog
http://www.superalloy.nl/blog/category/ruby/rubycocoa/
RubyCocoa + Scripting Bridge#英語
http://andymatuschak.org/articles/2007/11/29/ohman-scripting-bridge-is-so-cool/
Scripting Bridge でiTunes とか操作できる。appscript に近い感じだけど、どっちがいいのか。
bridgesupport # Framework の(定義) XML ファイルから、バインディングするための何かを作るコマンド??
gen_bridge_metadata
http://trac.macosforge.org/projects/bridgesupport
RubyCocoa resource#英語
http://www.rubycocoa.com/
http://www.rubycocoa.org/
code がちょこちょこ書いてある。chapter に分かれてる。cocoasheet が気になる。
RubyCocoa: sourceforge#英語
RubyCocoa を使っているプロジェクト(アプリケーション)
http://rubycocoa.sourceforge.net/ProjectsUsingRubyCocoa
RubyCocoa 関連のスクリーンキャスト
http://rubycocoa.sourceforge.net/Screencasts
Apple Developer connection
Introduction to Ruby and Python Programming Topics for Mac OS X
http://developer.apple.com/documentation/Cocoa/Conceptual/RubyPythonCocoa/Introduction/Introduction.html
Ruby Inside: The Ultimate List of RubyCocoa Tutorials, Tips and Tools
http://www.rubyinside.com/the-ultimate-list-of-rubycocoa-tutorials-tips-and-tools-728.html
Many thanks to this curious Japanese list of RubyCocoa links for inspiring some of the links in this post. Most of them are in Japanese, however!
Many thanks, too:-)
Nice matome.
ここからRubyCocoa じゃないけど
こたつつきみかん: Interface Builder3.0の使い方
http://dev.activebasic.com/OverTaker/?p=407
Xcode 3.0 でのインスタンス化を説明している。
たのしいココアを買った人で Interface Builder 2と3の画面の違いに悩んでいる人向け。
ありがとう!
Cocoa Dev Central: Build a Core Data Application
http://cocoadevcentral.com/articles/000085.php
CoreData の Interface Builder 側の操作が詳しく説明されているので、最初ここをなぞってみた。
igaiga diary: CoreDataで5分で作るデータベースアプリ
http://igarashikuniaki.net/tdiary/20060505.html#p01
動画があるので、とても分かりやすいと思う。上の Build a Core Data Application をなぞってから。
TigerのCocoaにみるMVCの完成 - スマートなデータモデルを実現するCore Data
http://journal.mycom.co.jp/special/2005/cocoamvc/
(1) CocoaのMVCモデルの発展
(2) チュートリアル - Cocoa BindingとCore DataによるGUI作成
(3) メールソフトを作成
(4) キー値コーディング
(5) キー値の監視
(6) コントローラレイヤ - Cocoa Binding
(7) NSObjectControllerとCocoa Bindingの構造
実際に自分で手を動かして、CoreData の触りを理解出来そう。
あとで試す。
CoreData3分クッキング
http://www.spice-of-life.net/wiki/index.cgi?CoreDataCooking
http://www.spice-of-life.net/wiki/index.cgi/d/?wikiname=CoreData
Apple Developer Documentation
Cocoa の日本語ドキュメントとさらに Cocoa セミナーの資料がアップされている
http://developer.apple.com/jp/documentation/japanese.html
Cocoaセミナー上級編 => CoreData
CoreAnimationガイド
http://developer.apple.com/jp/documentation/Cocoa/Conceptual/CoreAnimation_guide/Introduction/Introduction.html
Leopard解体新書
第8回:Core Animationで1000 Songsに挑戦
http://builder.japan.zdnet.com/sp/07leopard/story/0,3800082822,20362686,00.htm
MOSA
http://www.mosa.gr.jp/?page_id=19
http://www.mosa.gr.jp/?page_id=904
http://www.remus.dti.ne.jp/~yoshiki/cocoa/ed1/index.html
My Codex leicester(いつか音楽と呼ばれるもの)
http://nagano.monalisa-au.org/
# Cocoa 以外の framework の話題も多い:-)
NSHost *host =[NSHost hostWithName:@”monalisa-au.org”]; # Cocoa OSX::NSHost.hostWithName("monalisa-au.org").address # RubyCocoa