新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
データ構造(配列/リスト/キュー/スタック/木構造)| ITパスポート講座
本記事で学べること データ構造(配列/リスト/キュー/スタック/木構造)について学ぶ ITパスポート過去問の解き方を学ぶ データ構造 データ構造とは、データの集まりをコンピュータが扱いやすように、特定の形式で整理して格納する方法のことです。 データ構造には、主に次のようなものがあります。 配列 リスト キュー スタック 木構造 配列 配列は、複数のデータ(同じ型のデータ)を連続的に並べたデータ構造です。 次の図は、配列のイメージ例です。 配列の各要素には、先頭から0、1、2、3、・・・と要素番号が付けられ ...
正規分布・標準偏差・偏差値 | ITパスポート講座
本記事で学べること 正規分布と標準偏差を学ぶ 偏差値の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 正規分布 正規分布とは、平均値を中心とした左右対称な釣鐘型の分布のことです。 次のグラフは、平均値「50」、標準偏差「10」の正規分布です。 山の頂点が平均値となり、平均値を中心に左右対称になるのが特徴で、多くの統計的手法は、この正規分布を基礎として展開しており、検定や推定、モデルの作成など、様々な場面で活用されています。 標準偏差とは 標準偏差とは、データのばらつきをあらわす指標のひとつです。 標準偏 ...
基数変換(2進数・10進数・16進数)| ITパスポート講座
本記事で学べること 基数について学ぶ 基数変換のやり方を理解する ITパスポート過去問の解き方を学ぶ 基数とは? 私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。 ここがポイント コンピュータが扱えるのは2進数だけ。文字や音声、映像などのすべての情報は、コンピュータの世界では「0」と「1」の組み合わせで表現されている。 基数とは、数値を表現する際に位取りの基準となる数のことであり、2進 ...
確率・順列・組み合わせを分かりやすく解説 | ITパスポート講座
本記事で学べること 確率の求め方を学ぶ 順列の求め方を学ぶ 組み合わせの求め方を学ぶ ITパスポート過去問の解き方を学ぶ 確率 確率とは、ある事象が発生する可能性の度合いを数値で表現したものです。 確率は次の式で求められます。 場合の数とは、ある事柄に対して、全部で何通りの場合があるかを示します。 例えば、サイコロを1回振るときの「場合の数」は、出目が1~6なので、6通りです。 なので、サイコロを振って「5」がでる確率は1/6です。(求める場合の数は1、すべての場合の数は6) 確率の積の法則 複数の事象が ...
人間中心のAI社会原則とAI活用ガイドライン | ITパスポート講座
本記事で学べること ディープフェイクについて学ぶ 人間中心のAI社会原則について学ぶ AI活用ガイドラインについて学ぶ 説明可能なAIについて学ぶ ITパスポート過去問の解き方を学ぶ AI(人工知能)とは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な ...
機械学習(教師あり学習/教師なし学習/強化学習)| ITパスポート講座
本記事で学べること AI(人工知能)について学ぶ 機械学習(教師あり学習、教師なし学習、強化学習)について学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle Assistan ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
実記憶管理とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「実記憶管理」の問題。聞きなれない言葉のため難しく感じますが、「実記憶管理」の各方式の動きを理解してしまえばそこまで難しい問題ではありません。 本記事では、「実記憶管理」について図解で分かりやすく解説しています。 実記憶管理とは プログラム内蔵方式を採用しているコンピュータは、プログラムを実行するときハードディスクなどの補助記憶装置に保存してあるプログラムを主記憶装置(メインメモリ)に読み込んでから実行します。 このようにコンピューターがプログラムを主記憶 ...
主キーと外部キーが図解でわかる【基本情報技術者試験対策】
問題 次の表において,"在庫" 表の製品番号に定義された参照制約によって拒否される可能性のある操作はどれか。ここで,実線の下線は主キーを,破線の下線は外部キーを表す。 在庫(在庫管理番号, 製品番号, 在庫数) 製品(製造番号, 製品名, 型, 単価) ア:"在庫"表の行削除 イ:"在庫"表の表削除 ウ:"在庫"表への行追加 エ:"製品"表への行追加 応用情報技術者平成28年春期 午前問29 基本情報技術者試験や応用情報技術者試験で出題される「主キー」と「外部キー」についての問題。過去問を見ると難しく ...
言語プロセッサとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「言語プロセッサ」の問題。 コンパイラやインタプリタの動きを理解していないと難しく感じる問題ですが、動きを理解していればそこまで難しい問題ではありません。 本記事では「言語プロセッサ」について図解を利用して分かりやすく解説しています。 言語プロセッサ 言語プロセッサとは、プログラミング言語で作られたプログラムの翻訳作業を行うソフトウェアの総称です。 プログラミング言語は人間が理解しやすいように作られた言語のため、プログラミング言語で記述したソースコードをコ ...
DMA(ダイレクトメモリアクセス)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「DMA」、聞きなれない言葉のため難しく感じる問題ですが、「DMA」の動きを理解してしまえば、そこまで難しい問題ではありません。 本記事では「DMA」について分かりやすく図解で解説しています。 プログラム制御方式 プログラム制御方式(または直接制御方式)とは、入出力装置から主記憶装置(メインメモリ)へのデータ転送をCPUが直接制御する方式のことです。 コンピュータは様々な機器とデータのやり取りをします。プログラム制御方式では、この様々な機器とのデータのやり ...
ページ置換えアルゴリズムとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「ページ置換えアルゴリズム」の問題。FIFO、LIFO、LRU、LFUの動きを理解していないと難しく感じる問題ですが、動きを理解していればそこまで難しい問題ではありません。 本記事では、ページング方式の「ページ置換えアルゴリズム」について図解を利用して分かりやすく解説しています。 ページング方式のページ置換えアルゴリズム ページング方式とは、仮想記憶(仮想メモリ)の実現方式のひとつで、メモリ領域を「ページ」と呼ばれる一定の大きさの領域に分割し管理する方式の ...
デッドロックとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題されるデッドロックの問題。システム開発の現場でもよく耳にする言葉であり、エンジニアであれば知っておきたい知識です。 本記事では、デッドロックについて図解で分かりやすく解説しています。 排他制御とロック 排他制御とは 排他制御とは、共有資源を複数のタスク(プログラム)が同時に操作しても問題なく動作できる仕組みのことです。 例えば、次の図のように共有資源に対して「+1」を加算するプログラムAとプログラムBがあるとします。 本来であれば、共有資源の値が「10」でその値 ...
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 ...
Javaの変数 | 初心者でもわかるJava入門
はじめに 前回の記事では、Java開発環境の構築について紹介しました。 本記事では、Javaの変数について紹介しています。 Javaの変数 変数とは数値や文字などを格納しておく箱のようなものです。 この数値や文字などを格納する箱のようなものを「変数」と呼び、「変数」を使う前には「変数」を宣言する必要があります。 例えば次の例では「int型の変数aとString型の変数bを使います」と宣言しています。また、変数aや変数bのように、変数についている名前のことを「変数名」といいます。 int a; String ...
switch文(条件分岐)の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、ループを中断するbreak文、ループ処理の途中で、残りの処理をスキップして次のループ処理に移るcontinue文について紹介しました。 今回の記事では、switch文を使った条件分岐について紹介します。 switch文を使った条件分岐 switch文とは、if文と同じように条件分岐を行う制御文です。if文との違いは、if文はelse-if文を使うことで複数の条件式を書くことができますが、switch文では条件式は1つです。 1つの式に対して、式の値が case のどれにあてはまる ...
【Java入門】比較演算子と条件演算子 | 初心者向けプログラミング講
はじめに 前回の記事では、Javaの演算子(算術演算子、代入演算子、インクリメント演算子、デクリメント演算子)について紹介しました。 本記事では、Javaの演算子(比較演算子、条件演算子、論理演算子)について紹介します。 比較演算子とは 比較演算子とは、2つの値を比較するときに使う演算子のことです。比較演算子で比較した結果、条件が成立した場合は true(読み:トゥルー)、成立しない場合は false(読み:フォールス)を返します。 比較演算子の種類 比較演算子には次のようなものがあります。 比較演算子意 ...
インタフェースとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaの抽象クラス(abstract)について紹介しました。 本記事では、Javaのインタフェースについて紹介します。 インタフェースとは インタフェースとは、抽象メソッドと定数だけを定義できるものです。 抽象メソッドとは、定義だけで処理を書かないメソッド、定数とは値が決まっていて変化しないもの(final修飾子をつけると値を変更できなくなる)のことです。 次はインタフェースの例です。インタフェースはクラスではないので「class」ではなく「interface」と書きます。 イ ...
static変数とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのインタフェースについて紹介しました。 本記事では、Javaのstatic変数とstaticメソッドについて紹介します。 staticとは staticは変数(フィールド)やメソッドにつける修飾子です。 staticがついた変数やメソッドは、クラスのオブジェクト(インスタンス)を生成しなくても呼び出せます。 static変数は「クラス名.変数名」、staticメソッドは「クラス名.メソッド名」のように「クラス名.」の後に記述することで呼び出すことができるため、static ...
変数のスコープ(ローカル変数、グローバル変数)| 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの可変長引数について紹介しました。 本記事では、変数のスコープ(ローカル変数、グローバル変数)について紹介します。 変数のスコープとは 変数のスコープとは、定義した変数が使える範囲のことをいいます。 ローカル変数とは ローカル変数とは、関数内で定義した変数のことです。 ローカル変数のスコープは変数を宣言した関数内です。そのため、ローカル変数を定義した関数内でしか使用できません。(ローカル変数を関数の外で使用するとエラーが発生する) [ローカル変数の使用例] <?php ...
定数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの配列について紹介しました。 本記事では、PHPの定数について紹介します。 定数とは 定数とは値が変化しないものであり、PHPでは「define」関数か「const」キーワードを使って定数を定義します。 値を後から自由に変更できる変数とは違い、定数は1度しか値を代入することができません。例えば次のように定数の値を変更しても、一度定義しているので値は変わりません。 define関数による定数定義 define関数を使い定数を定義することができます。定数の定義はdefine関数 ...
条件分岐(if文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの論理演算子について紹介しました。 本記事では、PHPの条件分岐(if文)について紹介します。 if文を使った条件分岐 if文は条件によって処理を分けるときに使う制御文です。 if文の使用例 それでは、実際にPHPのプログラムでif文を使用した条件文の例を紹介します。 if文の書き方は次のとおりです。 次の例では、if文を使い変数「$age」が20だったら"20歳です"という文字列をprint関数で出力しています。 [if文の例] <?php $age = 20; i ...
PHPとは | 初心者でもわかるPHP入門
PHP(ピー・エイチ・ピー)とは コンピュータで動くプログラムを作成するための言語のことを「プログラミング言語」といいます。 PHPは代表的なプログラミング言語の1つです。 PHPは、1995年にラスマス・ラードフ氏により「Personal Home Page Tools」という名前で開発されたものであり、もともとは、ラスマス自身のWebサイトで簡単な動的Webページを作成するために用いられていたが、その後改良(オープンソースライセンスの下で公開されたことにより同ツールの利用者が増加し、機能の追加を行う開 ...
可変長引数 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの「値渡し」と「参照渡し」について紹介しました。 本記事では、PHPの可変長引数について紹介します。 可変長引数 可変長引数とは、引数の数が決まっていない引数のことです。ピリオドを3つ「...」書くことで、可変長引数を表します。 可変長引数の書き方は次のとおりです。 可変長引数の使用例 それでは、実際にPHPのプログラムで可変長引数の使い方を紹介します。 次の例では、関数「total」の引数に可変長引数「...$score」を使用しています。そして、関数「total」を呼び ...
エラーと例外処理 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのコールバック関数について紹介しました。 本記事では、PHPのエラーと例外について紹介します。 PHPのエラー エラーが発生したときの挙動 PHPでは実行中にエラーが発生しても、基本的には処理を続けようとします。ただし、続行できないFatal error(致命的なエラー)が発生した場合は処理を停止します。 例えば、次の例では「Warning(警告)」と「Fatal error(致命的なエラー)」を発生させています。 [エラーの例] <?php // 警告のエラーを発生 ...
Rails + AdminLTEで編集画面を作成する
はじめに 前回の記事では、Ruby on Rails(Rails6) と AdminLTE を利用して登録画面を作成しました。 本記事では、一覧画面から「編集」ボタンを押下して、編集画面に遷移、そして 編集画面から更新処理を行う方法を紹介します。 [一覧画面イメージ] [編集画面イメージ] 事前準備 事前準備として、AdminLTEの設定と一覧画面を作成します。AdminLTEの設定と一覧画面の作成手順は下記の記事をご覧ください。 View(ビュー) ...
【Ruby on Rails】入力チェック(validates)の実装方法
Ruby on Railsで入力チェック(validates)を実装する Railsでは、入力データを検証するためのメソッド「validates」が用意されており、「validates」をmodelクラスに定義するだけで、入力チェックを実装することができます。 本記事では、「validates」メソッドを利用した入力チェックの実装方法について紹介します。 必須チェック presenceでカラムにデータが存在するか(空でないこと)を検証します。 [modelクラスの例] class User < Ap ...
【入門】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 ...
Rails + AdminLTEで一覧画面を作成する
はじめに Rubyの人気フレームワーク「Ruby on Rails」と、管理画面の制作でよく利用されるCSSの人気フレームワーク「AdminLTE」を利用して一覧画面、詳細画面、編集画面、登録画面を作成する手順を紹介します。 本記事では、一覧画面を作成しています。 [画面イメージ] 事前準備 AdminLTEの導入 AdminLTEの構築手順は下記の通り。 Scaffoldで雛形を生成する まずは便利な機能である「Scaffold」で、一覧、詳細、登録、更新画面の雛形を生成します。 「Sca ...
Ruby on Railsのインストール手順
Ruby on Railsのインストール手順(Windows版) Rubyの人気フレームワークである「Ruby on Rails」のインストール手順を紹介します。 すでにRubyがインストールされていることを前提としているため、もし、Rubyをインストールしていない場合は、下記の記事をご覧ください。 Bundlerのインストール手順 Bundlerとは 「Ruby on Rails」をインストールする前に、「Bundler」をインストールします。bundlerとは、gem(rubyのライブラリ)の依存関係 ...
OpenStreetMapとLeafletで簡単に地図を表示する方法
Leafletとは Leafletとは、地図データを扱うためのJavaScript ライブラリです。 Leafletの公式サイト:https://leafletjs.com/ Leafletはあくまでも地図データを扱うためのライブラリなので、Leaflet単体では地図を表示させることはできません。地図を表示させるためにはLeafletとは別に、地図サービスを使う必要があります。 本記事では、クレジット表記をすれば、無料で利用できる地図サービスである「OpenStreetMap」を利用していま ...
【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でマーカーの色を変更する方法
はじめに 地図データを扱うための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> < ...









































