新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
フローチャート(流れ図)問題の解き方 | ITパスポート講座
本記事で学べること アルゴリズムについて学ぶ フローチャート(流れ図)について学ぶ ITパスポート過去問の解き方を学ぶ アルゴリズムとは アルゴリズム(英:algorithm)とは、直訳で「算法」や「問題を解く手段」という意味の言葉で、特定の問題や課題を解決する手順や計算方法、処理手順のことです。 コンピュータに問題や課題を処理させるには、処理手順を与える必要があります。このコンピュータに与える問題や課題を解決するための処理手順をアルゴリズムといいます。 フローチャート(流れ図) フローチャートとは、アル ...
人間中心のAI社会原則とAI活用ガイドライン | ITパスポート講座
本記事で学べること ディープフェイクについて学ぶ 人間中心のAI社会原則について学ぶ AI活用ガイドラインについて学ぶ 説明可能なAIについて学ぶ ITパスポート過去問の解き方を学ぶ AI(人工知能)とは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な ...
プログラム言語(プログラミング言語)とは | ITパスポート講座
本記事で学べること プログラム言語について学ぶ コンパイラとインタプリタについて学ぶ ノーコードとローコードについて学ぶ ITパスポート過去問の解き方を学ぶ プログラム言語 プログラム言語(プログラミング言語)とは、コンピュータに対して一連の処理手順を与えるために作られた言語です。 コンピュータが理解できるのは「0」と「1」で構成された機械語です。そのため、人間が理解できる「日本語」や「英語」でコンピュータに指示を伝えてもコンピュータは理解できません。 そこで「コンピュータが理解できる機械語に変換しやすい ...
機械学習(教師あり学習/教師なし学習/強化学習)| ITパスポート講座
本記事で学べること AI(人工知能)について学ぶ 機械学習(教師あり学習、教師なし学習、強化学習)について学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle Assistan ...
統計(平均値/中央値/最頻値)| ITパスポート講座
本記事で学べること 平均値の求め方を学ぶ 中央値(メジアン)の求め方を学ぶ 最頻値(モード)の求め方を学ぶ 範囲(レンジ)の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 統計 データを集めて全体の傾向を割り出すものが統計です。統計では次のような指数が使われています。 平均値 平均値は、データの合計値をデータの個数で割った値です。 例えば、次のデータの平均値は「38.75」です。 平均値 = (10 + 20 + 20 + 30 + 40 + 50 + 60 + 80) ÷ 8 = 38.75 中央値( ...
ディープラーニングと生成AI | ITパスポート講座
本記事で学べること ディープラーニング(バックプロパゲーション、過学習、ハルシネーション)について学ぶ 生成AIについて学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle A ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
言語プロセッサとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「言語プロセッサ」の問題。 コンパイラやインタプリタの動きを理解していないと難しく感じる問題ですが、動きを理解していればそこまで難しい問題ではありません。 本記事では「言語プロセッサ」について図解を利用して分かりやすく解説しています。 言語プロセッサ 言語プロセッサとは、プログラミング言語で作られたプログラムの翻訳作業を行うソフトウェアの総称です。 プログラミング言語は人間が理解しやすいように作られた言語のため、プログラミング言語で記述したソースコードをコ ...
コンピュータの誤差とは?図解でわかる【基本情報技術者試験対策】
コンピュータで発生する誤差には「丸め誤差」「打切り誤差」「桁落ち」「情報落ち」などがあります。 本記事では「丸め誤差」「打切り誤差」「桁落ち」「情報落ち」について図解で分かりやすく解説していきます。 コンピュータの誤差 コンピュータで小数を扱う方法の1つに「浮動小数点数」があります。浮動小数点数では、小数で表現できる数の範囲が決まっています。 例えば、32ビット形式の浮動小数点数では、仮数部は24ビットです。 このように、浮動小数点数で小数を表現する場合、表現できる数の範囲が決まっており、限られたビット数 ...
整列アルゴリズムとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される整列アルゴリズムの問題。各整列アルゴリズムの動きを理解していれば、そこまで難しい問題ではありませんが、理解してないと問題を解くのは困難です。 整列アルゴリズムには基本的な整列アルゴリズム(基本交換法、基本選択法、基本挿入法)と高速な整列アルゴリズム(シェルソート、クイックソート、マージソート、ヒープソート)があります。 本記事では、整列アルゴリズムについて図解で分かりやすく解説しています。 基本的な整列アルゴリズム 基本的な整列アルゴリズムには次の手法があ ...
トランザクション管理とは?図解でわかる【基本情報技術者試験対策】
問題 トランザクションが,データベースに対する更新処理を完全に行うか,全く処理しなかったかのように取り消すか,のどちらかの結果になることを保証する特性はどれか。 ア:一貫性(consistency) イ:原子性(atomicity) ウ:耐久性(durability) エ:独立性(isolation) 基本情報技術者令和5年 [科目A]問7 問題 DBMSに実装すべき原子性(atomicity)を説明したものはどれか。 ア:同一データベースに対する同一処理は,何度実行しても結果は同じである。 イ:トランザ ...
レジスタとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題されるプロセッサとレジスタの問題。レジスタの種類と役割を理解していればそこまで難しい問題ではありませんが、理解していないと難しく感じる問題です。 本記事では、プロセッサとレジスタについて図解で分かりやすく解説していきます。 レジスタとは レジスタ(英:register)とは、CPU(プロセッサ)内部にある記憶装置のことです。容量は小さいが高速に読み書きできるのが特徴です。 レジスタの役割 CPU(プロセッサ)は、次のような流れで命令を処理します。命令を取り出して ...
BNF(バッカス・ナウア記法)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される問題であるバッカス・ナウア記法。基本情報技術者試験の過去問をみると難しく感じる問題です。 ただ、バッカス・ナウア記法の文法を覚えればそこまで難しい問題ではありません。 本記事では、バッカス・ナウア記法について図解で分かりやすく解説していきます。 BNF(バッカス・ナウア記法) BNFとは、Backus-Naur form(バッカス・ナウア記法)を略した言葉であり、文脈自由文法を定義するのに用いられるメタ言語(言語を記述するための言語)のことです。 BNF( ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
抽象クラス(abstract)とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのオーバーライドについて紹介しました。 本記事では、Javaの抽象クラス(abstract)について紹介します。 抽象クラス(abstract) 抽象クラスとは、抽象メソッドを1つ以上持つクラスのことです。抽象メソッドとは、定義だけで処理を書かないメソッドです。 そして、抽象クラスを継承したサブクラス(子クラス)で抽象メソッドをオーバーライドし処理を記述します。 以下は抽象クラスの例です。 抽象クラスは「abstract修飾子」を使って定義します。そして、抽象メソッドにも ...
メソッドとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのクラスについて紹介しました。 本記事では、Javaのメソッドについて紹介します。 メソッドとは メソッドとは、クラス内に書かれた処理(いくつかの処理をまとめたもの)のことです。 メソッドには、処理を実行するための条件である「引数」(パラメータ)を渡すことができます。そして、処理の実行結果を「戻り値」として返却します。 ※複数の引数を指定する場合は「total(int a, int b)」のようにカンマ区切りで指定します。また引数を指定しない場合は「total()」のよう ...
コンストラクタとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのメソッドについて紹介しました。 本記事では、Javaのコンストラクタについて紹介します。 コンストラクタとは コンストラクタとは、オブジェクトの生成(インスタンスの生成)とともに自動的に呼び出される特殊なメソッドです。 次の例のように「new Sample()」とSampleクラスのオブジェクトを生成するタイミングでコンストラクタは動作します。 コンストラクタは、クラス名と同じ名前にします。 そして、コンストラクタには戻り値がありません。値を返すことができないので、re ...
クラスとは?初心者でもわかるJava入門
はじめに 前回の記事では、switch文を使った条件分岐について紹介しました。 今回の記事では、Javaのクラスについて紹介します。 クラスの概念 クラスとは、データと処理をまとめたものです。Javaのプログラムは複数のクラスが組み合わさって作られています。 Javaはオブジェクト指向のプログラミング言語です。 オブジェクト指向ではない従来のプログラミング言語は、処理を一から十まで記述していかなければならず、複雑なプログラムになるほど作り上げるのに大変手間がかかりました。 Javaでは、関連するデータや処 ...
【Java入門】ラムダ式とStream API
前回の記事では、Java APIについて紹介しました。 前回の記事 Java APIとは?初心者でもわかるJava入門 本記事では、ラムダ式とStream APIについて紹介します。 ラムダ式とは ラムダ式とは、Java 8から追加された新しい文法で、関数型プログラミングの概念を取り入れ、匿名関数を簡潔に表現する方法を提供します。 ラムダ式は次のような構文で記述します。 (型1 引数名1, 型2 引数名2, ....) -> { ....ラムダ式本体の処理.... } ラムダ式を使う理由は以下です。 ...
オーバーロードとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのコンストラクタについて紹介しました。 本記事では、Javaのオーバーロードについて紹介します。 オーバーロードとは オーバーロードとは、同じクラス内に引数の数や型が異なる同じ名前のメソッドを2つ以上定義することです。 例えば、同じような機能のメソッドで引数にint型とdouble型があるとします。オーバーロードを使わない場合は、それぞれ違うメソッド名で定義する必要があります。 そのため、メソッドを使う人は引数の型によって使うメソッドを選択します。 オーバーロードを使う場 ...
エラーと例外処理 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPのコールバック関数について紹介しました。 本記事では、PHPのエラーと例外について紹介します。 PHPのエラー エラーが発生したときの挙動 PHPでは実行中にエラーが発生しても、基本的には処理を続けようとします。ただし、続行できないFatal error(致命的なエラー)が発生した場合は処理を停止します。 例えば、次の例では「Warning(警告)」と「Fatal error(致命的なエラー)」を発生させています。 [エラーの例] <?php // 警告のエラーを発生 ...
定数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの配列について紹介しました。 本記事では、PHPの定数について紹介します。 定数とは 定数とは値が変化しないものであり、PHPでは「define」関数か「const」キーワードを使って定数を定義します。 値を後から自由に変更できる変数とは違い、定数は1度しか値を代入することができません。例えば次のように定数の値を変更しても、一度定義しているので値は変わりません。 define関数による定数定義 define関数を使い定数を定義することができます。定数の定義はdefine関数 ...
配列の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの変数について紹介しました。 本記事では、PHPの配列について紹介します。 配列とは 配列とは、複数の値を入れることができる変数です。 変数は、数値や文字などを格納しておく箱のようなものであり、変数には1つの値しか格納することができません。それに比べて配列は、数値や文字などを格納しておく箱のようなものが複数あるため、複数の値を格納することができます。 以下は、変数と配列のイメージ図です。 PHPの配列は、実際には順番付けられたマップであり「array」関数を使って次のように ...
論理演算子 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの比較演算子、配列演算子、条件演算子について紹介しました。 本記事では、論理演算子について紹介します。 論理演算子 論理演算子とは、複数の条件式を組み合わせて、より複雑な条件をあらわすときに使う演算子です。 論理演算子の種類 論理演算子には次のようなものがあります。 論理演算子読み方使用例使用例の説明&&かつ(and)A && BAとBが共にtrueの場合、true||または(or)A || BAかBの少なくても1つがtrueの場合、true ...
可変長引数 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの「値渡し」と「参照渡し」について紹介しました。 本記事では、PHPの可変長引数について紹介します。 可変長引数 可変長引数とは、引数の数が決まっていない引数のことです。ピリオドを3つ「...」書くことで、可変長引数を表します。 可変長引数の書き方は次のとおりです。 可変長引数の使用例 それでは、実際にPHPのプログラムで可変長引数の使い方を紹介します。 次の例では、関数「total」の引数に可変長引数「...$score」を使用しています。そして、関数「total」を呼び ...
繰り返し(for文, foreach文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの条件分岐(if文)について紹介しました。 本記事では、PHPの繰り返し処理(for文、foreach文)について紹介します。 for文を使った繰り返し処理 for文は、繰り返し処理を行うための制御文です。カウンタを用意してその値によって何回繰り返すかを決めます。 for文の書き方は次のとおりです。 上記の例では、$iの初期値を0(カウンタの初期値:$i = 0)として、$iを1つずつ増やしていき(カウンタの増え方:$i++)10以上になるまで(繰り返しを続けるための条件: ...
【Rails】validatesのエラーメッセージを日本語化する方法
Rails6のvalidatesメッセージを日本語化する Ruby on Railsのvalidates機能を使うと、デフォルトではエラーメッセージが英語で表示されます。 本記事では「i18n」を利用して、validatesメッセージを日本語化する方法を紹介してきます。 言語ファイルの作成 日本語の言語ファイル作成 i18nでは、英語は「en.yml」、日本語は「ja.yml」というように、言語によりファイルが分かれています。 今回は、日本語化したいので「app/config/locales」配下に「ja ...
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 ...
【Rails入門】超便利ScaffoldでCRUDを作成する方法
Scaffold(スキャフォールド) Scaffoldとは、Railsに備わっている機能の一つで、Ruby on Railsでアプリケーションの雛形を作るための機能です。 Scaffoldとは、英語で「足場」という意味で、まさにRailsアプリの「足場」となる機能(一覧 / 登録 / 更新 / 削除するための一連の画面)を提供してくれます。 本記事では、超便利機能であるScaffoldを使い、CRUDを作成する方法を紹介しています。 ※CRUDは次の頭文字を連結させた言葉です。 C:Create(登録) ...
Ruby on Railsのインストール手順
Ruby on Railsのインストール手順(Windows版) Rubyの人気フレームワークである「Ruby on Rails」のインストール手順を紹介します。 すでにRubyがインストールされていることを前提としているため、もし、Rubyをインストールしていない場合は、下記の記事をご覧ください。 Bundlerのインストール手順 Bundlerとは 「Ruby on Rails」をインストールする前に、「Bundler」をインストールします。bundlerとは、gem(rubyのライブラリ)の依存関係 ...
Rails + AdminLTEで詳細画面を作成する
はじめに 前回の記事では、Ruby on Rails(Rails6) と AdminLTE を利用して編集画面を作成しました。 本記事では、詳細画面を表示させる方法について紹介しています。※データベースの作成やAdminLTEの設定等は こちらの記事 で紹介しているので、本記事では省略しています。 [詳細画面イメージ] View(ビュー) 共通レイアウト(application.html.erb) 共通レイアウトである「application.html.erb」は下記の通り。 <!DOCTYPE h ...
Rails6でBootstrapを導入する方法
【Rails6】Bootstrap導入手順 Bootstrapとは、Twitter社が開発したCSSの「フレームワーク」です。Bootstrapを利用することで簡単にWebサイトのデザインを作ることができます。 本記事では、Rails6標準の「yarn + webpacker」でBootstrapを導入する手順を紹介しています。 Bootstrapのパッケージをインストールする まず、YarnでBootstrapに必要なパッケージをインストールします。 必要なパッケージは次の通りです。 bootstrap ...
【OpenStreetMap】Leafletで複数のマーカを表示する方法
はじめに OpenStreetMapとLeafletで地図にマーカーを複数を表示する方法を紹介します。 地図の表示イメージは以下の通りです。(東京タワー、東京スカイツリー、六本木ヒルズ にマーカーを表示しています) Leafletで地図にマーカを複数表示する方法 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にマーカーを複数表示する</title& ...
OpenStreetMapとLeafletで簡単に地図を表示する方法
Leafletとは Leafletとは、地図データを扱うためのJavaScript ライブラリです。 Leafletの公式サイト:https://leafletjs.com/ Leafletはあくまでも地図データを扱うためのライブラリなので、Leaflet単体では地図を表示させることはできません。地図を表示させるためにはLeafletとは別に、地図サービスを使う必要があります。 本記事では、クレジット表記をすれば、無料で利用できる地図サービスである「OpenStreetMap」を利用していま ...
【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 ...
Leafletで地図やマーカーを削除(remove、removeLayer)する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い、地図やマーカーを削除する方法を紹介します。 地図の表示イメージは次の通りです。ボタンを押下することで、地図の削除・再表示、マーカーの表示・削除をすることができます。 OpenStreetMapとLeafletで地図やマーカーを削除する方法 HTMLとJavaScriptの実装例は以下です。 <!DOCTYPE html> <html> <head&g ...
【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 ...








































