実務未経験者が業務システム(Java)を実装する前にIT用語を一覧にまとめる

#はじめに
皆さまこんにちは。@kanato4と申します。
今年未経験で転職し、IT業界に飛び込んだペーペーです。

入社して3か月はシステムのテスト・エビデンス取得が大半で、プログラミングの勉強は家でするような生活が続いていたのですが、実務ではどんな開発をやっているのか知りたい！と思ったので現場の業務システムの設計書を読みはじめることにしました。

ですが。。設計書を読み進めると、普段あまり目にしない横文字や略語？ばかりで理解しようとしても全然頭に入ってきませんでした。。。

というわけで、設計書等で出た分からないワードを片っ端から調べあげて理解してやろう！というのが本記事を書くきっかけでした。

※本記事は業務システム開発（Java）に入る前に調べたことをメモとして残す目的で執筆しています。

#分からなかった単語集

##プログラミング言語関係(Java関係)
###J2EE
Java 2 Platform, Enterprise Editionの略。
大規模開発において、Javaでプログラミングを行う際に言語処理系が提供する機能を呼び出す規約（API）のセットなどが定義されている。

###Javaサーブレット
Webサーバ上で動作するJavaプログラムの仕様を定めた標準の一つ。また、その仕様に基いて開発されたJavaプログラム。

###POJO(ポジョ)
Plain Old Java Object の略。一般的なJavaクラスから生成されるオブジェクトのこと。ついつい崖の上のあいつが思い浮かんでしまうが、別物である。

###DAO（ダオ/ディーエーオー）
某スタンド使いの吸血鬼に似た名前だが、正式にはデータアクセスオブジェクトの略。Javaなどのオブジェクト指向言語で、データベースなどに保存しておくためのシステムや仕組みに対する操作を実装したオブジェクト。データベースにアクセスするための窓口。デザインパターンとしては定番。

###DTO(ディーティーオー)
某スタンド使いの(以下略)。データトランスファーオブジェクトの略。データ受け渡し専用のクラス。型の異なるデータを一括で管理したり、まとめて受け渡すことができるので便利。

###JavaBeans(ジャバビーンズ)
Javaにおいて、入力フォームから受け取ったデータを個人ごとに整理し保存する仕組みを指す。データを保存する倉庫のようなもの。入れ物のイメージからBeans（豆）と呼ばれる。データの意図しない書き換えを防止する目的がある。
めっちゃオブジェクト指向っぽい！

###Facade（ファサード）
「建物の正面」と言う意味で、複雑なAPIをシンプルにするためのインターフェースのこと。
ファサードを導入すると、異なるサブシステムを単純な操作だけを持ったFacadeクラスで結ぶことができ、システム内部の概念を単純化して理解できるようになる。保守費用も抑えることが可能。

###JCL
プログラミング言語の一つ。
コンピュータに対する「プログラム」や「バッチ」など、複数のジョブを統制する言語。

###リスナ
何らかのきっかけに応じて起動されるよう設定されたサブルーチン、関数、メソッドのこと。イベントリスナーとも言う。
オブジェクト指向言語では、対応付けられたメソッドを持つオブジェクトを指す場合もある。

###サブルーチン
プログラム中で意味や内容がまとまっている作業を一つに手続き化したもの。
ルーチンワークをモジュール化してまとめたもの。

###ニューメリックチェック
入力されたデータが文字列か数値かをチェックすること。数値として扱うべき項目に文字列が入っていた場合、データ例外を起こす危険があるのでチェックは大事。ニューメリックは日本語で「数値」のこと。

###リネーム
プログラムを作成する方法のひとつ。
すでに同じ機能を持ったプログラムがある場合、それをコピーして変更点のみを修正する方法。１から作成するよりも開発期間が短くなる。ただ、変更すべき点が漏れてしまうとシステムに影響が出てしまう恐れもある。

###リラン
システムの障害発生を回避するためにジョブを再度処理すること。リスタートやリトライとは若干ニュアンスが異なるらしい。

##システム関係
###ミドルウェア
ソフトウェアの一種。OSとアプリケーションソフトの中間だから「ミドルウェア」。
OSが提供する機能よりも個別・具体的。
その分野で必ず必要になるような機能を提供している。専門職みたいなやつ。

###ActiveX
マイクロソフトが開発する、インターネットに関するソフトウェアコンポーネントやその技術。
IEやそのコンポーネントを利用したソフトウェア上で動的なコンテンツを再生する技術や関連技術の総称。
下記のActiveXコントロールをただ「ActiveX」と呼んでる場合も多い。

###ActiveXコントロール
ブラウザの機能を拡張する一種のプラグイン（追加機能）として動作。
HTMLやCSS、JSなど、Webページの標準技術だけで実現できない機能・表現を可能にする。
JSに比べて高速。Windowsの機能の一部を呼び出せる。

###ストリームデータ
株取引情報や交通情報などのように、継続的に発生するタイムスタンプ（生成or更新された時刻情報）を含むデータのこと。

###スタックトレース
処理の呼び出し履歴。
エラー発生までにどの関数（orメソッド）をどこで呼び出したかが表示される。
メモリの「スタック領域」の内容が表示されるので「スタックトレース」。

###HULFT転送（ハルフト転送）
ファイル転送ソフト。ホストからサーバーへ、サーバーからホストへデータ転送を行う。
普段のシステム運用で発生するデータ連携を自動化してくれる。ミドルウェアに分類されるやつ。

###FTP転送
ファイル転送プロトコル。
パケット通信によるデータ伝送。HTTPと異なり、ファイル特化で伝送する。

###LU（Logical Unit）
ディスクを論理的に分割した単位の番号。

###ディレイ方式
何かしらを入力した後、一定時間経過してから再入力して受け入れる方式。delayは遅延の意。
チャタリング対策として最もシンプルな手法。

###チャタリング
クリックがダブルクリックになってしまう現象やキーボードのキーを一回押しただけなのに同じ文字が複数入力されてしまうような現象のこと。要はオン・オフが勝手に繰り返されるイメージ。

###バッチ処理
一括処理。
あらかじめ登録しておいたデータをひとまとまりにして自動的に処理すること。

###トランザクション処理
分割できない一連の流れの処理。「朝起きる→顔を洗う→朝飯を食べる→歯を磨く」といったような「モーニングルーティーンの流れ」みたいなものと解釈している。

###SOAP
異なるコンピュータ上で動くプログラム同士がネットワークを通じてメッセージを送り合い、連携して動作する通信プロトコルのこと。メッセージの記述はXML、データ伝送は主にHTTPを用いる。

###WDT
ウォッチドッグタイマーの略。システムがちゃんと動いているかを確認するタイマー。
定時連絡がシステム側から送られてこないと異常と判断する。異常を吠えて知らせる番犬みたいなもんやね(適当)。

##IT用語・カタカナ系
###オペランド
コンピュータプログラミングにおいて、演算の対象となる値や変数のこと。

###スキーマ
構造。主にデータベースの構造を指す。

###インクルード
あるファイルの中に別のファイルに記述された内容を追加する機能。

###DB
データベース。「デービー」と読む。「ディービー」ではない。

###コンバート
データや信号などをある形式から別の形式に変換すること。
それに関連して、変換する装置や機器、ソフトウェアは「コンバータ」と言う。

###シーケンス
処理の順番の並びやデータの順番の並び。

###デグレード
デグレと略されることが多い。修正したことによって、修正した箇所以外の処理や機能に影響が出て不良になること。

###アベンド
Abnormal end。つまり異常終了のこと。Abendって書く場合もある。

###アーキテクチャ
構造、構成様式のこと。
コンピュータやシステム、ネットワーク、ソフトウェアなどの基本構造や構成、基本設計を指す。

###キュー
待ち行列のこと。
実行時に他のジョブが多数処理されている場合は「キュー待ち」と呼ばれている。

#終わりに
以上、ワードを片っ端から羅列してみました。改めて分からないこと多すぎるなぁという感じですね。。。独学だけだとこういった実務で使うワードを知ることも少ないと思うので、良い機会だったと思います！