what are alternatives to throwing exceptions in objective c - Stack Overflow
@throw よりも NSError を使う方が "the Apple recommended pattern" とのこと。確かに Cocoa Framework では例外より NSErrorを使う方が多い。
iPhone開発で便利なcocoa.vim - hellkite 日記と雑記とメモ。
MacVimとcocoa.vimで世界が変わった - Meltdown Countdown
VimでCocoa開発する話題。普段 PHPアプリなどは vimを使っているので気になる。
Cocoa nonatomic properties - Stack Overflow
プロパティ設定で "nonatomic"をつけない場合、ロック/アンロックのオーバーヘッドがかかる。
- - - -
今回も少なかった。
2010年6月6日日曜日
今週のCocoa情報(6/6) - 今週気になった Cocoaプログラミング情報の紹介
2010年5月30日日曜日
今週のCocoa情報(5/30) - 今週気になった Cocoaプログラミング情報の紹介
How to get macos Log-in User Name in objective-c - Stack Overflow
Q)ログイン中のユーザ名を取得するには?
A)NSUserName() を使う
Foundation Functions Reference
他にも
NSFullUserName
NSHomeDirectory
NSHomeDirectoryForUser
なんてものがある。
Break on EXC_BAD_ACCESS in XCode? - Stack Overflow
EXC_BAD_ACCESS 解決に NSZombieEnabled を使う件。
CocoaDev: NSZombieEnabled
Cocoa Singleton conventions - Stack Overflow
Q)シングルトンパターンを使う場合のメソッド名は default〜 と shared〜 のどちらが良いか。
(例) NSSingletonObject *so = [NSSingletonObject defaultSingleton]; VS NSSingletonObject *so = [NSSingletonObject sharedSingleton];
A)
shared〜 :このメソッド以外(お約束として)インスタンス生成ができない場合(真の?シングルトン)
default〜:自分でも作成可能だが、クラスがデフォルトインスタンスを提供する場合
なるほど。
参考)
Cocoa Fundamentals Guide: Cocoa Design Patterns - Singleton
how to rename or change file name case on the same location in objective-c - Stack Overflow
Q)ファイル名の大文字小文字を変換したい
(例)abc.txt => (ABC.txt or Abc.txt or abc.TXT or abc.Txt)
- (BOOL)movePath:(NSString *)source toPath:(NSString *)destination handler:(id)handlerは、この用途では使えない。
A)ヒント↓
Possible Bug in NSFileManager -moveItemAtPath:toPath:error: | Cocoabuilder
systemコール "rename" を使ったらどうか、とのこと。
-fileSystemRepresentation で C文字列が取得できるのでそれを使う。
OCUnitの使い方(Cocoa Application 編) ([SM gakusyuu];)
環境の用意からテストケースの作成までの日本語解説。図入りで分かりやすい。
Cocoa Fundamentals Guide: Cocoa Design Patterns
一つ前の情報で紹介したものだが、こんなものがあったのか。
2010年5月23日日曜日
今週のCocoa情報(5/23) - 今週気になった Cocoaプログラミング情報の紹介
GCDを試してみる - As Sloth As Possible
面白い。参考になった。
Best way to do interprocess communication on Mac OS X - Stack Overflow
MacOSXでの プロセス間通信の方法について。
・Control files
・Sockets
・Distributed objects
など。
get the position of icons on the Desktop (cocoa OSX) - Stack Overflow
デスクトップアイコンの位置を取得するには?
⇒ FSGetCatalogInfoBulk を使う(らしい)。
File Manager Reference - FSGetCatalogInfoBulk
Legacy: Finder Interface Reference
How to move a symlink to the trash? - Stack Overflow
シンボリックリンクをゴミ箱へ捨てるには?
⇒ FSPathMakeRefWithOptions() で FSRef を作り、それを FSMoveObjectToTrashSync() へ渡す。
Get text under mouse cursor in mac osx leopard/snow leopard - Stack Overflow
マウス下のテキストを取得するには?⇒かなり困難。OCRを使う?
Dictionary Services Programming Guide: Introduction
Dictionary Service なんてあったのか。知らなかった。標準の辞書.app に辞書コンテンツが追加できるようだ。
VideoDecodeAccelerationフレームワークが押し上げるMacのH.264再生環境 - builder by ZDNet Japan
Mac OS X 10.6.3 から「VideoDecodeAcceleration.framework」が追加されたらしい。次期 Snow Leopard用 Flashで使われる予定とのこと。
Face Detection API for Objective-C - Stack Overflow
顔認識の方法は? ⇒ OpenCV が使える。参考リンクなど。
Pointers to good reference on writing AppleScriptable Cocoa project? - Stack Overflow
Cocoa Scripting に関するリンク
2010年5月16日日曜日
今週のCocoa情報(5/16) - 今週気になった Cocoaプログラミング情報の紹介
Adding Help to a Cocoa App - Stack Overflow
Cocoaアプリのヘルプページの作り方。ADCにマニュアルあり。
Apple Help Programming Guide: Authoring Apple Help
PerlエンジニアのためのObjective-C Blocks入門 - unknownplace.org
RubyエンジニアのためのObjective-C Blocks入門 - As Sloth As Possible
BlocksでNSArrayにmapメソッドを生やしてみる - As Sloth As Possible
blocks の話題。参考になる。
- - - - -
最近は iPhone 関連の情報が多い。Mac OS プログラミング人口は減っているのだろうか(って、元々少ないか)。
2010年5月9日日曜日
今週のCocoa情報(5/9) - 今週気になった Cocoaプログラミング情報の紹介
mouseover detection in NSTableView's NSCell? - Stack Overflow
NSTableView 上のセルで mouseover イベントを取るには?
以前、この話題は少し扱ったことがある。参考まで。
Cocoaの日々: NSTableView にカスタムセルを表示する (11) ボタンをつける〜NSCellのマウスイベントの扱い
Cocoaの日々: NSTableView にカスタムセルを表示する (12) ボタンをつける〜NSTableViewのサブクラスでマウスイベント処理
Smooth arcs in quartz? - Stack Overflow
Roundrect の角を綺麗に描くには?
対するコメントで
rect = CGRectInset( rect , -0.5 , -0.5 );
I found this at the very same moment. In my case it is positive offset that helped.とあった。
ほー。
いつか試してみよう。
Leopard プレビュー.appの底力 - ザリガニが見ていた...。
開発情報ではないが気になったので。SimpleCapとの連携でプレビューは非常に重宝している。
How to check if a BOOL is null? - Stack Overflow
が
mySTUser.current_user_following = [[results objectForKey:@"current_user_following"]boolValue];
となる。そうならない為のチェック方法について。
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSNull boolValue]: unrecognized selector sent to instance
とか
id vUser = [results objectForKey:@"current_user_following"]; if (vUser != [NSNull null]) { // do stuff... } else { // handle the case appropriately... }
後者の方がいい感じがする。
if (NSValue* val = [results objectForKey:@"current_user_following"]) { mySTUser.current_user_following = [val boolValue]; }
iPhone: static method vs. sharedManager in Objective-C - Stack Overflow
singleton/shared-managed pattern の適用について。
Enforcing a unique instance at runtime is the only valid reason to use the singleton/shared-managed pattern.乱用について戒めのお言葉など。
However, just like the singleton pattern, utility class methods can tempt you into becoming lazy and overusing them in places they don't really belong. Overused, they begin to make the app look like an old school, non-object oriented C collection of independent functions. This breaks encapsulation and modularity and makes your program a tangle of procedural code.
Regex solution for Objective-C - Stack Overflow
- Desktop: RegExKit like Mr. Vile mentioned.
- iPhone: RegExKitLite works great.
Have a try with CSRegex: http://www.cocoadev.com/index.pl?CSRegex
Core Dataの自動マイグレーション | hippos-lab::blog
Core Dataのマイグレーション(手動編) | hippos-lab::blog
調べようと思っていたものだったのでグッドタイミング。あとで読む。
2010年5月2日日曜日
今週のCocoa情報(5/2) - 今週気になった Cocoaプログラミング情報の紹介
NSArrayController 関連で少し。
How to get notified of changes to models via an NSArrayController? - Stack Overflow
NSArrayController 経由でモデルの変更を知るには? KVO と 自前で NSNotificationCenter にポストする方法,
bind:toObject:withKeyPath:options: をオーバーライドする方法が紹介されていた。先日の SimpleCap改修では一番簡単な KVO を使った。こんな感じ。
Chris Hanson - NSArrayController design patterns
NSArrayController を使う場合で、それがバインドしている NSMutableArray を操作しても KVO通知がブロードキャストされない件について。
という方法が紹介されていた。or you can do[[self mutableArrayValueForKey:@"buddies"] addObject:buddy]
[self insertObject:buddy inBuddiesAtIndex:[self countOfBuddies]]
先日の SimpleCap 改修でもこの現象は把握していたので、この時には NSMutableArray操作後に -[NSArrayController rearrangeObjects] を呼び出して NSArrayController を強制的に更新していた。NSArrayController だけでモデルの操作が完結できればいいのだが、NSMutableArrayの方が操作メソッドは充実しているので、こちらを直接触った方が効率がいい。
Cocoa Bindings Examples and Hints
x
Cocoa Bindings のサンプルが10以上提供されている。今度眺めてみよう。
2010年4月25日日曜日
2010年4月18日日曜日
今週のCocoa情報(4/18) - 今週気になった Cocoaプログラミング情報の紹介
OS Xの開発者がフォローすべきTwitterアカウント5選 - builder by ZDNet Japan
これはいい。早速フォロー。
Objective-C @class vs. #import - Stack Overflow
StackOverflowのポイント?がこんなについているのは珍しい。
NSRunAlertPanel shows up behind the "active window" - Stack Overflow
how to ignore hotkeys in os x - Stack Overflow
hotkeysの無視の仕方。
Tool to monitor HTTP traffic - Stack Overflow
HTTPモニタリングツールの紹介
Charles Web Debugging Proxy • HTTP Monitor / HTTP Proxy / HTTPS & SSL Proxy / Reverse Proxy
(シェアウェア/$50)
Securing Coredata objects - Stack Overflow
CoreDataのデータを暗号化したい。
NSTableView小特集
KATI » NSTableView
なお 10.6 ではドラッグ&ドロップができない。以前書いたように下記のメソッドの実装が必要。
これでドラッグ&ドロップができるようになる。
2010年4月11日日曜日
今週のCocoa情報(4/11) - 今週気になった Cocoaプログラミング情報の紹介
MGTwitterEngine – Twitter from Cocoa » Matt Legend Gemmell
Cocoa向け Twitter用ライブラリ。
Retrieving Spotlight query used to open document in application - Stack Overflow
Spotlight のクエリ文字列を得る方法は?
How to dynamically replace a method implementation in ObjC2? - Stack Overflow
Method Swizzling の話題
JavaScriptをObjective-C風に拡張した「Objective-J」を利用するWebアプリケーションフレームワーク「Cappuccino 0.8」登場 - SourceForge.JP Magazine : オープンソースの話題満載
ポイントを抜粋すると:
Obejective-JはJavaScriptをベースに、Objective-C風のクラス機構やメッセージング機構を追加したプログラミング言語。
Cappuccinoには米AppleがMac OS Xなどで採用している「Cocoa framework」やGNUstep(OPENSTEP/Cocoa互換ライブラリ)の主要なAPIが実装されており、HTMLやCSSの知識がなくともWebアプリケーションを作成できるという。またJavaScriptとの互換性も保たれており、既存のJavaScriptコードはそのままObjective-Jのコードとしても実行できるとのこと。
Cappucinoで作成したWebアプリケーションの実行に特別なランタイムは不要で、Objective-Jで記述されたコードはJavaScriptで実装されたObjective-Jランタイムで解釈・実行される。
第11回.Audio Fileを再生する(1) | My Codex Leicester
2010年4月4日日曜日
今週のCocoa情報(4/4) - 今週気になった Cocoaプログラミング情報の紹介
HUD小特集
binarygod's BGHUDAppKit at master - GitHub
画像ではなく Cocoaで描画しているのが特徴(解像度に依存しない、という触れ込み)。
Chad Weider » DarkKit
オリジナル HUD向けコントロール。
その他
More iPhone 3 Development: Tackling iPhone SDK 3 (Beginning) / Part I : Core Data - Natsu's iPhone App
ブログ "Natsu's note" による iPhone本のブックレビュー。「Core Data 勉強日記」として
Cocoa Snippets
Cocoa向けGUIライブラリの紹介サイト。スクリーンショットが掲載されていてわかりやすい。
Sean Patrick O'Brien
"Resolution Independent" なコントロールについて。サンプルコードあり。
Is it good practice to put private API in the .m files and public API in .h files in Cocoa? - Stack Overflow
プライベートAPI実装の good practice は?
⇒ Class Extension
Mac Dev Center: The Objective-C Programming Language: Categories and Extensions
NSPredicate : テンプレートを利用した生成方法(パフォーマンス改善) - Natsu's iPhone App
ほう。
Xcode のプロジェクト名を変更するには - 24/7 twenty-four seven
おー。そんなに簡単だったのか。







