Objective-C 単語


関連するニコニコ動画 20件を見に行く

オブジェクティブシー

1.4千文字の記事
  • twitter
  • facebook
  • はてな
  • LINE

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

概要

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

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

NeXTAppleに買収された後は、Carbonに代わってMacintoshMac OS X)のCocoaiPhone OS(現:iOS)の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アクションに接続、NSTextFieldAppControllertextFieldアウトレットに接続

関連項目

この記事を編集する

掲示板

おすすめトレンド

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

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

急上昇ワード改

最終更新:2025/04/16(水) 12:00

ほめられた記事

最終更新:2025/04/16(水) 12:00

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

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

OK

追加に失敗しました。

OK

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

           

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

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

OK

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

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

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