NodObjC-Objective-CとNode.JSの間のブリッジ

最近のハッキングの進歩に衝撃を与えたかっただけです。NodeからObjective-Cランタイムライブラリへの双方向ブリッジを作成しました。 このクレイジーなことにより、たとえばMacOS XとiOSのネイティブアプリケーションをNodeとJavaScriptで完全に作成するなど、すばらしいことができます!



NodObjCと呼ばれる高レベルライブラリを作成し、Objective-CライブラリAPIから直接生成できる使いやすいAPIを提供しています。 READMEの例を次に示します。

var $ = require('NodObjC'); // First you need to "import" the Framework $.import('Foundation'); // Setup the recommended NSAutoreleasePool instance var pool = $.NSAutoreleasePool('alloc')('init'); // NSStrings and JavaScript Strings are distinct objects, you must create an // NSString from a JS String when an Objective-C class method requires one. var string = $.NSString('stringWithUTF8String', 'Hello Objective-C World!'); // Print out the contents (calling [string description]) console.log('%s', string); // → Prints "Hello Objective-C World!" pool('drain');
      
      





さらに、Objective-Cランタイムライブラリの内部へのアクセスを提供する低レベルのnode-objcモジュールが利用可能です。 このAPIを直接使用することはお勧めしません。これは、NodObjCが魔法を実装するために使用するモジュールにすぎません。



両方のモジュールは今のところ完全に不完全ですが、私はそれらをどのように補完するかについて良い考えを持っています、そして私はこのイニシアチブにコミュニティの注意を引きたいです。 私の高レベルのモチベーションを維持するために私に書いてみてください!!!



翻訳者のメモ:




All Articles