IT用語解説
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
【ITパスポート】データの単位(バイト・ビット)
本記事で学べること データの単位を理解する 文字コードを学ぶ ITパスポート過去問の解き方を学ぶ データの単位(情報量の単位) コンピュータやスマートフォンには容量があります。例えば、スマートフォンの容量には「64GB」「128GB」「256GB」「512GB」「1TB」などがあり、容量が大きいほど値段は高く、写真やアプリなどをたくさん保存できます。 この「MB(メガバイト)」や「GB(ギガバイト)」「TB(テラバイト)」というのが単位であり、「バイト」とは、コンピュータの世界でデータ量をあらわす際に使用 ...
【ITパスポート】正規分布・標準偏差・偏差値
本記事で学べること 正規分布と標準偏差を学ぶ 偏差値の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 正規分布 正規分布とは、平均値を中心とした左右対称な釣鐘型の分布のことです。 次のグラフは、平均値「50」、標準偏差「10」の正規分布です。 山の頂点が平均値となり、平均値を中心に左右対称になるのが特徴で、多くの統計的手法は、この正規分布を基礎として展開しており、検定や推定、モデルの作成など、様々な場面で活用されています。 標準偏差とは 標準偏差とは、データのばらつきをあらわす指標のひとつです。 標準偏 ...
【ITパスポート】確率・順列・組み合わせを分かりやすく解説
本記事で学べること 確率の求め方を学ぶ 順列の求め方を学ぶ 組み合わせの求め方を学ぶ ITパスポート過去問の解き方を学ぶ 確率 確率とは、ある事象が発生する可能性の度合いを数値で表現したものです。 確率は次の式で求められます。 場合の数とは、ある事柄に対して、全部で何通りの場合があるかを示します。 例えば、サイコロを1回振るときの「場合の数」は、出目が1~6なので、6通りです。 なので、サイコロを振って「5」がでる確率は1/6です。(求める場合の数は1、すべての場合の数は6) 確率の積の法則 複数の事象が ...
【ITパスポート】基数変換(2進数・10進数・16進数)
本記事で学べること 基数について学ぶ 基数変換のやり方を理解する ITパスポート過去問の解き方を学ぶ 基数とは? 私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。 ここがポイント コンピュータが扱えるのは2進数だけ。文字や音声、映像などのすべての情報は、コンピュータの世界では「0」と「1」の組み合わせで表現されている。 基数とは、数値を表現する際に位取りの基準となる数のことであり、2進 ...
【ITパスポート】統計(平均値/中央値/最頻値)
本記事で学べること 平均値の求め方を学ぶ 中央値(メジアン)の求め方を学ぶ 最頻値(モード)の求め方を学ぶ 範囲(レンジ)の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 統計 データを集めて全体の傾向を割り出すものが統計です。統計では次のような指数が使われています。 平均値 平均値は、データの合計値をデータの個数で割った値です。 例えば、次のデータの平均値は「38.75」です。 平均値 = (10 + 20 + 20 + 30 + 40 + 50 + 60 + 80) ÷ 8 = 38.75 中央値( ...
【ITパスポート】機械学習(教師あり学習/教師なし学習/強化学習)
本記事で学べること AI(人工知能)について学ぶ 機械学習(教師あり学習、教師なし学習、強化学習)について学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle Assistan ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
IPアドレスとサブネットマスクが図解でわかる【基本情報技術者試験対策】
問題 192.168.0.0/23(サブネットマスク255.255.254.0)のIPv4ネットワークにおいて,ホストとして使用できるアドレスの個数の上限はどれか。 ア:23 イ:24 ウ:254 エ:510 基本情報技術者平成31年春期 午前問32 問題 次のネットワークアドレスとサブネットマスクをもつネットワークがある。このネットワークをあるPCが利用する場合,そのPCに割り振ってはいけないIPアドレスはどれか。 ネットワークアドレス:200.170.70.16 サブネットマスク :2 ...
TCP/IPの階層モデルとは?図解でわかる【基本情報技術者試験対策】
問題 TCP/IPネットワークで使用されるARPの説明として,適切なものはどれか。 ア:IPアドレスからMACアドレスを得るためプロトコル イ:IPアドレスからホスト名(ドメイン名)を得るためのプロトコル ウ:MACアドレスからIPアドレスを得るためのプロトコル エ:ホスト名(ドメイン名)からIPアドレスを得るためのプロトコル 基本情報技術者令和4年免除 問30 基本情報技術者試験や応用情報技術者試験で出題される「TCP/IPの階層モデル」についての問題。TCP/IPの各層の役割を知らないと難しく感じる問 ...
データベース(DBMS)の3層スキーマとは?図解でわかる【基本情報技術者試験対策】
問題 DBMSが,3層スキーマアーキテクチャを採用する目的として,適切なものはどれか。 ア:関係演算によって元の表から新たな表を導出し,それが実在しているように見せる。 イ:対話的に使われるSQL文を,アプリケーションプログラムからも使えるようにする。 ウ:データの物理的な格納構造を変更しても,アプリケーションプログラムに影響が及ばないようにする。 エ:プログラム言語を限定して,アプリケーションプログラムとDBMSを緊密に結合する。 基本情報技術者平成27年春期 午前問26 問題 データベースの3層スキー ...
メモリリークとガベージコレクションがわかる【基本情報技術者試験対策】
問題 メモリリークの説明として,適切なものはどれか。 ア:OSやアプリケーションのバグなどが原因で,動作中に確保した主記憶が解放されないことであり,これが発生すると主記憶中の利用可能な部分が減少する。 イ:アプリケーションの同時実行数を増やした場合に,主記憶容量が不足し,処理時間のほとんどがページングに費やされ,スループットの極端な低下を招くことである。 ウ:実行時のプログラム領域の大きさに制限があるときに,必要になったモジュールを主記憶に取り込む手法である。 エ:主記憶で利用可能な空き領域の総量は足りて ...
マルチプログラミング(マルチタスク)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題されるマルチプログラミングの問題。過去問を見ると難しく感じる問題です。しかし、マルチプログラミングの動きを理解していれば、そこまで難しい問題ではありません。 本記事では、マルチプログラミングについて図解で分かりやすく解説していきます。 タスクの状態遷移 タスクとは、コンピュータが処理する作業の最小単位のことで、コンピュータが処理するプログラムもタスクです。 タスクには「実行可能状態」「実行状態」「待機状態」の3つの状態があり、次の状態遷移図のとおりに遷移します。 ...
DMA(ダイレクトメモリアクセス)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「DMA」、聞きなれない言葉のため難しく感じる問題ですが、「DMA」の動きを理解してしまえば、そこまで難しい問題ではありません。 本記事では「DMA」について分かりやすく図解で解説しています。 プログラム制御方式 プログラム制御方式(または直接制御方式)とは、入出力装置から主記憶装置(メインメモリ)へのデータ転送をCPUが直接制御する方式のことです。 コンピュータは様々な機器とデータのやり取りをします。プログラム制御方式では、この様々な機器とのデータのやり ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
例外(try-catch)の書き方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの列挙型について紹介しました。 本記事では、Javaの例外について紹介します。 例外とは 例外とは、プログラムを実行したときに起こるエラーのことです。 プログラムを作る時、正常系(想定している正しい動作)の動作を作るのは当たり前のことです。ただ、正常系の動作しか考慮していないと、想定外の使われ方をしたときやプログラムにバグ(プログラムに潜む誤り)があるとき、通信異常が発生したときなどに問題が発生します。 そのため、プログラムを作るときは異常系(想定していない操作)の動作を ...
【Java入門】配列の使い方 | 初心者向けプログラミング講座
はじめに 前回の記事では、Javaの変数について紹介しました。 本記事では、Javaの配列について紹介します。 配列とは 配列とは、複数の同じ型の変数を1つにまとめたものです。 変数は、数値や文字などを格納しておく箱のようなものです。変数には1つの値しか格納することができません。それに比べて配列は、数値や文字などを格納しておく箱のようなものが複数あるため、複数の値を格納することができます。 以下は、変数と配列のイメージ図です。 配列要素の参照と代入 それでは、実際にプログラムで配列を宣言し、配列に値を代入 ...
【Java入門】Javaとは | 初心者向けプログラミング講座
Javaとは コンピュータで動くプログラムを作成するための言語のことを「プログラミング言語」といいます。 Javaは代表的なプログラミング言語の1つです。 Javaは、1995年の5月にアメリカのサン・マイクロシステムズ(英: Sun Microsystems)という会社が発表したプログラミング言語です。2010年1月にサン・マイクロシステムズはオラクルに買収されているので、現在はオラクル社がJavaを提供しています。 プログラミング言語の役割 コンピュータが理解できる言語は機械語です。そのため人間が理解 ...
【Java入門】比較演算子と条件演算子 | 初心者向けプログラミング講
はじめに 前回の記事では、Javaの演算子(算術演算子、代入演算子、インクリメント演算子、デクリメント演算子)について紹介しました。 本記事では、Javaの演算子(比較演算子、条件演算子、論理演算子)について紹介します。 比較演算子とは 比較演算子とは、2つの値を比較するときに使う演算子のことです。比較演算子で比較した結果、条件が成立した場合は true(読み:トゥルー)、成立しない場合は false(読み:フォールス)を返します。 比較演算子の種類 比較演算子には次のようなものがあります。 比較演算子意 ...
while文の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、for文を使った繰り返し処理について紹介しました。 本記事では、while文を使った繰り返し処理について紹介します。 while文を使った繰り返し処理 while文とは、条件が成立している間、処理を繰り返し実行する制御文です。for文との違いは、繰り返しの回数があらかじめ決まっていないところです。 while文の書き方は次のとおりです。 while文の使用例 それでは、実際にプログラムでwhile文を使用した繰り返し処理の例を紹介します。 次の例では、「i < 5」の条件が ...
for文(繰り返し)の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの条件分岐(if文)について紹介しました。 本記事では、Javaの繰り返し処理(for文)について紹介します。 for文を使った繰り返し処理 for文は、繰り返し処理を行うための制御文です。for文では、カウンタを用意してその値によって何回繰り返すかを決めます。 以下は、for文の書き方の例です。 上記例ではカウンタの初期値を「int i = 0;」、繰り返しを続けるための条件を「i < 10」、カウンタの増え方を「i++」と設定しています。 for文の使用例 それ ...
変数のスコープ(ローカル変数、グローバル変数)| 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの可変長引数について紹介しました。 本記事では、変数のスコープ(ローカル変数、グローバル変数)について紹介します。 変数のスコープとは 変数のスコープとは、定義した変数が使える範囲のことをいいます。 ローカル変数とは ローカル変数とは、関数内で定義した変数のことです。 ローカル変数のスコープは変数を宣言した関数内です。そのため、ローカル変数を定義した関数内でしか使用できません。(ローカル変数を関数の外で使用するとエラーが発生する) [ローカル変数の使用例] <?php ...
継承とオーバーライド | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのクラスについて紹介しました。 本記事では、PHPの継承とオーバーライドについて紹介します。 継承(extends) 継承とは、クラスが持っているメソッド(関数)やプロパティ(変数)を別のクラスに引き継がせることです。 継承元のクラスを親クラス、継承先のクラスを子クラスといいます。 子クラスを作成するには「extends」(読み:エクステンズ)を使用します。次のように「extends」の前に子クラス名、後に親クラス名を指定します。 継承の使用例 それでは、実際にPHPのプロ ...
staticプロパティとstaticメソッド | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの継承とオーバーライドについて紹介しました。 本記事では、PHPのstaticプロパティとstaticメソッドのついて紹介します。 staticキーワード クラスのプロパティ(変数)やメソッド(関数)にstaticをつけると、クラスのオブジェクト(インスタンス)を生成せずにアクセスできます。 staticプロパティは「クラス名::プロパティ名」、staticメソッドは「クラス名::メソッド名」のようにスコープ定義演算子(::)を使ってアクセスできます。 staticプロパテ ...
繰り返し(while文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの繰り返し処理(for文、foreach文)について紹介しました。 本記事では、while文を使った繰り返し処理について紹介します。 while文を使った繰り返し処理 while(読み:ホワイル)文とは、条件が成立している間 処理を繰り返し実行する制御文です。同じ繰り返し処理であるfor文、foreach文との違いは、繰り返しの回数があらかじめ決まっていないところです。 while文の書き方は次のとおりです。 while文では、条件が成立する限り処理を繰り返します。 whi ...
クラスの使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、変数のスコープ(ローカル変数、グローバル変数、静的変数)について紹介しました。 本記事では、PHPのクラスについて紹介します。 クラスとは クラスとは、メソッド(関数)やプロパティ(変数)をまとめたもの(関数と変数を持ったプログラムの固まり)です。 次の例では、Cat(猫)の情報を管理するクラスを作成しています。クラスには、メソッドとプロパティを記述できます。 オブジェクトの生成(インスタンスの生成) クラスを使用するには「new」キーワードを使用します。「new クラス名」でク ...
配列の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの変数について紹介しました。 本記事では、PHPの配列について紹介します。 配列とは 配列とは、複数の値を入れることができる変数です。 変数は、数値や文字などを格納しておく箱のようなものであり、変数には1つの値しか格納することができません。それに比べて配列は、数値や文字などを格納しておく箱のようなものが複数あるため、複数の値を格納することができます。 以下は、変数と配列のイメージ図です。 PHPの配列は、実際には順番付けられたマップであり「array」関数を使って次のように ...
OpenStreetMapとLeafletで表示位置を変更する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い地図の表示位置を変更する方法を紹介します。 地図の表示イメージは以下の通りです。ボタンを押下することで、地図の表示位置が変わります。 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 ...
【Amazon Cognito】JavaScriptでログイン処理を実装する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使いログイン処理を実装する方法を紹介します。 事前準備として、次のライブラリが必要となるので、npmコマンドでインストールします。 amazon-cognito-identity.min.js ※npmコマンドはNode.jsをインストールすることで使うことができます。 【JavaScript SDK】Amazon Cognito(ユーザープール)の使い方 ライブラリの読み込み 事前準備で取得したライブラリを読み込みま ...
【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 ...
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 ...
【Rails】validatesのエラーメッセージを日本語化する方法
Rails6のvalidatesメッセージを日本語化する Ruby on Railsのvalidates機能を使うと、デフォルトではエラーメッセージが英語で表示されます。 本記事では「i18n」を利用して、validatesメッセージを日本語化する方法を紹介してきます。 言語ファイルの作成 日本語の言語ファイル作成 i18nでは、英語は「en.yml」、日本語は「ja.yml」というように、言語によりファイルが分かれています。 今回は、日本語化したいので「app/config/locales」配下に「ja ...
【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の設定と一覧画面を作成します。AdminLTEの設定と一覧画面の作成手順は下記の記事をご覧ください。 View(ビュー) ...
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 on Rails(Rails6) と AdminLTE を利用して編集画面を作成しました。 本記事では、詳細画面を表示させる方法について紹介しています。※データベースの作成やAdminLTEの設定等は こちらの記事 で紹介しているので、本記事では省略しています。 [詳細画面イメージ] View(ビュー) 共通レイアウト(application.html.erb) 共通レイアウトである「application.html.erb」は下記の通り。 <!DOCTYPE h ...
Ruby on Railsのインストール手順
Ruby on Railsのインストール手順(Windows版) Rubyの人気フレームワークである「Ruby on Rails」のインストール手順を紹介します。 すでにRubyがインストールされていることを前提としているため、もし、Rubyをインストールしていない場合は、下記の記事をご覧ください。 Bundlerのインストール手順 Bundlerとは 「Ruby on Rails」をインストールする前に、「Bundler」をインストールします。bundlerとは、gem(rubyのライブラリ)の依存関係 ...