新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
人間中心のAI社会原則とAI活用ガイドライン | ITパスポート講座
本記事で学べること ディープフェイクについて学ぶ 人間中心のAI社会原則について学ぶ AI活用ガイドラインについて学ぶ 説明可能なAIについて学ぶ ITパスポート過去問の解き方を学ぶ AI(人工知能)とは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な ...
統計(平均値/中央値/最頻値)| ITパスポート講座
本記事で学べること 平均値の求め方を学ぶ 中央値(メジアン)の求め方を学ぶ 最頻値(モード)の求め方を学ぶ 範囲(レンジ)の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 統計 データを集めて全体の傾向を割り出すものが統計です。統計では次のような指数が使われています。 平均値 平均値は、データの合計値をデータの個数で割った値です。 例えば、次のデータの平均値は「38.75」です。 平均値 = (10 + 20 + 20 + 30 + 40 + 50 + 60 + 80) ÷ 8 = 38.75 中央値( ...
データ構造(配列/リスト/キュー/スタック/木構造)| ITパスポート講座
本記事で学べること データ構造(配列/リスト/キュー/スタック/木構造)について学ぶ ITパスポート過去問の解き方を学ぶ データ構造 データ構造とは、データの集まりをコンピュータが扱いやすように、特定の形式で整理して格納する方法のことです。 データ構造には、主に次のようなものがあります。 配列 リスト キュー スタック 木構造 配列 配列は、複数のデータ(同じ型のデータ)を連続的に並べたデータ構造です。 次の図は、配列のイメージ例です。 配列の各要素には、先頭から0、1、2、3、・・・と要素番号が付けられ ...
擬似言語の解き方を分かりやすく解説 | ITパスポート講座
本記事で学べること 擬似言語について学ぶ 擬似言語の構造について学ぶ ITパスポート過去問の解き方を学ぶ(疑似言語の解き方を学ぶ) 擬似言語 擬似言語とは、プログラムの記述や解読を容易にするために作られた記述方式のことです。 ITパスポート試験では、次のような形式で擬似言語が出題されます。 記述形式説明◯手続名 または 関数名手続または関数を宣言する。型名 : 変数名変数を宣言する。/* 注釈 */ または // 注釈注釈を記述する。変数名 ← 式変数に式の値を代入する。手続名 または 関数名 (引数, ...
基数変換(2進数・10進数・16進数)| ITパスポート講座
本記事で学べること 基数について学ぶ 基数変換のやり方を理解する ITパスポート過去問の解き方を学ぶ 基数とは? 私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。 ここがポイント コンピュータが扱えるのは2進数だけ。文字や音声、映像などのすべての情報は、コンピュータの世界では「0」と「1」の組み合わせで表現されている。 基数とは、数値を表現する際に位取りの基準となる数のことであり、2進 ...
プログラム言語(プログラミング言語)とは | ITパスポート講座
本記事で学べること プログラム言語について学ぶ コンパイラとインタプリタについて学ぶ ノーコードとローコードについて学ぶ ITパスポート過去問の解き方を学ぶ プログラム言語 プログラム言語(プログラミング言語)とは、コンピュータに対して一連の処理手順を与えるために作られた言語です。 コンピュータが理解できるのは「0」と「1」で構成された機械語です。そのため、人間が理解できる「日本語」や「英語」でコンピュータに指示を伝えてもコンピュータは理解できません。 そこで「コンピュータが理解できる機械語に変換しやすい ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
キャッシュメモリとは?図解でわかる【基本情報技術者試験対策】
CPUの性能を向上させるために使用するメモリであるキャッシュメモリ。基本情報技術者試験や応用情報技術者試験では、このキャッシュメモリの動作に関する問題が出題されます。 本記事では、キャッシュメモリの仕組みについて図解で分かりやすく解説していきます。 キャッシュメモリとは キャッシュメモリとは、CPUと主記憶装置(メインメモリ)の間にある記憶装置のことです。 コンピュータの頭脳であるCPUは、コンピュータの動作に必要なデータや命令を主記憶装置とやり取りしながら処理します。しかし、高速で動作するCPUに比べる ...
プログラムの性質とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題されるプログラムの性質を表す問題。リエントラントやリカーシブなど聞きなれない言葉のため、難しく感じる問題ですが、各性質を理解してしまえばそこまで難しい問題ではありません。 本記事では、「プログラムの性質」について図解で分かりやすく解説しています。 プログラムの性質 プログラムには次の4つの性質があります。 リロケータブル(再配置可能) リロケータブル(再配置可能)とは、プログラムをメモリ上の何処に配置しても実行できるという性質のことです。 プログラム内蔵方式を採 ...
データベースの障害管理とは?図解でわかる【基本情報技術者試験対策】
問題 データベースが格納されている記憶媒体に故障が発生した場合,バックアップファイルとログを用いてデータベースを回復する操作はどれか。 ア:アーカイブ イ:コミット ウ:チェックポイントダンプ エ:ロールフォワード 基本情報技術者平成30年秋期 午前問30 問題 チェックポイントを取得するDBMSにおいて,図のような時間経過でシステム障害が発生した。前進復帰(ロールフォワード)によって障害回復できるトランザクションだけを全て挙げたものはどれか。 ア:T1 イ:T2とT3 ウ:T4とT5 エ:T5 応 ...
アドレス指定方式とは?図解でわかる【基本情報技術者試験対策】
聞きなれない言葉であるアドレス指定方式。基本情報技術者試験や応用情報技術者試験では、アドレス指定方式の動きについて問われる問題が出題されています。 本記事では、アドレス指定方式について図解で分かりやすく解説していきます。 アドレス指定方式 アドレス指定方式とは、CPUが命令を実行する際、対象となるデータの在りかを指定する方法のことです。CPUが実行する命令は次のように「命令部」と「オペランド部(アドレス部)」に分かれています。 アドレス指定方式の種類 アドレス指摘方式には次のような種類があります。 アドレ ...
BNF(バッカス・ナウア記法)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される問題であるバッカス・ナウア記法。基本情報技術者試験の過去問をみると難しく感じる問題です。 ただ、バッカス・ナウア記法の文法を覚えればそこまで難しい問題ではありません。 本記事では、バッカス・ナウア記法について図解で分かりやすく解説していきます。 BNF(バッカス・ナウア記法) BNFとは、Backus-Naur form(バッカス・ナウア記法)を略した言葉であり、文脈自由文法を定義するのに用いられるメタ言語(言語を記述するための言語)のことです。 BNF( ...
排他制御(占有ロックと共有ロック)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される内容である排他制御。排他制御には「ロック」や「セマフォ」「ミューテックス」などがあります。 本記事では、排他制御について図解で分かりやすく解説しています。 排他制御 排他制御とは、共有資源を複数のタスク(プログラム)が同時に操作しても問題なく動作できる仕組みのことです。 例えば、次の図のように「プログラムA」と「プログラムB」が、共有の領域の値に対して同時に書き込む可能性があるとします。 「プログラムA」と「プログラムB」はお互い「+1」するプログラムであ ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
【Java入門】Java開発環境の構築 | 初心者向けプログラミング講座
はじめに 前回の記事では、Javaについて紹介しました。 本記事では、Javaの統合開発環境(コンパイラ・エディタ・デバック機能などがセットになったツール)であるEclipseを使い、Javaの開発環境を構築し簡単なプログラム作成を紹介しています。 Eclipseのダウンロード Eclipseのダウンロードは以下のサイトからおこないます。 https://willbrains.jp/ 【手順1】ダウンロードするバージョンを選択する ダウンロードするEclipseのバージョンを選択します。 バージョンに指定 ...
インタフェースとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaの抽象クラス(abstract)について紹介しました。 本記事では、Javaのインタフェースについて紹介します。 インタフェースとは インタフェースとは、抽象メソッドと定数だけを定義できるものです。 抽象メソッドとは、定義だけで処理を書かないメソッド、定数とは値が決まっていて変化しないもの(final修飾子をつけると値を変更できなくなる)のことです。 次はインタフェースの例です。インタフェースはクラスではないので「class」ではなく「interface」と書きます。 イ ...
Javaの継承とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのアクセス修飾子について紹介しました。 本記事では、Javaの継承について紹介します。 継承とは 継承とは、クラスが持っているメンバ(フィールドやメソッド)を別のクラスに引き継がせることです。継承元のクラスをスーパークラス(または親クラス)、引き継いだクラスをサブクラス(または子クラス)といいます。 サブクラスを作成するには「extends」(読み:エクステンズ)を使用します。次のように「extends」の前にサブクラス名(子クラス名)、後にスーパークラス名(親クラス名) ...
Javaの変数 | 初心者でもわかるJava入門
はじめに 前回の記事では、Java開発環境の構築について紹介しました。 本記事では、Javaの変数について紹介しています。 Javaの変数 変数とは数値や文字などを格納しておく箱のようなものです。 この数値や文字などを格納する箱のようなものを「変数」と呼び、「変数」を使う前には「変数」を宣言する必要があります。 例えば次の例では「int型の変数aとString型の変数bを使います」と宣言しています。また、変数aや変数bのように、変数についている名前のことを「変数名」といいます。 int a; String ...
オーバーロードとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのコンストラクタについて紹介しました。 本記事では、Javaのオーバーロードについて紹介します。 オーバーロードとは オーバーロードとは、同じクラス内に引数の数や型が異なる同じ名前のメソッドを2つ以上定義することです。 例えば、同じような機能のメソッドで引数にint型とdouble型があるとします。オーバーロードを使わない場合は、それぞれ違うメソッド名で定義する必要があります。 そのため、メソッドを使う人は引数の型によって使うメソッドを選択します。 オーバーロードを使う場 ...
【Java入門】配列の使い方 | 初心者向けプログラミング講座
はじめに 前回の記事では、Javaの変数について紹介しました。 本記事では、Javaの配列について紹介します。 配列とは 配列とは、複数の同じ型の変数を1つにまとめたものです。 変数は、数値や文字などを格納しておく箱のようなものです。変数には1つの値しか格納することができません。それに比べて配列は、数値や文字などを格納しておく箱のようなものが複数あるため、複数の値を格納することができます。 以下は、変数と配列のイメージ図です。 配列要素の参照と代入 それでは、実際にプログラムで配列を宣言し、配列に値を代入 ...
エラーと例外処理 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのコールバック関数について紹介しました。 本記事では、PHPのエラーと例外について紹介します。 PHPのエラー エラーが発生したときの挙動 PHPでは実行中にエラーが発生しても、基本的には処理を続けようとします。ただし、続行できないFatal error(致命的なエラー)が発生した場合は処理を停止します。 例えば、次の例では「Warning(警告)」と「Fatal error(致命的なエラー)」を発生させています。 [エラーの例] <?php // 警告のエラーを発生 ...
クラスの使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、変数のスコープ(ローカル変数、グローバル変数、静的変数)について紹介しました。 本記事では、PHPのクラスについて紹介します。 クラスとは クラスとは、メソッド(関数)やプロパティ(変数)をまとめたもの(関数と変数を持ったプログラムの固まり)です。 次の例では、Cat(猫)の情報を管理するクラスを作成しています。クラスには、メソッドとプロパティを記述できます。 オブジェクトの生成(インスタンスの生成) クラスを使用するには「new」キーワードを使用します。「new クラス名」でク ...
比較演算子、配列演算子、条件演算子 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの算術演算子、代入演算子、複合演算子、インクリメント演算子、デクリメント演算子について紹介しました。 本記事では、PHPの比較演算子、配列演算子、条件演算子について紹介します。 比較演算子 比較演算子とは、2つの値を比較するときに使う演算子のことです。 比較演算子で比較した結果、条件が成立した場合は true(読み:トゥルー)、成立しない場合は false(読み:フォールス)を返します。 比較演算子の種類 PHPの比較演算子には次のようなものがあります。 比較演算子意味使用 ...
算術演算子、複合演算子、インクリメント演算子 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの定数について紹介しました。 本記事では、PHPの演算子(算術演算子、代入演算子、複合演算子、インクリメント演算子、デクリメント演算子)について紹介します。 算術演算子 算術演算子とは、足し算や掛け算などの計算で使われる記号のことです。 算術演算子の種類 算術演算子には次のものがあります。 演算子意味使用例使用例の説明+加算(足す)$a = $b + $c$bと$cを足した値を$aに代入-減算(引く)$a = $b - $c$bから$cを引いた値を$aに代入*乗算(かける) ...
定数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの配列について紹介しました。 本記事では、PHPの定数について紹介します。 定数とは 定数とは値が変化しないものであり、PHPでは「define」関数か「const」キーワードを使って定数を定義します。 値を後から自由に変更できる変数とは違い、定数は1度しか値を代入することができません。例えば次のように定数の値を変更しても、一度定義しているので値は変わりません。 define関数による定数定義 define関数を使い定数を定義することができます。定数の定義はdefine関数 ...
変数のスコープ(ローカル変数、グローバル変数)| 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの可変長引数について紹介しました。 本記事では、変数のスコープ(ローカル変数、グローバル変数)について紹介します。 変数のスコープとは 変数のスコープとは、定義した変数が使える範囲のことをいいます。 ローカル変数とは ローカル変数とは、関数内で定義した変数のことです。 ローカル変数のスコープは変数を宣言した関数内です。そのため、ローカル変数を定義した関数内でしか使用できません。(ローカル変数を関数の外で使用するとエラーが発生する) [ローカル変数の使用例] <?php ...
【Ruby on Rails】入力チェック(validates)の実装方法
Ruby on Railsで入力チェック(validates)を実装する Railsでは、入力データを検証するためのメソッド「validates」が用意されており、「validates」をmodelクラスに定義するだけで、入力チェックを実装することができます。 本記事では、「validates」メソッドを利用した入力チェックの実装方法について紹介します。 必須チェック presenceでカラムにデータが存在するか(空でないこと)を検証します。 [modelクラスの例] class User < Ap ...
【CSV.generate】RailsでCSVファイルを出力する方法
Railsで簡単にCSVファイルを出力する方法 Ruby on RailsのCSV出力のライブラリである「CSV.generate」を使用し、CSVファイルを出力する方法を紹介します。 本記事では、次のような一覧画面に「CSV出力」ボタンを配置して、「CSV出力」ボタンを押下するとCSVファイルをダウンロードする処理を実装しています。 [例:一覧画面イメージ] [例:CSVファイル] Controller (コントローラー) [app/controllers/users_con ...
【Rails入門】超便利ScaffoldでCRUDを作成する方法
Scaffold(スキャフォールド) Scaffoldとは、Railsに備わっている機能の一つで、Ruby on Railsでアプリケーションの雛形を作るための機能です。 Scaffoldとは、英語で「足場」という意味で、まさにRailsアプリの「足場」となる機能(一覧 / 登録 / 更新 / 削除するための一連の画面)を提供してくれます。 本記事では、超便利機能であるScaffoldを使い、CRUDを作成する方法を紹介しています。 ※CRUDは次の頭文字を連結させた言葉です。 C:Create(登録) ...
Ruby on Railsの開発環境構築 | 分かりやすく図解で説明
Ruby on Railsの開発環境構築手順 Ruby on Railsとは、人気開発言語Rubyを使用したWebアプリケーションを手軽に作成することができるフレームワークです。 本記事では、Ruby on Railsを使用したWebアプリケーションの開発環境構築手順を紹介します。 ◆構築する開発環境 構築する内容 名称 説明 開発言語 Ruby 人気の開発言語 開発ツール Visual Studio Code ほとんど言語に対応し、任意の OS で動作する強力なコード エディター フレームワーク Rub ...
Rails6でBootstrapを導入する方法
【Rails6】Bootstrap導入手順 Bootstrapとは、Twitter社が開発したCSSの「フレームワーク」です。Bootstrapを利用することで簡単にWebサイトのデザインを作ることができます。 本記事では、Rails6標準の「yarn + webpacker」でBootstrapを導入する手順を紹介しています。 Bootstrapのパッケージをインストールする まず、YarnでBootstrapに必要なパッケージをインストールします。 必要なパッケージは次の通りです。 bootstrap ...
【入門】Rails + AdminLTEで登録画面を作成する
はじめに 前回の記事では、Ruby on Rails(Rails6) と AdminLTE を利用して一覧画面を作成しました。 本記事では、登録画面を作成する手順を紹介します。※データベースの作成やAdminLTEの設定等は 前回の記事 で紹介しているので、本記事では省略しています。 [画面イメージ] View(ビュー) 共通レイアウト(application.html.erb) 各viewの共通レイアウトである「application.html.erb」は下記の通り。 [app/view/layouts ...
【OpenStreetMap】Leafletで複数のマーカを表示する方法
はじめに OpenStreetMapとLeafletで地図にマーカーを複数を表示する方法を紹介します。 地図の表示イメージは以下の通りです。(東京タワー、東京スカイツリー、六本木ヒルズ にマーカーを表示しています) Leafletで地図にマーカを複数表示する方法 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にマーカーを複数表示する</title& ...
【OpenStreetMap】Leafletでマーカーの色を変更する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い、マーカー(ピン)の色を変更する方法を紹介します。 地図の表示イメージは以下の通りです。 Leafletでマーカーの色を変更する方法 「leaflet.sprite.js」の読み込み マーカーの色を変更するには「leaflet.sprite.js」が必要です。「leaflet.sprite.js」はGitHubからダウンロードすることができます。 GitHub:https://gi ...
Leafletで地図やマーカーを削除(remove、removeLayer)する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い、地図やマーカーを削除する方法を紹介します。 地図の表示イメージは次の通りです。ボタンを押下することで、地図の削除・再表示、マーカーの表示・削除をすることができます。 OpenStreetMapとLeafletで地図やマーカーを削除する方法 HTMLとJavaScriptの実装例は以下です。 <!DOCTYPE html> <html> <head&g ...
OpenStreetMapとLeafletで表示位置を変更する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い地図の表示位置を変更する方法を紹介します。 地図の表示イメージは以下の通りです。ボタンを押下することで、地図の表示位置が変わります。 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで表示位置を変更する</title> < ...
【Cognito】getSessionでトークン情報を再取得する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使いログイン処理を実装し、ログインに成功すると「アクセストークン」や「IDトークン」などが取得できます。 ただ、この「アクセストークン」や「IDトークン」には有効期限(デフォルトの設定は1時間と短い)があり、有効期限が切れるとトークン情報は無効になってしまいます。 そこで、更新トークン(refreshToken)を使い、トークン情報を再取得することができます。※JavaScript用のSDKでは「getSession」 ...
OpenStreetMapとLeafletで地図にピン(マーカー)を立てる
はじめに OpenStreetMapとLeafletで地図にピン(マーカー)を立てる方法を紹介します。 地図の表示イメージは以下の通りです。 OpenStreetMapとLeafletで地図にピン(マーカー)を立てる 実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にピンを立てる</title> <meta charset="utf-8"> <li ...








































