【今日学んだこと】未経験からエンジニアへの道「16日目」PHPとの戦い
今日の所感
今日は夕方あたりすごく気分が悪かった、、、なんか変なもの食べたかな、、、笑 PHP。なんとなくもうちょっとでちょっとだけわかってきそうな、まだよくわかんないようなもぞもぞ感。乗り越えたらなんか頭良くなる気がする…
やったこと
- ドットインストール :250分
- 基本情報技術者(午前):22分
- この振り返りブログ:38分
- 英語:26分
学んだこと
ドットインストール
PHPでログイン機能を実装しよう (全26回)、一通り
- preg_match:正規表現で指定したパターンにマッチした文字列を検索することができる。パスワードを英数字にしたい時とか「/\A[a-zA-Z0-9]+\z/」とか
PHPのpreg_matchで正規表現によるマッチング方法 | TechAcademyマガジン
正規表現 PHPのpreg_match色々(全角や漢字も許可など) - Qiita
- stdClass():PHPデフォルトのクラスで宣言することなくいきなり new して使うことができる特殊なオブジェクト。オブジェクト型のデータをさっと作りたい時に便利らしい。
PHP、stdClassとは何ぞや?|マコトのおもちゃ箱 ~ぼへぼへ自営業者の技術メモ~
セッションハイジャック:何らかの手段でこれらの情報を窃取し、本人に成り代わって通信を行うというサイバー攻撃。なりすまし。「session_regenerate_id(true); 」で対策
リファクタリング:コードを綺麗にすること
きれいなコードとは? リファクタリングできれいなコードを書く方法 - Qiita
基本情報技術者(午前)
- ネットワークアドレス:ホスト部が全て0の場合
- ブロードキャストを表すアドレス:ホスト部が全て1の場合
プライベートIPアドレス:LANの中だけで使用するIPアドレス。クラスA→10.0.0.0〜10.255.255.255。クラスB→172.16.0.0〜172.31.255.255。クラスC→192.16.0.0〜192.168.255.255
OSI(Open Systems Interconnection)
- OSI基本参照モデル:機種の異なるコンピュータを相互に接続することを目指したネットワークアーキテクチャ
- 第7層、応用層:各種通信機能の提供
- 第6層、プレゼンテーション層:データ表現や形式の変換
- 第5層、セション層:会話単位の管理や同期制御
- 第4層、トランスポート層:エンドツーエンド間のデータ転送を保証
- 第3層、ネットワーク層:エンドツーエンド間のルーティング機能。通信ルートを選定し、パケットを中継・転送して宛先までパケットを送り届ける。
- 第2層、データリンク層:隣接ノード間でのデータ転送を保証
- 第1層、物理層:電気信号を用いてビット列の伝送
- エンドツーエンド間:送信するユーザー端末から受診するユーザ端末までのデータ転送
- LAN間接続装置:
- ゲートウェイ:応用層、プレゼンテーション層、セション層、トランスポート層
- ルータ:ネットワーク層
- ブリッジ:データリンク層
リピータ:物理層
TCP/IP(Transmission Control Protocol/Internet Protocol):プロトコル群の総称、TCPプロトコルとIPプロトコル
- TCPプロトコル:パケットの順序制御や伝送誤りの制御を行い、データを送信先のポート番号まで届ける。
- TCPヘッダ:送信先、送信元のポート番号などが含まれる
- IPプロトコル:IPアドレスによってお開けっとの転送や経路選択などを行い、送信先に届ける。
- パケットフィルタリング機能:ルータを通過できるパケットの条件を設定する
- DMZ(DeMilitarized Zone)非武装ゾーン。外部に公開するサーバを置くために、インターネットやLANから隔離されたネットワーク区域。データベースサーバはDMZにはおかずLANに置くことで安全性が上がる。
英語
今日は単語帳に書かれてる例文、CD流しつつ音読などしてみた。本当に口が回らない、、、
わからないこと、わからなかったこと
- ドットインストールにしたがって写経するとファイルとかもその時々でたくさん作らされるけど、自分で作るってなったらどこまで想定した状態でどこから作り始めるんだろう?ってのがわからない。
明日の意気込みなど
PHPでログイン機能を実装しようもさらっと一通りやってみただけなので、明日もう一周、わからない部分ググっていく。