2016年10月17日月曜日

東北TECH道場青森道場 秋季2日目開催しました

東北TECH道場青森道場秋季2日目を、2016年10月16日(日)に、青森駅前の新町プラザ フリーカフェ新町(まちまちプラザ)で開催し、高校生7人、社会人1人が参加しました。



今回は、まず最初に、Android端末を接続し、前回のアプリが起動できることを確認しました。


そして、前回のアプリのプログラムの中を読んで、復習しました。


次に、講師の星さんの作られたお絵描きアプリのプログラムを、SourceTree(Git)を用いて、GitLabからクローン(ダウンロード)しました。




そして、アプリのプログラムを確認していきます。
まず、GUI部品のレイアウト。




画面を表すアクティビティ・クラスのフィールドとライフサイクルのメソッドの確認。




端末を回転させるなどにより、画面のサイズが変わったときに、画面のサイズを取得しなおして画面を描画し直すしくみを学びました。




描画色など、描画の属性を選択し、タッチを感知し、描画の属性に応じて画面に描画するしくみを学びました。




その上で、自分で考えて描画の太さを変更する機能を作ってみました。




また、画面を消去したり、描画するブラシの種類を増やしたりしました。




それぞれ一段落したタイミングで、SourceTree(Git)でプログラムをコミット(記録)しておきます。



次に、ここまでは線を描画するのではなく、点を描画していました。
これでは、描いたときに、線が切れてしまいます。そこで、線を描画することに挑戦しました。

そのために、クラスのフィールドや局所変数、変数のスコープについて学びました。




そして、それぞれ自分で考えて線を描画できるようにしました。







最後に今日作ったプログラムをSourceTree(Git)でコミット(記録)します。
そしてネット上のGitLabにリポジトリ(記録場所)を作り、それをSourceTreeにリモート・リポジトリ(ネット上の記録)として登録し、ローカル・リポジトリ(PCの中の記録)にプッシュ(転送)しました。



次回は11月13日(日)です。
道場入門者のみなさんは、是非、Androidアプリを作ってみたり、Javaについて勉強してみてください。

なお、秋季の道場は、夏季に参加した大学生が講習のサポートを担当しています。また、夏季に参加した高校生は、今、アプリを作っていて、その相談に来てくれました。兄姉弟子のみなさん、よかったら来てください。




2016年10月11日火曜日

東北TECH道場青森道場 秋季1日目開催しました

東北TECH道場青森道場秋季1日目を、2016年10月10日(月)に、青森駅前の新町プラザ フリーカフェ新町(まちまちプラザ)で開催し、高校生9人が参加しました。


今回は、プログラミング初心者が多いということで、前日午後と当日午前に事前講習を実施しました。
事前講習では、Android Studioの起動、プロジェクトの作成、Android端末を接続してデバイス・ドライバをインストールし、実機の上でプログラムを実行しました。




そして、SourceTreeをインストールし、Atlassianアカウントに登録し、Gitでプロジェクトをバージョン管理しました。

その上で、GitLabから講師の星孝哲さんのプログラムをクローンしたり、GitLabにアカウントを登録し、リポジトリを作り、自分のプログラムをプッシュして、グループで共有したりする練習を行いました。

さて、それらの事前講習を受けて、いよいよ第1日目です。
まず、最初に東北TECH道場の歴史や目的などを紹介しました。



それから、SourceTreeを用いてGitLabから講師の星さんの作ったアナログ時計のアプリをクローンし、Android端末の上で実行します。


そして、プログラムのコアの部分を読んでいきました。
まず、時計の文字盤の描画。
画面の大きさを取得して、ちょうどいい大きさで円を描画します。
円の描線や塗りの変更にも挑戦しました。



次に時針、分針、秒針の表示。
まず、現在の時刻を取得し、その時刻のオブジェクトから、時、分、秒のデータを取り出します。
そして、時、分、秒のデータから、針を何度の向きに表示するかを計算します。
針の角度がわかったら、三角関数を用いて針の先端の座標を求め、針の中心と針の先端を線で結びます。



それから、プログラムの3大構造である、順次、分岐、くりかえしの3つを体験しました。


最後に、作ったプログラムをGitLabにプッシュして、グループに共有しました。

次回は10月16日(日)です。
道場入門者のみなさんをお待ちしています。