スッキリわかるJava入門
Java初心者には、この書籍がおすすめです。項目ごとにサンプルコードがあるので実際にコードを書いてみて体感的に学べます。またロールプレイングゲームを開発していくシナリオ構成なので、昔懐かしいドラクエを自分でも作っていくようでワクワク感があります。
17章までやればオブジェクト指向も理解できるはずです。
独学でJavaを学ぶのはこの書籍でいいかもしれません、あとプロゲートも併用すればなんとなくJavaの基礎を身につけれますが、独学には限界があります。
なぜなら、ちょっとしたことでエラーが起きるからです。自分では解決ができない事も多々ありますが学校、スクールはその場で講師に聞けるので大変有り難かったです。恐らく独学では心折れ挫折してたでしょう。
Java学習
未経験からいきなりJavaに入るのは難しいので、思考法に慣れる為にフローチャートから始めた、
Flowgorithmをインストールして講師が作成した問題をフローチャートでJavaの考え方を練習した。
変数、関数、ループなど基本的な考えかた、論理的思考というやつだ。これもなかなか難しかった。
引用 Flowgorithm http://www.flowgorithm.org/
講師はこれを日本語に訳して新たに練習問題を作成したのを4〜5日使って学習してきた。
その後、スッキリわかるJava入門を、1ヶ月以上かけて一章〜17章までを隅から隅まで学習した。
ここに学習したことを忘れないように研修で学んだことを残してみようと思う。
パソコンにeclipseを入れて開発環境を作っておきます。
eclipseもWindows版とMac版があるので、私用パソコンはMacを使っているのでMac版の一応最新バージョンをインストールして自習している。
ただworkspeasの場所がわからなかったり、また使い方が分からなかったりでJDCドライバー入れる際に苦労した。
コンテンツアシストもMacは⌘+spaceは予約されているので、Mac側、eclipcs側の設定変更した。
コンテンツアシストがないとソースコード書くのは難しい、インポート分も書く必要になるの設定は必須でしょう。
学校の自席パソコンはWindowsで自宅で使っている私用パソコンはMacなので、何かと互換性が悪く面倒だった、特に研修で書いたソースコードや講師の解答をUSBに入れて持ち帰ってもJavaは問題なく見れるも、webappの下層ファイルが見れないので面倒でもメモ帳にコピーして持ち帰っていた。
スッキリわかる Java 入門
まずは、プログラミングの最初はSystem.out.println(” hello Java”);のようにコンソールさせていく練習から始まる。
よくエラーを出したのは「;」を忘れたり「}」の対応がわからなくなったりと初心者あるあるです。
public class Test{
public static void main(String[] args{ のようにクラス名の最初も文字を間違って小文字に書いてしまったりとミスをしていた。
変数の使用もここで学習した、int age; age=30; みたいなこと。
データ型の概要もこの章で学習した。実際に使うのは int , double , boolean , char , String で他のデータ型は研修では使用してないな。
分類 | 型名 | 利用頻度 | |
---|---|---|---|
整数 | byte | △ | |
short | △ | ||
int | ◎ | ||
long | △ | ||
少数 | float | △ | |
double | ○ | ||
真偽値 | boolean | ○ | |
文字 | char | △ | |
文字列 | String | ◎ |
それと、先ほどの変数宣言した値を上書きできないように final をつけてフィールドに変数を宣言する方法を知った。
この final がこの先学習するオブジェクト指向のカプセル化に繋がっていることを後に知ることになった。
エスケープシーエンスが奇妙であった。 ¥” が二重引用符記号(;)とか、¥を使うなんてプログラミングっぽくて少しカッコいいですね。
演算子 + – * / これをJavaコードで書くと計算されるのを知ってJavaって頭いい。
= は イコールでなく 右辺を左辺に代入という意味で初めは考えがスッと入らなかった。
+= 左辺と右辺を足して左辺に代入も便利な記号でした。
この、スッキリわかるJava入門とchatGptがあれば(あとプロゲート)、それなりに簡単なことはできるようになります。オブジェクト指向の理解も自ずとできるようになるでしょう。
この先の研修では、SQLデータベースに入力したのをJavade取り出したり、jsp、ServleでWeb上からデータベースを取り出したり、変更、追加、削除なんかを学習していくと、そのオブジェクト指向は当たり前の作業であることが理解できてきたのでもあります。
ここまでを独学で学ぶのは、私は不可能です。第一にeclipsのパッケージー構成、ファイル構成、ドライバーの入れ方、SQL、Servletの書き方等々、これらを自力では無理ですね、やはりスクールや職業訓練校で講師がついた状態でないと、無駄な時間と気力、労力などが必要になってきますから。
未経験からWebエンジニアになるならスクールが最短距離。
まとめると
この章くらいまでなら、理解ができ楽だったが今後 if文、for文、while文、あたりで難しくなり発想ができなくなる。
まさに論理的思考がない、持ってないないことを痛感して今後の研修に苦しみながら、もがきなから、なんとかこなして行くこととなった。
3ヶ月間の研修をまだまだこれから、苦しくて大変だった職業訓練校であったが終わってみたら「楽しかったー」です、「あといい思い出ですー」です。
コメント