新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
擬似言語の解き方を分かりやすく解説 | ITパスポート講座
本記事で学べること 擬似言語について学ぶ 擬似言語の構造について学ぶ ITパスポート過去問の解き方を学ぶ(疑似言語の解き方を学ぶ) 擬似言語 擬似言語とは、プログラムの記述や解読を容易にするために作られた記述方式のことです。 ITパスポート試験では、次のような形式で擬似言語が出題されます。 記述形式説明◯手続名 または 関数名手続または関数を宣言する。型名 : 変数名変数を宣言する。/* 注釈 */ または // 注釈注釈を記述する。変数名 ← 式変数に式の値を代入する。手続名 または 関数名 (引数, ...
データ構造(配列/リスト/キュー/スタック/木構造)| ITパスポート講座
本記事で学べること データ構造(配列/リスト/キュー/スタック/木構造)について学ぶ ITパスポート過去問の解き方を学ぶ データ構造 データ構造とは、データの集まりをコンピュータが扱いやすように、特定の形式で整理して格納する方法のことです。 データ構造には、主に次のようなものがあります。 配列 リスト キュー スタック 木構造 配列 配列は、複数のデータ(同じ型のデータ)を連続的に並べたデータ構造です。 次の図は、配列のイメージ例です。 配列の各要素には、先頭から0、1、2、3、・・・と要素番号が付けられ ...
機械学習(教師あり学習/教師なし学習/強化学習)| ITパスポート講座
本記事で学べること AI(人工知能)について学ぶ 機械学習(教師あり学習、教師なし学習、強化学習)について学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle Assistan ...
基数変換(2進数・10進数・16進数)| ITパスポート講座
本記事で学べること 基数について学ぶ 基数変換のやり方を理解する ITパスポート過去問の解き方を学ぶ 基数とは? 私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。 ここがポイント コンピュータが扱えるのは2進数だけ。文字や音声、映像などのすべての情報は、コンピュータの世界では「0」と「1」の組み合わせで表現されている。 基数とは、数値を表現する際に位取りの基準となる数のことであり、2進 ...
データの単位(バイト・ビット)| ITパスポート講座
本記事で学べること データの単位を理解する 文字コードを学ぶ ITパスポート過去問の解き方を学ぶ データの単位(情報量の単位) コンピュータやスマートフォンには容量があります。例えば、スマートフォンの容量には「64GB」「128GB」「256GB」「512GB」「1TB」などがあり、容量が大きいほど値段は高く、写真やアプリなどをたくさん保存できます。 この「MB(メガバイト)」や「GB(ギガバイト)」「TB(テラバイト)」というのが単位であり、「バイト」とは、コンピュータの世界でデータ量をあらわす際に使用 ...
正規分布・標準偏差・偏差値 | ITパスポート講座
本記事で学べること 正規分布と標準偏差を学ぶ 偏差値の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 正規分布 正規分布とは、平均値を中心とした左右対称な釣鐘型の分布のことです。 次のグラフは、平均値「50」、標準偏差「10」の正規分布です。 山の頂点が平均値となり、平均値を中心に左右対称になるのが特徴で、多くの統計的手法は、この正規分布を基礎として展開しており、検定や推定、モデルの作成など、様々な場面で活用されています。 標準偏差とは 標準偏差とは、データのばらつきをあらわす指標のひとつです。 標準偏 ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
コンピュータの誤差とは?図解でわかる【基本情報技術者試験対策】
コンピュータで発生する誤差には「丸め誤差」「打切り誤差」「桁落ち」「情報落ち」などがあります。 本記事では「丸め誤差」「打切り誤差」「桁落ち」「情報落ち」について図解で分かりやすく解説していきます。 コンピュータの誤差 コンピュータで小数を扱う方法の1つに「浮動小数点数」があります。浮動小数点数では、小数で表現できる数の範囲が決まっています。 例えば、32ビット形式の浮動小数点数では、仮数部は24ビットです。 このように、浮動小数点数で小数を表現する場合、表現できる数の範囲が決まっており、限られたビット数 ...
アドレス指定方式とは?図解でわかる【基本情報技術者試験対策】
聞きなれない言葉であるアドレス指定方式。基本情報技術者試験や応用情報技術者試験では、アドレス指定方式の動きについて問われる問題が出題されています。 本記事では、アドレス指定方式について図解で分かりやすく解説していきます。 アドレス指定方式 アドレス指定方式とは、CPUが命令を実行する際、対象となるデータの在りかを指定する方法のことです。CPUが実行する命令は次のように「命令部」と「オペランド部(アドレス部)」に分かれています。 アドレス指定方式の種類 アドレス指摘方式には次のような種類があります。 アドレ ...
排他制御(占有ロックと共有ロック)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される内容である排他制御。排他制御には「ロック」や「セマフォ」「ミューテックス」などがあります。 本記事では、排他制御について図解で分かりやすく解説しています。 排他制御 排他制御とは、共有資源を複数のタスク(プログラム)が同時に操作しても問題なく動作できる仕組みのことです。 例えば、次の図のように「プログラムA」と「プログラムB」が、共有の領域の値に対して同時に書き込む可能性があるとします。 「プログラムA」と「プログラムB」はお互い「+1」するプログラムであ ...
トランザクション管理とは?図解でわかる【基本情報技術者試験対策】
問題 トランザクションが,データベースに対する更新処理を完全に行うか,全く処理しなかったかのように取り消すか,のどちらかの結果になることを保証する特性はどれか。 ア:一貫性(consistency) イ:原子性(atomicity) ウ:耐久性(durability) エ:独立性(isolation) 基本情報技術者令和5年 [科目A]問7 問題 DBMSに実装すべき原子性(atomicity)を説明したものはどれか。 ア:同一データベースに対する同一処理は,何度実行しても結果は同じである。 イ:トランザ ...
マルチプログラミング(マルチタスク)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題されるマルチプログラミングの問題。過去問を見ると難しく感じる問題です。しかし、マルチプログラミングの動きを理解していれば、そこまで難しい問題ではありません。 本記事では、マルチプログラミングについて図解で分かりやすく解説していきます。 タスクの状態遷移 タスクとは、コンピュータが処理する作業の最小単位のことで、コンピュータが処理するプログラムもタスクです。 タスクには「実行可能状態」「実行状態」「待機状態」の3つの状態があり、次の状態遷移図のとおりに遷移します。 ...
BNF(バッカス・ナウア記法)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される問題であるバッカス・ナウア記法。基本情報技術者試験の過去問をみると難しく感じる問題です。 ただ、バッカス・ナウア記法の文法を覚えればそこまで難しい問題ではありません。 本記事では、バッカス・ナウア記法について図解で分かりやすく解説していきます。 BNF(バッカス・ナウア記法) BNFとは、Backus-Naur form(バッカス・ナウア記法)を略した言葉であり、文脈自由文法を定義するのに用いられるメタ言語(言語を記述するための言語)のことです。 BNF( ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
Javaの継承とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのアクセス修飾子について紹介しました。 本記事では、Javaの継承について紹介します。 継承とは 継承とは、クラスが持っているメンバ(フィールドやメソッド)を別のクラスに引き継がせることです。継承元のクラスをスーパークラス(または親クラス)、引き継いだクラスをサブクラス(または子クラス)といいます。 サブクラスを作成するには「extends」(読み:エクステンズ)を使用します。次のように「extends」の前にサブクラス名(子クラス名)、後にスーパークラス名(親クラス名) ...
クラスとは?初心者でもわかるJava入門
はじめに 前回の記事では、switch文を使った条件分岐について紹介しました。 今回の記事では、Javaのクラスについて紹介します。 クラスの概念 クラスとは、データと処理をまとめたものです。Javaのプログラムは複数のクラスが組み合わさって作られています。 Javaはオブジェクト指向のプログラミング言語です。 オブジェクト指向ではない従来のプログラミング言語は、処理を一から十まで記述していかなければならず、複雑なプログラムになるほど作り上げるのに大変手間がかかりました。 Javaでは、関連するデータや処 ...
オーバーロードとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのコンストラクタについて紹介しました。 本記事では、Javaのオーバーロードについて紹介します。 オーバーロードとは オーバーロードとは、同じクラス内に引数の数や型が異なる同じ名前のメソッドを2つ以上定義することです。 例えば、同じような機能のメソッドで引数にint型とdouble型があるとします。オーバーロードを使わない場合は、それぞれ違うメソッド名で定義する必要があります。 そのため、メソッドを使う人は引数の型によって使うメソッドを選択します。 オーバーロードを使う場 ...
抽象クラス(abstract)とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのオーバーライドについて紹介しました。 本記事では、Javaの抽象クラス(abstract)について紹介します。 抽象クラス(abstract) 抽象クラスとは、抽象メソッドを1つ以上持つクラスのことです。抽象メソッドとは、定義だけで処理を書かないメソッドです。 そして、抽象クラスを継承したサブクラス(子クラス)で抽象メソッドをオーバーライドし処理を記述します。 以下は抽象クラスの例です。 抽象クラスは「abstract修飾子」を使って定義します。そして、抽象メソッドにも ...
for文(繰り返し)の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの条件分岐(if文)について紹介しました。 本記事では、Javaの繰り返し処理(for文)について紹介します。 for文を使った繰り返し処理 for文は、繰り返し処理を行うための制御文です。for文では、カウンタを用意してその値によって何回繰り返すかを決めます。 以下は、for文の書き方の例です。 上記例ではカウンタの初期値を「int i = 0;」、繰り返しを続けるための条件を「i < 10」、カウンタの増え方を「i++」と設定しています。 for文の使用例 それ ...
アクセス修飾子とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのオーバーロードについて紹介しました。 本記事では、Javaのアクセス修飾子について紹介します。 アクセス修飾子とは アクセス修飾子とは、クラスやフィールド、メソッドを他クラスにどこまで公開するかを決める修飾子です。 アクセス修飾子は次のように記述します。※フィールドの例 アクセス修飾子には「public」「protected」「private」の3種類があります。 public publicは、どこからでも利用することができるアクセス修飾子です。 利用方法利用可否クラス ...
PHP開発環境の構築 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPについて紹介しました。 本記事では、PHP開発に必要なものパッケージとしてまとめたXAMPPと、コードエディタであるVisual Studio Codeを使った開発環境の構築手順を紹介します。 XAMPPのインストール XAMPP(ザンプ)とは、PHP開発で必要なソフトウェア(PHP、Apache、MySQLなど)やツールなどをまとめてパッケージ化した便利な開発ツールです。 そのため、XAMPPをインストールするだけで、PHPの開発環境を作れます。 XAMPPのインストール ...
変数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの開発環境構築の手順について紹介しました。 本記事では、PHPの変数について紹介します。 PHPの変数 変数とは数値や文字などを格納しておく箱のようなものです。 PHPの変数は次のように先頭に「$(ドル記号)」を付けます。 $変数名 = 値; 例えば次の例では「a」という名前の変数に「1」という数値を入れています。 $a = 1; 変数名として利用できる文字は次のとおりです。 変数の型 PHPでは、変数を定義するとき変数の型を指定する必要がありません。変数に値を代入すると自 ...
繰り返し(while文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの繰り返し処理(for文、foreach文)について紹介しました。 本記事では、while文を使った繰り返し処理について紹介します。 while文を使った繰り返し処理 while(読み:ホワイル)文とは、条件が成立している間 処理を繰り返し実行する制御文です。同じ繰り返し処理であるfor文、foreach文との違いは、繰り返しの回数があらかじめ決まっていないところです。 while文の書き方は次のとおりです。 while文では、条件が成立する限り処理を繰り返します。 whi ...
エラーと例外処理 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのコールバック関数について紹介しました。 本記事では、PHPのエラーと例外について紹介します。 PHPのエラー エラーが発生したときの挙動 PHPでは実行中にエラーが発生しても、基本的には処理を続けようとします。ただし、続行できないFatal error(致命的なエラー)が発生した場合は処理を停止します。 例えば、次の例では「Warning(警告)」と「Fatal error(致命的なエラー)」を発生させています。 [エラーの例] <?php // 警告のエラーを発生 ...
定数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの配列について紹介しました。 本記事では、PHPの定数について紹介します。 定数とは 定数とは値が変化しないものであり、PHPでは「define」関数か「const」キーワードを使って定数を定義します。 値を後から自由に変更できる変数とは違い、定数は1度しか値を代入することができません。例えば次のように定数の値を変更しても、一度定義しているので値は変わりません。 define関数による定数定義 define関数を使い定数を定義することができます。定数の定義はdefine関数 ...
条件分岐(switch文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのbreak文とcontinue文について紹介しました。 本記事では、switch文を使った条件分岐について紹介します。 switch文を使った条件分岐 switch文とは、if文と同じように条件分岐を行う制御文です。if文は else-if文を使うことで複数の条件式を書けますが、switch文の条件式は1つです。 1つの式に対して、式の値が case のどれにあてはまるか確認します。あてはまる case があれば、その case の処理を実行し、caseのどれにもあてはま ...
【CSV.generate】RailsでCSVファイルを出力する方法
Railsで簡単にCSVファイルを出力する方法 Ruby on RailsのCSV出力のライブラリである「CSV.generate」を使用し、CSVファイルを出力する方法を紹介します。 本記事では、次のような一覧画面に「CSV出力」ボタンを配置して、「CSV出力」ボタンを押下するとCSVファイルをダウンロードする処理を実装しています。 [例:一覧画面イメージ] [例:CSVファイル] Controller (コントローラー) [app/controllers/users_con ...
【入門】Rails + AdminLTEで登録画面を作成する
はじめに 前回の記事では、Ruby on Rails(Rails6) と AdminLTE を利用して一覧画面を作成しました。 本記事では、登録画面を作成する手順を紹介します。※データベースの作成やAdminLTEの設定等は 前回の記事 で紹介しているので、本記事では省略しています。 [画面イメージ] View(ビュー) 共通レイアウト(application.html.erb) 各viewの共通レイアウトである「application.html.erb」は下記の通り。 [app/view/layouts ...
Ruby on Railsで”Hello World”を作成する
Railsアプリケーションの作成 まずはRailsアプリケーションを作成します。Railsアプリケーションは次のコマンドで作成することができます。 今回の例では「C:\ruby」配下に「hello_sample」というアプリケーションを作成しています。 PS C:\ruby> rails new hello_sample create create README.md create Rakefile create .ruby-version create config.ru create .giti ...
Rails6でAdminLTEを導入する方法
【Rails6】AdminLTE3の導入手順 AdminLTEとは、Bootstrapをベースとして作られた管理画面の制作でよく利用されるCSSのフレームワークです。 本記事では、Ruby on Rails(Rails6)で AdminLTE3を導入する手順を紹介しています。 AdminLTEのインストール まずは、yarnでAdminLTEをインストールします。 PS C:\ruby\adminlte_sample> yarn add admin-lte yarn add v1.22.4 [1/4 ...
Ruby on Railsの開発環境構築 | 分かりやすく図解で説明
Ruby on Railsの開発環境構築手順 Ruby on Railsとは、人気開発言語Rubyを使用したWebアプリケーションを手軽に作成することができるフレームワークです。 本記事では、Ruby on Railsを使用したWebアプリケーションの開発環境構築手順を紹介します。 ◆構築する開発環境 構築する内容 名称 説明 開発言語 Ruby 人気の開発言語 開発ツール Visual Studio Code ほとんど言語に対応し、任意の OS で動作する強力なコード エディター フレームワーク Rub ...
Rails + AdminLTEで編集画面を作成する
はじめに 前回の記事では、Ruby on Rails(Rails6) と AdminLTE を利用して登録画面を作成しました。 本記事では、一覧画面から「編集」ボタンを押下して、編集画面に遷移、そして 編集画面から更新処理を行う方法を紹介します。 [一覧画面イメージ] [編集画面イメージ] 事前準備 事前準備として、AdminLTEの設定と一覧画面を作成します。AdminLTEの設定と一覧画面の作成手順は下記の記事をご覧ください。 View(ビュー) ...
OpenStreetMapとLeafletで地図にピン(マーカー)を立てる
はじめに OpenStreetMapとLeafletで地図にピン(マーカー)を立てる方法を紹介します。 地図の表示イメージは以下の通りです。 OpenStreetMapとLeafletで地図にピン(マーカー)を立てる 実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にピンを立てる</title> <meta charset="utf-8"> <li ...
【OpenStreetMap】Leafletで複数のマーカを表示する方法
はじめに OpenStreetMapとLeafletで地図にマーカーを複数を表示する方法を紹介します。 地図の表示イメージは以下の通りです。(東京タワー、東京スカイツリー、六本木ヒルズ にマーカーを表示しています) Leafletで地図にマーカを複数表示する方法 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にマーカーを複数表示する</title& ...
【JavaScriptの判定】null、undefined、==、===の違い
JavaScriptの判定方法 JavaScriptには、様々な判定方法があります。例えば「if (値)」と「if (値 != null)」、「==」と「===」など。この違いを理解せず使用していると、思わぬバグを作りこんでしまう危険性があります。 本記事では、JavaScritpの判定方法について紹介しています。 「if (値)」と「if (値 != null)」の違い if (値)による判定 if (値)の判定では、以下の例の通り「null」「undefined」「空文字」「0」が偽(false)です ...
OpenStreetMapとLeafletで簡単に地図を表示する方法
Leafletとは Leafletとは、地図データを扱うためのJavaScript ライブラリです。 Leafletの公式サイト:https://leafletjs.com/ Leafletはあくまでも地図データを扱うためのライブラリなので、Leaflet単体では地図を表示させることはできません。地図を表示させるためにはLeafletとは別に、地図サービスを使う必要があります。 本記事では、クレジット表記をすれば、無料で利用できる地図サービスである「OpenStreetMap」を利用していま ...
Leafletで地図やマーカーを削除(remove、removeLayer)する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い、地図やマーカーを削除する方法を紹介します。 地図の表示イメージは次の通りです。ボタンを押下することで、地図の削除・再表示、マーカーの表示・削除をすることができます。 OpenStreetMapとLeafletで地図やマーカーを削除する方法 HTMLとJavaScriptの実装例は以下です。 <!DOCTYPE html> <html> <head&g ...
【Amazon Cognito】JavaScriptでログイン処理を実装する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使いログイン処理を実装する方法を紹介します。 事前準備として、次のライブラリが必要となるので、npmコマンドでインストールします。 amazon-cognito-identity.min.js ※npmコマンドはNode.jsをインストールすることで使うことができます。 【JavaScript SDK】Amazon Cognito(ユーザープール)の使い方 ライブラリの読み込み 事前準備で取得したライブラリを読み込みま ...








































