2016-04-05 4 views
1

私は、彼らがproperties fileからボタンのテキストのようないくつかのconstant値を取得しているこのプロジェクトでは、基本的にGWTGWTの遅延バインディングを使用してインターフェイスをインスタンス化しますか?

のコードを読んでいます。

ので、彼らは、ボタンのテキスト

String buttonText = LocalizableResource.Util.getInstance().lblName_text_1(); 
Button b = new Button(buttonText); 

in java we can not Instantiates an interface then、GWTは次のようにこのようにをやってどのように

を取得するには、このinstanceをインタフェースLocalizableResourceを持っていると

public interface LocalizableResource extends Constants { 

public static class Util { 

      public static LocalizableResource getInstance() { 

        return GWT.create(LocalizableResource.class); 
      } 
     } 
    String lblName_text_1(); 
} 

useのようなインスタンスを取得。遅延バインディングとGWTに関するアイデアはあまりありません。

答えて

0

これはGWTの美しさであり、複数のクライアントを管理する方法の1つで、GWTフレームワークの中核的な利点です。結合繰延

http://www.gwtproject.org/doc/latest/DevGuideCodingBasicsDeferred.html

実行時にブートストラップ中に特定のクライアントによってロードする必要がある唯一の一つは、コンパイル時にコードの多くのバージョンを生成することで動作GWTコンパイラの機能です。各バージョンは、ブラウザごとに、アプリケーションが定義または使用する他の軸とともに生成されます。たとえば、GWTの国際化モジュールを使用してアプリケーションを国際化する場合、GWTコンパイラは、ブラウザの環境ごとに、「英語のFirefox」、「フランス語のFirefox」、「英語のInternet Explorer」、その結果、展開されたJavaScriptコードは、手作業でコード化されたJavaScriptよりもコンパクトで迅速にダウンロードでき、特定のブラウザ環境に必要なコードとリソースのみが含まれています。

+0

LocalizableResource.Util.getInstance()。lblName_text_1())は、プロパティファイルからテキストを取得しているか –

+0

。設定が必要ですか? –

0

ロケールに依存容易タグインターフェースは、コンパイル時 をプロパティファイルから供給された定数値の結合します。 GWT.create(クラス)を使用して定数を拡張するインタフェースを「インスタンス化」 は、 ロケールに基づいて選択されたプロパティファイルの値を使用して実装された という自動生成サブクラスのインスタンスを返します。私たちは、この機能lblName_text_1(の定義を取得する方法次のコードでmore info