2012年11月5日月曜日

Android - Androidプログラマかを見分ける12の質問

自称「Androidプログラマ」を見分ける質問。こちらのJavaプログラマであるかを見分ける10の質問が面白かったので作ってみた。
明確な正解は無いのだが、この12質をすれば何となく適当に尤もらしくしゃべってるだけだなこいつは、というのが見抜けるはず。
1年程度、自分で調べながら実務経験を積めば以下の質問は2/3程度は「それなりに内容をもって」答えられるのではないか。
(自称Androidプログラマは聞かれてもいないのにちぐはぐな事を言い出すからすぐわかる)


  1. ListViewを使うとただ単にViewを適宜生成、連結してリストを作った場合に対して大幅な利点が存在するが、それは何か。実装の癖を交えて簡単に説明せよ。
  2. HTTP通信を行う際に普通に行うと画面が固まってしまう(時間が長いと警告ダイアログが出てしまう)が、どのように実装すべきか。
  3. ダイアログは気軽に出せて便利だが、気をつけないとWindowLeakedやWindowManager.BadTokenExceptionが発生してアプリが落ちる。どう気をつけるべきなのか。
  4. FrameLayout、LinearLayout、RelativeLayoutの特長を軽く説明せよ。
  5. wrap_content, match_parent(fill_parent)の概念を説明せよ。
  6. BroadcastReceiverはどういった用途に使用するものか。
  7. アプリを閉じていても定時(例えば明日の7:00にとか)に処理をしたい。どのような技術を使うか。また、可能であればどのような事に気をつけなければならないか。
  8. AndroidManifext.xmlでActivityに対して定義されるlaunchModeのstandard, singleTop, singleTask, singleInstanceの違いを軽く説明せよ。
  9. Androidでは位置情報を特定するのにGPSとネットワークを用いた取得方法があるが、それぞれどのような特性があるか。
  10. 外部のカメラアプリに暗黙的インテントを投げて、戻ってきた画像データをそのまま使うとよくOutOfMemoryで落ちる。どのように対処すべきか。
  11. 画面Aから画面Bに遷移し、その後画面Bを閉じ画面Aに戻るが、画面Bで特定の処理を行った場合のみ画面Aでデータの更新処理を行いたい。どのように実装すべきか。
  12. Android 3.0から追加されたFragmentとはどのような概念で、使うとどのように有利になるのか。

以上、実務で出会ってきた自称Androidプログラマに泣かされた内容がいろいろと含まれている。

0 件のコメント:

コメントを投稿