airアプリをAppleStoreにサブミットしたところ、
AIRSDK15でビルドしたバイナリが、
アップローダでアップできなかった。
原因としては、AIRSDK15では、32bitバイナリしか作成できないためだそうだ。
AIRSDK16(βだけど)でビルドしたら、
ワーニングが出来たけど、アップできた。
ただし、ワーニング(注意書き?)の内容としては「2015年2月以降は64bitじゃないとダメよ」
みたいなものであった。
AIRSDK16では64bitバイナリが作成できたってことでよいのかな?
いまいちよくわからないが、AIRSDK16のリリースノートに書いてあるような。。
とりあえず、AIRSDK16の正式版が出てからでないと、
アップしても危険かも。
投稿日時:2014年11月25日 16:27
カテゴリー:
air,
as3
さて、本腰入れて。
今回の比較に当たり、大きな前提として、
pub/subはなし(つまり、メモリ内で処理を完結可能)
というのをあげておきます。
というのも、pub/subがあるときと、ないときでは、
結構実装が異なってしまうためです。
(※うまく抽象化できればいいのですが、node.js側は上手に継承を使うのが難しいので)
この前提のもと、
javaとnode.jsの大きな違いは、
java:マルチスレッド
node.js:シングルスレッド
ということであります。
この違いは、プログラムを書く上で、
「排他制御」が必要か、不要かということにつながります。
たとえば、対戦ゲームを作るとした場合、
ゲームには「マッチング」と「対戦中」で処理が大きく2つに分かれます。
マッチングは諸条件あるものの、基本的には来た順番にさばく手法がとられると思います。
このとき、javaでは必ず排他制御をかける必要があります。
それに対し、node.jsでは、シングルスレッドなので、排他制御をかける必要はありません。
ここが両者の最大の違いとなります。
※あくまでメモリ内で完結する場合です。(つまり1プロセス)
複数台を使う場合は、node.jsでも排他制御が必要となる場合があります。
投稿日時:2014年11月25日 14:23
カテゴリー:
java,
node.js,
websocket
websocketというと、チマタではnode.jsが流行っていますね。
しかし、javaもJSR356という規約の下、
各サーブレットコンテナで対応が完了しており、
個人的にはnode.jsと対をなす位までの能力があるかと思います。
javaでもnode.jsでもwebsocketを構築した筆者が、
数回にわたりお互いの特徴と実装の注意点などを書いていきます。
なお、バージョンは
【java】
jetty9.X(JSR356に対応した形)
【node.js】
v10.3X
となります。
投稿日時:2014年11月25日 13:37
カテゴリー:
java,
node.js,
websocket
さくらのVPSでwordpress入れて、今日からブログを作成していきます。
基本的には、IT系のネタをメモ代わりに残し、
閲覧してくれた人の助けになれば幸いです。
ネタ的には、
- php
- java
- mysql(mariadb)
- as3(air)
- c/c++
- python
あたりを書き留めておきたいかなと。
投稿日時:2014年11月25日 13:29
カテゴリー:
other