記事一覧
プログラミング学習記録 #21 AWSネットワークの基礎概念
●AWS(Amazon Web Service)
Amazon.comにより提供されているクラウドコンピューティングサービスのこと
基礎概念
●リージョン
・AWSサービスが提供されている地域のこと
・リージョンによって利用できるサービスが違う
・日本で展開する場合は東京に設定するのが良い(応答速度が速い)
●アべイラビリティゾーン
・独立したデータセンターのこと
・各リージョン
プログラミング学習記録 #20 Laravel ソフトデリート
物理削除SQLで削除されること、データベースからも削除される
復元したり削除されたデータを参照することができなくなる
論理削除(ソフトデリート)
実際にはデータを削除せずに、削除されたと見なすこと
削除フラグのカラムを設定することで削除しているかのように扱うこと
Laravelのソフトデリート
論理削除をするテーブルにdeleted_atカラムを作り(削除フラグになる)
delete
プログラミング学習記録#19 Laravel バリデーション
validateメソッド全てのHTTPリクエストで使用できるメソッド
●使用方法
・コントローラー内のメソッドの引数にRequestオブジェクトをとる
public function store(Request $request){ $validated = $request->validate([ 'name' => 'required', 'email' =>
プログラミング学習記録#18 マイグレーション
●マイグレーション
データベースのバージョン管理機能
アプリケーションのデータベースを定義および共有することができる
●マイグレーションファイルの生成
php artisan make:migration ファイル名
database/migrationsディレクトリに配置される
マイグレーションファイル内のupメソッドの中に記述する
========================
ポートフォリオ作成記録#1 環境構築
ポートフォリオ作成のための環境構築を行いましたのでその時の記録を書いていきたいと思います。
ポートフォリオはLaravelで作成していくのでlaravelの環境を作っていきます。
Dockerを使用して仮想環境を作っていこうと色々調べていたところLaravel SailというものでシンプルにLaravelの環境を作れるとのことだったのでこちらを採用します。
①Laravel Sail インス
プログラミング学習記録#17 Docker Compose
●Docker Compose
Dockerfileだけの場合の課題
・複数のイメージ・コンテナを個別に操作するのが面倒
・PHPのイメージ、DBのイメージなどを個別に操作しないといけない
○システムは通常複数の構成要素から成り立っている
そこで・・・
Docker Compose:複数のコンテナをまとめて定義し実行するためのDockerツール
docker-compose.ymlフ
プログラミング学習記録#16 Dockerfile②
Dockerfile記法
●COPY
ホスト(ローカル)のファイルやディレクトリをDockerイメージにコピーする
COPY <コピー元> <コピー先>ex}COPY index.html / mydir/index.html # ファイルをファイルにCOPY index.html /mydir/ # ファイルをディレクトリにCOPY src/ /mydir/
プログラミング学習記録#15 Dockerfile
●Dockerfileとは・・・
イメージの構成を定義するファイル
・Docker独自の言語を使って命令を記載する
書き方
コメントには#をつける
●FROM
dockerイメージのベースとなるイメージを指定
FROM <image>[:<tag>]ex)FROM ubuntu:21.10
・DockerfileはFROMから始める
・ベースイメージはDocker Hubを参考に
プログラミング学習記録#14 Docker②
●Dockerイメージの作成
docker image build コマンドでイメージを作成する
docker image build [オプション] PATH// オプション-t // タグをつける-f // ファイル名を指定(Dockerfile以外の名前の場合)
●コンテナの作成・起動
docker container runコマンド
docker container run
プログラミング学習記録#13 Dockerについて
パソコン上でLinuxなどを動かせるエミュレーターのようなもの
●メリット
Dockerがあるとアプリケーションを簡単に開発・デプロイできる
アプリケーションを動作させるのに必要なものをひとまとめにして配布できる
ローカルで開発したものをテスト環境、本番環境にそのまま入れることができる
(差分をなくす)
●基本的な仕組み
イメージとコンテナがdockerの基本。イメージからコンテナを作
プログラミング学習記録 #12 オブジェクト指向
●オブジェクト:「モノ」(プログラミングする際の便利な単位)のこと
●クラス:オブジェクトの振る舞いを定義したデータ型の一種
●クラスの構造
class Player{ private $name; //プロパティ function__construct($name) //コンストラクタ { $this->name = $name; } function drawCards() //メソ
プログラミング学習記録 #11 関数
一連の処理を一つの命令にひとまとめにしたもの
function 関数名(型 引数):返り値の型{ 処理}
呼び出し元から引数を渡して関数から返り値が返ってくる
●引数の種類
・値渡し:デフォルト、引数の値がコピーして渡される
・リファレンス渡し:同じ変数本体に対して別の名前に変更できる
関数に渡した変数そのものを変更できる
変更がわかりにくい場合がありバグの温床になるためあまり
プログラミング学習記録 #10 繰り返し処理
●foreach
配列の前要素に繰り返し処理を行う
$numbers = [1, 2, 3, 4];foreach ($numbers as $number) { echo $number . PHP_EOL;}//1234
連想配列の場合
$scores = [ 'suzuki' => 60, 'tanaka' => 70, 'kimura' => 60,];foreac
プログラミング学習記録 #9 条件分岐
●if文
・基本的な条件分岐
if (条件式1) {条件式1がtrueのときの処理} elseif (条件式2) {条件式2がtrueの時の処理} else {条件式1、2がfalseの場合の処理}
・if文で正常ケースとエラーケースが混ざる場合は・・・
正常なケースを先に書いてエラーケースは後に書く
・初学者はelse句が抜けがち
ifの条件に合致しない場合の処理が本当に必要ないのか
プログラミング学習記録 #8 デバッグ、静的解析
●デバッグ:ソースコードの不具合・欠陥といったバグを探して取り除き、修正すること
●デバッガ:デバッグ作業をサポートするツール
・Xdebug:phpのエクステンション
Xdebugの特徴
・コードにブレークポイントを設定して一行ずつアプリケーションを実行
・ブレークポイントごとに変数の中身を出力して確認
・エラーが発生するまでに計画を詳細に表示
・VSCode(IED)と一緒に使用
プログラミング学習記録#7 PHP 配列操作の関数まとめ
●array_slice():配列から指定した位置までの要素を切り取る関数
$array = [1, 2, 3];$arraySlice = array_slice($array, 1);var_dump($arraySlice);// array(2) { [0]=> int(2) [1]=> int(3) }
●array_chunk():指定した要素