2016-04-08 11 views
0

これは、馴染みのない言語(Objective-C)で書かれた定型文をリファクタリングしようとするAndroid開発者からの質問です。私はiOSにはまだまだ慣れていて、フレームワークのライフサイクルについて少しは知っています。BLEリンク関数を置くのに理想的な場所

現在、BLE delegatesの実装は6 NavigationController(二つの追加のタブは、このプロジェクトの元開発者の単なるハックされている)を保持している私たちのプロジェクトのTabBarController(メインコントローラ)に位置しています。各ナビゲーションコントローラは、主制御装置に延期されたコマンドを送信し、発行者は、もしあれば、外部装置からの応答に応じて聴取しなければならない。

私は最も永続的な場所だと思うAppDelegateにBLE機能を再配置することを考えています。そこから、sendCommand関数を作成し、ナビゲーションコントローラが着信応答を聞くことができるようにdelegatesを作成します。そうでない場合は、BLEリンク機能を置くには理想的な場所ですか?

+0

個人的な意見として:はい、それは良いことですが、私は本当に私の主張を証明するものはありません。これらのメソッドを持つ他のすべてが拡張する抽象View Controllerを作成または作成します。 – CptEric

答えて

1

現在の状況はあまり良くありません。また、ロジックをアプリケーションデリゲートに移動することは、それほど優れていません。アプリケーションデリゲートは、Bluetoothではなく、アプリケーションの全体的な設定に対応します。

したがって、Bluetoothコントローラまたはマネージャである新しいクラスを作成します。アプリケーションデリゲートまたはタブバーコントローラはこのクラスのインスタンスを作成できますが、実際に使用するビューコントローラに渡すだけです。これは依存性注入の(1つの形式)です。

関連する問題