アプリの応答性を改善しようとしています。ユーザーは、Song オブジェクトをプレイリストに追加したいことを示します。そのために、新しい Song オブジェクトを作成し、それをサーバーに保存して ID を設定します。サーバーが正常に応答したら、Song オブジェクトをプレイリストに追加します。
これには、ユーザーのアクションとアプリの応答の間にぎこちない遅延が生じるという副作用があります。
空の GUID を持つオブジェクトを NHibernate に渡す代わりに、クライアント側でエンティティの GUID を生成しても問題ないかどうか疑問に思っています (その後、Sql Server DB の操作中に設定されます)。
このメソッドを使用して GUID を生成します。
'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
return v.toString(16);
});
ただし、衝突が心配です。私はすべきですか?それとも、クライアント側とサーバー側の GUID の生成はほとんど同じですか?