Objective-C 単語


ニコニコ動画でObjective-…の動画を見に行く

オブジェクティブシー

1.4千文字の記事
これはリビジョン 1664901 の記事です。
内容が古い・もしくは誤っている可能性があります。
最新版をみる

Objective-Cとは、C言語をベースにSmalltalk言語のオブジェクト指向を取り入れた言語である。

概要

開発者はBrad CoxとTom Love。C言語の上にSmalltalk風インタプリタを乗っけただけという、非常に直球な設計をしている。C同様気をつけないと危ない言語なのだが、変に煩雑な安全装置を付けるよりは、これぐらい割りきった作りの方がいいのかもしれない。分かって使う分にはとても便利なので、ハック魂のある人には割と好かれている。

二人はこれで言語ベンチャーを立ち上げるも、大ヒットしたという話は特にないよう。そのまま行けば埋もれた言語で終ったのだろうが、新興のNeXT社がライセンスを取った事で、潜在能力の高さだけは世に普く知られるようになった。

NeXT社がApple社に買収された後はCarbonに代わってMacintosh(Mac OS X)のCocoa、iPhone OSのCocoa Touchのフレームワークの主力言語として使われている。なんというか、20年遅れて春が来た感じである。

C言語の完全上位互換なのでC言語的な記述も許されている。オブジェクトシステムが動的であることが特徴。「Objective」な部分は向き不向きがかなりハッキリしており、大まかな内容をざっくり書くには非常に便利な反面、細かいチューニングを行うにはパフォーマンス的にも記法的にも全く向かない。そういう部分はCかC++で書いて「Objectiveなグルー」を書くのが粋なスタイルである。ヘンテコな最適化技法も多く、ハマると結構奥が深かったりする。プログラマに出来ることは制限しない!

最近Objective-C2.0として近代化し、ガベージコレクションが付いたりC#風のプロパティが付いたりした。
でもiPhone OSではリソース制限が厳しいのでAutoreleaseで解放をする。

最新版ではAutomatic Reference Countingという怪しさ満点の拡張が施され、参照カウントなんだけどGCチック(でも命名規約は守ってね!)な変態言語に。それどころか10.8でガベージコレクションが廃止されるという斜め上の展開である(そんな言語Objective-Cだけだろう)。Appleがコンパイラに投資した結果がこれだよ!

CocoaとInterface Builderを使ったHello world

AppController.h

#import <Cocoa/Cocoa.h>

@interface AppController : NSObject
{
IBOutlet id textField;
}
- (IBAction)setHello:(id)sender;
@end

AppController.m

#import "AppController.h"

@implementation AppController

- (IBAction)setHello:(id)sender
{
[textField setStringValue:@"Hello, world!"];
}
@end

Interface BuilderではNSButtonをAppControllerのアクションに接続、NSTextFieldをAppControllerのtextFieldアウトレットに接続

関連項目

  • Smalltalk
  • C言語
  • Macintosh
  • Mac OS X
  • Cocoa
  • iPod touch
  • iPhone
  • iPhone OS

おすすめトレンド

ニコニ広告で宣伝された記事

記事と一緒に動画もおすすめ!
もっと見る

急上昇ワード改

最終更新:2025/12/20(土) 03:00

ほめられた記事

最終更新:2025/12/20(土) 03:00

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

           

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

タグ編集にはログインが必要です。

タグ編集には利用規約の同意が必要です。

TOP