何かゲームアプリを作りたい

いろいろ考えてやっぱり楽しいものが一番だと思ったので、ゲームアプリを作りたい。

switchじゃなくwhileかfor文で分岐を真似ることにした。

まず最初にテキストゲームを作ろうと思ったけど、全く面白そうな内容が思いつかない。

どんなものが楽しいんだろうか。

ブログ名から「IT」を抜いた

まあ始めてあんまり記事を書いていないし、縛りを入れたくないから、変更していいかなーと。

 

ピアノをちょっと再開した。

昔作った曲の解析をしたけど、作っていたときほどの没入感や新鮮さを感じなくなっていた。

何か新しいコード進行を探したとして、感じることはあるんだろうか?とちょっと思った。

IT系サイトも複雑になってきた

カテゴリやメニューの類が多くなったように感じる。

でもしっかり分けられていて探しやすい。

でも根と葉の関係が変わるような気がしないでもない。

タグで1層が一番わかり易いのかな。

AIができた先にはどんな未来が来るのだろう

個人を起点にすると、全ては衣食住のためにある。

衣食住は物を交換して成り立つ。

金融が発達した。

物の交換は移動が伴う。

乗り物が発達した。

物を交換するためには物について知る必要がある。

通信が発達した。

これらは成人の社会を成すためのもので、成人ではない者と老人への対応が必要。

教育と介護が発達した。

成人でも病気はする。

医療が発達した。

これらに時間経過による補償が必要。

保険が発達した。

そもそも人は心の生き物なんだ、と言われる。

知能と心を分けて知能だけ発達するならば、それは人工知能でしょう。

と、ここまでは30年前に想像していた。

30年前に未発達というのか成長余地があったのは通信、コンピュータ関係だった。

 

今後は、心がどうにか発達するのだろうか。

物から事へ、コンクリートから人へ、とちょっと前に言われていたので変化はある。

宗教に代わる何かができるのか。

死の定義が変わったり、もっと寿命を伸ばすか、刺激の多い社会が作られて200年分の刺激を得られる人生になるか。

「事」が、変わったり出来たりするならば、言葉にすると儀式や作法に当たるか、それ以外にもあるか。

 

イノベーションとは、未来にある普通のものを創造すること。

 

何が作られるか。

…、先がちょっと見えないが、何かが2つの基準に分かれ、それぞれの軸が発達して行くだろう。

MVVMがわからないのでMVCをJavaでしたいけど分岐が深く続くこともわかりにくい

ネストの問題にいつも当たる。

ネストが深すぎて何をしている文かわからなくなることがほとんど。

先に条件分岐をできるだけたくさんして、エラーにならないデータを揃えてから、まとめて処理をする書き方に変えた。

そうするとbreak;を使わずにreturn;で済むことがあるので、エラー箇所にフラグを立てやすいし、とりあえず一度に書けるだけ書くことができるようになった。

Javaの基礎の基礎

変数と関数とクラスとパッケージが分かれば動くプログラムを作れるはず。

鶴亀算ができればまあある程度分かるでしょうが、ググっても定義ばかりであれができてこれができなくこうしたいときはこうする、みたいな入門書が見つからないので、ちょっと書く。

変数とは、データやクラスの入れ物。

関数とは演算の入れ物で、データやデータ入りのクラスを渡すと、計算したりその結果を返してくれる。

クラスとは、変数と関数の入れ物。

パッケージとは、クラスの入れ物。

変数や関数の使い方は、

x=123;

string = new String("name");

など何種類かあるけれど、変数を用意するか、用意と同時にデータを入れて使う。

関数の書き方は、色々修飾子などがあるけれども、必ず書かなければならないのは、

function kansu(x){処理;}

な感じ。kansu(x)より前にz=123;と書いてkansu(z)と書くと、処理;の部分に123が渡り、kansu(){}の後にxのデータが引き継がれない。データを引き継ぎたいときは、returnを使う。

function int kansu(a){return a;}

z=123;

y=kansu(z);

と書けば、yには123が入る。この例では単純にy=zの意味だけど、

return a+b;

など計算を入れるとプログラミングっぽくなる。

何度も同じ処理をしたい時、複数行の文を何度も書くよりも一行で書く関数を何度も書くほうが書く量が少なくなるので便利。同じ関数を何度も書かずにfor文・while文と言われる繰り返し処理で、もっと短く書くこともできる。

クラス内の関数を使うときはクラス名、ドット、関数名の順に書く。classname.functionname();

な感じ。クラス内の変数を使うときは、

classname.name;

と書く。これは全く意味を成さないので、

x=classname.name;

などで変数を使いまわすとプログラミングと言えるでしょう。

クラスを使うためには、

class name{

import packagename;

}

と書くと、使いたいクラスが入っているパッケージを、使えるようになる。

 

Androidアプリを作りたい

2015年にアプリを作った。

メインのロジックは5行程度だけどユーザーさんは20人前後いる。ありがたい。

play.google.com

 

また何か作りたいなーと思って最近少しやる気が出てきた。

おさらいをして新しいものを作りたい。

 

目標は買い物リストアプリと家計簿アプリを作ること。

それらを作ったら有料アプリも作りたい。