[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

Objective-Cに関するwillnetのブックマーク (15)

  • より短く書くために - いつもあさって

    @による省略 interfaceとかの@マークの話ではなく,@"文字列"などのアットマークの話です. この@は普段無意識に使っているかもしれませんが,これは@の直後にある型を自動で判断してプリミティブ型からオブジェクトを生成する省略記号である.つまり以下のことが言える. @1; // => [NSNumber numberWithInteger:1] @0.5; // => [NSNumber numberWithDouble:0.5]], @YES; // => [NSNumber numberWithBool:YES]], @"文字列" // => キャスト(よくわからなかったので省略) @[@1]; // => [NSArray arrayWithObjects:{@1} count:1]; @{@"hoge": @"fuga"}; // [NSDictionary dictiona

    より短く書くために - いつもあさって
  • Objective-Cのクラス定義を理解しよう

    アクセサメソッドの自動生成 先ほどの例では、クラスの中にプロパティが1つしか定義されていませんでしたが、実際にはクラスにはいくつもの(時には数十個もの)プロパティが定義されることもあります。そのようなとき、すべてのプロパティにゲッターメソッドとセッターメソッドを定義していくのは、非常に手間が掛かる作業です。また、コピー&ペーストが多用され、コーディングミスの原因ともなります。 Objective-Cのバージョン2.0からは、プロパティのアクセサメソッドを自動生成させるためのコンパイラディレクティブが導入されました。以下に簡単な例を見てみましょう。 #import <Foundation/NSObject.h> #import <Foundation/NSString.h> #import <stdio.h> /* クラスの宣言部 */ @interface MyClass : NSObje

    Objective-Cのクラス定義を理解しよう
    willnet
    willnet 2013/07/01
    allocってRubyでいうallocateみたいな感じかな
  • Use of alloc init instead of new

    Ask questions, find answers and collaborate at work with Stack Overflow for Teams. Explore Teams Collectives™ on Stack Overflow Find centralized, trusted content and collaborate around the technologies you use most. Learn more about Collectives

    Use of alloc init instead of new
    willnet
    willnet 2013/07/01
    new よりも alloc init
  • メソッド引数のラベリング - TrashSUITE

    Objective-C を始めてまだ間もないのだけど,その僅かな期間で強烈な衝撃を受けた.それがメソッド引数のラベリングだ ラベリングの例 @interface Hentai : NSObject // 引数が一つしかなく,ラベリングしない(できない)場合 -(void) touchOppai: (Oppai)oppai; // 引数が二つで,ラベリングしない場合 -(void) touchOppai: (Oppai)oppai :(Futomomo)futomomo; // 引数が二つで,ラベリングする場合 -(void) touchOppai: (Oppai)oppai andFutomomo:(Futomomo)futomomo; @end 三番目のメソッド定義の andFutomomo というのがラベル.ちなみに実際にメソッドを呼び出す(メッセージを送る)場合は以下のようになる [

    willnet
    willnet 2013/07/01
    いわゆる名前付き引数とはちょっと異なる/第一引数にはラベルつけない/第二引数以降のラベルはメソッド名の一部として扱われる/なので同じメソッド名でラベルが違うものを定義できる
  • GitHub - dingbat/nsrails: iOS/Mac OS framework for Rails

    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 - dingbat/nsrails: iOS/Mac OS framework for Rails
    willnet
    willnet 2012/05/21
    objectivecでRESTfulなサーバとデータをやりとりするのを想定したライブラリ
  • Objective C "#if" syntax

    willnet
    willnet 2012/03/13
    #ifはプリプロセッサの段階で判別されるので、コンパイル時に使うコードを判別する感じで使う
  • 今朝のObjective-Cの勉強 - kaeruspoon

    朝早く起きて、Objective-Cの勉強をちょっとしました。 今日覚えたこと。 1.インスタンス変数とself インスタンス変数は@interfaceディレクティブで指定してあげます。

    willnet
    willnet 2011/12/20
    セレクタを使えば実行中に呼び出したいメソッドを動的に選択することができるようになります。C言語の関数へのポインタみたいですね
  • Objective-Cの @property と @synthesize の組み合わせが何をやっているのかを解説 - 強火で進め

    改めて説明するまでも無いかと思ってたけど意外と知らない人は知らないみたいので解説を書いておきます。 @property と @synthesize の組み合わせは端的に言うと「setterとgetter(アクセッサメソッド)をコンパイルの前に生成させる」以上。 ※Objective-Cの場合、 @ で始まるものはプログラムでは無く、コンパイラへの指示となります。この様な指示をObjective-Cではコンパイラディレクティブ(Compiler directive)と呼びます。 詳細説明 setterやgetterはメンバ変数を直接扱わずにメソッド経由で代入やデータの取得をする為に定義するメソッドです。setterがデータを代入する時のメソッド、getterがデータを取得する時のメソッドとなります。 メンバ変数をメソッド経由にすることにより代入前にチェックを行って有効な値のときのみメンバ変数

    Objective-Cの @property と @synthesize の組み合わせが何をやっているのかを解説 - 強火で進め
  • 配列とループ処理を理解しよう

    配列とループ処理を理解しよう:Cocoaの素、Objective-Cを知ろう(5)(3/4 ページ) ディクショナリ(連想配列) 一般的に配列には、機械的な連番(インデックス)で要素を管理する「通常配列」と、意味のあるキーワードを目印として要素を管理する「連想配列」の2種類があります。Objective-Cでは、NSArrayやNSMutableArrayで通常配列を実現する一方、「NSDictionary」と「NSMutableDictionary」で連想配列を実現することができます。また、これらのクラス名が表すとおり、Objective-Cでは連想配列のことを「ディクショナリ(辞書)」と表現します。 NSDictionaryは内容が固定、NSMutableDictionaryは内容が可変のディクショナリを実現します。まずはNSDictionaryの利用例を見てみましょう。 #impor

    配列とループ処理を理解しよう
    willnet
    willnet 2011/12/20
    「NSDictionary」と「NSMutableDictionary」で連想配列を実現することができます。また、これらのクラス名が表すとおり、Objective-Cでは連想配列のことを「ディクショナリ(辞書)」と表現します。
  • 【Objective-C】簡単便利なデータの保存読み込み!NSUserDefaultsについて(その1、全般)

    てぃーによるiPhone/Mac/Android/Windowsアプリ開発、ウェブサービス開発、 ツイッター分析、音楽DTMイラストなど創作活動の記録です。 ブログ名は「創造性:creativity」(クリエイティビティ)と「てぃー」から。 勉強内容、デジタル製品(デジモノ)、エンタメについても書いていきます。 今回はNSUserDefaultsについてです。 NSUserDefaultsはアプリのデータを簡単に保存取得できる方法です。 ふつうデータを読み書きしようとするとファイルパスの設定やらファイルの形式をいろいろ決めないと行けません。 NSUserDefaultsはそのような面倒な設定なしにアプリ内にXML形式のplistファイルを作成してくれます。 簡単なデータはこれを使いましょう。 少々複雑なデータ(2次元以上のデータ)も工夫次第でこれで可能です。(工夫は「その3」で) 次の

    willnet
    willnet 2011/12/20
    NSUserDefaultsを使うとアプリ内にkey value型のデータを入れられる。保存はデフォルトだと任意のタイミングなので、明示的に保存させたいときはsynchronizeメソッドを使う
  • [Objective-C] Xcode の単体テスト環境 - それはBooks

    iPhone アプリで利用している Xcode 上に単体テスト環境を構築する手順のメモです。 GUI の構築が多い iPhone アプリ開発ですが、一部ロジックもあります。ロジックのテストはあったほうがいいし、なきゃ不安。 ということで単体テスト環境の構築方法をいろいろしらべてやってみた手順のまとめです。 開発環境 僕の Xcode の環境です。この環境でテスト環境を作っていきます。 OS のバージョン Mac OS X 10.6.4 Snow Leopard Xcode のバージョン 3.2.4 iOS のバージョン 4.1 単体テスト環境の作り方 - 手順 Xcode には 単体テスト(OCUnit)用の SenTestingKit というフレームワークが用意されています。 ここでは、iPhone 用のプロジェクトで OCUnit を使った単体テスト環境を構築する手順を紹介します。 手

    willnet
    willnet 2011/12/20
    Xcode には 単体テスト(OCUnit)用の SenTestingKit というフレームワークが用意されています/中身はtest/unitチック
  • 一番初めのObjective-Cプログラム - @IT

    一番初めのObjective-Cプログラム:Cocoaの素、Objective-Cを知ろう(2)(1/3 ページ) iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基を理解しよう(編集部) 第1回「Objective-Cは特殊な言語?」では、Objective-Cのコードの「見た目」の第一印象に基づいて、この言語の特徴的な部分と、その成り立ちについて解説しました。 今回は、ごく簡単なプログラムを実際に作って動かしてみることで、より具体的な領域に踏み込んでみたいと思います。 少しだけ複雑なHello World こういった場面で最初に作られるのは、たいてい「Hello World」という文字列を表示するプログラムです。ここでも、最終的には文字列を表示することを目的とするシンプルなプログラムを作成しますが、そこに

    一番初めのObjective-Cプログラム - @IT
  • Objective-Cは特殊な言語? - @IT

    Objective-Cは特殊な言語?:Cocoaの素、Objective-Cを知ろう(1)(1/2 ページ) iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基を理解しよう(編集部) 唐突ですが、皆さんは新たに1つのプログラミング言語を修得しようと思い立ったとき、最初に何をしますか。その言語の入門用サイトを見て回る、関連書籍を立ち読みする、サンプルを入手して取りあえず動かしてみる、といったところでしょうか。ちなみに私は書籍が好きで、しかも立ち読みではなく購入派です。 いずれにしても、まずはその言語のコードを目で見て、「いったいどんな言語なのか」というイメージをつかむのが最初の一歩となるでしょう。何かしらのプログラミング経験がある人なら、コードを眺めて、「ああ、あの言語に似ているな」とか「うわ、これはとっつきに

    Objective-Cは特殊な言語? - @IT
  • Cocoa Life KOF 2011特別編

  • Objective-CのGC「autozone」がオープンソース化された - I am Cruby!

    GC, Mac, Rubybbum’s weblog-o-mat » Blog Archive » AutoZone: The Objective-C Garbage Collector売り文句は It is actually a fairly generic scanning, conservative, generational, multi-threaded, language agnostic, collector. らしいが,はてさて.コードを眺める事にしよう.Index of /darwinsource/10.5.5/autozone-77.1AUTOZONEgeneric scanningBoehmGCと同じWriteBarrierの張り方みたい.ページ保護によってold世代からnew世代の参照を見張っているようだ.MarkSweepは使っておらず,Treadmillの変形

  • 1