新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
ディープラーニングと生成AI | ITパスポート講座
本記事で学べること ディープラーニング(バックプロパゲーション、過学習、ハルシネーション)について学ぶ 生成AIについて学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle A ...
機械学習(教師あり学習/教師なし学習/強化学習)| ITパスポート講座
本記事で学べること AI(人工知能)について学ぶ 機械学習(教師あり学習、教師なし学習、強化学習)について学ぶ ITパスポート過去問の解き方を学ぶ AIとは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な例では、SiriやGoogle Assistan ...
人間中心のAI社会原則とAI活用ガイドライン | ITパスポート講座
本記事で学べること ディープフェイクについて学ぶ 人間中心のAI社会原則について学ぶ AI活用ガイドラインについて学ぶ 説明可能なAIについて学ぶ ITパスポート過去問の解き方を学ぶ AI(人工知能)とは AI(人工知能)とは、Artificial Intelligence(アーティフィシャル・インテリジェンス)の略で、人が実現するさまざまな知的な活動を行うプログラムやシステムのことです。 コンピュータの性能が大きく向上したことにより、機械であるコンピュータが「学ぶ」ことができるようになりました。 身近な ...
フローチャート(流れ図)問題の解き方 | ITパスポート講座
本記事で学べること アルゴリズムについて学ぶ フローチャート(流れ図)について学ぶ ITパスポート過去問の解き方を学ぶ アルゴリズムとは アルゴリズム(英:algorithm)とは、直訳で「算法」や「問題を解く手段」という意味の言葉で、特定の問題や課題を解決する手順や計算方法、処理手順のことです。 コンピュータに問題や課題を処理させるには、処理手順を与える必要があります。このコンピュータに与える問題や課題を解決するための処理手順をアルゴリズムといいます。 フローチャート(流れ図) フローチャートとは、アル ...
基数変換(2進数・10進数・16進数)| ITパスポート講座
本記事で学べること 基数について学ぶ 基数変換のやり方を理解する ITパスポート過去問の解き方を学ぶ 基数とは? 私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。 ここがポイント コンピュータが扱えるのは2進数だけ。文字や音声、映像などのすべての情報は、コンピュータの世界では「0」と「1」の組み合わせで表現されている。 基数とは、数値を表現する際に位取りの基準となる数のことであり、2進 ...
擬似言語の解き方を分かりやすく解説 | ITパスポート講座
本記事で学べること 擬似言語について学ぶ 擬似言語の構造について学ぶ ITパスポート過去問の解き方を学ぶ(疑似言語の解き方を学ぶ) 擬似言語 擬似言語とは、プログラムの記述や解読を容易にするために作られた記述方式のことです。 ITパスポート試験では、次のような形式で擬似言語が出題されます。 記述形式説明◯手続名 または 関数名手続または関数を宣言する。型名 : 変数名変数を宣言する。/* 注釈 */ または // 注釈注釈を記述する。変数名 ← 式変数に式の値を代入する。手続名 または 関数名 (引数, ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
排他制御(占有ロックと共有ロック)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される内容である排他制御。排他制御には「ロック」や「セマフォ」「ミューテックス」などがあります。 本記事では、排他制御について図解で分かりやすく解説しています。 排他制御 排他制御とは、共有資源を複数のタスク(プログラム)が同時に操作しても問題なく動作できる仕組みのことです。 例えば、次の図のように「プログラムA」と「プログラムB」が、共有の領域の値に対して同時に書き込む可能性があるとします。 「プログラムA」と「プログラムB」はお互い「+1」するプログラムであ ...
NAT(NAPT)とは?図解でわかる【基本情報技術者試験対策】
問題 IPv4において,インターネット接続用ルータのNAT機能の説明として,適切なものはどれか。 ア:インターネットへのアクセスをキャッシュしておくことによって,その後に同じIPアドレスのWebサイトへアクセスする場合,表示を高速化できる機能である。 イ:通信中のIPパケットを検査して,インターネットからの攻撃や侵入を検知する機能である。 ウ:特定の端末宛てのIPパケットだけを通過させる機能である。 エ:プライベートIPアドレスとグローバルIPアドレスを相互に変換する機能である。 基本情報技術者令和2年免 ...
仮想記憶のページング方式とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「仮想記憶」と「ページング方式」についての問題。ページング方式の動きを理解していないと難しく感じる問題ですが、動きを理解していればそこまで難しい問題ではありません。 本記事では、仮想記憶の実現方法のひとつである「ページング方式」について図解で分かりやすく解説しています。 仮想記憶(仮想メモリ) 仮想記憶とは 仮想記憶とは、仮想的な記憶領域のことであり、仮想メモリやバーチャルメモリとも呼ばれています。 仮想記憶を使用することで主記憶装置(メインメモリ)の容量 ...
主キーと外部キーが図解でわかる【基本情報技術者試験対策】
問題 次の表において,"在庫" 表の製品番号に定義された参照制約によって拒否される可能性のある操作はどれか。ここで,実線の下線は主キーを,破線の下線は外部キーを表す。 在庫(在庫管理番号, 製品番号, 在庫数) 製品(製造番号, 製品名, 型, 単価) ア:"在庫"表の行削除 イ:"在庫"表の表削除 ウ:"在庫"表への行追加 エ:"製品"表への行追加 応用情報技術者平成28年春期 午前問29 基本情報技術者試験や応用情報技術者試験で出題される「主キー」と「外部キー」についての問題。過去問を見ると難しく ...
パリティチェックとは?図解でわかる【基本情報技術者試験対策】
問題 通信回線の伝送誤りに対処するパリティチェック方式(垂直パリティ)の記述として,適切なものはどれか。 ア:1ビットの誤りを検出できる。 イ:1ビットの誤りを訂正でき,2ビットの誤りを検出できる。 ウ:奇数パリティならば1ビットの誤りを検出できるが,偶数パリティでは1ビットの誤りも検出できない。 エ:奇数パリティならば奇数個のビット誤りを,偶数パリティならば偶数個のビット誤りを検出できる。 基本情報技術者令和2年免除 問6 基本情報技術者試験や応用情報技術者試験で出題される「パリティチェック」の問題。水 ...
システムの信頼性設計とは?図解でわかる【基本情報技術者試験対策】
問題 フェールセーフの考え方として,適切なものはどれか。 ア:システムに障害が発生したときでも,常に安全側にシステムを制御する。 イ:システムの機能に異常が発生したときに,すぐにシステムを停止しないで機能を縮退させて運用を継続する。 ウ:システムを構成する要素のうち,信頼性に大きく影響するものを複数備えることによって,システムの信頼性を高める。 エ:不特定多数の人が操作しても,誤動作が起こりにくいように設計する。 基本情報技術者令和3年免除 問15 問題 フォールトトレラントシステムを実現する上で不可欠な ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
【Java入門】Java開発環境の構築 | 初心者向けプログラミング講座
はじめに 前回の記事では、Javaについて紹介しました。 本記事では、Javaの統合開発環境(コンパイラ・エディタ・デバック機能などがセットになったツール)であるEclipseを使い、Javaの開発環境を構築し簡単なプログラム作成を紹介しています。 Eclipseのダウンロード Eclipseのダウンロードは以下のサイトからおこないます。 https://willbrains.jp/ 【手順1】ダウンロードするバージョンを選択する ダウンロードするEclipseのバージョンを選択します。 バージョンに指定 ...
if文(条件分岐)の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの演算子(比較演算子、条件演算子、論理演算子)について紹介しました。 本記事では、Javaの条件分岐(if文)について紹介します。 if文を使った条件分岐 if文は条件によって処理を分けるときに使う制御文です。 if文の使用例 それでは、実際にプログラムでif文を使用した条件文の例を紹介します。if文の書き方は次のとおりです。 次の例では、もし「変数age」が20だったら"20歳です"という文字列を表示しています。 [if文の例] public class IfSampl ...
アクセス修飾子とは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaのオーバーロードについて紹介しました。 本記事では、Javaのアクセス修飾子について紹介します。 アクセス修飾子とは アクセス修飾子とは、クラスやフィールド、メソッドを他クラスにどこまで公開するかを決める修飾子です。 アクセス修飾子は次のように記述します。※フィールドの例 アクセス修飾子には「public」「protected」「private」の3種類があります。 public publicは、どこからでも利用することができるアクセス修飾子です。 利用方法利用可否クラス ...
例外(try-catch)の書き方 | 初心者でもわかるJava入門
はじめに 前回の記事では、Javaの列挙型について紹介しました。 本記事では、Javaの例外について紹介します。 例外とは 例外とは、プログラムを実行したときに起こるエラーのことです。 プログラムを作る時、正常系(想定している正しい動作)の動作を作るのは当たり前のことです。ただ、正常系の動作しか考慮していないと、想定外の使われ方をしたときやプログラムにバグ(プログラムに潜む誤り)があるとき、通信異常が発生したときなどに問題が発生します。 そのため、プログラムを作るときは異常系(想定していない操作)の動作を ...
【Java入門】ラムダ式とStream API
前回の記事では、Java APIについて紹介しました。 前回の記事 Java APIとは?初心者でもわかるJava入門 本記事では、ラムダ式とStream APIについて紹介します。 ラムダ式とは ラムダ式とは、Java 8から追加された新しい文法で、関数型プログラミングの概念を取り入れ、匿名関数を簡潔に表現する方法を提供します。 ラムダ式は次のような構文で記述します。 (型1 引数名1, 型2 引数名2, ....) -> { ....ラムダ式本体の処理.... } ラムダ式を使う理由は以下です。 ...
オーバーライドとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaの継承について紹介しました。 本記事では、Javaのオーバーライドについて紹介します。 オーバーライドとは オーバーライドとは、継承元であるスーパークラス(親クラス)で定義されているメソッドを、サブクラス(子クラス)で書き換えることです。 スーパークラスにあるメソッドと、同じ名前、同じ引数のメソッドをサブクラスに記述することでオーバーライドすることができます。 以下の図は、オーバーライドの例です。 スーパークラスにある「cry」というメソッドを、サブクラスに定義することで ...
繰り返し(while文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの繰り返し処理(for文、foreach文)について紹介しました。 本記事では、while文を使った繰り返し処理について紹介します。 while文を使った繰り返し処理 while(読み:ホワイル)文とは、条件が成立している間 処理を繰り返し実行する制御文です。同じ繰り返し処理であるfor文、foreach文との違いは、繰り返しの回数があらかじめ決まっていないところです。 while文の書き方は次のとおりです。 while文では、条件が成立する限り処理を繰り返します。 whi ...
PHP開発環境の構築 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPについて紹介しました。 本記事では、PHP開発に必要なものパッケージとしてまとめたXAMPPと、コードエディタであるVisual Studio Codeを使った開発環境の構築手順を紹介します。 XAMPPのインストール XAMPP(ザンプ)とは、PHP開発で必要なソフトウェア(PHP、Apache、MySQLなど)やツールなどをまとめてパッケージ化した便利な開発ツールです。 そのため、XAMPPをインストールするだけで、PHPの開発環境を作れます。 XAMPPのインストール ...
値渡しと参照渡し | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの関数(function)について紹介しました。 本記事では、引数の渡し方(「値渡し」と「参照渡し」)について紹介します。 値渡しとは 参照渡しとは、変数の値をコピーして渡す方法です。変数の値をコピーして渡すため、関数内で引数の値を変更しても、呼び出し元の変数に影響を及ぼすことはありません。 値渡しの書き方は次のとおりです。 以下は値渡しのイメージ図です。 変数の値の実体はメモリ上で管理されています。値渡しは変数の値をコピーして渡すので、メモリ上の実体もコピーされます。 そ ...
クラスの使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、変数のスコープ(ローカル変数、グローバル変数、静的変数)について紹介しました。 本記事では、PHPのクラスについて紹介します。 クラスとは クラスとは、メソッド(関数)やプロパティ(変数)をまとめたもの(関数と変数を持ったプログラムの固まり)です。 次の例では、Cat(猫)の情報を管理するクラスを作成しています。クラスには、メソッドとプロパティを記述できます。 オブジェクトの生成(インスタンスの生成) クラスを使用するには「new」キーワードを使用します。「new クラス名」でク ...
コールバック関数 | 初心者でもわかる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以上になるまで(繰り返しを続けるための条件: ...
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 ...
【Ruby on Rails】入力チェック(validates)の実装方法
Ruby on Railsで入力チェック(validates)を実装する Railsでは、入力データを検証するためのメソッド「validates」が用意されており、「validates」をmodelクラスに定義するだけで、入力チェックを実装することができます。 本記事では、「validates」メソッドを利用した入力チェックの実装方法について紹介します。 必須チェック presenceでカラムにデータが存在するか(空でないこと)を検証します。 [modelクラスの例] class User < Ap ...
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 ...
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 ...
【CSV.generate】RailsでCSVファイルを出力する方法
Railsで簡単にCSVファイルを出力する方法 Ruby on RailsのCSV出力のライブラリである「CSV.generate」を使用し、CSVファイルを出力する方法を紹介します。 本記事では、次のような一覧画面に「CSV出力」ボタンを配置して、「CSV出力」ボタンを押下するとCSVファイルをダウンロードする処理を実装しています。 [例:一覧画面イメージ] [例:CSVファイル] Controller (コントローラー) [app/controllers/users_con ...
【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 ...
【Amazon Cognito】JavaScriptでログイン処理を実装する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使いログイン処理を実装する方法を紹介します。 事前準備として、次のライブラリが必要となるので、npmコマンドでインストールします。 amazon-cognito-identity.min.js ※npmコマンドはNode.jsをインストールすることで使うことができます。 【JavaScript SDK】Amazon Cognito(ユーザープール)の使い方 ライブラリの読み込み 事前準備で取得したライブラリを読み込みま ...
【OpenStreetMap】Leafletで複数のマーカを表示する方法
はじめに OpenStreetMapとLeafletで地図にマーカーを複数を表示する方法を紹介します。 地図の表示イメージは以下の通りです。(東京タワー、東京スカイツリー、六本木ヒルズ にマーカーを表示しています) Leafletで地図にマーカを複数表示する方法 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にマーカーを複数表示する</title& ...
【JavaScriptの判定】null、undefined、==、===の違い
JavaScriptの判定方法 JavaScriptには、様々な判定方法があります。例えば「if (値)」と「if (値 != null)」、「==」と「===」など。この違いを理解せず使用していると、思わぬバグを作りこんでしまう危険性があります。 本記事では、JavaScritpの判定方法について紹介しています。 「if (値)」と「if (値 != null)」の違い if (値)による判定 if (値)の判定では、以下の例の通り「null」「undefined」「空文字」「0」が偽(false)です ...
OpenStreetMapとLeafletで簡単に地図を表示する方法
Leafletとは Leafletとは、地図データを扱うためのJavaScript ライブラリです。 Leafletの公式サイト:https://leafletjs.com/ Leafletはあくまでも地図データを扱うためのライブラリなので、Leaflet単体では地図を表示させることはできません。地図を表示させるためにはLeafletとは別に、地図サービスを使う必要があります。 本記事では、クレジット表記をすれば、無料で利用できる地図サービスである「OpenStreetMap」を利用していま ...








































