2017年07月12日

『基本にカエル中学英単語のアプリ(Lv1)』を公開!

『基本にカエル英語の本』の10周年記念でアプリをつくろうとJavaの勉強をしていましたが、ようやくアプリを公開できました!
長かったー
というわけで、まずは『基本にカエル中学英単語のアプリ(Lv1)』!
無料で、広告もなしという太っ腹のアプリです。

基本にカエル中学英単語のアプリ(Lv1)

大ざっぱにいえば「ランダムに英単語が出てくるだけ」のアプリなのですが、なかなか勉強になりましたよ。

1.jpg

posted by pugu at 09:36| Comment(0) | TrackBack(0) | ・Javaの勉強

2017年05月23日

androidアプリの制作はAVDでつまづく…。

javaのアプリケーションは、だいぶん、できました。
まだ先は長いですが山場は超えたので、そろそろandroidアプリの制作にとりかかろうと、あと、ぎっくり腰で椅子に座れなかったこともあって、1週間ほど「Androidアプリ開発パーフェクトマスター」を読んでいました。
すこしイメージできるようになったので、かんたんで単純なアプリをつくろうとしたのですが――。

AVDが動かない…。
CPUはintelなのですが、古いのですかね…。
せっかくメモリを増設したのに…。

仕方がないので、ググって実機を動かす設定方法のサイトを探してその設定をしました。
こちらは何とかなりそうですが、出先用のパソコンでも作業ができるようにしようとしたのですが、うまくいかず…。
出先ではPC用のアプリケーションをつくるか、それとも新しくPCを買うべきか…。
悩ましい…。

Androidアプリ開発パーフェクトマスターのレビュー

分厚い本ですが――。

・ページ数の3割くらいですかね。androidアプリとは直接的には関係のない、Javaの入門書にあるようなことが書かれていました(継承とは何かみたいな話)。
・ページ数の1割くらいですかね。「androidって何?」みたいな蛇足的なページがありました。
・ボタンの配置を変えたり、ポップアップするダイアログをつくったりと、かんたんなことが大半でした。
・わたしはデータベースをつかったアプリをつくりたいのですが、それに関してはページ数が割かれていないこともあって、イマイチわからず…。

Javaの入門書にあるようなページは復習になりましたし、他の本とはちがう切り口の説明もあったので「なるほど」と思うことも多々ありましたが、データベースなどのほうをもっと充実させてほしかったというのが感想です。
ま、入門の先は自分でやれ、ということかもしれませんが。

というわけで、データベースをつかったアプリ制作についてググったのですが、やはりわかりにくく、なかなかイメージがわかないので、とりあえず逆引きの本を見ながら何かつくろうかな、と。

posted by pugu at 10:40| Comment(0) | TrackBack(0) | ・Javaの勉強

ファイルのリネームと上書きで悩む(Java)

以下のことをしたいな、と思ってググっていました。

・ファイルAとファイルBがある。
・ファイルAをファイルBの名前でリネーム
・ファイルBを上書き

…違うな。これができないと、いままで苦労して書いてきたソースすべてが無駄になるという恐ろしい事態を招いてしまうので、必死でググりました(笑)

が、「できない」のような記述が…。

途方に暮れそうになったとき、「昔のバージョンのJavaではできなかった。でも今ではREPLACE_EXISTINGのoptionを使えばできる」と書いてあるサイトを見つけたのですが、そのサイトにあるソースを参考にしても、どうしてもできない…。
仕方がないので英語のサイトを読み漁っていたら、ありました!
以下のようなソースになるようです。

Path src =Paths.get(パス);
Path srcrename=Paths.get(パス);

CopyOption[] options =new CopyOption[]{
StandardCopyOption.REPLACE_EXISTING,
StandardCopyOption.COPY_ATTRIBUTES,
};

Files.copy(src, srcrename , options);

ど素人、独学なので間違っていたらすみません。

posted by pugu at 10:09| Comment(0) | TrackBack(0) | ・Javaの勉強

2017年04月13日

入門書のあとはEclipseでjavaのプログラミング

42歳、パソコン音痴のおっさんが独学でJavaを勉強中の続きです。

入門書を3冊ほど読み終えたものの、まだ理解できていないところがすこしありました。
が、買ったばかりのゲームも「説明書をザッと読む → 実際にプレイする → わからないところがあれば、その箇所の説明書を読む」なので、つぎは実際にjavaで何かプログラムをつくるべきかな、と。
仕事で使うものは2つ。

・PC上で動くツール
・スマホのアプリ

そのために使うフリーソフトみたいなものは以下。

・PC上で動くツール → Eclipse
・スマホのアプリ → android studio

調べていると、android studioはメモリが8GBは必要とのこと。
稼働しているPCは2台。

(1)外出用として、2万円台で買ったASUS VivoBook L200HA。起動がはやい、バッテリーがかなり長持ち、タッチパッドは使いやすい、ですが、処理速度が遅いです。メモリは2GB。
(2)家のPC。メモリは2GB。

<android studio>
(1)はメモリの増設ができないので、とりあえず(2)にandroid studioにいれました。しかし、起動できないレベルの遅さ。仕方がないので、メモリを8GBまで増設しました。

<Eclipse>
(1)にEclipseをいれて使えたらいいなーと思って、試しにEclipseをいれてみたのですが、な、なんと。
ふつうに使えました。

というわけで、まずは、Eclipseでjavaプログラミング開始!
さっそく、つぎの「基本」でつまづいてしまいました。

・スコープ
・型変換

それを乗り越えても、わからないことが続出…
しかし、「わからないことがあれば、Google先生に聞く」で、欲しいツールの3割ほどは完成しました!
ほんと、ブログなどにプログラムのことを書いてくれるひと、教えてgooみたいなところでプログラムの疑問に答えてくれているひとさまさまですね。
というわけで、思ったよりもはやくツールやアプリをつくれそうです。

posted by pugu at 21:51| Comment(0) | TrackBack(0) | ・Javaの勉強

2017年02月27日

42歳、パソコン音痴のおっさんが独学でJavaを勉強中 〜 入門レベルは卒業

Javaの勉強をはじめました。いままでの経過です。

Javaの絵本を読みはじめたものの、第四章のクラスの基礎あたりから、だんだんわからなくなっていく。
・この本では説明が足りないため、初心者向けのJavaのウェブサイトを読む。知識は多少ついたものの、もやもやは解消できない。
・分厚い本であればきちんと解説されているはずだと思い、独習Javaを買って読みはじめたものの、いきなり知らない言葉がでてきて、そこでストップ。
やさしいJava入門を買って読みはじめる。この本のおかげで、だいたい理解。ただ、講義風なので、復習するときに不便。
Javaの絵本はうまくまとまっているので、復習のために、あわせて読む。知識が整理できる。

というわけで、手元の本にあるサンプルプログラムくらいであれば読み書きできるようになりました。
何をもって入門レベルなのかわかりませんが、このくらいであれば入門レベルは卒業かな、と。

で、つぎの本を買い足しました。

スラスラわかるJava
帯に「ほかの入門書よりも習得できるレベルが高い」のようなことがあったので、復習をかねて購入。

やさしいJava 活用編
目次を見た感じ、入門書にはない項目ばかりだったので購入。現在、未読。

この先は――。

・サンプルプログラムを、より、すらすら書けるようになるため、サンプルプログラムを書く練習をする
やさしいJava入門の先を読み進める。
・復習、知識の整理という意味で、あわせてスラスラわかるJavaや、Javaの絵本を読む。

これが終われば、やさしいJava 活用編を読みながら、何かつくってみようかな、と。

posted by pugu at 11:47| Comment(0) | TrackBack(0) | ・Javaの勉強

オブジェクト、クラス、インスタンスの関係で悩む

■よくある解説

・クラス・・・設計書。
・オブジェクト・・・設計書もとに作成したもの。

<たい焼き>
・「たい焼き」をつくるには、金属の「型」が必要。
・型に、生地や餡子などを流し込んで、たい焼きをつくる。
・1つの型から「餡子がはいっているふつうのたい焼き」もつくることができれば、「クリームがはいったたい焼き」もつくることもできる。

<クラスとオブジェクトの関係をたい焼きでたとえる>
・たい焼きつくる金属の型が「クラス」。
・できあがった、たい焼きが「オブジェクト」。
・1つの型があれば、さまざまな種類のたい焼きがつくれるのと同様、1つのクラスから、さまざまなオブジェクトをつれる(つくる)。

これが、よく見かける解説です。
理解はできますが、「オブジェクト、クラス、インスタンスの関係」がよくわかりません。

■手元にない本など

「オブジェクト=インスタンス」としているものもあるらしいです。
これだとかんたんなのですが――。

手元にある本によると、この解釈はあまり正しくないようで。
というわけで、手元にある本の解説です。

Javaの絵本 第3版 Javaが好きになる新しい9つの扉

この本では「クラスをインスタンス化したのがオブジェクト」のような書き方をしています。
つまり、「インスタンス」についての記述がないわけですね。
これだとかんたんなのですが、ほかの本を見ると「インスタンス」という言葉もよく使われているのですよねー

やさしいJava入門―講義形式でじっくりマスター

「クラスはオブジェクトの型」
「特定のクラスのインスタンス=オブジェクト」

このようにあります。
これくらいしか書かれていないので、特に「特定の」の部分の解釈がかなり難しい…。
この本のおかげでだいぶん理解が進みましたが、「インスタンス」と「オブジェクト」のちがいは、わたしには理解できませんでした。

スラスラわかるJava

入門レベルからの脱却のため、あらたに買い足した本ですが――。

「クラス・・・特定オブジェクトの定義を構成するオブジェクト」
「インスタンス・・・クラスを元に作成された特定オブジェクト」

練習問題の解答に――。

「オブジェクト・・・オブジェクト指向でプログラムを分割するための単位」
「クラス・・・オブジェクトの設計が書かれているもの」
「インスタンス・・・クラスを元に作成されたもの」

――とあります。

これらを、わたしはつぎのように解釈しました。

<概念>
・近年、プログラムが膨大な量になった。
・管理などの面から、プログラムを分割・管理している。その分割の単位がオブジェクト。

<実際>
・設計書であるクラスから作成されたものがインスタンス(先ほどのたい焼きのたとえ)。

この解釈で正しければ、理解できたことになるのですが――。
そうすると、やさしいJava入門にある文とちがうような気が…。

いずれにしても、よくわからなくてもプログラムは書けそうなので、この辺で考えるのをやめようと思っています。

posted by pugu at 10:07| Comment(0) | TrackBack(0) | ・Javaの勉強

2017年02月16日

42歳、パソコン音痴のおっさんが独学でJavaを勉強中 〜 数日経過、迷走中…

書店をぶらぶらしていたら、つぎの書籍が面陳されていました。

Android & iOS両対応 つくりながら覚えるスマホゲームプログラミング

『基本にカエル英語の本』が10周年で、シリーズ10万部突破も間近なので「スマホのアプリ」をつくりたいなと思って、本を購入。
読み進めていったのですが――。

そのまま読めばよかったのかもしれませんが、Java scriptのところで「もっと詳しく知りたいな」と(これが迷走のはじまり)。

ちょうどそのときに編集者と打ち合わせがあって時間をあわせるために書店にいきました。
すると、つぎの書籍が平積みされていたので、買ったのですが――。

Javaの絵本 第3版 Javaが好きになる新しい9つの扉

読んでいると、なんか、ちがうな、と。
ぐぐったら、な、なんと!

Java と Java scriptは別物で、「メロン」と「メロンパン」くらい、ちがうそうで(笑)

が、この際だからプログラムの勉強をしようと、Javaの勉強をしようと決意、本を読み進めていったのですが――

第四章の「クラス」のところから、もやもやしはじめました(まったく理解できないわけではなく、わかったような、わからないような――)。
もやもやしていても最後まで読む、繰り返し読むと、概要がつかめて理解が進むものなので(いわゆる「まわす」という勉強法)、最後まで読もうとしたのですが、そもそも第三章までは大丈夫で、第四章からもやもやしているのだと気がつきました。
仕方がないのでぐぐってJavaの入門サイトを3つほど読んでみたのですが、やはり、もやもやは解消されず。

何がわからないのか。
一例をあげると――。

クラス、コンストラクタ、インスタンス、オブジェクト、インスタンスメソッド、インスタンス変数、クラスメソッド、クラス変数あたりの概念が、どれを読んでも「たとえ」ばかりで、実際に何をどうすればどういうことが起きるのか、なぜそうなるのかがわからないのですよね。

きちんと書かれているはずの分厚い本を買おうと思い、中古でつぎの本を買いました。

独習Java 第4版

今度は、いきなり「ラップクラス」という単語が登場。
「ああ、この本はある程度の前知識が必要なのか」と。
実際、ラップクラスという単語がでてくるまでは、(上記に書いたように)ほかの本やサイトで知識を得ていたので、さらさら読めましたしね(それまでは、うまくまとまっていると感じました)。

仕方がないので、書店へいって立ち読み。
つぎの本を買いました。

やさしいJava入門―講義形式でじっくりマスター

で、いま読み進めているところです。
ようやく、コンストラクタなどの概念がなんとなくわかったような気がします。

おそらくですが、書籍に足りないものを補完してくれる先生、先輩社員などがいると(学校、新人研修、現場など)、いずれの本でも大丈夫なのかな、と。

いずれにしても、勉強系のものは「着手する→執筆で忙しくなって頓挫、もしくはプライベートで修羅場になったりして(笑)頓挫」を繰り返しているので、今度こそは、ぜったいに習得するぞ、と思っています。
と思っているなか、水面下では執筆の話が進んでいますが。

というより、Java scriptの勉強をしろよ、と(笑)

posted by pugu at 09:52| Comment(0) | TrackBack(0) | ・Javaの勉強