今是昨非

今是昨非

日出江花红胜火,春来江水绿如蓝

莫空面接記録2

莫空面接記録 2#

面接中に質問された、「もしもページを統計するように頼まれたら、各ページに記録をする方法はどうしますか?」

それで、考えてみたら、

  1. 以前の私の方法は、各画面の viewDidAppear に記録するメソッドを書くことでした。
  2. 現在の私の方法は、UIViewController を継承した基底クラスを宣言し、そのクラスにログのメソッドを書き、すべての画面をこのクラスから継承することです。

それから、もしも私の画面の一部が UITableViewController を継承している場合はどうするかと聞かれました。私は UITableViewController の基底クラスをさらに作ると答えました。それから、もしも UICollectionViewControoler や UITabBarViewController を継承している場合はどうするかと聞かれました。その時、私は恥ずかしくなりました。。。。。

私は本当に他の方法がわからないのですが、ちょうどランタイムを検索している時に、Method Swizzling and AOP Practiceというブログを見つけました。涙が出そうです。。。まったく同じです、まったく同じです、信じられますか、なぜ早く見つけられなかったのでしょうか。

読んだ後、私は自分がうまく答えたと感じました。前述の 2 つの方法をすべて話しました。
image1

答えは皆さんに上記のリンクを見てもらいます。Method Swizzling と AOP は以前に聞いたことがあるだけで、今日は知識が増えました、無駄ではありませんでした、ええ、皆さんに共有します。

あ、それとデモもあります、著者のデモ、AspectsDemo、このように実装すると、本当に良い感じで、さらに高級な感じがします。皆さんはまずリンクを見て、それからこのデモを見てください。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。