プログラマー回顧録(1)

~ エンデベッドシステム開発経験を回顧する ~

我がプログラマー人生最悪の事態が起こった

ああ、なんてことだ。

これは間違いなくプログラマー人生最悪の事態だ。

それは間違いない。

重苦しい空気のなか、急いで電車に駆け込んだ。

これから向かうのは1次請負企業。

普段のスーツではなく、客先の作業着を着こんだままだ。

2次請負企業として1次請負企業に向かっているが、2次請負企業は客先。

そう、俺は3次請負企業の社員である。

隣に座っているのは客先、つまり2次請負企業のプロジェクト責任者補佐。

気分的には強制連行だ。

でも、それはしょうがない、それほどの事態が発生したのだから。

疲労感と焦燥感、緊張感が入り混じる。

ほどなくして新宿に到着した。

ああ、どうなるんだ。

これは個人的体験談を元にした回顧録です。企業名、人名などは架空の名称です。
毎週日曜日更新。
随時、加筆、修正を行います。

投稿日2022.01.23更新日2023.02.05

バッチファイルを使う

概要

バッチファイルの役割からWindows環境でのバッチファイルの使い方までをまとめました。

コマンドライン操作

基本的にWindowsで何か作業をする場合、

例えばフォルダを作る、ファイルをコピーする、環境変数を設定する、など。

マウスを使い、アイコンをクリック、メニューを表示して、とGUI操作で作業すると思います。

しかし、パソコンを操作する手段はもう1つ用意されています。

それがコマンドライン操作です。

ますはコマンドプロンプトを起動。
(Winキー+Rで「ファイル名を指定して実行」を表示、”cmd” と入力で起動します。)

コマンドプロンプトにコマンドを入力するとGUI操作と同様のことが行えます。

例えばフォルダを作る。

コマンドプロンプトに”mkdir work”と入力します。

そうすると”work”という名前のフォルダが作成されます。

以下は一般的なコマンド一覧です。

Noコマンド処理内容
dirフォルダに格納されたファイルリスト表示
mkdirフォルダ作成
cd フォルダ移動
renファイル名変更
delファイル削除
copyファイルコピー
7typeファイルのテキスト表示
8set環境変数設定
9d:Dドライブに移動
10exitコマンドプロンプト終了

バッチファイルの役割

コマンド入力で操作をしていると繰り返し同じコマンドの流れを入力するときがあると思います。

そのようなときに活躍するのがバッチファイルです。

実行したいコマンドの流れをテキストファイルに書き出して拡張子を.batとして保存。

コマンドラインに保存したバッチファイルのファイル名を入力。

するとテキストファイルに書き出したコマンドが順次実行されます。

バッチファイルの実行はファイルのアイコンをダブルクリックするだけでもOKです。

それならコマンドを知らない人でも容易にコマンドライン操作が実行できるわけです。

バッチファイルを作成することはコマンド入力の簡素化や誰でもコマンドライン操作ができるようになるというメリットがあります。

例えばプログラムの開発環境を作成するために環境変数を設定する。

そのようなときはバッチファイルを作成し、、グループで共有すれば共通の環境を作成することができます。

バッチファイルの中身

環境変数を設定する場合、バッチファイルの記載内容は以下です。

set WORK=testvalue

上記では変数名”WORK”に”testvalue”を設定しています。

また、Windows10の場合はsetxコマンドを使います。

setx WORK testvalue

環境変数にはユーザー環境変数とシステム環境変数がありますが上記はユーザー環境変数に設定するコマンドです。

また、コマンド実行後はパソコンを再起動しないと反映されません。

,

今週のFirebase

2022年1月11日~1月17日のFirebase使用状況

さて、今週のFirebaseの使用状況はどうだったでしょうか?

アプリのユーザー数の変動とともに確認します。

みてみて

Realtime Database+Storage構成の投稿アプリ

(ユーザー数の変動)

興味本位でインストールして頂けているようですが定着せず。

まずはUIの改善を早めにいれたいところです。

(Firebaseの変動)

インストールに伴うユニークID登録の影響でRealtime Databaseが微増。

投稿に伴うStorageの変動は確認できず。

エストーク

Realtime Database単体構成のチャットアプリ

(ユーザー数の変動)

こちらもみてみて同様、インストールされているものの定着せず。

(Firebaseの変動)

インストールに伴うユニークID登録の影響でストレージが微増。

オンラインチャットが使われだすとDLサイズももっと伸びてくると思うのですが

まだその影響を見ることはなさそうです。

,

androidアプリを初めて作るなら【書籍紹介】

初めてのandroidアプリ開発

androidアプリを開発するには何が必要でしょうか?

アプリ開発用のパソコン、ネット環境、スマートフォン(android)。

以上です。

あとは統合開発環境 android studio をインストールしてアプリを制作。

スマートフォンで動作確認。

最後にGoogle PlayにリリースでOK!

1度でもアプリ開発を経験するとそんなものだと分かるんですが3年前の私は違いました。

アプリ開発用のPCを買った。ネットは使える。

あとandroidアプリを作るには何が必要なんだろうか。。。

そんなときに買った本がこちらです。

統合開発環境 android studio のインストール方法から 基本的な使い方、そして、簡単なアプリ制作の例までし っかりガイドしてくれています。

「1日で基本が身に付く!」 のうたい文句通り、ざっくり理解するのであれば 1日で充分なわかりやすさでした。

androidアプリを開発するには何をすべきか悩んだ人におすすめの1冊です。

改訂版もリリースされているようです。

アプリ制作で使っているおすすめソフトウェア

より快適にアプリ開発をするためのソフトウェア

プログラミングをするなら、それぞれの言語に合わせて統合開発環境が用意されていると思います。

例えば、android開発ならandroid studioです。

統合開発環境を使ってプログラミングをするとリリースまでの作業は大抵できてしまいます。

それでも、統合開発環境だけでは賄えきれないものもあるのではないでしょうか?

今回は私がアプリ開発時に実際に使っているソフトウェアを紹介したいと思います。

ソースコードの編集をもっと自由に。

プログラミングする。と言えば、ソースコードを書き連ねる作業になると思います。

そうなるとやはり大事になってくるのが文字列編集。

変数名やメソッドの変更、移植など文字列を扱う作業も多いと思います。

そのようなときには私はテキストエディタ―を使って作業しています。

無料ソフトだと サクラエディタ

有料ソフトだと 秀丸 がおすすめです。

プログラム前後の差分を抽出する。

プログラミングをするうえで気を付けたいのがデグレード。

前にできていたことが知らない間にできなくなっている。

考えただけで怖いですよね。

それを防ぐ手立てとしてはプログラム修正前後のソースファイルの差分をチェックしています。

差分をチェックすることで想定外や間違った修正に気付くことができます。

そのためのソフトウェアが差分ソフトです。

無料ソフトだと DF や WinMerge

有料ソフトだと Araxix merge がおすすめです。

ソフトウェアを自由自在に呼び出す。

使用するソフトウェアが多くなってくるとソフトウェアを立ち上げるのにも一苦労です。

それを解決するのがランチャーソフトです。

私は CLaunch 一択です。

アプリ開発時に使用しているソフトウェアを3つ紹介してみました。

よかったらお試しください。

スマートフォンアプリを作るときに決めるべき大事なこと

概要

統合開発環境(SDK)を用意し、スマートフォンアプリを作る。

そのアプリ、世の中全てのスマートフォンで使えるとは限りません。

なぜならスマートフォンのなかで動くOSによってアプリ開発に必要となる統合開発環境が異なるからです。

まずはアプリのターゲットユーザーを絞り、それに適した統合開発環境を用意する必要があります。

スマートフォンOSの2大勢力、androidとiOS。

スマートフォンOSの2大勢力をご存じでしょうか?

そうです、Googleが開発したandroidとAppleが開発したiOSです。

それぞれのOSでアプリを動かすには、OSに合わせてアプリを作る必要があります。

androidの場合、開発言語は、java、または、kotlin。

作成したアプリは、 Google Play にリリースします。

iOSの場合、開発言語は、Objective-C、または、Swift。

作成したアプリは、 App Store にリリースします。

いずれにしろ、オブジェクト指向言語で開発することになります。

ですが、開発言語それぞれでプログラム構文が異なり、必要な開発環境も異なってきます。

つまり、アプリを作るなら、どちらのOSにアプリをリリースするのか。

ターゲットを絞ってアプリを作る必要があるわけです。

(どちらにもリリースできるよう言語変換できる有料の開発環境サービスもあります。)

(また1つのプログラムからandroid向けとiOS向け、それぞれのアプリを作ることができる無料の統合開発環境FlutterがGoogleによってリリースされています。)

androidとiOSの違いを理解し、どちらでアプリをリリースするか悩む必要があります。

アプリをリリースするのに必要な費用

androidでアプリをリリースするにはGoogle Playに開発者情報を登録する必要があります。

登録手数料は25$です。

1度登録すると以後、数に限りなくアプリをリリースすることができます。

それに対し、iOSでアプリをリリースするにはApp Storeに開発者情報を登録する必要があります。

登録手数料は年会費99$です。

つまり、iOSでアプリを継続してリリースするには固定費が必要ということになります。

その点でiOS向けにアプリを作る場合、開発者の負担が大きいといえます。

androidとiOSのシェア争い

次に考えるべきはユーザー数でしょう。

せっかくアプリをリリースするならできるだけ多くのユーザーに使って欲しいもの。

androidとiOS、どちらのユーザー数が多いでしょうか?

2021年の調査によると日本においては約50%どうしでシェアを分け合っているようです。

また、世界に目を向けた場合は、androidが約70%となり、android優勢となっているようです。

スマートフォンアプリを作るときはまず統合開発環境を選定すべき

開発言語、開発費用、ユーザー数を考慮した上でandroid、iOSどちらに向けたアプリを作るか決めるのがいいのではないでしょうか?

android向け統合開発環境 android studio のインストール

iOS向け統合開発環境 Xcode のインストール

ちなみに私の場合は海外にもリリースすることを前提にユーザー数がより多いandroidで開発することにしました。

開発アプリはこちら

また、iOSユーザーに対するフォローとし、現時点ではwebでサービスを提供しようと考えています。

年末外宮参拝

執筆:2021年12月28日

本日を含め2021年も残すところあと4日となりました。
みなさま、いかがお過ごしでしょうか?
なにかと忙しい時期ではありますが豊受大神宮(外宮)を参拝してまいりました。
今年は伊勢神宮125社を巡り、伊勢神宮をより身近に感じた年となりました。
参拝の道中、外宮参道を通りましたがにぎわいを感じられ、コロナ禍の落ち着きを感じた次第です。
来年はコロナ禍が収まり、外出を楽しめる年になって欲しいと思います。
来年もYouTubeに、四季だよりにとアプリを更新していきたいと思いますので今後ともよろしくお願い致します。
それでは、みなさま、よいお年をお迎えください。

熊野古道を歩く

執筆:2021年10月29日

紅葉の時期も近づく10月下旬。
ふと滝原の紅葉はどうなっているかと思い立ち、熊野古道・三瀬坂峠を歩いてきました。
今回の参拝ルートは多岐原神社~熊野古道~瀧原宮です。
初めて訪れる熊野古道。
少しきつめの勾配に苦労しながら約1時間の峠道。
疲れもありましたが静寂に包まれる心穏やかな旅となりました。
さて紅葉はどうだったのか?
満喫するには時期が早かったようです。
いずれまた、訪れたいと思います。