FlutterっていうGoogleの新しいアプリ開発フレームワークを勉強中

ブログをご覧くださいましてありがとうございます。

昨日というか、今日の朝方まで仕事をやってしまいました。

10時に寝るとか行っておきながら、起きたのも7時くらい。

納期が厳しいので、仕方がないですね。

それでもブログ書くことは重要です。

優先順位の1位なので、絶対に朝に書くことを続けます。

バーっと書いていきたいと思います。

私、ウェブサイトを作る仕事を生業としていますが、htmlとかCSSはかなりの速度で書けるようになりました。

phpとかJavaScriptなんかもウェブサイトの制作に必要なものは書けますし。

デザインなんかもそこそこできますので、結構オールラウンドに仕事してます。

ただ、一つ思ったことがあります。

尖った点がほしいなということ。

なので、Flutterという開発手法を習得してアプリの開発を行えるようになろうと考えています。

ただのウェブサイト屋さんから脱却して、アプリの開発者へ

今私はどちらかというと何でもこなせてしまうことが仇となり、立ち位置があやふやになってきている気がします。

各々の技術も負けないと自負しているんですが、今後もっともっと単価の競争なども激化していくと考えられます。

現状、ただウェブサイトが作れるというだけでは競争力がかなり下がってしまうんじゃないかということです。

もちろん、私に任せてもらうとワンストップで、デザインからウェブページの制作、運営補助、広告なんかもこなせてしまうんですが、これだとただの便利屋さんでしかありません。

便利屋さん、もちろんある程度の利益は確保できますが、どうしても競合が増えてくると、利益率の確保が難しくなってきます。

この状態だと確実にレッドオーシャンになります。

そこで考えたのが、さらなる技術の底上げで、誰もできないことをやるということです。

具体的には、スマートフォンアプリの開発です。

おそらく今後、ウェブサイトもブラウザで見るよりもアプリで見る時間のほうが増えてくるはずですし、アプリ開発今後爆発的に伸びていく分野になってくると考えています。

スマートフォンアプリのフロントエンド開発を行えるようになる

私には友人にすごいプログラマーがいるのですが、彼いわくアプリの実装を行える人が極端に少ないそうです。

どちらかというとプログラム自体は彼らが作るのですが、デザインやユーザーインターフェイスの設計をできる人が少ないということを言っていました。

なので、そこら編の分野をできるようになれば、エンジニアとしてかなりの需要があるとのことです。

アプリの制作も、実際に動くプログラムがありますが、アプリ自体を完成まで持っていくとなるとデザインを実装したり、動きなどの設計が必要になってきます。

これらを作っていくことを、アプリのフロントエンド開発とか言われています。

実際にアプリが内部で動く仕組みとかは逆にバックエンド開発とか言われています。

バックエンド開発になってくると、もうずーっと昔から開発している人とか、天才じゃないとついていけないんですが、あいにく私はそうではありません。

しかしながら私が得意としているのは、ウェブサイトの制作ということ。

これはユーザーの利便性を考えて設計したりするため、アプリを使っていくときにもそういう経験って必ず生かせるんじゃないかなとも思ったわけです。

つまり、ウェブサイトの構築で今まで培ってきた強みを生かしながら、新しいアプリの開発という分野をやっていこうということです。

ということでアプリの実装なんかを少しずつできるようにしていこうと思いまして、新しくいろいろと勉強しているわけです。

今はGoogleが開発したFlutterという言語を勉強中

現在スマートフォンのOS(オペレーティングシステム)は、AppleのスマートフォンであるiPhoneのiOSと、GoogleのiPhone以外のスマホであるAndroidがあります。

実はこれら、アプリを作ろうと思っても、そのOSごとに作らなければなりませんでした。

これって、結構めんどくさいことだったんですね。

ただ、技術者たちも、同じような動きをさせるのに、なぜ別々のコードを書かなければ行けないのかと思うわけです。

そしてかどうかはわかりませんが、昨年Googleが、Flutter(フラッター)という開発環境をリリースしました。

Dartという言語を使いながら、iPhoneでも、Androidでも同じコードでアプリが動く仕組みを作ったわけなんですね。

iPhoneでもAndroidでも同じコードでアプリが動くということは、つまるところ開発の時間的なコストが半分になったと言っても過言ではありません。

各OSごとに調整なども必要かと思いますので、全く同じようなものでは無理でしょうが、大幅に工数が減ったというのは、過去の開発手法に比べて、かなりのアドバンテージが有るということです。

いやー、素晴らしい。

しかもエンジニア曰く、htmlのような形で理解がしやすいとのことも聞きました。

html5を使ったウェブビューもあるとのことで、既存ウェブサイトとの連携などもかなり取りやすい。

もうね、これは機です。

やるしかないと思い、即Flutterの開発環境をインストール。

一つづつドキュメントを読みながら、アプリの開発を勉強しています。

プログラミングには英語力は必須

話はそれますが、どうしてもプログラミングって言うのは英語が必要になってきます。

これはプログラミング言語の開発すらそもそも英語でできているというのが大きいからです。

Flutterというのは昨年リリースされたばかりなので、まだ歴史が浅いので、いろんなことをGoogle先生に聞きながら勉強する必要があります。

しかしながら日本でFlutterを使って開発している人は少ないので、どうしても英語のドキュメントを読みながらの開発になっていまいます。

英語は全部Google翻訳で訳していますが、なかなか英語力も必要かなと思いました。

今後は英語も課題にしていきたいと思います。

実は海外移住を考えているので、絶対に英語力は必要ですね。

プログラミングにせよ何にせよ、英語は今後絶対的に必要になってくると思います。

やりたいことリストの上位に英語はいますので、こちらも今後は習慣化していきます。

勉強するだけでは意味がないので、アプリを作る

話をもとに戻しますが、実際に本を見て手を動かしながら勉強していますが、これだけでは何も成果を生みません。

なので、しっかりと自分のできる範囲で、生活が向上するアプリなんかを作りたいと思います。

例えば昔からやってみたかった、電源のスイッチをオン・オフするアプリだったり、Google Assistantと連動するアプリだったり。

作りたいものはたくさんあったのですが、作るとなると敷居がものすごく高く見えていました。

また、自分自身の時間もあまりなかったため、どうしてもアプリ開発が難く何度も挫折していました。

しかしながら現在ではFlutterと言う環境があります。

しっかりと作りながら勉強を行い、まずはどれだけ小さくてもいいので、アプリを完成させます。

そして、そこからバックエンドである他のプログラムとの連携がしっかりできるように、まずは一つ一つ足場を勝てめていきたいと考えています。

さて、現状の仕事、まだまだ残っていますし、かなり納期も近づいてきてピンチです。

ここが踏ん張りどきなので、しっかりとクライアントさんに喜んでもらえるようにがんばります。

Flutter開発おすすめ本

ちなみに、ちょっと古いんだけど、Flutter勉強するならこの本がおすすめです。

まずはこの本見ながらアプリ制作はどんなもんかやってみると、結構つかみやすいと思います。

Android/iOSクロス開発フレームワーク Flutter入門
掌田津耶乃
秀和システム
売り上げランキング: 41,236