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
iPHPはObjective-C製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。 iOS上で動作するプログラミング言語と言えばObjective-CやJavaScriptくらいと思われています(アプリを開発できる言語はもっとありますが)。しかしその壁を打ち破るソフトウェアがiPHPです。名前の通り、PHPの実行エンジンをiOSアプリ内に埋め込んだソフトウェアです。 立ち上げました。さっそくphpinfoを実行します。 見慣れた画面です。PHPのバージョンは5.4.15となっています。 curlも組み込まれています。外部コンテンツを取り込んで…といったこともできるでしょう。 fileinfoやgdもあります。色々な使い方ができそうです。 evalを使って入力したテキストを評価させることができます。 こちらはベンチマークを実行した結果です。 iPHPは思
最近話題のシンプル&リーダブルな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
イマドキの流行に敏感なキミだったらもう知ってるかもだけど、今日はそういうのに鈍感なオジサンたちのために、今風の Objective-C について書いちゃうよ。もちろん互換性的な感じで、すぐに変えられないかもってコもいると思うけど、知っててもソンじゃないから、いま覚えとこう!それとこういうのって、けっこー変わっていくものだから、半年後とかにはもう流行後れになるから注意してね! インスタンス変数 Objective-C のインスタンス変数と言えば、ヘッダの @interface に書くというのがこれまでのルールでした。典型的な例として、以下のように書いていました。 @interface MyObject : NSObject { NSString *aString; } ... @end 今風には、インスタンス変数の宣言は実装部の @implementation に書きます。 @impleme
[What Every C Programmer Should Know About Undefined Behavior #1/3 の翻訳です。] LLVMでコンパイルしたコードは、最適化を有効にしているとたまにSIGTRAPシグナルを生成するのはなぜなのか、と聞かれることがある。いろいろ調べたあと、(X86での話だが) Clangは "ud2" インストラクションを生成していたことがわかった。"ud2" は__builtin_trap()が生成するインストラクションと同じものだ。[訳注: #UD例外を発生させる命令。ソフトウェアが#UD例外をハンドルできているかテストするために使われる。つまり、ソースコードが未定義な振る舞いを使っていたから、LLVMはud2インストラクションを生成したのであって、LLVMのバグではない、ということ] こういう問題は幾つかあって、すべて、Cの未定義な振る
この記事は Mac Dev JP Advent Calendar の参加記事 (6 日目) です。 はじめに この記事では、 Objective-C++ で C++11 を使用する例について紹介します。 Objective-C++ とは Objective-C++ は、プログラミング言語 Objective-C と C++ とを多重継承したような言語です。お互いの文法がかち合わないので、混在することができます。極稀に文法がコンフリクトしますが、個人的にはそれで困ったことはありません。文法的にほぼ直交し、お互いのオブジェクトを単なるポインタ値とみなしているため、混在させることができるのです。 Objective-C と C++ の機能をオーバーラップさせるようなことはできません。例えば、 Objective-C のクラスを C++ で継承したりするようなことはできません。 Objective
はじめに 今回は、clangの静的解析機能を紹介します。 LeopardのOpenGLに採用されたことでも知られる、LLVMというコンパイラプラットフォームがあります。clangはLLVM内のプロジェクトのひとつで、gccに変わるC/C++/Objective-C用のLLVMフロントエンドを開発しています。 複数のAppleのエンジニアが開発に参加しており、Objective-Cを積極的にサポートしているのも特徴です。 clangでは、通常のコンパイラとして以外にもコードの内部構造にアクセスするいくつかの機能があり、そのひとつが静的解析機能です。 プログラムの静的解析 プログラムを実行せずにプログラムの問題点・バグなどを分析することを「静的解析」といいます。 最近では、JavaのFindBugsが有名ですね。 人力で行うコードレビューも、静的解析と言われることもあります(そりゃそうでしょう
A Quick Objective-C 2.0 Tutorial In the interest of getting started quickly, here's a quick tour of new features in Objective-C 2.0 which will probably affect about 80% of the work you do. We'll look at properties, dot syntax, fast enumeration, and garbage collection. Properties Properties are a generic way of declaring the data a class provides. In a Movie class, the properties would be things li
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く