エンジニアチャレンジ

27歳営業マンからWebエンジニアを目指すブログです

【6週目】プログラマカレッジ

f:id:knmx1127:20180717003803j:plain

 

【1】はじめに

【2】6週目の学習内容

   2-1. ECサイト制作 (機能追加編パート3)
   2-3. その他

【3】おわりに

 

 

【1】はじめに

こんにちは!訪問ありがとうございます。

文系出身の元営業マンが、未経験からエンジニアを目指してます!

・プログラミングに興味がある方

・エンジニア転職したい方

・プログラミングスクールについて知りたい方などなど、、、

僕の体験談等もブログで書いているので、良ければ参考にしてみてください(^^)

 

 

【2】6週目の学習内容

  2-1.ECサイト制作(機能追加編パート3)

 

僕の通っているプログラマカレッジでは、

主に以下の条件でECサイトを開発しています。

□言語:JavaJavaScript(JQuery)、SQL

フレームワークStruts2

□Webサーバー:Tomcat

□データベース:MySQL

□周辺環境:Eclipse、XAMPP

 

上記を用いて今週追加した機能はこんな感じ!

・商品情報の更新

・ユーザー情報の更新

・フロントサイドの調整(HTML/CSSメインにUIを調整しました)

 

SQLCRUDを実践学習している感じですね!

[ CRUD ] データベース管理システム(DBMS)に必要な、 基本的な4つの機能。

    C...Create(データの作成)

    R...Read(読み出し。SELECTコマンドを使って欲しい情報を取ります)

    U...Update(データの更新)

    D...Delete(データの削除)

 

プログラミングを初めて学ぶ場合

HTML / CSSから始める人が多いと思うのですが、

実はHTML / CSSはデザイン系で厳密にはプログラミング言語ではありません!

(僕もそうとは知らずに勉強を始めて、後々知ってビックリしました^^;)

 

初めてWebサイトを作るってなると、結構HTML / CSS で見た目ばかり

気にしがちな人も多いようですが、エンジニアを目指すのであれば

まず重要なのはサーバーサイドです!

 

サーバーやDB(データーベース)を使いこなせてこそのエンジニア。

サイトの見た目はもちろん重要ですが、そっちばかりになるとそれはデザイナー色が

強くなりすぎるかも知れません。。。

エンジニアとして活躍されている方々は、

Webの仕組み・コンピューターサイエンスの基礎力がハンパない!

もちろんエンジニアも、UI / UX意識してデザインの勉強は必要かも。

ただ最初のうちはある程度HTML / CSSの基本を勉強したら、

まずはWebの仕組みを理解して、サーバーやDB(データベース)周りの技術を

習得する事をオススメします^^

 

 

 

 2-2. その他

  •  Struts2のSタグ property属性 

Struts 2 <sproperty />タグは値を表示する事しかしない為、

値の受け渡しもしたい場合はhidden等を用いてあげなければいけない。

 

簡単に言うと、if文を?を用いて1行で書くやり方。

この書き方には賛否両論あるようです。

参考URL:Javaで三項演算子はどこまで許されるか 三項演算子?:は悪である。

 

特定の文字列をパターン化して記号で表現する手法。

ログイン認証機能の、使用可能文字を定める際などに使われます。

よくサイトの新規登録画面で「パスワードは英数字の半角で入力して下さい」といった

注意書きやエラー文を見ますよね。

あれはこの正規表現を用いて使用可能文字をパターン化して決められている為です^^

参考URL :正規表現とは?メタ文字とサンプル一覧 | WWWクリエイターズ

押さえておきたい!正規表現の利用方法をわかりやすく解説|ferret [フェレット]

 

  • StringBuilder

Stringクラス同様、文字列を扱うクラス。

Stringクラスには一度セットした値を変更することはできない為、

無駄に保存スペースを食いつぶし処理速度の低下につながる。

一方StringBuilderクラスは、大量に文字列を繋げていける為、

必要最小限の保存スペースだけを使い文字列を連結することができる。

参考URL:文字列を追加する(append) - StringBuilderクラス

【Java言語】StringBuilderの使い方とメリット | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト

 

「イケてないコードをきれいなコードに整理する事」

「外部からの見た目を変えずに内部構造を整理する事」

参考URL: リファクタリングとは何か?

 きれいなコードとは? リファクタリングできれいなコードを書く方法

今日から始められるリファクタリング10選 (1)

 

 

 

 【3】おわりに

 プログラミングは毎日継続する事が大切ですが、
そればかりだとさすがに人間息が詰まると思います!笑

なのでちょっとした息抜きも必要(^^)

僕は色んな事でリフレッシュも大切にしてます!

 

色んな分野で活躍してる大学時代の友人とご飯に行く。

オンラインで出会ったエンジニアやエンジニア志望の方とオフラインで話す。

海外ドラマや、ミスチルのライブ映像を観る。

小説を読む。

軽い筋トレやストレッチなどなど。。。

あと個人的に見た目の清潔感に結構気を使ってるので、

男ですがスキンケアなんかも好きです(笑)

第一印象はやっぱり良く思われたいですからね(笑)

人は視覚から得る情報が55%。そのうち見た目が9割だそうですよ^^

 

皆さんも勉強勉強勉強だけでなく、息抜きも大切にして成長していきましょうね!

拙い内容ですが、最後までお読み頂きありがとうございました!

 

ツイッターもやっているので、こちらも是非フォローお願い致します(^人^)

【5週目】プログラマカレッジ

f:id:knmx1127:20180717003803j:plain

 

目次

【1】はじめに

【2】5週目の学習内容

   2-1. ECサイト制作 (機能追加編パート2)
   2-3. その他  ※今回ここポイントです!

【3】おわりに

 

 

【1】はじめに

こんにちは!訪問ありがとうございます。

文系出身の27歳が未経験からエンジニアを目指してます(^^)

・プログラミングに興味がある方

・エンジニア転職したい方

・プログラミングスクールについて知りたい方などなど、、、

プログミング未経験者の方、初学者の方の参考になればと思います(^^)

 

 

【2】5週目の学習内容

  2-1.ECサイト制作(機能追加編パート2)

先週に引き続き、ECサイトをグレードアップさせていってます!

やってて思うのは、技術を身につけてから開発より、

開発しながら技術を身につけた方が圧倒的に良い気がするという事!

なんでもまずはチャレンジあるのみ!

実際、手を動かして学習しているとぼんやりしていた知識も定着してくる感覚が

ありますし、シンプルにどんどん楽しさが増してるのでオススメです^^

今週追加した機能はこんな感じ!

・管理者権限で新規ユーザー登録

・ユーザー一覧の作成と、管理者権限以外の一括削除

・追加した商品の一括削除

・商品一覧画面と商品詳細の作成

・商品詳細画面からその商品1件のみ削除

 やればやるほど、サーバー・通信といったウェブの根幹となる部分の知識や理解は

重要だと感じます。

これがあるかないかで、学習スピードにも差がでそう。

ちなみに、僕はこの本でウェブの基礎を勉強してます!

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)

 

 

 

 2-2. その他

スクールで講師の方に質問すると、分からない事を教えてもらえるのはもちろん、

以下3点のようなメリットがあるなと感じているので紹介したいと思います。

実際スクールに通った事がある肩であれば共感いただける部分もあるかと

思うので、最後まで読んでみてください( ´ ω` )ノ

 

①使っているツールの便利機能が知れる

②エンジニアとして働き始めて開発する際に、気をつけておいた方が良い点を

 スクールの段階から意識付けできる

③エラー解決に向かう道筋の感覚が身につきやすい

1つずつ、もう少し詳しく紹介します(^^)

 

使っているツールの便利機能が知れる

開発では、様々の開発ツールを使います。

そのツールの便利な機能を1つ知っておくだけでも、

開発スピードは大幅に上がると感じています。

ちなみにプログラマカレッジでは、Elipseを一番よく使っています。

 [ Eclipse

  JavaPHPRubyといったサーバーサイドの開発によく用いられるツールです。

  Eclipse1つで開発に必要な機能が多く備わっており、「総合開発環境(IDE)」

 と呼ばれています。

 

多くの機能を備えている分、初学者はEclipseの機能をいきなり全て使いこなすのは

難しいかも知れません。

実際に開発しながら1つ1つ修得しく感じではありますが、

講師陣はEclipseの様々の便利機能をもちろん使いこなされています。

なので、質問した際にその便利機能を使う瞬間を見れるわけですよ! 

百聞は一見にしかず。実際目の前で見て、すげー!便利!なるほどな!

と思ったものは、割とすんなり覚えられますので時短にもなります。

最初に衝撃だったのは、

「ソース」→「getterおよびsetterの生成」で、フィールドのgetter/setterを

自動で一括生成してくれた瞬間、、、!!

 

初心者の僕は、思わず「マジか」と声が出てしまいました(笑)

4週目までは、何も知らずずっとgetter/setterを全て手入力していたので(笑)

講師陣としては、慣れるまでまずは自分でコードを書く経験を

積ませたかったようですね。納得。

 

 

その他にも、、、

□ デバック 

 値の受け渡し、処理の流れ等がきちんと行われているかどうか、

 確認したい箇所にポイントを付ける事で実行処理をチェックできる。

 これにより、エラー解消に向かいやすくなります。

□ メソッドの呼び出し階層を開く

「チェックしたいメソッド名の所で右クリック」

 →「呼び出し階層を開く」を押下。

 これをする事で、そのメソッドがどこで呼び出されているのか確認できます。

 開発規模が大きくなればなるほどファイルも増えますが、

 これならメソッドが呼び出されてる箇所をすぐに確認できるので便利です!

Eclipseのショートカットキー

 [ Ctrl + Shift + C ] コメントアウトの一括切り替え

 [ Alt +Shift + R ] 同じメソッド名の一括変更

 [ Ctrl + Space ] 書き出しの文字が同じ単語の候補を出す

 例)getと入力しCtrl + Spaceを押すと、

   getから始まっているものを候補として上げてくれます。

   候補から入力したい内容を選択できるので、入力ミス防止や時短になります。

 

こういったツールの使い方を直感的に学べるのも、プログラミングスクールの1つの

良さではないでしょうか( ・∀・)b

 

 

エンジニアとして現場で開発する際に、気をつけておいた方が良い点を

 スクールの段階から意識付けできる

実際にエンジニアとして働き出すと、チームを組んで開発していくことが多いとよく聞きます。

その際に重要な事として、

「他のメンバーが見ても分かりやすいか?」

「ルールに則ったコードが書けているか?」が挙げられます。

例えばインデント。

インデントがぐちゃぐちゃだと、タグや階層の判別が一目でつきにくくなります。

他の人が見ても綺麗なコードにして読み間違いがないよう、

インデントも整えておくと良いですよね!

 

また同じコードが重複していると、あまり綺麗ではないようです。

重複する処理がある場合、繰り返し処理に使う関数を上手く用いて

コードをスッキリさせてあげましょう。

 

その他CSSの指定順など、エンジニアからみてスッキリまとまっているコードかどうか

は、現場でとても重要だと教えて頂きました。

こういった事でもエンジニアとしての質が問われると思うので、

日頃から意識して勉強するようにしています^^

この本もSNSで評価高かったので参考にします! 

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

 

 

 

エラー解決に向かう道筋の感覚が身につきやすい

 エラー文の読み解き、デバックの目の付け所、ググり方、などなど、、、

 このあたりのスピード、ポイントの拾い方がやっぱり圧倒的に凄いです。。。

 ここで大事なのは、ズバり ”質問の仕方”だと僕は思っています。

 「こんなエラーが出ています」「分かりません」「どうすればいいですか?」

 とただ解決方法を聞くのではなく、

「こうこうこうして、今こういう状況なのですが、○○さん(講師の方)なら

 どこをどう見ますか?」「なぜそこを見たのか?」といった、

 目の付け所や考え方の部分を自分から聞くこと!

 優秀な講師の方であれば向こう発信で教えてくれるかも知れませんが、

 エンジニアらしい目の付け所や考え方と一緒に ”質問力"を身につける上で、

 こちらが何をどう質問するか?はとても意味があると僕は思っています。

 実際、これだけでも自分の理解度はとても変わりました。

   これを身につけられるかどうかで、エラー解決力は大きく変わってきそうです。

 特にプログラミングのような、これしかない!といった正解が少なく

 色々な答えがある様な分野においては、考え方の部分がとても大切ですからね!

 幸いなことに、プログラマカレッジの講師陣はエンジニア経験がある方ばかり

 なのでいつも勉強させてもらえますよ^^

 

 

 

 【3】おわりに

今はカフェで1人もくもくしながらこの記事を書いています。

最近ではツイッター経由で色んなコミュニティにも参加しており、

8月下旬には、TechBatonというDiscordを用いたオンラインコミュティ

もくもく会も渋谷で予定しているので、今からとても楽しみです(^^)

 
今まで出会う事のなかった方々ともこうして巡り会う機会がたくさんあるなんて、

インターネットが普及した今の時代に生まれて本当によかったと思います(笑)

拙い内容ですが、最後までお読み頂きありがとうございました!

 

ツイッターもやっているので、こちらも是非フォローお願い致します(^人^)

【4週目】プログラマカレッジ

f:id:knmx1127:20180717003803j:plain

 

目次

【1】はじめに

【2】4週目の学習内容

   2-1. 3ヶ月目生の制作発表
   2-2. ECサイト制作 (機能追加)
   2-3. JavaScriptJQuery

【3】おわりに

 

 

【1】はじめに

こんにちは!訪問ありがとうございます。

文系出身の27歳が未経験からエンジニアを目指します(^^)

現在は退職し、プログラマカレッジというプルグラミングスクールに通って勉強中。

このブログではプログラミングやスクールの事などを書いてますので、

・プログラミングに興味がある方

・エンジニア転職したい方

・どこのプログラミングスクールにしようか迷っている方などなど、、、

プログラミング始める前の僕と同じような悩みや、

プログミング未経験者の方、初学者の方の参考になればと思います(^^)

 

【2】4週目の学習内容

  2-1. 3ヶ月目生の制作発表

 

4週目の最初に、 自分より2ヶ月先輩にあたるスクール3ヶ月目生の

成果物発表会がありました。

1ヶ月かけて、一から自分たちだけでチーム開発したECサイトを発表しあう場です。

3チームに分かれており、各々サイトコンセプトやポイント等を発表⇨質疑応答タイムも設けられました。

僕もいくつか質問させてもらったのですが、全体を通して感じた事は

"チーム全員が同じ方向を向いて制作にあたったんだな"という点でした。

もちろん技術的な事・UI/UXといった事でも勉強になる点は多々あったのですが、

それよりも "チーム開発とは?"という事を考えさせてもらえる場で、

とても有意義でした。

 

僕自身、前職ではずっとチーム単位で業務にあたっており、

1年半ほどチームリーダーも勤めていた為、

チームレベルで動く事の大変さ・楽しみ・喜び、様々な経験をしてきました。

だからこそ、3ヶ月目生の制作発表では、

成果物の裏側にチーム開発の魅力を改めて感じられる瞬間がありました。

やっている内容は違えど、全員の方向性はずれていないか?

進捗・成功事例・失敗事例を共有できているか ?といった点は、チームレベルでの

活動には不可欠だと僕は思っています。

そういった点の成果が3ヶ月目生の発表から感じられたので、

カリキュラムでチーム開発の経験ができるこのスクールは良い環境です。

そんな場に今自分の身を置けていることが嬉しく思いました(^^)

実際の開発現場を経験したことはまだありませんが、この経験はきっと現場でも

活きるという自信があります^^

 

 

 2-2. ECサイト制作(機能追加)

 3ヶ月目生の制作発表で良い感じにモチベーションも上げられたところで、

3週目にベースを作ったECサイト中級に、色んな機能を追加していきました!

4週目に取り組んだ機能は主にこちら↓

・ログイン権限分岐

 ユーザー権限と管理者権限で、ログイン時に表示する画面や機能を分岐させました。

・新商品管理機能

  新商品の登録機能と、商品一覧画面を作成しました。

全員がECサイト中級のベース作成終えるまで、こんな風にしばらくはECサイトへ機能追加を各自のペースに合わせて行うことになりそうです。

また機能追加と並行して、CSSなどでサイトをオリジナル化しています。

ユーザー目線で考えて自分なりに試行錯誤しながらですが、

僕は単純にモノ作りが好きなので、どんどんカタチになってきている感じが最高です!笑

 

  2-3. Struts2JavaScriptJQuery

Struts2の理解を深める為、JSP⇄Actionのファイル・値の受け渡しの仕組み、session(通信の仕組み)について講義をして頂きました。

Struts2を使ったWebサーバーでは、「ValueStack」と「Session」

という情報を保管する入れ物を使います。

両者の使い分けやイメージがとても曖昧だったので、「あーそういうことか」と

やっと理解できました。ただまだ深い所がありそうですので、

興味ある方はぜひググって見てくださいね!笑

 

ちなみにスクールでは、サーバーサイドに割く時間が圧倒的に多いです。

その分フロントサイドの内容がスクールだけでは不十分だと思ったので、

足らない所はProgate・Udemy中心に補うことにしました!

Progateはスクールに入る前に1周していたので2周目をして、

その後Udemy⇨ポートフォリオ ・既存アプリのクローンサイト個人開発に入ろうという計画です。

まずはProgateでJavaScriptJQuery

JavaScriptはES5からES6へバージョンアップされているので、やって良かったです笑

ES6は、オブジェクト指向が増えた印象ですね。

プログラミングを学ぶ上で、やっぱりオブジェクト指向は欠かせません! 

 

 

 【3】おわりに

 

プログラマカレッジに通い初めて、あっという間に1ヶ月が終わりました。

本当に毎日充実していて、1日1日がどんどん過ぎていきます。

「人はみな平等だ」とよく耳にすることがありますが、

全人類にとって本当に平等なものは、1つしかないと僕は思ってます。

それは "時間" です。

1日24時間。これは大人も子供も、一国のトップもヒモも、みな変わりません。

じゃあ唯一平等に与えられた"時間"をどう使うか?

その瞬間瞬間でどういう選択をしてどう行動するか?

この積み重ねで、人の人生は変わってくるのだと思います。

つまり僕が言いたいのは、なんでもあれこれ迷ってる時間は無駄!ということ。

迷う時間があるなら、何事もまず行動してみた方が良いと思います。

逆に行動しないと見えないこともあります。

行動して失敗しても、今の世の中なら死なない限りなんとかなります。

僕たちは良い時代に生まれました(笑)

 

なので、もし仕事の事・人生の事について考えてらっしゃり、

プログラミング・エンジニアの世界に少しでも興味を持っていらっしゃる方がいれば、

あれこれ迷う前にまずは行動してみてください。

Progateでプログラミングの基礎やってみるも良し、

スクールの説明会や体験会、セミナーや交流会に参加してみるも良し、

SNSで色んな方に接触してアポとってみるも良し、やり方はたくさんあります!

 

僕もまだ勉強中の身ではありますが、少しでも当時の僕と同じように迷っている方の

背中を押せれば幸いです(^^)

拙い内容ですが、最後までお読み頂きありがとうございました!

 

ツイッターもやっているので、こちらも是非フォローお願い致します(^人^)

【3週目】プログラマカレッジ

f:id:knmx1127:20180717003803j:plain

目次

【1】はじめに

【2】3週目の学習内容

   2-1. Javaとデータベース(DB)接続
   2-2. ECサイト構築 (初級2回目・中級)
   2-3. CSSJavaScriptJQuery)・PHP 2周目

【3】おわりに

 

 

【1】はじめに

こんにちは!ブログ訪問ありがとうございます。

文系出身・完全未経験からエンジニアを目指しているかなめです(^^)

早くも、プログラマカレッジ3週目が経過しました!

このあたりになってくると、周りの人たちのレベル上がっているのが分かるので

良い刺激をもらってます^^

そんな3週目で学んだことをざっくりとではありますが紹介していきます!

初学者の勉強の参考になれば幸いです(^^)

 

【2】3週目の学習内容

  2-1. Javaとデータベース(DB)接続

どのWebサイトやアプリにも、多くの情報をしまっておくデータベースがあります。

このデータベースと自分で書いたプログラムを繋げてあげないと、

情報の保管・取り出し・更新・削除はできません。

スクールでは、Javaとデータベースの接続について学びました。

 Javaプログラムとデータベース(講義ではMySQL)を繋ぐには、

接続するための工具の役割をするドライバーが必要。

Javaでは、JDBCドライバーとMySQL用のjarファイルを使って

Javaプログラム⇄MySQLの接続方法をやりました。

DB接続は、”接続図を見ながら自分が今どこにいてどの操作をしているのか?”を

確認しながらやれば初心者でも割と理解しやすかったので、勉強される際はオススメです。

逆に覚えてしまえばやり方は同じなので使いやすそうなので、

数こなして慣れるまで頑張ります^^

 

 

 

 2-2. ECサイト構築 (初級2回目・中級)

 初級ではログイン認証機能をやりましたが、

理解度が低すぎたのですぐ初級2回目やりました(^^;;

特に

・PrepareStatement

・try catch 構文

・DAOクラスのコーディング

この3点。

スクールの教材だけでなく、

『スッキリわかるJava 』・Qiita等のネット情報も確認しながら

やると断然分かりやすくなりました(^^)

エンジニアにとって必要な知識や情報は、

インターネットからすぐ自分で取りに行けるので凄く良いですよね!

今は有益な情報がインターネット上にゴロゴロ落ちてるので、

自分から取りに行かない手はないです(笑)

 

話が逸れてしまいしたが、、初級が終わればECサイト中級です!

初級は理解するのに少し戸惑うところもありましたが、

逆に初級をしっかり理解していれば、

中級は初級の応用・複数形のような感じだったので初級よりすんなり飲み込めました!

やはり何事も基本が大事なのか、、、!! 

 

  2-3. CSSJavaScript(JQuery)・PHP 2周目

ECサイト構築まで終わったら次はチーム開発です。

ただチーム開発は8月2周目あたりからスタートらしいので、

カリキュラム2周目をすることになりました。

そこで、今後どんなサービスを作るにしても最重要になりそうな

CSSJavaScript(JQuery)・PHPから手をつけていきました。

あらためてやってみて気付いたんですが、、、

他の構文に比べてfor文の習熟度の低さがヤバいっっ!!!!

普通に焦りました😅 こんなに使えてなかったんか〜と、、、

おかげでできない事を発見⇨解消できたんで、

この段階で2周目やっておいて良かったです(笑)

あとデザイン力も必要だと感じました。

Webサイトに動きを作るにあたって、UI考えるにあたって、

デザイナー任せではなく確実にエンジニアもデザイン力が必要。

ひとまず評価も高く読みやすそうな

『なるほどデザイン』は目を通しておくことにします!

 

CSSJavaScriptPHPをやっていると、

やはり抑えておきたいのが "Bootstrap・React・Laravel"。

まだ勉強できてないので、早くやりたくてしょうがないです。

ただまあいっぺんにはできないので、まず基本抑えて

8月以降からライブラリ・フレームワークも使えるようになっていきます!

 オススメ書籍等あればぜひ教えてください(^人^)

 

 

 【3】おわりに

 

スクールのカリキュラム以外にも、

 ・Progate (Javaコース)

 ・『スッキリわかるJava入門』『なるほどデザイン』読み進め

 ・ポートフォリオワイヤーフレーム作成

 ・HelloTalk (LINEのようなチャットアプリ)で海外の方と英語で交流

 ・腹筋ローラー

 

このあたりを自分はやってました。

 

正直、どのプログラミングスクールに行ってもカリキュラムだけでは不十分だと思ってます。

前提として、常に勉強と言われるようなプログラミングを

未経験者が約3ヶ月やそこらで十分修得したという方が無理がありますよね^^;

 

全員が同じような内容を学ぶ3ヶ月のカリキュラムだけでは、

そこまで大きな個人差は生まれないです。

差がでるとしたら、"モチベーション"によるものが大きいかも。

 

重要なのは、カリキュラム以外で何のために何をしたか?

プログラミングはやればやるほどその面白さが分かってくるので、飽きないです(^^)

やっぱりプログラミングは面白い!

 

学ぶことはまだまだありますが、

そろそろ既存アプリのクローンサイト作成やポートフォリオにも本腰いれいきます!

拙い内容ですが、最後までお読み頂きありがとうございました(´▽`)

 

ツイッターで情報発信しているので、こちらも是非フォローお願いします(^人^)

【2週目】プログラマカレッジ

 

f:id:knmx1127:20180717003803j:plain

 

目次

【1】はじめに

【2】2週目の学習内容

      2-1. オブジェクト指向
   2-2. Java 
   2-3. ECサイト構築 (初級)

【3】おわりに

 

 

 

【1】はじめに

こんにちは!ブログ訪問ありがとうございます。

27歳未経験からエンジニア目指しているかなめです(^^)

プログラマカレッジ2週目が経過しました!

 

最初の1週間では、フロントサイド・サーバーサイド・DBについて

まずは全体像を把握しようと思って取り組んでいました。

コードを丸ごと覚えようとするのではなく、1つ1つ理解してアウトプットしたら次へ次へとカリキュラムを進める感じで!

それもあってか、通常1ヶ月半程度でやる範囲を1週間半で終わらせました。

同期の中では1番進捗早かったらしく、すでに2周目突入した単元もあります。

 

2週目では、主に"Java" "オブジェクト指向"中心に深掘りし、

ECサイト構築をスタートさせました!

このブログでは、その一部始終を書いていきたいと思います。

少しでも、同じ初学者の方やまだスタート踏み切れていない方の為になればと思いますので、ぜひ最後まで読んでみてください(^^)
(もちろん自分の為でもありますが笑)

 

 

 

【2】2週目の学習内容

  2-1. オブジェクト指向

エンジニアの方からしたら言わずもがな。

これを理解せずにプログラミング修得はありない。

初心者ながらに、それぐらい重要な内容だと感じました。

 

◾️オブジェクト指向

プログラミング手法の1つ。物(オブジェクト)を中心とした考え方。

オブジェクト毎(Javaでいうクラス毎)に処理する為、

"メンテナンスしやすい" "再利用しやすい" 

といったメリットがあり大規模開発に用いられる事が多い。

これぞオブジェクト指向的な以下5つの処理を、スクールでは主に学びました。

1 :  インスタンス化   ---  原本のコピー作成

2 :  コンストラクタ   --- インスタンス化する際の初期値設定

3 :  カプセル化          ---  特定の処理によって隠されたデータを取り出す

4 :  継承                     ---  親クラスのメソッド・処理内容を子クラスが引き継ぐ

 5 :  実装                     ---  抽象メソッドしかもたないインターフェイスを引き継ぐ

 

もっと具体的な説明やコードがないと、初心者には理解不能ですよね(笑)

僕も最初はテキスト+写経のみで漠然としか分からず。。。

後日ちゃんと講義形式で時間を設けて下さったので、そこで初めてスッキリ落とし込めました!

まだまだ学習足りませんが、ひとまず基本は抑えられた感じです。

初学者は、本を1冊買って2周ぐらいするのが良さそうです。この辺がオススメ。

オブジェクト指向でなぜつくるのか 第2版

オブジェクト指向でなぜつくるのか 第2版

 

なぜ、あなたはJavaでオブジェクト指向開発ができないのか―Javaの壁を克服する実践トレーニング

なぜ、あなたはJavaでオブジェクト指向開発ができないのか―Javaの壁を克服する実践トレーニング

 

 

 2-2. Java 

・SELECT / WHEREで欲しい情報の取り出し

・sessionでデータの引き渡し

・PreparedStatementでのSQLInjection対策

このあたりの理解を深めました。ただやはりJavaは奥が深い。。。

自分でも本を1冊熟読して、アウトプットしていった方が良いと思い、

講師の方にオススメされて買った初学者向け書籍があるので、ここにも載せておきます^^

スッキリわかるJava入門 第2版 (スッキリシリーズ)

スッキリわかるJava入門 第2版 (スッキリシリーズ)

単純な僕は勧められたその場でポチっちゃいました笑 

でも本当に読みやすくて分かりやすかったので、これはオススメできます!

 

 2-3. ECサイト構築 (初級)

ここはもうひたすらアウトプット!

初級ではログイン認証・新規登録・商品購入・マイページ機能を作成しました。

 XAMPP ・ EclipseStrutsJavaJSP/Servlet・HTML/CSSを駆使して

データベース設計、サーバー構築、フロントサイドの処理を作っていきます。

そしてここからエラーとの格闘が始まりました(笑) 

自分でエラー調べたり、どうしても分からなければ講師の方に聞いたりしながら一通りできたのですが、

習熟度が甘かったので中級にいかず初級2周目やってます!やっぱり実践楽しい!

もはやエラーもどんと来いって気持ちでやってます笑

 

 

 

 【3】おわりに

今週は月曜が祝日でスクール自体休みでしたので、通学したのは4日間。

それ以外の時間は、主に以下のことに時間を当てていました。

 ・Progate (Javaコース)

 ・『Webを支える技術』読み進め

 ・ポートフォリオサイトマップ作成

 ・海外ドラマで英語リスニング強化

 ・ストレッチ

 ・友人や異業種の方とのご飯

 

来週中にはECサイト完成させて、またブログ更新していきます^^

現役エンジニアやプログラミングに長けていらっしゃる方で、

「それ違うよ」「ここはこうだよ」といった箇所あればぜひご指摘ください。

最後までお読み頂きありがとうございます!!

 

他にもツイッターで情報発信しているので、こちらも是非フォローお願いします(^人^)

twitter.com


 

【1週目】プログラマカレッジ

 

img

 

 

目次

【1】はじめに

      1-1. 挨拶

        1-2. プログラマカレッジ紹介 

【2】1週目の学習内容

      2-1. オリエンテーション・チームビルディング・個人面談
   2-2. HTML / CSS
   2-3. JavaScriptJQuery
   2-4. XAMPP・MySQLコマンドプロンプト(ターミナル)
   2-5. PHP
   2-6. Javaオブジェクト指向・データベース接続・ JSPServlet
   2-7. ログイン認証機能

【3】おわりに

 

 

【1】はじめに

 1-1. 挨拶

皆さん初めまして!

未経験からエンジニア目指してるかなめと申します!

ブログ見てくださってありがとうございます。

全くの初心者なので見苦しい点もあるかと思いますが、

温かい目で見守って頂けると嬉しいです^_^

 

さて!この記事が初ブログなわけですが、

プログラミングスクールに通い初めて1週間が経過しました!

なので、学習のブラッシュアップも兼ねて

定期的に学習経過やスクールの感想なんかをここでは書いていきたいと思います(^^)

僕も通い始めるまでは不安があったので、

・プログミングをこれからやろうか考えられている方

・何から始めたらいいのか迷われている方

・結局どのプログラミングスクールがいいのか分からない方などなど、、、

まだ足踏みされている方にとって、少しでも参考になれば何よりです(^-^)

 

        1-2. プログラマカレッジ紹介 

僕が通っているスクール『プログラマカレッジ』について簡単に紹介しておきたいと思います。

1.プログラマカジッジとは

インターノウス株式会社が運営する、"完全無料""転職サポート付"のプログラミングスクールです。

 

2.特長 

□ 完全無料

 そんな上手い話があるのかと思いしたが、本当でした。

 なぜなら、スクール運営費を生徒から頂くのではなく、紹介先である取引企業様から頂いているそうです。

 それだけ他企業様から信用されているという事ですね。

 

□ 転職サポート付

  カリキュラム2ヶ月目あたりから、専任のキャリアアドバイザーがついてくれます。

  履歴書・職務経歴書・ビジネスマナー・面接対策など、何から何までサポートしてくれるので心強い限りです。

 

□ 通学制

 昼間コースと夜間コースがあり、僕は平日10時〜18時の昼間コースに通ってます)

 スクールへいけば自分と同じような志をもったメンバーに会えるので、

 オンラインや独学に比べモチベーションが上がりやすいです。

 僕の同期はだいたい20人ぐらいです。

 ここで出会った人脈が、今後の人生にも影響する可能性もあるかも。

 

□ 学ぶ内容がフルスタック

 HTML/CSS/JavaScript/JQueryはじめ、サーバーサイド・データベース・関連システムまで網羅してます。具体的にはPHP/Java/MySQL/GitHubです。

 個人的には、"Java"をがっつり学べる点がこのスクールを選んだ理由として1番大きいです。

 プログラミングスクールは他にもありますが、Javaをしっかり教えてくれるのはプログラマカレッジぐらいでした。しかも無料で。

 Javaは奥が深くプログラミング言語の中でも難しいとされていますが、

 その分求人数はプログラミング言語の中では1番多いようです。

 RubyPHPなどでも代わりがききますが、Javaはそうもいかないのでしっかり学んでおくべきだと思いました。

 

□ 30歳以下限定

 年齢制限があります。ちなみに僕の周りは全員僕より年下です笑(僕で今年28歳)

 

 

3.こんな人にオススメ!

 □オンラインより通学制を検討している30歳以下の方

 □できるならばスクール代を抑えてその他学習費用にあてたい

 □求人数を1番多く持っているスクールに通いたい

 □完全未経験でどこのスクールがいいか結局わからない

 

ど素人が長々かきましたが、公式サイト見るのが1番早いです(笑)

▼▼▼

プログラマカレッジ公式サイト

実際入って感じたことは随時アップしていきたいと思います!

 

 

 

【2】1週目の学習内容

 2-1. オリエンテーション・チームビルディング・個人面談

初日には、講師の方々からオリエンテーションをして頂きました。

今後の流れやカリキュラムの目安などなど。。。

その後6人ずつぐらいのチームになって、自己紹介や自分史を語ったり!

全員初めて会う人ばかりでしたが、人それぞれ色んな経歴を持っている方で面白かったです。

また順番に個人面談もして下さったので、入学経緯・目標のすり合わせを早い段階でできたのは良かったです。

 

 

   2-2. HTML / CSS

プログラミング手法はとても多いですが、ここを通らないことはないんじゃないでしょうか。それぐらいベースとなるHTML / CSSを最初に学びました。

これは独学で少しやったことがあったので、内容はすんなり入ってきました。

ただ最後に2カラムの簡易サイトを作ったんすが、アウトプットの重要性を改めて思い知らされたようでした。

floatやmarginがずれるずれる(笑)

アドバイスも頂きながら最終的にはうまくいき、出来上がった成果物を見た時は

やっぱり嬉しかったですね^^

 

 2-3. JavaScriptJQuery

 これは簡単に言うと、サイトに動きをつけるためにプログラミング言語です。

これらも少しだけ見たことがあったので、問題なく進めていきました。

やっぱり動きが少しつくだけでもUIは変わるので面白くなってくるところです!

トレンドとしてLaravelも見過ごせないですが、スクールでは触れていませんでした。

ここはProgate +1冊本を買って独学します。

 

 

 2-4. XAMPP・MySQLコマンドプロンプト(ターミナル)

ここから、サーバーやデータベースに関する内容に入っていきました。

全て初めましての内容だったので不安もありましたが教材が分かりやすいのなんのって!

このあたりから開発してる感が出て、

それだけで楽しくなっちゃうミーハー素人がこの記事書いてます(笑)

  

   2-5. PHP
WordPressに代表されるPHP
遂にサーバーサイドの言語に突入ですね!PHPは初めてでしたが、他言語と少しかぶるところもあるので進めやすかった印象があります!

フリーランス向けに、PHPを用いたWordPressでの開発案件が多いようです。

以前現役エンジニアの方に、「どの言語から学ぶか迷う人も多いが、やはりまずはHTML/CSS。その次にJavaScript。それ以降はPHPでもRubyでも、どれかまず1つきちんと使えるようになっていっていったら、新しいプログラミング言語も学びやすくなる」と教えて頂いた事があります。

PHPをやってみて、その言葉の意味が理解できました。

あれこれ新しい言語に手を出すより、まずは1つ1つ使えるようにしていく事が重要ですね。

ただ知ってる・覚えるではなく、使えるようにする。

 

   2-6. Javaオブジェクト指向・データベース接続・ JSPServlet
 
   2-7. ログイン認証機能

 

 

【3】おわりに

1週目はざっとこんな感じでした!

ログイン認証機能は3週目ぐらいでもペース的には大丈夫だそうです!

僕はひとまず1週して全体を掴んでから再度回数を重ねようと思っているので、

予習多めにしてました。少し早めの進捗状況かもしれませんので、参考までに!

来週からは、ログイン認証機能の後半とECサイト構築に入ります!!

どんどんアウトプットが本格化していくので、

しっかり復習もしながら気合いいれて臨みます💪

 

⚠️プログラミングやスクール等について呟いているので、

良ければツイッターもフォローよろしくお願いします^^ 

かなめ (@kanamex1127) | Twitter