2018年からWeb界隈ではPWAという言葉がにわかに注目を集め始めました。
PWAとは、Progressive Web Appsの略です。グーグルの定義によると次のようになります。
プログレッシブ ウェブアプリはウェブとアプリの両方の利点を兼ね備えたアプリです。ブラウザのタブで表示してすぐに利用することができ、インストールの必要はありません。使い続けてユーザーとの関係性が構築されていくにつれ、より強力なアプリとなります。不安定なネットワークでも迅速に起動し、関連性の高いプッシュ通知を送信することができます。また、ホーム画面にアイコンを表示することができ、トップレベルの全画面表示で読み込むことができます。
https://developers.google.com/web/fundamentals/codelabs/your-first-pwapp/?hl=ja#_2
これによって何が変わるかを、次に書いてみます。
BEFORE PWA
- iOS用アプリはSwift、Android用アプリはJavaを用いて開発。
- スマホアプリとは別に、Webアプリを開発。
例えば楽天。これはiOSでもアンドロイドでもショッピングアプリがあります。また、PCやMacで、ブラウザを立ち上げて楽天のホームページに行ってショッピングを楽しむこともできます。このためには、iOS用のアプリ、アンドロイド用のアプリ、さらにWebページ用のアプリの3つを開発する必要がありました。
AFTER PWA
- Webアプリとして開発。言語は不問。
以上です。つまり、BEFOREでは3回の開発が必要だったのに対して、AFTERは1回の開発で済みます。
これは大きな違いですね。
アプリ開発を学ぼうと思っていた方は、SwiftやJavaを学ぶのではなく、スクリプト系の言語を一つ学んでおくことをお勧めします。
ちなみに当社では、Python, JavaScriptでたいていのアプリは作れてしまいます。もちろんフレームワークも必要で、PythonならDjango、JavaScriptならVue.jsを使うことが多いですね。
いずれにしても学習コストを最小にするために、こうした技術動向は知っておくとよいでしょう。