2017-03-07 11 views
0

私は現在、私の最初の小さなデスクトップのメニューバーアプリ(macOS、Swift 3)に取り組んでいます。これは、アクセスする必要がある私のアプリに静的情報を含める最も良い方法は何ですか?

a)の単語のリスト(、単語辞書には、構造化データのリスト)

b)はサポートされている言語ごとの1K-5Kの言葉が(簡単な構造体を考えて考える〜500)

私は現在、これらをコードでビルドするかどうか、おそらく言語ごとのファクトリクラスを検討しています。または、それらを私のアプリケーションにjsonとして組み込み、実行時に解析します。あるいは、SQLiteファイルをビルドし、実行時にそれを読むことができますが、そのアプローチはソース管理では難しいでしょう...

私はプラットフォームに慣れていないので、私はより良い方法があるかもしれないかどうか疑問に思っていました上記のアプローチのうちの1つを役に立たなくするようなパフォーマンス上の考慮が必要な場合があります。

いつものように、事前にお世話になりました!

+0

私はjsonのアプローチを使用します。 ( 'getWordsForLanguage()'のような)言語パラメータを持つデータにアクセスする単一のファクトリクラスを作成し、jsonを遅延ロードします(例えば、最初のアクセス時に一度ロードし、その後メモリに保持します)。 – deadbeef

+0

これはコメントではなく答えであるべきでしょうか? – Jan

答えて

0

このタスクには、記載されているソリューションを使用できます。しかし、私はそのような種類の仕事のために、最良の解決策はCoreDataを使用して、構造化されたデータと同様に単語のリストを保存することだと思っています。

+1

この作業にCore Dataはおすすめしません。コアデータは重いもののために設計されています。このような単純な作業では、パフォーマンスが大幅に向上するだけでなく、はるかに複雑な設計であり、維持管理や変更が難しくなります。 – deadbeef

関連する問題