今週は、iPhoneのコーディングには直越関係しない、サーバサイドのJava開発環境をWindowsからMacに移動させる作業がメインでした。Windowsでは割と古いJBossを使っているのですが、MacのJava8 JDK上で同じJBossのバイナリを走らせたら、あっさりなんの障害もなく動きました。EclipseはWindows版とMac版でバイナリが異なるので、新たにセットアップが必要でしたが、コード保管のショートカットの変更が必要なくらいで、後はWindowsの「いつもの手順」で開発環境ができました。Javaは偉大です。
- 早くもXCode 6beta4が公開されたので、早速バージョンアップをしてみる。バージョンアップされる毎にSwiftの言語仕様が微調整されている。
- Dictionaryクラス
- 5000件程度のデータを表示させようとしたが、画面更新が遅い。
- 最初はUIViewやCALayerのView周りを調整していたが、原因はDictionaryクラスだった。
- DictionaryをJavaのHashMap感覚で使っていたが、単純なデータの出し入れがとにかく遅い。
- Twitterでも同様のつぶやきが散見される。
- この問題は今後のバージョンアップで解消されると思われるが、とりあえずNSDictionaryを使えば解消される。タイプセーフじゃなくなるけど
- NSJSONSerialization
- JSON文字列をNSJSONSerialization.JSONObjectWithData()でNSDictionaryに変換した場合、nilデータが紛れ込むことがある。
- beta3までだと大丈夫だったので、多分バグ。
- ループの頭にnilチェックを追加してとりあれずしのぐ。