- HOME >
- 管理人
管理人
SEとして働く「分かる君」がつ運営するサイトです。 ITの難しい用語や、仕事で感じた事などを中心に"わかりやすさ"を意識して記事にしています。少しでも共感や参考にしていただける人がいたら嬉しいです。
はじめに 前回の記事では、Javaについて紹介しました。 本記事では、Javaの統合開発環境(コンパイラ・エディタ・デバック機能などがセットになったツール)であるEclipseを使い、Javaの開発環境を構築し簡単なプログラム作成を紹介しています。 Eclipseのダウンロード Eclipseのダウンロードは以下のサイトからおこないます。 https://willbrains.jp/ 【手順1】ダウンロードするバージョンを選択する ダウンロードするEclipseのバージョンを選択します。 バージョンに指定 ...
Javaとは コンピュータで動くプログラムを作成するための言語のことを「プログラミング言語」といいます。 Javaは代表的なプログラミング言語の1つです。 Javaは、1995年の5月にアメリカのサン・マイクロシステムズ(英: Sun Microsystems)という会社が発表したプログラミング言語です。2010年1月にサン・マイクロシステムズはオラクルに買収されているので、現在はオラクル社がJavaを提供しています。 プログラミング言語の役割 コンピュータが理解できる言語は機械語です。そのため人間が理解 ...
はじめに 前回の記事では、Java開発環境の構築について紹介しました。 本記事では、Javaの変数について紹介しています。 Javaの変数 変数とは数値や文字などを格納しておく箱のようなものです。 この数値や文字などを格納する箱のようなものを「変数」と呼び、「変数」を使う前には「変数」を宣言する必要があります。 例えば次の例では「int型の変数aとString型の変数bを使います」と宣言しています。また、変数aや変数bのように、変数についている名前のことを「変数名」といいます。 int a; String ...
否定論理和(NOR) 否定論理和(読み:ひていろんりわ)とは、論理演算の1つで2つの与えられた命題のいずれも「偽」のときに「真」、それ以外のときに「偽」となる演算です。 いずれか一方あるいは両方が「真」のときに「真」、いずれも「偽」のときに「偽」となる論理和(OR)を否定(NOT)したのが否定論理和です 論理演算記号では、論理和(OR)の記号「+」と否定(NOT)の記号「¯」を組み合わせて「A+B」のように表記します。 否定論理和のベン図 否定論理和をベン図であらわすと次のとおりです。 ベン図のとおり、A ...
否定論理積(NAND) 否定論理積(読み:ひていろんりせき)とは、論理演算の1つで2つの与えられた命題のいずれも「真」のときに「偽」、それ以外のときに「真」となる演算です。 いずれも「真」のときは「真」、それ以外は「偽」となる論理積(AND)を否定(NOT)したのが否定論理積です。 論理演算記号では、論理積(AND)の記号「・」と否定(NOT)の記号「¯」を組み合わせて「A・B」のように表記します。 否定論理積のベン図 否定論理積をベン図であらわすと次のとおりです。 ベン図のとおり、A、Bのいずれも「真」 ...
排他的論理和(XOR) 排他的論理和(読み:はいたてきろんりわ、英語:exclusive or / exclusive disjunction)とは、論理演算の1つで、2つの与えられた命題のいずれか一方のみが「真」のときに「真」、両方「真」や両方「偽」のときは「偽」となる演算です。 論理演算記号では、記号「⊕」を用いて(A⊕B)のように表現します。 例えば サッカーチームに所属している 野球チームに所属している という2つの命題の排他的論理和は「サッカーチームに所属している」あるいは「野球チームに所属して ...
論理和(OR) 論理和(読み:ろんりわ、英語:Logical disjunction)とは論理演算の1つで、2つの与えられた命題のいずれか一方あるいは両方が真のときに「真」、いずれも「偽」のときに「偽」となる演算です。 「A または B」と表現し、論理演算記号では(A+B)または(A∨B)という記号を使います。 例えば サッカーチームに所属している 野球チームに所属している という2つの命題の論理和は「サッカーチームに所属している」または「野球チームに所属している」(※両方成り立ってもOK)です。 論理和 ...
論理積(AND) 論理積(読み:ろんりせき、英語: logical conjunction)とは論理演算の1つで、2つの与えられた命題がいずれも「真」のときは「真」、それ以外は「偽」となる演算です。 「A かつ B」と表現し、論理演算記号では(A・B)または(A∧B)という記号を使います。 例えば サッカーチームに所属している 野球チームに所属している という2つの命題の論理積は「サッカーチームに所属している」かつ「野球チームに所属している」です。 論理積のベン図 論理積をベン図であらわすと次のとおりです ...
ド・モルガンの法則 ド・モルガンの法則とは、次のような式が成り立つという法則のことです。 それでは、実際にベン図を使って「ド・モルガンの法則」を説明していきます。 ド・モルガンの法則その1「 A ⋃ B = A ⋂ B 」 まずは「A ⋃ B」をベン図であらわします。 「A ⋃ B」(A または B)のベン図は次のとおり。 この「A ⋃ B」の否定が「A ⋃ B」です。 「A ⋃ B」(A または Bではない)のベン図は次のとおり。 続いては「A ⋂ B」をベン図であらわします。 Aの否定「 ...
二分探索 二分探索(にぶんたんさく)とは、探索アルゴリズムの1つです。 配列やリストのような複数のデータが格納されている箱の中から、目的のデータを探し出すのが探索であり、この探索の代表的なアルゴリズムには「線形探索」「二分探索」「ハッシュ法」があります。 本記事では、探索対象の配列やリストを「昇順」または「降順」に並び替えて探索する「二分探索」について紹介しています。 二分探索の手順(データが見つかる場合の例) 二分探索は「昇順」または「降順」に並んでいる配列やリストに対して探索を行う手法です。探索対象を ...
線形探索 線形探索(せんけいたんさく)とは、探索アルゴリズムの1つです。 配列やリストのような複数のデータが格納されている箱の中から、目的のデータを探し出すのが探索であり、この探索の代表的なアルゴリズムには「線形探索」「二分探索」「ハッシュ法」があります。 本記事では、探索アルゴリズムの中でも最もシンプルな手法である「線形探索」について紹介しています。 線形探索の手順 線形探索は先頭から順に探索していく手法です。目的のデータが見つかる (配列に目的のデータがある場合)または、配列のデータをすべて確認(配列 ...
エミュレータ エミュレータ(英:emulator)とは、特定のOSやハードウェア向けに開発されたソフトウェアを、本来とは異なる動作環境で疑似的に実行させるソフトウェアやハードウェアのことです。 エミュレータを利用してソフトウェアを動作させることをエミュレーション(英:emulation)といいます。 例えば、スマートフォン(Android)向けのアプリがあるとします。本来はAndroid端末でしか動作しないアプリでも、エミュレータを使用するとWindows上で動かすことができます。 その他にも、MacでW ...
プログラミング言語 プログラミング言語とは プログラミング言語(英:programming language)とは、コンピュータに指示を伝えるための言語です。 コンピュータが理解できる言語は機械語です。そのため、人間が理解できる「日本語」や「英語」でコンピュータに指示を伝えてもコンピュータは理解できません。 そこで「コンピュータが理解できる機械語に変換しやすい」かつ「人間にも理解できる」形式で作られたのがプログラミング言語です。 プログラミング言語でプログラムを開発することをプログラミング(英:progr ...
言語プロセッサ 言語プロセッサとは、プログラミング言語で作られたプログラムの翻訳作業を行うソフトウェアの総称です。 プログラミング言語で作られたプログラムは、人が理解しやすい文字列や記号で記述されているため、コンピュータは理解できません。 そのため、コンピュータが理解できる機械語に変換する必要があります。この機械語へ変換する翻訳作業を行うソフトウェアの総称のことを「言語プロセッサ」といいます。 主要な言語プロセッサには「コンパイラ」「アセンブラ」「インタプリタ」があります。 コンパイラ(compiler) ...
オートマトン オートマトン(英:automaton)とは、自動人形という意味を持つ言葉であり、コンピュータの状態、遷移をモデル化したものです。 例えば、自動販売機は「お金を入れる」(入力)→「ボタンが点灯」(状態の遷移)、「点灯したボタンを押す」(入力)→「ジュースが出てくる」(状態の遷移)のような動作をします。 このように状態の遷移にともなう動作をモデル化してあらわすのがオートマトンです。 オートマトンにはいくつかの種類があり、その中でも代表的なモデルが「有限オートマトン」です。 有限オートマトン 有限 ...
ストアドプロシージャ ストアドプロシージャ(英:stored procedure)とは、データベースを操作する一連の処理(SQL文)をひとつのプログラムにまとめものです。 ストアドプロシージャはデータベース管理システム(DBMS)側に保存され、外部からは「プロシージャ名」を指定して実行します。 ストアドプロシージャのイメージ例 クライアントサーバシステムでは、クライアントからデータベースサーバにあるデータベースに対し、SQLを発行します。 次の例では、データベース機能を提供するデータベースサーバを「サーバ ...
ロック(lock) 排他制御とは 排他制御とは、共有資源に対して複数のアクセスが同時に発生しても問題なく動作できる制御のことをいいます。 例えば、次のように複数の人が同時に共有資源であるファイルに書き込みを行った場合、排他制御をおこなっていれば、データの整合性が保たれます。(共有ファイルに「BBB」と「CCC」が両方追加される) しかし、排他制御をおこなっていないと次のように整合性が保たれないデータになってしまう危険性があります。(後から更新した方のデータとなり、BBBが反映されていない) このような事態 ...
ロールフォワード ロールフォワード(英:roll forward)とは、データベースに障害が発生したときの回復手段の1つです。 ロールフォワードでは「バックアップファイル」と「ジャーナルファイル」というファイルを使いデータベースの状態を元に戻します。 バックアップファイルとジャーナルファイル データベースには業務で必要なデータが大量に保存されています。そのため、データベースが破損してしまうと大問題です。 データベースは障害に備えて定期的にバックアップを取ることが基本です。定期的に取得するバックアップは、デ ...
ロールバック(rollback) ロールバック(英:rollback)とは、トランザクション処理においてデータ更新などに失敗した場合に、処理を破棄する(トランザクション開始前の状態に戻す)ことをいいます。 トランザクションとは、トランザクション開始~終了までの一連の処理のことです。 例えば、上記図のような処理があるとします。 商品購入 トランザクション開始 「在庫テーブル」で保持している商品の在庫を減らす 「注文テーブル」に購入者情報を登録 トランザクション終了 処理2~処理5までの一連の処理をトランザク ...
コミット(commit) データベースのコミットとは コミット(英:commit)とは、トランザクションの処理を確定させることです。トランザクションとは、一連の処理をひとまとめにしたものです。 例えば、次の図はトランザクションのイメージ例です。 利用者が商品を購入 処理開始(トランザクション開始) 「在庫テーブル」で保持している商品の在庫を減らす 「注文テーブル」に購入者情報を登録 処理終了(トランザクション終了) 処理2~処理5までの一連の処理をトランザクションといい、この一連の処理(トランザクション) ...