Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

objective-cに関するtyruのブックマーク (9)

  • メモリ管理 - かみやんの技術者ブログ

    iPhone開発で、メモリ管理の基礎を社員に伝えることが増えてきたので、エントリとして書こう。 Objective-C基礎 メモリ管理の前にObjCの基礎として、メソッド呼び出しの話。 クラスのインスタンスaがmethodAをコールするときは、 [a methodA] と書く。このとき、aがnilだったときは、エラーではなく、コールされない。methodAに戻り値があるときは、それは、0やnilやNOが返る。ObjCでは、 void dealloc { if(a!=nil){ [a release]; } [super dealloc]; } は、気持ち悪いので、nilチェックはやめましょう。 なお、ObjCでは、動的にメソッドを差し替えることができ、コールの度にメソッドが存在しているかも確認しています。そのため、LL言語(ライトウェイト言語、スクリプト)のように柔軟な記述が可能です。そし

    メモリ管理 - かみやんの技術者ブログ
  • メソッド呼び出しループベンチにSmalltalkで参戦してみる - Smalltalkのtは小文字です

    Objective-Cの『遅さ』を計測したら、JavaC++の5倍も遅かった: ニュースの社会科学的な裏側 ただし手元の環境(MacBook Air 11", 1.6GHz Core 2 Duo, Win 7)は非力なので、ループ回数は 268435455回に減らしました。Cygwin環境であるせいか、Objective-C は元記事でとりざたされている結果と違い、C++ の5倍までは遅くなっていませんでした。かたや JavaC++ の2倍程度に遅くなっていて、Objective-C とはほとんど差がありませんでした。 Smalltalk はまずまずの結果といった感じでしょうか。正直、爆速を誇る商用処理系であるところの VisualWorks には、C++ とまではいかずとも Objective-C には肉薄して欲しかったところですが、前述の通り Objective-C に逃げ切ら

    メソッド呼び出しループベンチにSmalltalkで参戦してみる - Smalltalkのtは小文字です
  • Objective-Cの『遅さ』を計測したら、JavaやC++の5倍も遅かった

    なお、メモリ消費量はtopコマンドで測ったので、かなり大雑把な数字だ。また、Cで同様の処理のコードを書くと、ほぼC++と同じ速度になる。 追記(2011/02/17 8:50):Rubyによるベンチマークを追加。 追記(2011/02/17 11:00):Smalltalkによるベンチマークを追加。ソースコードは「Smalltalkのtは小文字です」のループ回数を修正した。 追記(2011/02/17 16:00):Perlによるベンチマークを追加。 追記(2011/02/18 10:30):Java 1.6.0_22で実行した、Scalaによるベンチマークを追加。また、clang/llvmでC++とObjective Cの値を取り直し、改善が見られないのを確認。 追記(2011/02/18 14:30):Ruby 1.8.7によるベンチマークを追加。1.9.2との速度差については、@IT

    Objective-Cの『遅さ』を計測したら、JavaやC++の5倍も遅かった
  • 美しきObjective-C

    Objective-Cというプログラミング言語があります。 C言語をベースにオブジェクト指向言語のSmallTalkの拡張を施した言語です。 オブジェクト指向を取り入れたC言語にC++がありますが 根から拡張されているC++と違い Objective-Cは素のままのC言語にSmallTalkを融合させたような形を取ります。 Objective-Cは世界で2番目に美しいGUIを生み出した現AppleComputer社CEOである Steve Jobs氏がNeXTコンピュータのOSであるNeXTSTEPで採用した言語です。 NeXTSTEP自体はPC/AT互換機やHewlett Packard社のHP9000、 Sun Microsystems社のSparcStationにも移植されたようですが、残念ながら私は触れた事がありません。 現在では希にYahoo Auctionに出品されますが、

    tyru
    tyru 2011/01/28
    笑ったんだけど最後の::が読みにくいってのは自分も思ってたので最後の方だけなんか同意してしまった
  • PerlエンジニアのためのObjective-C Blocks入門 - unknownplace.org

    OS X 10.6 以降の xcode では Objective-C に Blocks というシンタックスが追加されている。 Blocks Programming Topics: Introduction Perl でいうところの無名関数(コードブロック)を作ることができる機能で、Perlでいうところの my $f = sub { ... }; $f->(); は void (^f)() = ^{ ... }; f(); のように書ける。書式がきもいのはObjective-Cの定めなのであきらめましょう。 より詳しい書式については上記ドキュメントを見ると良い。 しかしデフォルトではPerlのコードブロックとはレキシカル変数の扱いが異なる。 my $i = 0; my $f = sub { return $i + 1 }; $i++; $f->(); # 2 を返す perlではこのようにレ

  • メモリ管理を理解する(前編)

    メモリ管理を理解する(前編):Cocoaの素、Objective-Cを知ろう(7)(1/2 ページ) iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基を理解しよう(編集部) あらゆるアプリケーションは、システムのメモリ上に展開されて動作します。 メモリは限られた資源なので、アプリケーションは資源を無駄に消費しないよう自己管理しながら動作する必要があります。この動作を実現するのが、開発者によるメモリ管理の実装です。 新しく登場した言語のなかにはメモリ管理が自動で行われる(言語のエンジン部分で暗黙的にメモリ管理がされている)ものが多いため、開発者がメモリ管理を意識することが少なくなっています。 実際、Objective-Cでも、Objective-C 2.0から(Mac OS X 10.5 から)はガベージコレ

    メモリ管理を理解する(前編)
  • かんたんObjective-C | Netsphere Laboratories

    (2003.04.29新規作成。2005.9.11更新。) たまにはRuby以外のオブジェクト指向言語にも触れてみようと思う。タイトルはかんたんとしているが、内容が平易なのではなく、淡白なだけ。 文書 GNUstepのインストール Objective-Cのメモリ管理 自動解放プールなど。 Objective-Cでガベージコレクション Objective-Cのクラスとメソッド GNUstep GUIアプリケーションを作る [2015.9] ProjectCenter と Gorm の組み合わせ。 Objective-Cとは (この節、2005.9.6加筆) Objective-Cは、C++とはまた違ったアプローチでオブジェクト指向機能をC言語に追加している。現在はCocoa (MacOS X) 専用の感が強いが、Linuxでも使える。 Linux用のObjective-CコンパイラはGCCに

    tyru
    tyru 2008/09/13
    インターフェイスがいらないらしい。なるほどー
  • Objective-Cは特殊な言語? - @IT

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

    Objective-Cは特殊な言語? - @IT
  • CocoaOniguruma リリース - Psychs's blog

    Objective-C 用の正規表現ライブラリ CocoaOniguruma をリリースします。 http://limechat.net/cocoaoniguruma/index_ja.html CocoaOniguruma は、正規表現エンジン鬼車 の Objective-C バインディングです。 OSX で使える正規表現ライブラリというと、すでに OgreKit や RegexKit などがありますが、今回新しく作った CocoaOniguruma のデザインゴールは、以下の通りです。 シンプルで使いやすいインタフェースであること バイナリサイズをできるだけ減らすこと ソースをプロジェクトに含める方法と、Framework 形式のどちらでも使えること iPhone でも使えること コンパクトで扱いやすいと思うので、Cocoa アプリや、iPhone アプリを作られる方は、ぜひ使ってみて

    CocoaOniguruma リリース - Psychs's blog
  • 1