私はデザイナーではないし、凝ったユーザ・インターフェースを作りたいと思ったこともあまりなかったのですが、簡単にできるのならと少し試してみました。利用したフレームワークは先日学習会で紹介させていただいた Flutter で、Dart という Java や JavaScript に似たオブジェクト指向言語です。どちらも Google 製です。
結果としてあまり簡単ではなくて、コピペしたサンプル・プログラムの中の一部はよくわからないままです。とはいえ、たかだか数10行で とて も自分が作 った とは思え ない もの にな りま し た 。素のJavaScript で一から全部自分でプログラムを書いたら1,000行では済まないでしょう、というか、たぶん途中で嫌になってやめてます。動いているところはこちらの動画をご参照ください。
https://www.youtube.com/watch?v=Dd8ew1fyxN4
アニメーションがぬるぬると動くようなものは必要ないと思っていましたが、できてしまうとこれはこれでいいですね。スクロールでヘッダ部が非表示になると画面を広く使うことができるので使い勝手の向上になります。
あとはたぶんスマホの横幅に収まらなくなる詳細行を横スクロールできるようにすれば、いろんな用途のアプリにそのまま使えそう、ということでもう少しがんばってみたところ、それもサンプルのコピペでできました。
プログラミング能力よりむしろ、検索力が重要です。
Flutter のように最近使われるようになった言語は書籍が出ていなくて、英語の本が出る頃に1バージョン、それが日本語に訳される頃には 2バージョンくらい古くなってしまいます。英語が苦手でも、慣れれば気合いでサンプル・プログラムにたどり着くことができます。最近は日本語の掲示板もそこそこ充実してきました。
Flutter のユーザ ・インターフ ェース以外の部分についてはBLoC ( Business Logic Components ) という、ステータスとイベントを管理するフレームワークが素晴らしいです。 Java などのサーバ側と違う仕組みが必要ですし、 Visual Basic などで作っていた従来のアプリと違って非同期の処理が普通にあるのですが、きれいに整理できました。
■ コンピュータ・ユニオン ソフトウェアセクション機関紙 ACCSESS 2022年4月 No.414 より