新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
統計(平均値/中央値/最頻値)| ITパスポート講座
本記事で学べること 平均値の求め方を学ぶ 中央値(メジアン)の求め方を学ぶ 最頻値(モード)の求め方を学ぶ 範囲(レンジ)の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 統計 データを集めて全体の傾向を割り出すものが統計です。統計では次のような指数が使われています。 平均値 平均値は、データの合計値をデータの個数で割った値です。 例えば、次のデータの平均値は「38.75」です。 平均値 = (10 + 20 + 20 + 30 + 40 + 50 + 60 + 80) ÷ 8 = 38.75 中央値( ...
人間中心のAI社会原則とAI活用ガイドライン | ITパスポート講座
本記事で学べること ディープフェイクについて学ぶ 人間中心のAI社会原則について学ぶ AI活用ガイドラインについて学ぶ 説明可能なAIについて学ぶ ITパスポート過去問の解き方を学ぶ AI(人工知能)とは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な ...
確率・順列・組み合わせを分かりやすく解説 | ITパスポート講座
本記事で学べること 確率の求め方を学ぶ 順列の求め方を学ぶ 組み合わせの求め方を学ぶ ITパスポート過去問の解き方を学ぶ 確率 確率とは、ある事象が発生する可能性の度合いを数値で表現したものです。 確率は次の式で求められます。 場合の数とは、ある事柄に対して、全部で何通りの場合があるかを示します。 例えば、サイコロを1回振るときの「場合の数」は、出目が1~6なので、6通りです。 なので、サイコロを振って「5」がでる確率は1/6です。(求める場合の数は1、すべての場合の数は6) 確率の積の法則 複数の事象が ...
データの単位(バイト・ビット)| ITパスポート講座
本記事で学べること データの単位を理解する 文字コードを学ぶ ITパスポート過去問の解き方を学ぶ データの単位(情報量の単位) コンピュータやスマートフォンには容量があります。例えば、スマートフォンの容量には「64GB」「128GB」「256GB」「512GB」「1TB」などがあり、容量が大きいほど値段は高く、写真やアプリなどをたくさん保存できます。 この「MB(メガバイト)」や「GB(ギガバイト)」「TB(テラバイト)」というのが単位であり、「バイト」とは、コンピュータの世界でデータ量をあらわす際に使用 ...
ディープラーニングと生成AI | ITパスポート講座
本記事で学べること ディープラーニング(バックプロパゲーション、過学習、ハルシネーション)について学ぶ 生成AIについて学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle A ...
機械学習(教師あり学習/教師なし学習/強化学習)| ITパスポート講座
本記事で学べること AI(人工知能)について学ぶ 機械学習(教師あり学習、教師なし学習、強化学習)について学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle Assistan ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
リスト構造とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題されるリスト構造の問題、過去問をみると難しく感じる問題ですが、リスト構造の動きを理解していればそこまで難しい問題ではありません。 本記事では、リスト構造について分かりやすく解説していきます。 リスト構造 リストはデータ構造(※配列のように複数のデータを格納できる入れ物)のひとつです。リストのデータには「ポインタ」と呼ばれる、次のデータがメモリ上のどの位置にあるかを示す情報が付与されています。 以下はリスト構造のイメージ図です。 リストのデータには「ポインタ」が付 ...
LANとWANが図解でわかる【基本情報技術者試験対策】
問題 イーサネットで使用されるメディアアクセス制御方式であるCSMA/CDに関する記述として,適切なものはどれか。 ア:それぞれのステーションがキャリア検知を行うとともに,送信データの衝突が起きた場合は再送する。 イ:タイムスロットと呼ばれる単位で分割して,同一周波数において複数の通信を可能にする。 ウ:データ送受信の開始時にデータ送受信のネゴシエーションとしてRTS/CTS方式を用い,受信の確認はACKを使用する。 エ:伝送路上にトークンを巡回させ,トークンを受け取った端末だけがデータを送信できる。 基 ...
DMA(ダイレクトメモリアクセス)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「DMA」、聞きなれない言葉のため難しく感じる問題ですが、「DMA」の動きを理解してしまえば、そこまで難しい問題ではありません。 本記事では「DMA」について分かりやすく図解で解説しています。 プログラム制御方式 プログラム制御方式(または直接制御方式)とは、入出力装置から主記憶装置(メインメモリ)へのデータ転送をCPUが直接制御する方式のことです。 コンピュータは様々な機器とデータのやり取りをします。プログラム制御方式では、この様々な機器とのデータのやり ...
探索アルゴリズムとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される探索アルゴリズムの問題、探索アルゴリズムには「線形探索」「2分探索」「ハッシュ法」などがあり、過去問では「線形探索」「2分探索」「ハッシュ法」がどのような動きをするか問われる問題が出題されています。 本記事では、探索アルゴリズムについて図解で分かりやすく解説しています。 探索アルゴリズム 探索アルゴリズムとは、配列のような複数のデータが格納されている箱の中から目的のデータを探しだすアルゴリズムのことです。 基本情報技術者試験で主に出題される探索アルゴリズム ...
メモリインタリーブとは?図解でわかる【基本情報技術者試験対策】
主記憶装置(メインメモリ)へのアクセスを高速化する手法であるメモリインタリーブ。基本情報技術者試験や応用情報技術者試験では、このメモリインタリーブの動作に関する問題が出題されます。 本記事では、メモリインタリーブの仕組みを図解で分かりやすく解説していきます。 メモリインタリーブ メモリインタリーブ(メモリインターリーブ)とは、主記憶装置へのアクセスを高速化する手法のひとつです。 なぜメモリインタリーブが必要なのか コンピュータの頭脳であるCPUは、コンピュータの動作に必要なデータや命令を主記憶装置とやり取 ...
BNF(バッカス・ナウア記法)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される問題であるバッカス・ナウア記法。基本情報技術者試験の過去問をみると難しく感じる問題です。 ただ、バッカス・ナウア記法の文法を覚えればそこまで難しい問題ではありません。 本記事では、バッカス・ナウア記法について図解で分かりやすく解説していきます。 BNF(バッカス・ナウア記法) BNFとは、Backus-Naur form(バッカス・ナウア記法)を略した言葉であり、文脈自由文法を定義するのに用いられるメタ言語(言語を記述するための言語)のことです。 BNF( ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
Java APIとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaの例外について紹介しました。 本記事では、Java APIについて紹介します。 Java APIとは Java APIとは、開発を行うために用意された便利な機能(標準API)のことです。 Javaで開発するときは、すべてを1から実装するのではなく、標準で用意されているAPIを使います。標準で用意されたAPIを使うことで効率よく開発できます。 例えば、Javaのバージョン11で提供されているAPIは以下のサイトから確認できます。 https://docs.oracle.co ...
if文(条件分岐)の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの演算子(比較演算子、条件演算子、論理演算子)について紹介しました。 本記事では、Javaの条件分岐(if文)について紹介します。 if文を使った条件分岐 if文は条件によって処理を分けるときに使う制御文です。 if文の使用例 それでは、実際にプログラムでif文を使用した条件文の例を紹介します。if文の書き方は次のとおりです。 次の例では、もし「変数age」が20だったら"20歳です"という文字列を表示しています。 [if文の例] public class IfSampl ...
例外(try-catch)の書き方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの列挙型について紹介しました。 本記事では、Javaの例外について紹介します。 例外とは 例外とは、プログラムを実行したときに起こるエラーのことです。 プログラムを作る時、正常系(想定している正しい動作)の動作を作るのは当たり前のことです。ただ、正常系の動作しか考慮していないと、想定外の使われ方をしたときやプログラムにバグ(プログラムに潜む誤り)があるとき、通信異常が発生したときなどに問題が発生します。 そのため、プログラムを作るときは異常系(想定していない操作)の動作を ...
オーバーライドとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaの継承について紹介しました。 本記事では、Javaのオーバーライドについて紹介します。 オーバーライドとは オーバーライドとは、継承元であるスーパークラス(親クラス)で定義されているメソッドを、サブクラス(子クラス)で書き換えることです。 スーパークラスにあるメソッドと、同じ名前、同じ引数のメソッドをサブクラスに記述することでオーバーライドすることができます。 以下の図は、オーバーライドの例です。 スーパークラスにある「cry」というメソッドを、サブクラスに定義することで ...
抽象クラス(abstract)とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのオーバーライドについて紹介しました。 本記事では、Javaの抽象クラス(abstract)について紹介します。 抽象クラス(abstract) 抽象クラスとは、抽象メソッドを1つ以上持つクラスのことです。抽象メソッドとは、定義だけで処理を書かないメソッドです。 そして、抽象クラスを継承したサブクラス(子クラス)で抽象メソッドをオーバーライドし処理を記述します。 以下は抽象クラスの例です。 抽象クラスは「abstract修飾子」を使って定義します。そして、抽象メソッドにも ...
オーバーロードとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのコンストラクタについて紹介しました。 本記事では、Javaのオーバーロードについて紹介します。 オーバーロードとは オーバーロードとは、同じクラス内に引数の数や型が異なる同じ名前のメソッドを2つ以上定義することです。 例えば、同じような機能のメソッドで引数にint型とdouble型があるとします。オーバーロードを使わない場合は、それぞれ違うメソッド名で定義する必要があります。 そのため、メソッドを使う人は引数の型によって使うメソッドを選択します。 オーバーロードを使う場 ...
値渡しと参照渡し | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの関数(function)について紹介しました。 本記事では、引数の渡し方(「値渡し」と「参照渡し」)について紹介します。 値渡しとは 参照渡しとは、変数の値をコピーして渡す方法です。変数の値をコピーして渡すため、関数内で引数の値を変更しても、呼び出し元の変数に影響を及ぼすことはありません。 値渡しの書き方は次のとおりです。 以下は値渡しのイメージ図です。 変数の値の実体はメモリ上で管理されています。値渡しは変数の値をコピーして渡すので、メモリ上の実体もコピーされます。 そ ...
コールバック関数 | 初心者でもわかるPHP入門
はじめに 前回の記事ではPHPのstaticプロパティとstaticメソッドについて紹介しました。 本記事では、PHPのコールバック関数について紹介します。 コールバック関数 コールバック関数(英:callback function)とは、関数を呼び出す際に引数として引き渡される別の関数のことです。 以下はコールバック関数のイメージ例です。 PHPでコールバック関数を使う方法は大きく分けて2つあります。1つは文字列で関数を指定する方法、もう1つは「call_user_func」関数や「call_user_ ...
繰り返し(for文, foreach文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの条件分岐(if文)について紹介しました。 本記事では、PHPの繰り返し処理(for文、foreach文)について紹介します。 for文を使った繰り返し処理 for文は、繰り返し処理を行うための制御文です。カウンタを用意してその値によって何回繰り返すかを決めます。 for文の書き方は次のとおりです。 上記の例では、$iの初期値を0(カウンタの初期値:$i = 0)として、$iを1つずつ増やしていき(カウンタの増え方:$i++)10以上になるまで(繰り返しを続けるための条件: ...
関数(function)の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのswitch文を使った条件分岐について紹介しました。 本記事では、PHPの関数について紹介します。 関数とは 関数とは、いくつかの処理をひとまとまりにしたものです。機能を部品化するイメージで、その部品(関数)を使いまわすことができます。 関数には、処理を実行するための条件である「引数」(パラメータ)を渡すことができます。そして、処理の実行結果を「戻り値」として返却します。※戻り値は返さなくてもよい 複数の引数を指定する場合は「total($a, $b)」のようにカンマ区切 ...
変数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの開発環境構築の手順について紹介しました。 本記事では、PHPの変数について紹介します。 PHPの変数 変数とは数値や文字などを格納しておく箱のようなものです。 PHPの変数は次のように先頭に「$(ドル記号)」を付けます。 $変数名 = 値; 例えば次の例では「a」という名前の変数に「1」という数値を入れています。 $a = 1; 変数名として利用できる文字は次のとおりです。 変数の型 PHPでは、変数を定義するとき変数の型を指定する必要がありません。変数に値を代入すると自 ...
条件分岐(switch文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのbreak文とcontinue文について紹介しました。 本記事では、switch文を使った条件分岐について紹介します。 switch文を使った条件分岐 switch文とは、if文と同じように条件分岐を行う制御文です。if文は else-if文を使うことで複数の条件式を書けますが、switch文の条件式は1つです。 1つの式に対して、式の値が case のどれにあてはまるか確認します。あてはまる case があれば、その case の処理を実行し、caseのどれにもあてはま ...
Rails + AdminLTEで一覧画面を作成する
はじめに Rubyの人気フレームワーク「Ruby on Rails」と、管理画面の制作でよく利用されるCSSの人気フレームワーク「AdminLTE」を利用して一覧画面、詳細画面、編集画面、登録画面を作成する手順を紹介します。 本記事では、一覧画面を作成しています。 [画面イメージ] 事前準備 AdminLTEの導入 AdminLTEの構築手順は下記の通り。 Scaffoldで雛形を生成する まずは便利な機能である「Scaffold」で、一覧、詳細、登録、更新画面の雛形を生成します。 「Sca ...
rails webpacker:install Errorの対処法
【Rails】Webpackerに関するエラーが出た時の対処法 Webpackerのエラー内容 「rails new test_app」でrailsアプリケーションを作成後、サーバーを起動しようとするとWebpackerに関するエラーが発生。 PS C:\ruby\test_app> rails s => Booting Puma => Rails 6.0.3.2 application starting in development => Run `rails server -- ...
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 ...
Ruby on Railsのインストール手順
Ruby on Railsのインストール手順(Windows版) Rubyの人気フレームワークである「Ruby on Rails」のインストール手順を紹介します。 すでにRubyがインストールされていることを前提としているため、もし、Rubyをインストールしていない場合は、下記の記事をご覧ください。 Bundlerのインストール手順 Bundlerとは 「Ruby on Rails」をインストールする前に、「Bundler」をインストールします。bundlerとは、gem(rubyのライブラリ)の依存関係 ...
【Ruby on Rails】入力チェック(validates)の実装方法
Ruby on Railsで入力チェック(validates)を実装する Railsでは、入力データを検証するためのメソッド「validates」が用意されており、「validates」をmodelクラスに定義するだけで、入力チェックを実装することができます。 本記事では、「validates」メソッドを利用した入力チェックの実装方法について紹介します。 必須チェック presenceでカラムにデータが存在するか(空でないこと)を検証します。 [modelクラスの例] class User < Ap ...
【Rails入門】超便利ScaffoldでCRUDを作成する方法
Scaffold(スキャフォールド) Scaffoldとは、Railsに備わっている機能の一つで、Ruby on Railsでアプリケーションの雛形を作るための機能です。 Scaffoldとは、英語で「足場」という意味で、まさにRailsアプリの「足場」となる機能(一覧 / 登録 / 更新 / 削除するための一連の画面)を提供してくれます。 本記事では、超便利機能であるScaffoldを使い、CRUDを作成する方法を紹介しています。 ※CRUDは次の頭文字を連結させた言葉です。 C:Create(登録) ...
OpenStreetMapとLeafletで表示位置を変更する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い地図の表示位置を変更する方法を紹介します。 地図の表示イメージは以下の通りです。ボタンを押下することで、地図の表示位置が変わります。 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで表示位置を変更する</title> < ...
【JavaScript】Cognitoでパスワードを変更する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使い、パスワードを変更する方法を紹介します。 JavaScriptでユーザープールを使うには「amazon-cognito-identity-js」が必要です。「amazon-cognito-identity-js」はnpmコマンドでインストールすることができます。 <script src="node_modules/amazon-cognito-identity-js/dist/amazon-cognito-i ...
【JavaScriptの判定】null、undefined、==、===の違い
JavaScriptの判定方法 JavaScriptには、様々な判定方法があります。例えば「if (値)」と「if (値 != null)」、「==」と「===」など。この違いを理解せず使用していると、思わぬバグを作りこんでしまう危険性があります。 本記事では、JavaScritpの判定方法について紹介しています。 「if (値)」と「if (値 != null)」の違い if (値)による判定 if (値)の判定では、以下の例の通り「null」「undefined」「空文字」「0」が偽(false)です ...
【Cognito】getSessionでトークン情報を再取得する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使いログイン処理を実装し、ログインに成功すると「アクセストークン」や「IDトークン」などが取得できます。 ただ、この「アクセストークン」や「IDトークン」には有効期限(デフォルトの設定は1時間と短い)があり、有効期限が切れるとトークン情報は無効になってしまいます。 そこで、更新トークン(refreshToken)を使い、トークン情報を再取得することができます。※JavaScript用のSDKでは「getSession」 ...
OpenStreetMapとLeafletで簡単に地図を表示する方法
Leafletとは Leafletとは、地図データを扱うためのJavaScript ライブラリです。 Leafletの公式サイト:https://leafletjs.com/ Leafletはあくまでも地図データを扱うためのライブラリなので、Leaflet単体では地図を表示させることはできません。地図を表示させるためにはLeafletとは別に、地図サービスを使う必要があります。 本記事では、クレジット表記をすれば、無料で利用できる地図サービスである「OpenStreetMap」を利用していま ...
【OpenStreetMap】Leafletで複数のマーカを表示する方法
はじめに OpenStreetMapとLeafletで地図にマーカーを複数を表示する方法を紹介します。 地図の表示イメージは以下の通りです。(東京タワー、東京スカイツリー、六本木ヒルズ にマーカーを表示しています) Leafletで地図にマーカを複数表示する方法 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にマーカーを複数表示する</title& ...









































