エンジニアtype - エンジニアのシゴト人生を考えるWebマガジン
  • TOP
  • キーパーソン
  • 旬ネタ
  • コラボ
  • ノウハウ
  • 女子部
  • キャリア

ツールやドキュメントの進化を知ろう!過去から学ぶAndroid開発の今【初心者向けアプリ開発3分tips】

タグ : Android, RainbowApps, アプリ開発, 初心者 公開

 
スクール講師がアドバイス!初心者のためのアプリ開発3分tips

アプリ開発スクール『RainbowApps

日本で初めて、プログラミング受講料の無料提供を始めたアプリ開発スクール。iPhone、Android、Unity、HTML5、AWSコースを展開しており、受講用のMac完備、初心者・未経験者から受講OK。特徴は、大手IT企業からベンチャーまで、受講後の就職・転職もサポートしている点だ。全国で教室を開いているほか、オンライン講座も展開中。詳しい情報はコチラ

こんにちは、日本最大のアプリスクール『RainbowApps』でAndroid講師を担当している曽川義英(そがわ・よしひで)です。本連載では、iOS、Android、Unityなどのアプリ開発について、初心者向けの内容を『RainbowApps』講師陣が分かりやすく解説していきます。

第4回目は、Androidアプリ開発についてです。

第2回の記事では、Androidの歴史についてちらっと触れましたが、今回は歴史とともにAndroid開発がどう変わってきたかについて紹介します。

【1】Google Play開発者サービスとは?
【2】Fragmentの登場
【3】バージョン差分の対応が楽になるSupport Library
【4】変わっていくテーマ
【5】見逃してはいけない「Depricated」
【6】開発環境も変わる
【7】徐々に増えるタブレットユーザー

【1】Google Play開発者サービスとは?

Google Play開発者サービス皆さんのAndroid端末にはどんなアプリが入っていますか? Androidの「設定」→「アプリケーション」で確認してみましょう。インストールされたアプリや、最初から入っているアプリが確認できます。

次は「すべて」という項目で確認してみましょう。この中に『Google Play開発者サービス』という見慣れないアプリが入っているのがお分かりになりますか?

このアプリは位置情報、広告、PUSH通知、マルウエア検出などを担ってくれる、ユーザー、開発者ともに非常にうれしいアプリです。

開発者はGoogle Play servicesというライブラリを用いてこのアプリと連携し、先ほどの機能を実装できます。自動的にインストールや更新が行われるため、ユーザーに特別な操作をしてもらう必要はありません。

以前は自力で作るかOSのアップデートを待つかしかなかった機能を、Google Play開発者サービスによって比較的楽に実装できるようになりました。

>> Android DevelopersのGoogle Play servicesに関する公式ドキュメント

【2】Fragmentの登場

Fragmentは、Android3.0(Android初のタブレット)から導入された概念です。

Fragmentが登場する前は、広告の表示、通信の開始・キャンセルなどのライフサイクルに関する処理や、画面表示に関する処理は、全てActivityに実装していました。

そのためActivityがいろんなクラスと複雑に絡み合い、数千行の特大コードができ上がるなど、メンテナンスが難しくなるケースがありました。

そこで登場したのがFragmentです。FragmentはActivityの画面や動作の一部を担当するという機能を持っています。そのため、1つのActivity内で

■画面上部の処理は「UpFragment」に
■画面中段の処理は「MiddleFragment」に
■広告の処理は「AdFragment」に

というような形で、複数のFragmentを組み合わせて表示できます。

このように、Fragmentを組み合わせて1つの画面を作るので、ある画面では「UpFragmentは必要だけど、AdFragmentはいらない」というような別の要望にもコードを大幅に書き換えずに対応できます。

>> Android Developer サイトのFragmentについての詳細資料

私も以前、Fragmentについての講演をしましたので、こちらも参考にしてください

>> 今からでも間に合うFragmentセミナー

【3】バージョン差分の対応が楽になるSupport Library

Androidはこれまで多くのバージョンアップをし、さまざまな機能を追加してきました。しかし、必ずしも最新のAndroid OSにバージョンアップされるわけではありません。そのため、ある人は最新のOSを、ある人は数年前のOSを使用する問題が発生しました。

その問題を解決するために登場したのがSupport Libraryです。このライブラリは、古いOSでも新しいOSの機能を使うことを目的にしたライブラリです。

例えば、先ほど説明したFragmentはAndroid3.0から導入されたため、それより前のバージョンでは使用できません。しかしSupport Libraryを使用すると、Android3.0未満の端末でもFragmentを使用できます。

Support Libraryの機能はかなり強力です。幅広いユーザーに向けてアプリを届けるためにぜひ利用してください。

>> Android DevelopersのSupport Libraryに関する公式ドキュメント

【4】変わっていくテーマ

HoloAndroidの全体的な雰囲気を決める「テーマ」もいくつか存在します。

Android 3.0から はHoloというテーマが導入されました。HoloにおいてActionBarは特徴的で、アイコン、タイトル、アクションボタンなどが上部にまとめられました。

>> Android DevelopersのActionBarに関する公式ドキュメント

そして最新のOSである5.0(Lolipop)では、Googleが提唱する新しいMaterialデザインを取り込んだMaterialと呼ばれるテーマが登場しました。

AndroidにおいてはHoloテーマを継承しつつ、影やアニメーションなどを使いアプリを使用する楽しさ、一貫性を追求しています。

【5】見逃してはいけない「Depricated」

Android OSのバージョンアップに従って、不具合やある事情で使えなくなるクラスやメソッドがあります。このようなクラスやメソッドは、deprecated(非推奨)という形で公式ドキュメント上に記載されます。

Webを表示するWebViewは脆弱性のあるメソッドなどが非推奨になっています。

>> WebViewに関する公式ドキュメント

非推奨となったクラスやメソッドを使い続けることは、脆弱性のあるアプリとなり攻撃を受けたり、新しいOSで正しく動作しなくなる可能性があります。

新しいOSがリリースされた際は必ず確認しましょう。正しいコードを保つには以下のような方法を採ってみてください。

■OSバージョンアップによるAPIの差分を確認する。

>> Android API Differences Report

■Lintを使ってコードの警告を表示する。

>> Improving Your Code with lint

【6】開発環境も変わる

これまでAndroidを開発するにあたっては、Eclipseを利用するのが主流でした。ですが、EclipseよりもAndroid開発に最適化されたAndroid Studioが登場しました。

Android Studioを使用すると、以下の様な点が便利になります。

■アプリの開発版、リリース版を簡単に切り替えられる
■画像や色のプレビューが簡単にできる
■ライブラリの取り込みが柔軟にできる

など。

今はベータ版ですが、Googleとして推している開発環境なのでぜひ使ってみてください。

>> Android Studioのダウンロード

【7】徐々に増えるタブレットユーザー

近年、タブレット端末を使うユーザーが増えています。使用する状況としては、PCの代わりとして使用したり、就寝前のひとときに使用したりなど屋内が多いです。最近では幼稚園や小学校など教育機関に向けて導入されることもちらほらあります。

Androidは3.0からタブレットへの対応を続けています。Google Playにおいても7インチ、10インチのタブレット用画像をアップロードできます。これらの画像を用意することでGoogle Playでの露出が多くなります。

Google Playにおいても7インチ、10インチのタブレット用画像をアップロードできるように

【まとめ】

Androidを取り巻く環境はこれからも加速していきます。最近のGoogle I/Oでは車を制御したり、ウエアラブル端末にAndroidが採用されるという発表がありました。

これからも変化についていくことがエンジニアにとって最も重要です。昔5年やった人よりも、今1年やっている人の方が価値が高くなることもあります。ぜひ過去を知り、今に活かしてもらえればと思います。

>> 関連記事「素人からAndroidアプリ開発の講師になった私が思う、学習で挫折しない5つの心得」はこちら

【講師プロフィール】
RainbowApps講師
曽川義英(そがわ・よしひで)

1985年生まれ。愛媛県出身。2010年、ナビタイムジャパンに入社。乗換NAVITIMEなど新規立ち上げプロジェクトを経験する。2013年からリクルートライフスタイルで業務委託と並行して、RainbowAppsでAndroid講師を担当。2013年末にチームEGG株式会社を起業し、リズムゲーム『ビート&マジシャンズ』に力を入れている。最近話題のクラウドファンディングにも挑戦中。

【著者からひと言】 iOS、Android、Unityなどのアプリ開発を本格的に学びたい方は、ぜひRainbowAppsにお越し下さい。プログラミング初心者の方から経験者の方まで、レベルに合わせた対応が可能です。

■ 詳しくは公式HP:『RainbowApps




人気のタグ
業界有名人 スタートアップ 開発 SE 転職 エンジニア プログラマー Web スキルアップ ソーシャル アプリ シリコンバレー キャリア プログラミング Android 起業 えふしん スマートフォン アプリ開発 SIer 技術者 UI btrax Webサービス クラウド Apple スペシャリスト CTO Twitter Brandon K. Hill ギーク 英語 村上福之 Facebook Google デザイン IoT SNS ツイキャス 世良耕太 モイめし IT 30代 採用 赤松洋介 コーディング 20代 UX 勉強会 プロジェクトマネジメント Ruby ITイベント Webエンジニア 中島聡 ビッグデータ 法林浩之 ウエアラブル iOS 五十嵐悠紀 LINE ドワンゴ ひがやすを ロボット 受託開発 モノづくり IT業界 コミュニケーション イノベーション ハードウエア MAKERS tips ゲーム 女性 ソーシャルゲーム Webアプリ SI インフラ iPhone 女性技術者 高須正和 マイクロソフト 研究者 UI/UX トヨタ 自動車 ノウハウ チームラボ 息抜き システム ソニー プラットフォーム Java メイカームーブメント オープンソース 和田卓人 エンジン グローバル 開発者 教育 イベント サイバーエージェント ソフトウェア 女子会 コミュニティ メーカー 家入一真 スーパーギーク 増井雄一郎 GitHub 人工知能 IPA 40代 日産 テスト駆動開発 ソフトウエア 音楽 TDD ニュース モバイル PHP TechLION

タグ一覧を見る