タグ

Objective-Cに関するdesingのブックマーク (18)

  • Objective-Cのコードを削れるだけ削る7のTips | TOKOROM BLOG

    既存記事のまとめのため新しい要素があるわけではないのですが、Appleから発表されたXcode 5が正式にリリースされる前の復習ということで。 Tipsを適用する前のコード #pragma mark - Private Category @interface Sample () @property (strong) NSNumber* i; @property (strong) NSNumber* c; @property (strong) NSNumber* f; @property (strong) NSArray* array; @property (strong) NSDictionary* dictionary; @property (strong) Sample* child; @property (strong) UIColor* color; @property (assi

    desing
    desing 2013/12/20
    コーディング
  • Objective-Cコーディング規約 | Cyber Passion for iOS

    Objective-CというかiOSのアプリ開発における自分流コーディング規約のまとめ。SDKのヘッダ、Xcodeが自動生成したコード、メジャーなオープンソースライブラリなどを参考にしました。家や大御所に合わせておくほうが無難だと思います。もちろんここに述べるものは絶対的な基準ではありません。個人的なものなので、あくまで参考ということでお願いします。 ※ 間のspaceの入れ方も決まり事としています。 ポインタ NSString *string; NSString* string派だったが、上記の方が一般的なようなので矯正した クラス、プロトコル PSImageLoader PSImageLoaderDelegate 大文字2文字のプレフィックスで始める プレフィックスはアプリケーション、ライブラリ固有のものにする 例)アプリ名Passionz -> PS メンバ変数、プロパティ メンバ

    Objective-Cコーディング規約 | Cyber Passion for iOS
    desing
    desing 2013/12/20
    プライベート変数はカテゴリを用いてプロパティとして実装したほうがいいという意見
  • blocksの落とし穴 - Qiita

    blocksには数多くの落とし穴があります。 しかしそれを乗り越えることができれば、非常にスマートにかける状況はそれなりに増えると思います。 ※注意:ここではARC環境での話です。一部MRCと状況が異なる場合があるかもしれません。 <blocksはObjective-cのオブジェクトをstrong参照でキャプチャする> ここでいうキャプチャとは、ポインタをコピーしている、ということです。 なんで?と思われる方も多いと思います。しかし理由ははっきりしていています。 例えば、dispatch_afterで処理を遅延することを考えてみましょう。 NSArray *sameArray = ...; int64_t delayInSeconds = 2.0; dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSecon

    blocksの落とし穴 - Qiita
  • Naming Properties and Data Types

    Naming Properties and Data Types This section describes the naming conventions for declared properties, instance variables, constants, notifications, and exceptions. Declared Properties and Instance VariablesA declared property effectively declares accessor methods for a property, and so conventions for naming a declared property are broadly the same as those for naming accessor methods (see Acces

    desing
    desing 2013/12/04
    公式な定数の命名規則 他
  • [Objective-C]半角英数字チェック

    NSMutableCharacterSet *checkCharSet = [[NSMutableCharacterSet alloc] init]; [checkCharSet addCharactersInString:@"abcdefghijklmnopqrstuvwxyz"]; [checkCharSet addCharactersInString:@"ABCDEFGHIJKLMNOPQRSTUVWXYZ"]; [checkCharSet addCharactersInString:@"1234567890"]; if([[filename stringByTrimmingCharactersInSet:checkCharSet] length] > 0){ //エラー処理 } [checkCharSet release]; 上のサンプルでは、チェック対象となる変数は、NSStri

    desing
    desing 2013/12/03
    半角英数字チェック
  • GitHub - nytimes/objective-c-style-guide: The Objective-C Style Guide used by The New York Times

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - nytimes/objective-c-style-guide: The Objective-C Style Guide used by The New York Times
  • Modern Objective-Cで実現するシンプルコーディングのススメ

    最近話題のシンプル&リーダブルなObjective-C “Modern Objective-C”について 一度ちゃんと調べたいと思ってたので記事にしてみました。 エントリでは、Modern Objective-Cになると何がどう嬉しいのか、 古い書き方”Legacy”と新しい書き方”Modern”の比較を通して見ていきます。 ちなみに、Modern Objective-Cの詳細については、iOS Dev Centerにて公開されている WWDC 2012の下記のセッションの資料にて詳しく説明されています。 Modern Objective-C (Patrick C Beard / Session 405) Migrating to Modern Objective-C (Session 413) また、日語情報としては下記のエントリが参考になります。 今日からライオンでも使える!XCO

    Modern Objective-Cで実現するシンプルコーディングのススメ
  • A note on Objective-C singletons - Luke Redpath

    Jul 01, 2011 A note on Objective-C singletons I'm not a big fan of singletons, especially when they are used as they often are - as glorified globals. That being said, it occasionally makes sense to have some kind of shared instance of an object; not a true singleton that strictly prevents more than one allocation, but a convenient default instance. Apple uses this pattern frequently throughout th

    desing
    desing 2012/05/30
    ARCを使ったSingleton
  • イマドキっ子の Objective-C

    イマドキの流行に敏感なキミだったらもう知ってるかもだけど、今日はそういうのに鈍感なオジサンたちのために、今風の Objective-C について書いちゃうよ。もちろん互換性的な感じで、すぐに変えられないかもってコもいると思うけど、知っててもソンじゃないから、いま覚えとこう!それとこういうのって、けっこー変わっていくものだから、半年後とかにはもう流行後れになるから注意してね! インスタンス変数 Objective-C のインスタンス変数と言えば、ヘッダの @interface に書くというのがこれまでのルールでした。典型的な例として、以下のように書いていました。 @interface MyObject : NSObject { NSString *aString; } ... @end 今風には、インスタンス変数の宣言は実装部の @implementation に書きます。 @impleme

  • iOS 5 公開記念! Objective-Cのメモリ管理の革命、 ARC 超入門(サンプルはgitHubに公開) – Zero4Racer PRO Developer's Blog

    iOS 5が公開されて、Dev CenterもWe’ll be back soon になっています。 iOS5 NDA will be gone soon! 記念に、iOS 5 のプログラム面での変化、ARCを使った簡単なサンプルをGitHubに登録しましたのでご覧下さい。 追記:うーねこ? (@ne_ko_)さんからの指摘であった、”クラス変数”という間違えた記述を、”インスタンス変数”という正しい記述に変更しました。 tomohisa/EasyBlockCallback – GitHub ARC は、メモリ管理でこれまで手動で行っていた、 Retain Release Autorelease を自動でコンパイラで行うようにさせる方式です。一定のルールに従う必要がありますが、メモリ管理に関する、Retain、Releaseを書かなくてよくなります。このサンプルには、ARCを使っているプロ

  • NSString @property, using copy instead of retain

    I'm looking over Apple's sample application EditableDetailView, and noticed that in one of their controllers, they're setting an instance of NSString property with (nonatomic, copy). When would one use copy instead of retain? Is this so they can make a unique copy without affecting the existing data?

    NSString @property, using copy instead of retain
    desing
    desing 2011/09/01
    プロパティの実装内容
  • Cocoaの日々: [iOS][Mac] dispatch_once を使ったシングルトン

    iOS/iPhone/iPad/MacOSX プログラミング, Objective-C, Cocoaなど [元ネタ] Cocoa Samurai: Singletons: You're doing them wrong GCD の dispatch_once 関数を使うとスレッドセーフなシングルトンの初期化処理をこんな感じで書ける。 static LKLocationManager* sharedManager_ = nil; + (LKLocationManager*)sharedManager { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ sharedManager_ = [[LKLocationManager alloc] init]; }); return sharedManager_; }disp

    Cocoaの日々: [iOS][Mac] dispatch_once を使ったシングルトン
  • こたつつきみかん

    Concurrency Programming Guideをざっくりと読み終えました。やはりこのドキュメントはアプリケーションの最適化のカテゴリに入るだけあって、それほど重要視できるような内容に見えないドキュメントであると思います。しかし、Appleの選択はそうではなかったことは、Snow Leopard でお分かりいただけることだろうと思います。 Concurrency Programming Guide は、ドキュメントのタイトルの通り、並列プログラミングについて書かれているドキュメントです。既存のコードを並列化した方がよいかどうか、というところから、具体的にどのような場所に対して、どんな手法を使うえば良いかが書かれています。Grand Central Dispatch を活用したいと考えているプログラマは、よく読んでおきましょう。 また、ドキュメントには、既存のアプリケーションを並列

  • C-Production – UNIXとプログラミングの備忘録

    大変ご無沙汰です。約1年半ぶりの更新です。 昨日、ブログを設置しているサーバでOSのアップデートに問題が発生したため、これを機に新サーバ・新OSに乗り換えることにしました。 現在のブログがマルチサイトのため、そのままでは新サーバの構築に苦戦すると予想されるため、他のブログの記事を統合しました。 統合内容は以下の通りです。 ・C-Production ・・・ メインサイトのため、他のブログを吸収して継続。 ・♪8thNote♪ ・・・ メインサイトに統合済みだったので、削除。 ・モバイル魂 ・・・ メインサイトに記事を引き継ぎ、並行稼働中。 ・無線のドキュメント ・・・ もともと閉鎖予定だったので、そのまま削除 外部SNSのアカウントについてはそのまま継続します。 今後ともよろしくお願いします。

    desing
    desing 2010/05/22
    シングルトン関連でstaticについて。staticは「宣言されている場所にかかわらずプログラムの開始直前にメモリを確保し初期化します。~2回目以降関数内のstaticオブジェクトを 利用するときは前回の値から始まります。」
  • 継承して使えるSingletonクラス - 絶品ゆどうふのタレ

    いや、常々さ。 Singletonて継承できなくてマジしねよーと思ってたんだ。 まぁPHPだと静的束縛だから仕方ないよねーと諦められたんだけど、Objective-Cって動的束縛じゃないですか。 ま、そんなわけで継承して使えるSingletonクラスを作ってみた。 @interface Singleton : NSObject { } + (Singleton *)instance; @end @implementation Singleton static NSMutableDictionary *_instances; + (Singleton *)instance { @synchronized(self) { if ([_instances objectForKey:NSStringFromClass(self)] == nil) { [[self alloc] init]; }

    継承して使えるSingletonクラス - 絶品ゆどうふのタレ
    desing
    desing 2010/05/22
    シングルトン
  • Objective-C での Singleton - 齋藤達也の日記

    desing
    desing 2010/05/22
    シングルトン
  • 【コラム】ダイナミックObjective-C (51) デザインパターンをObjective-Cで - Singleton (2) | エンタープライズ | マイコミジャーナル

    Singletonパターンの話を続けよう。前回の最後で、Cocoaフレームワークに見られるSingletonの話をすると書いたが、前回の記事について読者から指摘をもらったり、書き漏らしたトピックがあったので、もう一回Singletonの実装の話をすることにする。 スレッドの排他制御 まずは、Singletonのインスタンスを取得するメソッドを、複数スレッドから呼ばれたときに排他制御することについて。 前回、「Objective-Cではスレッド同期のための文法は提供されていない」と書いてしまったが、これは誤りだ。昔のObjective-Cにはなかったが、現在では@synchronizedというキーワードが追加されている。これを使うと、ランタイムレベルでの排他制御を行うことができる。GCC 3.3以降、Mac OS Xだと10.3以降から使用可能だ。 この文法に関する詳しい説明は、「Objec

    desing
    desing 2010/05/22
    シングルトン
  • 【コラム】ダイナミックObjective-C (50) デザインパターンをObjective-Cで - Singleton (1) | エンタープライズ | マイコミジャーナル

    前回の予告通り、今回からデザインパターンをObjective-Cで実装してみる。 取り上げるパターンの順番だが、テキストとして使用する「オブジェクト指向における再利用のためのデザインパターン」(以下GoF)とは少し変更する。まず生成に関するパターンから始めるのは同じだが、その中のSingletonを最初に取り上げよう。 Singletonとは Singletonは、インスタンスを1つしか生成しないクラスのためのデザインパターンだ。主な用途としては、ファイルマネージャや、ウィンドウマネージャなど、対象がただ1つしかないものが挙げられる。 Singletonクラスのインスタンスを取得する場合、通常のalloc、initといったメソッド(C++でのnewに相当)は、使わない。その代わりに、インスタンス取得のためのメソッドを提供することになる。作成された、ただ一つのインスタンスは、Singlet

    desing
    desing 2010/05/22
    シングルトン
  • 1