2024/06/05

クラス化に挑戦: #9)Google マップ - Place API の NearBySearch をクラス化 ①

前回までは Google マップ の Place API の検索結果をクラス化してみました。要は検索結果の1件分を表すクラスでしたね。今回からは検索機能本体のクラス化に挑戦します。

作成するのは、NearBySearch クラスです。API の名称そのままとしています。今回はこのクラスで、検索前に必要な情報を管理する機能を作成します。


クラスと初期化の作成

NearBySearch で一番重要な情報は、検索の位置情報です。これがないと検索が成立しません。ですので、NearBySearch クラスでは検索位置を引数に初期化することとします。

クラス全体の定義を含め、コンストラクタである New メソッドを記述すると次の通りです。

Public Class NearBySearch
   Private zoLocation As Location

   Sub New(voLocation As Location)
      If Not(voLocation Is Nothing) Then
         Set zoLocation = voLocation
      End If
   End Sub
End Class

引数に検索位置を示す Location が指定されています。念のためではありますが Nothing でなければメンバ変数に保持するようにしています。


プロパティの作成

続いて必要なプロパティを作成します。作成するのは以下のプロパティです。

Location 取得のみ 検索位置の座標
SearchType 取得と設定 検索する場所の種類
Keyword 取得と設定 検索キーワード

NearBySearch クラスに追加するプログラムは次の通りです。

まず、メンバ変数を2つ追加します。

   Private zsKeyword As String
   Private zsType As String

続いて、次のプロパティを作成します。

   Public Property Get Location As Location
      Set Location = zoLocation
   End Property

   Public Property Set Keyword As String
      zsKeyword = Keyword
   End Property
   Public Property Get Keyword As String
      Keyword = zsKeyword
   End Property

   Public Property Get SearchType As String
      SearchType = zsType
   End Property
   Public Property Set SearchType As String
      zsType = SearchType
   End Property


次回の予定

これで検索までに必要な情報を管理する機能ができました。次回はこのクラスに検索メソッドを追加します。


前回 クラス化に挑戦 次回


0 件のコメント:

コメントを投稿