2019/12/14

未経験から学ぶプログラミング4か月半目の学習報告


街はクリスマス一色になってきました。うちはまだ家の飾りもしていません。今年はあまりそういう気が起こらないなぁ。。気持ちがプログラミングに向いているからかも?。。でもちゃっかりもうクリスマスプレゼントはiPadをもらい、さっそく勉強に役立っています。
ウェブカツ!で始めたプログラミング学習4か月半目の進捗報告です。

<目次>
1.PHPについて新たに学んだお役立ちプチ情報
2.Twitterやってて良かった!きいて良かった!OPに関する先輩方の温かいアドバイス
3.プログラミング進捗報告:「ウェブカツ鬼練は飛ばすべからず」


. PHPについて新たに学んだお役立ちプチ情報

PHPでは、条件分岐if文のelse ifはスペースなしのelseifでもOK

if文の書き方{} ではなく「;(コロン)」を使っても良い。ただしコロンで書くときは、スペースなしでelseifと書かないとエラーになる。また、最後に「endif;」をつける。

例:if($answer === CHOICES[‘WORK’]){
echo ‘彼女:あたたたたーーーっ!’;
}else if ($answer === CHOICES[‘YOUR’]){
echo ’彼女:仕事してこいやーーーっ!’;
}

⇒これを以下のように書いてもOK

if($answer === CHOICES[‘WORK’]):
echo ‘彼女:あたたたたーーーっ!’;
elseif ($answer === CHOICES[‘YOUR’]):
echo ’彼女:仕事してこいやーーーっ!’;
endif;

PHPechoの後は、「〇〇’(シングルクオーテーション)」をつかうこと。
””(ダブルクオーテーション)」は、他の属性を書くのにも使っていたりして、複数あるとサーバーが「このクオーテーションはどこまで囲ったのか?」判別できずエラーになってしまう。

PHPでの文字の連結には .(ドット) を使う。(jsでは + を使う)
例)echo ‘彼女:’.$answer. ‘ <br>’;

PHPでランダム表示するメソッドはmt_rand();

などなど。鬼練で学ぶ重要事項がこのようにたくさんあるので、ウェブカツのレッスン動画と同様、網羅しておかないといけないと思いました。(みんな当たり前にやってるかな?)プログラミングって、覚えることがめちゃめちゃありますよね。。ま、プログラミングも機械の「言語」ですもんね。

. Twitterやってて良かった!きいて良かった!OPに関する先輩方の温かいアドバイス

「プログラミングはアウトプット(OP/実際に使って何か作る)が大事」ですが、いざ「何をやればいいんだろう?」と悩んでしまったりもします。(そして先延ばしに・・・えっ?笑)私も、WEBサービス部に入る前に何かしておかないと。適度な量で。ウェブカツの先輩方はレッスンを進めながらどういうOPをされてきたんだろう?そこで思い切ってTwitterで相談してみたら、みなさん、とっても親切に教えてくださいました! 

●先輩のブログで紹介されているサイトが参考になるよ!
LP(ランディングページ)を集めたサイトを見て、自分で選んだのを模写しているよ!
PHPMySQLでユーザー登録機能+ログイン機能を実装(jsで少し動きをつける)する
PHPjsで家計簿サービス作りましたよ(OPの動画つき)
⇒実際の質問ツイートと先輩方のアドバイス(画像や動画あり)はこちらをご覧ください:
https://twitter.com/hola_shiho/status/1202493912532676610

ふだん1人で手探りでやってるときに、こういうアドバイスって本当にジーンとします😂ものすごく助かるだけでなく、プログラミングってやってると「うっ。。てごわい。これホントに自分で書けるようになるのか?」って思ったりエラーでエネルギーと時間を取られたりもする中で、プログラミングしてる人とのつながりを感じられてとても励みになりました。みなさん、本当にありがとうございます。がんばろ。

Twitterってとても役に立ちますね。学習プロセスや質問を発信して、誰かに見てもらって、時にアドバイスや元気ももらえる。(女性割引でウェブカツを受講してる人はTwitterの投稿はマストでもあるのですが、自分にメリットが返ってくるからこそ、勧めてくれてるんですよね)最初はたまにおっくうだったり他の人の投稿を見て自分と比べてうじうじすることもあったけど😅プログラミングを学びながらTwitterをするメリットを感じました。

3. プログラミング学習進捗:「ウェブカツの鬼練は飛ばすべからず」

学習進捗です。

受講日数:145
学習総時間とペース:157時間
受講講座:HTML / CSS 部入門 23回 鬼練全て (2)
                    JavaScript / jQuery
部入門 全14回 (2) と鬼練全て
     PHP / MySQL部入門 全18
     ネットワーク・サーバー部 全9回 

 
       PHP鬼練16     
     関数鬼練19
     SQL鬼練1, 2

ここ2週間はずっと鬼練をしています。鬼練だけでも新しく学ぶことのボリュームがすごく多いです。部活で紹介されている以外の鬼練もあって、これも飛ばして部活だけを進めてたらえらいことだったなぁ。WEBサービス部に入る前に、SQLDB設計の鬼練をしてアウトプットをする計画です。
「毎日、1日平均1.5時間プログラミングする」の目標は未達成でした。。前回に続き、寝不足の問題で気力がもたない日が何日かあったのが原因です。毎日は正直、難しいのかも。でも平均1.5時間というのは最低でもやるべき量として設定してあり、これを達成してもまだ少ないと思います。今後2週間の間、年末は日本へ一時帰国するため予定はかなり流動的ですが、年末で仕事日数が減る分、プログラミングに回したいです。(そしてしっかり寝ること!)

それでは今日はこの辺で。読んでくださってありがとうございます!
次のブログは日本からです~楽しみ!!!

※実践的な「ウェブカツ!!」はコチラ↓ 
初心者向けオンラインプログラミングスクール「ウェブカツ!!」

Twitterフォロー歓迎です→ Sophie

2019/11/29

ウェブカツのプログラミング学習記録4カ月目&エラーログ出力の確認方法


11月も終わりでそろそろクリスマスの気配の今日この頃、あと一か月で2019年も終わります。プログラミングスクール「ウェブカツ!」のオンライン学習を始めてからもう4か月。今回のブログ内容は下記でございます。

. エラーログ:『ここでエラーが起きてるのかな?』と思ったとき、まず前提としてそもそもログにエラーが記述されるようになってるのか?を確認する方法  

2.ウェブカツ学習進捗:「勉強するために必要なのは、まず体調を整えることである」


. エラーログ:『ここでエラーが起きてるのかな?』と思ったとき、まず前提としてそもそもログにエラーが記述されるようになってるのか?を確認する方法

「なんのこっちゃ?」と思われた方に解説をすると、

まずプログラミングの実際の現場でエラー(不具合)が起きたとき、「本当にこのあたりでエラーが出てるなら、ログに記録されてる=吐き出されてるはず」と思いますよね。この時まず「そもそもエラーが起きたときにちゃんとログに出るようになってるか」をチェックする必要があるそうです。

その方法がウェブカツの質問(本編の動画でなく)欄で解説されており、これは実際のプログラミングですごく役立つ情報だと思ったのでブログにまとめます。

エラーログを取るコードの書き方と解説

<コード前半>

<?php
ini_set(‘log_errors’, ‘On’) ;
ini_set(‘error_log’, ‘php.log’) ;

⇒解説:

一行目で、ログを取るかどうか=「On」にして、「ログを取る」と設定しました。

二行目で、ログの出力ファイルを指定します。これで、コードを書いているファイルと同じディレクトリ内に「php.log」という名のファイルが自動で作られます。エラーが発生した場合、このファイルにその内容が記述されていきます(*A)(下の写真にある「php」がそのログファイルです)




さて、上のコードの下にこのコードを続けて書きます。

<コード後半>

$error_log_data = “エラーログ出力のテストです”;
error_log($error_log_data);
var_dump($error_log_data);
?>

⇒解説:

後半一行目で、変数$error_log_dataを用意し、中に「エラーログ出力のテストです」の文字列を入れました

二行目で関数error_logを呼び出します。これは、引数であるカッコの中身()をログに出力する関数です。今回この中身は$error_log_dataなので、「エラーログ出力のテストです」の文字列をエラーログに表示します(*B)

三行目はvar_dump関数で、変数の中身をブラウザに表示させます。ここでは()の中身、つまり変数$error_log_dataに入っている文字列「エラーログ(省略)………」をブラウザ内に表示します(*C)

さて、ここまでのコードで、ブラウザの画面にvar_dumpによって「エラーログ出力のテストです」がちゃんと表示されれば(*C)、プログラミングの処理が正常に行われていることになります。(それが下の写真:左がブラウザ、右がvar_dump記述のコード。10行目)





そうなれば同時に、自動で作られたphp.logのファイル内(*A)にも、「エラーログ出力のテストです」の文字列が表示されるはず(*B)。(下の写真:左がログファイルのphp.log、右がコード)



こうなったら、目的だった「エラーが起きたときにちゃんとログに出力されるようになっているか」が「OK!ちゃんとできてる!」と確認できた、となるわけですねー。


これは実際のプログラミングで必須かと思ったので、自分の覚え書きも兼ねて書いてみました。
ウェブカツの先輩と、私にも分かる丁寧な解説をしてくれた顧問に感謝!!


2. ウェブカツ学習進捗:「勉強するために必要なのは、まず体調を整えることである」

ウェブカツ受講の学習進捗です。

受講日数:130
受講時間とペース:144時間40
受講講座:HTML / CSS 部入門 23回 鬼練全て (2)
                    JavaScript / jQuery
部入門 全14回 (2) と鬼練全て
     PHP / MySQL部入門 全18
     ネットワーク・サーバー部 全9回 ←今回はここ全て修了。

前回立てた2つの目標:
1日平均1.5時間プログラミング学習に充てる
②毎日学習する

これは今回、全く達成できておりません。。くぅ。なぜなら、最近ずっと夜よく眠れない状況が続き、その間は日中も睡眠不足で頭がぼーっとして、日常の勤務や雑事でいっぱいいっぱいでした💦

私だけでなく、プログラミングの勉強はおそらく二足、三足のわらじで頑張っている人が多いと思います。日々の残業や育児で時間と体力を使い、その後さらにPCに向かうには、脳ミソの体力ふくめて体調がある程度、整っていることがすごく大事。

最近は「学習環境をよくするにはまず、体調管理」というシンプルな教訓を体感。プログラミングに限らず、基礎体力と人生で成し遂げる事って相関関係があると思う。私の体力はおそらく「並レベル」なので、あとは意志力で体調に影響してる生活環境を整えなければと思ってます。外出や夜更かしはあまりせず、買い物や仕事以外では引きこもり生活で。

今回の睡眠不足は外的要因(上の階の音)のため、それを取り除く方策をあれこれ試しました。部屋を変える、ベッドの向きを変える、耳栓をする、など。そしてここ2日間でなんとか必要最低限は眠れるようになったので、遅れを取り戻すべく、今後も引き続き同じ目標を継続です。

ちなみに新しい部活「ネットワーク・サーバー部」はこの2週間で全て終えることができたのでちょっと達成感があります!ここはコーディングがなく、プログラミングに必須な背景知識を学ぶ座学のような部で、あまり時間をかけずサラ~っと全視聴できました。楽しかった!私のような初心者がPCの基本構造から学べたのはとてもためになりました。他のプログラミングスクールのことは分からないけど、ウェブカツってかゆい所に手が届くなと。ただしこの次のウェブサービス部が鬼門(難関)らしく、戦々恐々としております。笑


今回はここまで。読んでくださってありがとうございます。
年末に向けて引き続きプログラミング頑張るぞ~!

※実践的な内容の「ウェブカツ!!」はコチラ↓
 
初心者向けオンラインプログラミングスクール「ウェブカツ!!」

Twitterフォロー歓迎です😊→Sophie