管理人

SEとして働く管理人「まつ」がつぶやく個人運営サイトになります。 ITの難しい用語や、仕事で感じた事などを中心に"わかりやすさ"を意識して記事にしています。少しでも共感や参考にしていただける人がいたら嬉しいです。

2021/8/1

【PHP】ファイル読み込み

fgets関数で1行ずつ読み込む fgets関数でファイルを扱う場合は、次の3つの関数を使いファイル操作を行います。 fopen関数:ファイルを開く fgets関数:データを読み込む fclose関数:ファイルを閉じる fopen関数の第2引数には、ファイルを開くときにモードを指定します。主なモードは次のとおりです。 ファイルを開くときのモード 説明 r 読み込み専用 w 書き出し専用 a 追加書き出し [fgets関数の使用例] <?php $filename = 'C:\tmp\sample.t ...

2021/7/28

オーバーライドとオーバーロードの違い

はじめに オブジェクト指向プログラミングで登場する言葉である「オーバーライド」と「オーバーロード」、どちらも「オーバー」がついているので、間違いやすいワードです。 似たような言葉ですが「オーバーライド」と「オーバーロード」は全然違う意味の言葉です。本記事では「オーバーライド」と「オーバーロード」の違いについて解説しています。 簡単に解説 オーバーライド(上書き定義):親クラスで定義したメソッドを継承した子クラスで書き換えること オーバーロード(多重定義):クラス内に引数の数や型が異なる同じ名前のメソッドを ...

2021/7/26

オーバーロード(overload)とは

オーバーロード(overload) オーバーロード(英:overload)とは多重定義と略される言葉で、同じクラス内に引数の数や型が異なる同じ名前のメソッドを2つ以上定義することです。また、言語によっては演算子のオーバーロードが可能です。 同じ名前のメソッドを作ることに何の意味があるんですか? それでは、オーバーロードを使用しない場合と使用した場合の違いを説明していきます。 オーバーロードを使用しない場合 例えば、同じような機能のメソッドで引数にint型とdouble型があるとします。 オーバーロードを使 ...

2021/7/24

【PHP入門】エラーと例外処理

はじめに 前回の記事では、PHPのコールバック関数について紹介しました。 前回の記事 【PHP入門】コールバック関数 本記事では、PHPのエラーと例外について紹介します。 PHPのエラー エラーが発生したときの挙動 PHPでは実行中にエラーが発生しても、基本的には処理を続けようとします。ただし、続行できないFatal error(致命的なエラー)が発生した場合は処理を停止します。 例えば、次の例では「Warning(警告)」と「Fatal error(致命的なエラー)」を発生させています。 [エラーの例] ...

2021/7/26

オーバーライド(override)とは

オーバーライド(override) オーバーライド(英:override)とは、オブジェクト指向プログラミングにおいて親クラス(スーパークラス)で定義したメソッドを継承した子クラス(サブクラス)で書き換えることです。 継承とは 継承とは、クラスが持っている機能(変数やメソッド)を他のクラスに引き継がせることです。このとき継承元のクラスを親クラス(またはスーパークラス)、継承先のクラスを子クラス(またはサブクラス)といいます。 親クラスの機能を子クラスに引き継がせるので、子クラスは親クラスの機能が使えるよう ...

2021/7/24

【PHP入門】コールバック関数

はじめに 前回の記事ではPHPのstaticプロパティとstaticメソッドについて紹介しました。 前回の記事 【PHP入門】staticプロパティとstaticメソッド 本記事では、PHPのコールバック関数について紹介します。 コールバック関数 コールバック関数(英:callback function)とは、関数を呼び出す際に引数として引き渡される別の関数のことです。 以下はコールバック関数のイメージ例です。 簡単な流れ 引数にコールバック関数Bを指定して関数Aを呼び出す 関数A内で引数として受け取った ...

2021/7/20

プリミティブ型とは

プリミティブ型 プリミティブ型(英:primitive data type)とは、プログラミング言語が提供する基本的なデータ型のことです。 言語により用意されている型の種類は異なるが、整数を格納する整数型や小数を含む数値を格納する浮動小数点型、真(true)、偽(false)を格納する論理型などが提供されています。 Javaのプリミティブ型 Javaのプリミティブ型には次のようなものがあります。 データ型 読み方 格納できる値 byte バイト -128 ~ 127の整数 short ショート -3276 ...

2021/7/22

Javaのプリミティブ型と参照型の違いを分かりやすく解説

はじめに Javaのデータ型には、プリミティブ型と参照型があります。 プリミティブ型と参照型の違いを説明できるかな? え・・・わからないです。 次の例では、プリミティブ型と参照型の違いをあらわしています。 [プリミティブ型と参照型の例] package demo; public class Sample { public static void main(String[] args) { // プリミティブ型 int a = 0; int b = a; b = 1; System.out.println( ...

2021/7/16

値渡しと参照渡しの違い

はじめに 関数への引数の渡し方には「値渡し」と「参照渡し」があります。 例えば、次のような「関数A」があるとします。「関数A」には「引数」があり、「関数A」を呼び出すときは引数を指定します。 この関数への引数の渡し方には「値渡し」と「参照渡し」があります。 本記事では「値渡し」と「参照渡し」の違い、そして「参照の値渡し」について解説しています。 値渡しとは 値渡し(英:call by value)とは、変数の値(実体)をコピーして渡す方法です。変数の実体はメモリ上で管理されています。 スポンサーリンク こ ...

2021/7/15

Spring Boot + JPAで複合主キーのテーブルを扱う方法

はじめに Javaのフレームワーク「Spring Boot」とデータベース操作を簡単に利用できる「Spring Data JPA」を使い、複合主キー(テーブルに複数の主キーがある)のテーブルからデータを抽出する方法を紹介します。 本記事で作成する「一覧画面」のイメージとテーブル定義は以下の通り。 [テーブル定義] 物理名 論理名 データ型 NOT NULL 説明 school_year 学年 INT 〇 主キー group 組 INT 〇 主キー number 出席番号 INT 〇 主キー name 名前 ...

2021/7/13

コールバック関数とは

コールバック関数 コールバック関数(英:callback function)とは、関数を呼び出す際に引数として引き渡される別の関数のことです。 関数はいくつかの処理をひとまとまりにしたものであり、通常、利用する側は用意されている関数を使うだけです。(利用する側は関数内部の処理を改変することはできない) しかし、コールバック(callback)の仕組みを取り入れた関数では、一部の処理を外部の別関数を呼び出す形で実装し(引数として受け取った関数を内部で呼び出す)、どの関数を呼び出すかを引数の形で外部から指定で ...

2021/7/16

参照渡しとは

参照渡し 関数への引数の渡し方には「値渡し」と「参照渡し」があります。参照渡し(英:call by reference)とは、変数のメモリ番地(メモリ上の位置)を渡す方法です。 変数のメモリ番地を渡しているため、関数内で引数の値を変更すると、呼び出し元の変数も変更されてしまいます。 チェック 値渡し:変数の値(実体)をコピーして渡す方法 参照渡し:変数のメモリ番地を渡す方法 参照渡しの流れ 例えば、次のような「関数A」があるとします。「関数A」には「引数」があり、「関数A」を呼び出すときは引数を指定します ...

2021/7/16

値渡しとは

値渡し 値渡しとは 関数への引数の渡し方には「値渡し」と「参照渡し」があります。値渡し(英:call by value)とは、変数の値(実体)をコピーして渡す方法です。 変数の値をコピーして渡すため、関数内で引数の値を変更しても、呼び出し元の変数に影響を及ぼすことはありません。 チェック 値渡し:変数の値(実体)をコピーして渡す方法 参照渡し:変数のメモリ番地(メモリ上の位置)を渡す方法 値渡しの流れ 例えば、次のような「関数A」があるとします。「関数A」には「引数」があり、「関数A」を呼び出すときは引数 ...

2021/7/9

インスタンスとオブジェクトの違い

「インスタンス」と「オブジェクト」 オブジェクト指向言語のクラスを使うとき「インスタンス」や「オブジェクト」という言葉がよく登場します。 インスタンスとオブジェクトの違いを説明できるかな? 違いですか・・・わからない 「インスタンスの生成」「オブジェクトの生成」「クラスのインスタンス」「クラスのオブジェクト」など、書籍やインターネット上のサイトでも表現が異なります。 また「インスタンス」と「オブジェクト」は同じ意味のように使用されています。ではなぜ同じ意味のように使われているのに、言葉が違うのでしょうか。 ...

2021/7/9

オブジェクトとは

オブジェクト(object) オブジェクト(英:object)とは、物、物体などの意味を持つ英単語で、ソフトウェアの分野では、コンピュータ上で操作や処理の対象となる何らかの実体のことをいいます。 オブジェクトはさまざまな実体の総称です。 オブジェクト指向 オブジェクト指向では、クラスのインスタンスのことをオブジェクトといいます。 オブジェクト指向言語では、クラスと呼ばれるものを使用します。クラスとはデータや処理をひとまとめにしたものです。 関連するデータや処理をまとめた「クラス」という部品を作っておき、そ ...

2021/7/9

インスタンスとは

インスタンス(instance) インスタンス(instance)は、「実例」の意味を持つ英単語で、ソフトウェアの分野では「実体」のことをいいます。 実体?どういう意味ですか? インスタンスとは インスタンスとは、クラスを元に作成したオブジェクトの実体のことです。 よくわからない・・・ それでは、インスタンスについて詳しく説明していきます。 オブジェクト指向におけるインスタンス オブジェクト指向言語では、クラスと呼ばれるものを使用します。クラスとはデータや処理をひとまとめにしたものです。 関連するデータや ...

2021/7/7

AFFINGER5からAFFINGER6(ACTION)へのアップデート手順

ACTION(AFFINGER6)がついに販売開始 2021年7月1日より ACTION(AFFINGER6)の販売が開始しました。WING(AFFINGER5)購入者は、ACTION(AFFINGER6)へ無料でアップデートできます。※2021年7月時点 ACTION(AFFINGER6)へのアップデート方法は以下の2通りです。 ACTION(AFFINGER6)を利用する ACTION(AFFINGER6)WING互換性バージョンを利用する ACTION(AFFINGER6)を利用する場合 ACTIO ...

2021/7/23

【PHP入門】staticプロパティとstaticメソッド

はじめに 前回の記事では、PHPの継承とオーバーライドについて紹介しました。 前回の記事 【PHP入門】継承とオーバーライド 本記事では、PHPのstaticプロパティとstaticメソッドのついて紹介します。 staticキーワード クラスのプロパティ(変数)やメソッド(関数)にstaticをつけると、クラスのオブジェクト(インスタンス)を生成せずにアクセスすることができます。 staticプロパティは「クラス名::プロパティ名」、staticメソッドは「クラス名::メソッド名」のようにスコープ定義演算 ...

2021/7/24

【PHP入門】変数のスコープ(ローカル変数、グローバル変数)

はじめに 前回の記事では、PHPの可変長引数について紹介しました。 前回の記事 【PHP入門】可変長引数 本記事では、変数のスコープ(ローカル変数、グローバル変数)について紹介します。 変数のスコープとは 変数のスコープとは、定義した変数が使える範囲のことをいいます。 ローカル変数とは ローカル変数とは、関数内で定義した変数のことです。 ローカル変数のスコープは変数を宣言した関数内です。そのため、ローカル変数を定義した関数内でしか使用することができません。(ローカル変数を関数の外で使用するとエラーが発生す ...

2021/7/23

【PHP入門】継承とオーバーライド

はじめに 前回の記事では、PHPのクラスについて紹介しました。 前回の記事 【PHP入門】クラス(class)の使い方 本記事では、PHPの継承とオーバーライドについて紹介します。 継承(extends) 継承とは、クラスが持っているメソッド(関数)やプロパティ(変数)を別のクラスに引き継がせることです。 継承元のクラスを親クラス、継承先のクラスを子クラスといいます。 スポンサーリンク 子クラスを作成するには「extends」(読み:エクステンズ)を使用します。次のように「extends」の前に子クラス名 ...