新着記事
ITの専門用語を図解で解説。仕事で役立つITの基礎知識を身につけよう。
生成AIとChatGPT
進化が止まらないIT技術は、さまざまな業種で導入されています。2022年11月のChatGPT公開を機に勢いがついた生成AIの市場規模は、日本では2030年までに年平均47.2%増で成長し、需要額で約1.8兆円まで拡大すると見られています。
情報処理技術者試験対策
ITパスポート
ITパスポートは、基礎的なIT教養を幅広く身につけられることで人気の国家試験です。これからITの知識を身につけていきたい方におすすめです。
機械学習(教師あり学習/教師なし学習/強化学習)| 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 中央値( ...
確率・順列・組み合わせを分かりやすく解説 | ITパスポート講座
本記事で学べること 確率の求め方を学ぶ 順列の求め方を学ぶ 組み合わせの求め方を学ぶ ITパスポート過去問の解き方を学ぶ 確率 確率とは、ある事象が発生する可能性の度合いを数値で表現したものです。 確率は次の式で求められます。 場合の数とは、ある事柄に対して、全部で何通りの場合があるかを示します。 例えば、サイコロを1回振るときの「場合の数」は、出目が1~6なので、6通りです。 なので、サイコロを振って「5」がでる確率は1/6です。(求める場合の数は1、すべての場合の数は6) 確率の積の法則 複数の事象が ...
基数変換(2進数・10進数・16進数)| ITパスポート講座
本記事で学べること 基数について学ぶ 基数変換のやり方を理解する ITパスポート過去問の解き方を学ぶ 基数とは? 私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。 ここがポイント コンピュータが扱えるのは2進数だけ。文字や音声、映像などのすべての情報は、コンピュータの世界では「0」と「1」の組み合わせで表現されている。 基数とは、数値を表現する際に位取りの基準となる数のことであり、2進 ...
正規分布・標準偏差・偏差値 | ITパスポート講座
本記事で学べること 正規分布と標準偏差を学ぶ 偏差値の求め方を学ぶ ITパスポート過去問の解き方を学ぶ 正規分布 正規分布とは、平均値を中心とした左右対称な釣鐘型の分布のことです。 次のグラフは、平均値「50」、標準偏差「10」の正規分布です。 山の頂点が平均値となり、平均値を中心に左右対称になるのが特徴で、多くの統計的手法は、この正規分布を基礎として展開しており、検定や推定、モデルの作成など、様々な場面で活用されています。 標準偏差とは 標準偏差とは、データのばらつきをあらわす指標のひとつです。 標準偏 ...
データの単位(バイト・ビット)| ITパスポート講座
本記事で学べること データの単位を理解する 文字コードを学ぶ ITパスポート過去問の解き方を学ぶ データの単位(情報量の単位) コンピュータやスマートフォンには容量があります。例えば、スマートフォンの容量には「64GB」「128GB」「256GB」「512GB」「1TB」などがあり、容量が大きいほど値段は高く、写真やアプリなどをたくさん保存できます。 この「MB(メガバイト)」や「GB(ギガバイト)」「TB(テラバイト)」というのが単位であり、「バイト」とは、コンピュータの世界でデータ量をあらわす際に使用 ...
基本情報技術者試験
基本情報技術者試験はITパスポートの上位資格です。本格的にエンジニアやIT業界で仕事をする方におすすめです。
排他制御(占有ロックと共有ロック)とは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される内容である排他制御。排他制御には「ロック」や「セマフォ」「ミューテックス」などがあります。 本記事では、排他制御について図解で分かりやすく解説しています。 排他制御 排他制御とは、共有資源を複数のタスク(プログラム)が同時に操作しても問題なく動作できる仕組みのことです。 例えば、次の図のように「プログラムA」と「プログラムB」が、共有の領域の値に対して同時に書き込む可能性があるとします。 「プログラムA」と「プログラムB」はお互い「+1」するプログラムであ ...
通信プロトコルとは?図解でわかる【基本情報技術者試験対策】
問題 TCP/IPネットワークにおけるRARPの機能として,適切なものはどれか。 ア:IPパケットが通信先のIPアドレスに到達するかどうかを調べる。 イ:MACアドレスからIPアドレスを求める。 ウ:ドメイン名とホスト名からIPアドレスを求める。 エ:プライベートIPアドレスとグローバルIPアドレスを相互に変換する。 基本情報技術者令和3年免除 問34 問題 トランスポート層のプロトコルであり,信頼性よりもリアルタイム性が重視される場合に用いられるものはどれか。 ア:HTTP イ:IP ウ:TCP ...
言語プロセッサとは?図解でわかる【基本情報技術者試験対策】
基本情報技術者試験や応用情報技術者試験で出題される「言語プロセッサ」の問題。 コンパイラやインタプリタの動きを理解していないと難しく感じる問題ですが、動きを理解していればそこまで難しい問題ではありません。 本記事では「言語プロセッサ」について図解を利用して分かりやすく解説しています。 言語プロセッサ 言語プロセッサとは、プログラミング言語で作られたプログラムの翻訳作業を行うソフトウェアの総称です。 プログラミング言語は人間が理解しやすいように作られた言語のため、プログラミング言語で記述したソースコードをコ ...
データベースのビューとは?図解でわかる【基本情報技術者試験対策】
問題 関係データベース管理システム(RDBMS)におけるビューに関する記述のうち,適切なものはどれか。 ア:ビューとは,名前を付けた導出表のことである。 イ:ビューに対して,ビューを定義することはできない。 ウ:ビューの定義を行ってから,必要があれば,その基底表を定義する。 エ:ビューは一つの基底表に対して一つだけ定義できる。 基本情報技術者平成24年春期 午前問29 問題 更新可能なビューを作成するSQL文はどれか。ここで,SQL文中に現れる基底表は全て更新可能とする。 ア:CREATE VIEW 高額 ...
浮動小数点数とは?図解でわかる【基本情報技術者試験対策】
コンピュータにおける数値表現の1つであり、主に小数点を含む数値を表現するときに利用するのが「浮動小数点数」です。 本記事では「浮動小数点数」について図解で分かりやすく解説していきます。 浮動小数点数 浮動小数点数とは、コンピュータにおける数値を表現する方法の一つで、主に小数点を含む数値を表現するときに利用するものです。 浮動小数点数の形式 浮動小数点数は次のように「符号」「指数部」「仮数部」の形式で表現します。※32ビットの例 浮動小数点数の「仮数部」と「指数部」に入る値のイメージ例は次のとおりです。(仮 ...
論理演算とは?図解でわかる【基本情報技術者試験対策】
真(true:条件が成立)と偽(false:条件が成立しない)という2つの値を用いて行う演算である論理演算は、基本情報技術者試験や応用情報技術者試験で出題される問題です。 論理演算には「論理積」(AND)、「論理和」(OR)、「否定」(NOT)、排他的論理和(XOR)などがあります。 本記事では、論理演算について図解で分かりやすく解説しています。 論理積(AND) 論理積(AND)とは、2つある条件がともに"真"(true:条件が成り立つ)のときのみ"真"(true)を出力する演算です。 「AかつB」と表 ...
YouTubeでも解説中
YouTubeの動画でも解説しています。YouTubeチャンネルはこちら
プログラミング講座
オーバーライドとは?初心者でもわかるJava入門
はじめに 前回の記事では、Javaの継承について紹介しました。 本記事では、Javaのオーバーライドについて紹介します。 オーバーライドとは オーバーライドとは、継承元であるスーパークラス(親クラス)で定義されているメソッドを、サブクラス(子クラス)で書き換えることです。 スーパークラスにあるメソッドと、同じ名前、同じ引数のメソッドをサブクラスに記述することでオーバーライドすることができます。 以下の図は、オーバーライドの例です。 スーパークラスにある「cry」というメソッドを、サブクラスに定義することで ...
【Java入門】Javaとは | 初心者向けプログラミング講座
Javaとは コンピュータで動くプログラムを作成するための言語のことを「プログラミング言語」といいます。 Javaは代表的なプログラミング言語の1つです。 Javaは、1995年の5月にアメリカのサン・マイクロシステムズ(英: Sun Microsystems)という会社が発表したプログラミング言語です。2010年1月にサン・マイクロシステムズはオラクルに買収されているので、現在はオラクル社がJavaを提供しています。 プログラミング言語の役割 コンピュータが理解できる言語は機械語です。そのため人間が理解 ...
switch文(条件分岐)の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、ループを中断するbreak文、ループ処理の途中で、残りの処理をスキップして次のループ処理に移るcontinue文について紹介しました。 今回の記事では、switch文を使った条件分岐について紹介します。 switch文を使った条件分岐 switch文とは、if文と同じように条件分岐を行う制御文です。if文との違いは、if文はelse-if文を使うことで複数の条件式を書くことができますが、switch文では条件式は1つです。 1つの式に対して、式の値が case のどれにあてはまる ...
while文の使い方 | 初心者でもわかるJava入門
はじめに 前回の記事では、for文を使った繰り返し処理について紹介しました。 本記事では、while文を使った繰り返し処理について紹介します。 while文を使った繰り返し処理 while文とは、条件が成立している間、処理を繰り返し実行する制御文です。for文との違いは、繰り返しの回数があらかじめ決まっていないところです。 while文の書き方は次のとおりです。 while文の使用例 それでは、実際にプログラムでwhile文を使用した繰り返し処理の例を紹介します。 次の例では、「i < 5」の条件が ...
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の継承について紹介します。 継承とは 継承とは、クラスが持っているメンバ(フィールドやメソッド)を別のクラスに引き継がせることです。継承元のクラスをスーパークラス(または親クラス)、引き継いだクラスをサブクラス(または子クラス)といいます。 サブクラスを作成するには「extends」(読み:エクステンズ)を使用します。次のように「extends」の前にサブクラス名(子クラス名)、後にスーパークラス名(親クラス名) ...
変数のスコープ(ローカル変数、グローバル変数)| 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの可変長引数について紹介しました。 本記事では、変数のスコープ(ローカル変数、グローバル変数)について紹介します。 変数のスコープとは 変数のスコープとは、定義した変数が使える範囲のことをいいます。 ローカル変数とは ローカル変数とは、関数内で定義した変数のことです。 ローカル変数のスコープは変数を宣言した関数内です。そのため、ローカル変数を定義した関数内でしか使用できません。(ローカル変数を関数の外で使用するとエラーが発生する) [ローカル変数の使用例] <?php ...
変数の使い方 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの開発環境構築の手順について紹介しました。 本記事では、PHPの変数について紹介します。 PHPの変数 変数とは数値や文字などを格納しておく箱のようなものです。 PHPの変数は次のように先頭に「$(ドル記号)」を付けます。 $変数名 = 値; 例えば次の例では「a」という名前の変数に「1」という数値を入れています。 $a = 1; 変数名として利用できる文字は次のとおりです。 変数の型 PHPでは、変数を定義するとき変数の型を指定する必要がありません。変数に値を代入すると自 ...
繰り返し(for文, foreach文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの条件分岐(if文)について紹介しました。 本記事では、PHPの繰り返し処理(for文、foreach文)について紹介します。 for文を使った繰り返し処理 for文は、繰り返し処理を行うための制御文です。カウンタを用意してその値によって何回繰り返すかを決めます。 for文の書き方は次のとおりです。 上記の例では、$iの初期値を0(カウンタの初期値:$i = 0)として、$iを1つずつ増やしていき(カウンタの増え方:$i++)10以上になるまで(繰り返しを続けるための条件: ...
条件分岐(if文) | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの論理演算子について紹介しました。 本記事では、PHPの条件分岐(if文)について紹介します。 if文を使った条件分岐 if文は条件によって処理を分けるときに使う制御文です。 if文の使用例 それでは、実際にPHPのプログラムでif文を使用した条件文の例を紹介します。 if文の書き方は次のとおりです。 次の例では、if文を使い変数「$age」が20だったら"20歳です"という文字列をprint関数で出力しています。 [if文の例] <?php $age = 20; i ...
値渡しと参照渡し | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの関数(function)について紹介しました。 本記事では、引数の渡し方(「値渡し」と「参照渡し」)について紹介します。 値渡しとは 参照渡しとは、変数の値をコピーして渡す方法です。変数の値をコピーして渡すため、関数内で引数の値を変更しても、呼び出し元の変数に影響を及ぼすことはありません。 値渡しの書き方は次のとおりです。 以下は値渡しのイメージ図です。 変数の値の実体はメモリ上で管理されています。値渡しは変数の値をコピーして渡すので、メモリ上の実体もコピーされます。 そ ...
可変長引数 | 初心者でもわかるPHP入門
はじめに 前回の記事では、PHPの「値渡し」と「参照渡し」について紹介しました。 本記事では、PHPの可変長引数について紹介します。 可変長引数 可変長引数とは、引数の数が決まっていない引数のことです。ピリオドを3つ「...」書くことで、可変長引数を表します。 可変長引数の書き方は次のとおりです。 可変長引数の使用例 それでは、実際にPHPのプログラムで可変長引数の使い方を紹介します。 次の例では、関数「total」の引数に可変長引数「...$score」を使用しています。そして、関数「total」を呼び ...
【CSV.generate】RailsでCSVファイルを出力する方法
Railsで簡単にCSVファイルを出力する方法 Ruby on RailsのCSV出力のライブラリである「CSV.generate」を使用し、CSVファイルを出力する方法を紹介します。 本記事では、次のような一覧画面に「CSV出力」ボタンを配置して、「CSV出力」ボタンを押下するとCSVファイルをダウンロードする処理を実装しています。 [例:一覧画面イメージ] [例:CSVファイル] Controller (コントローラー) [app/controllers/users_con ...
Rails + AdminLTEで編集画面を作成する
はじめに 前回の記事では、Ruby on Rails(Rails6) と AdminLTE を利用して登録画面を作成しました。 本記事では、一覧画面から「編集」ボタンを押下して、編集画面に遷移、そして 編集画面から更新処理を行う方法を紹介します。 [一覧画面イメージ] [編集画面イメージ] 事前準備 事前準備として、AdminLTEの設定と一覧画面を作成します。AdminLTEの設定と一覧画面の作成手順は下記の記事をご覧ください。 View(ビュー) ...
【Rails入門】超便利ScaffoldでCRUDを作成する方法
Scaffold(スキャフォールド) Scaffoldとは、Railsに備わっている機能の一つで、Ruby on Railsでアプリケーションの雛形を作るための機能です。 Scaffoldとは、英語で「足場」という意味で、まさにRailsアプリの「足場」となる機能(一覧 / 登録 / 更新 / 削除するための一連の画面)を提供してくれます。 本記事では、超便利機能であるScaffoldを使い、CRUDを作成する方法を紹介しています。 ※CRUDは次の頭文字を連結させた言葉です。 C:Create(登録) ...
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 ...
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 -- ...
【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 ...
【Cognito】getSessionでトークン情報を再取得する方法
はじめに JavaScript用のSDKでAmazon Cognitoのユーザープールを使いログイン処理を実装し、ログインに成功すると「アクセストークン」や「IDトークン」などが取得できます。 ただ、この「アクセストークン」や「IDトークン」には有効期限(デフォルトの設定は1時間と短い)があり、有効期限が切れるとトークン情報は無効になってしまいます。 そこで、更新トークン(refreshToken)を使い、トークン情報を再取得することができます。※JavaScript用のSDKでは「getSession」 ...
OpenStreetMapとLeafletで表示位置を変更する方法
はじめに 地図データを扱うためのJavaScript ライブラリである「Leaflet」と「OpenStreetMap」を使い地図の表示位置を変更する方法を紹介します。 地図の表示イメージは以下の通りです。ボタンを押下することで、地図の表示位置が変わります。 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで表示位置を変更する</title> < ...
OpenStreetMapとLeafletで地図にピン(マーカー)を立てる
はじめに OpenStreetMapとLeafletで地図にピン(マーカー)を立てる方法を紹介します。 地図の表示イメージは以下の通りです。 OpenStreetMapとLeafletで地図にピン(マーカー)を立てる 実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にピンを立てる</title> <meta charset="utf-8"> <li ...
【OpenStreetMap】Leafletで複数のマーカを表示する方法
はじめに OpenStreetMapとLeafletで地図にマーカーを複数を表示する方法を紹介します。 地図の表示イメージは以下の通りです。(東京タワー、東京スカイツリー、六本木ヒルズ にマーカーを表示しています) Leafletで地図にマーカを複数表示する方法 JavaScriptの実装例 <!DOCTYPE html> <html> <head> <title>OpenStreetMapとLeafletで地図にマーカーを複数表示する</title& ...









































