用語
データ構造 スタック 後かから入れたものを、先に出す LIFO(Last In First Out) キュー 先に入れたものを、先に出す FIFO(First In First Out) ハッシュ関数 ヒープ 各「ノード」は、最大2つの子データをもつ 子データは、親データより大きなもの 「プ…
Clean Architecture 達人に学ぶソフトウェアの構造と設計 3つのプログラミングパラダイム 構造化プログラミング 構造化プログラミングとは、「順次(上から順にプログラムを実行する)」「反復(for文)」「分岐(if文)」の3つの構造を使ってプログラム構…
プロキシとは プロキシとは、ブラウザに代わってwebサーバーにリクエストするやつ。 ブラウザ -> プロキシ -> webサーバー ブラウザ <- プロキシ <- webサーバー なぜわざわざワンクッション挟むのか 匿名性 プロキシを経由しないで、webサーバーへアクセス…
バイナリデータ バイナリデータとは、コンピュータで扱えるデータで、人間が見ても理解できないデータ シリアライズ ソフトウェア内部で扱っているデータをそのままDBへ保存したり送受信できるようにすること。 たとえば、配列をDBへ保存する際に、 普通、DB…
DOM DOMは「Document Object Model」の略 HTMLやXML文書をプログラムから利用するための仕組みのこと DOMはツリー状の構造で、HTML文書にアクセスして情報を得たりするためのもの Node ツリー状の構造は、結束点や末端のことをNodeという DOMでは、Nodeのこ…
同期処理 普通プログラムは、上から順番に処理を行う 処理1 ↓ 処理2 ↓ 処理3 処理を終わるまで待って次に進む方式を同期処理という 非同期処理 「非」同期処前理は、同期処理ではないということ したがって、非同期処理とは、前の処理が終わる前に次に進む方…
Headlessとは、GUIがないことを指す 例 Headless Browser: GUIのないブラウザ Headless Software: GUIのないソフトウェア Headless Computer: GUIのないコンピュータ
そもそもDockerって何? 「コンテナ型の仮想環境を作成・配布・実行するためのプラットフォーム」 だそう。 仮想環境(仮想マシン)って? 仮想化されたサーバーなどを「仮想環境(仮想マシン)」と呼ぶ。 仮想化 物理的な環境に囚われず仮想的な環境を作り…
プログラムでデータを受け渡しするときに使われるファイルの形式。
バッチ処理 バッチ = Batch = 一束、一群 一定量or一定期間のデータを集め、一括処理するための処理方法。 ストリーム処理 無限に発生し続けるデータを処理する際に行う処理方法。
ストリームとは Javaでは、ファイルとデータのやり取りをする場合(データの入出力)、ストリームという考え方を使って行う。 ストリームとは、ファイルの読み書きや書き出しにおけるデータの流れのこと。 データがファイルとプログラムの間を流れていくイメ…
JAX-RS The Java API for RESTful Web Services の略。 RESTful とは そもそもREST(Representational State Transfer)とは HTTPを使ったシンプルなWebサービス すべてのリソースは一意なアドレスで識別される 特定のHTTPメソッド(GET、POST、PUT、DELETE…
S3とは AWSの中核にあるストレージサービス。 ストレージとは 訳すと貯蔵、保管。 データを保管・保存する場所のこと。 ストレージサービスとは インターネット上で、ファイル保管用のスペースにデータを保存することができるサービス。 インターネット上に…
キャッシュとは よく利用するデータを蓄積させて、データ処理を速くする仕組み。 詳しく言うと、 一度開いたwebページのデータを、通信経路のどこかに保存しておいて、次に同じページを開くときに速く表示してくれる。 一度アクセスしたページはURLで覚えら…
Apache webサーバーのソフト。 コンピュータにApacheを入れると、そのコンピュータがwebサーバーをしての仕事ができるようになる。 webサーバー webサーバーとは、ブラウザからページを調べた時に、そのページの情報を返してくれるサーバーのことを指す。 た…
GZIPとは データ圧縮方法の一つ。 詳しく言うと、 ブラウザに表示するためのデータ転送の時に、その内容を圧縮することで、転送量を減らして表示速度を高める手法。 簡単に言うと、 webページのサーバとユーザーのパソコン間で通信しているデータサイズを少…
レンダリングとは 文字のデータを読み取って、実際の画面に映る画像や映像などに変換すること。 文字データが読み取られ、レンダリングされた結果、ブラウザ上に画像がでる。 レンダリング処理の回数を減らす = 最適化につながる。らしい。 JavaScriptを下に…
ライブラリ(Library) よく使う機能・関数をまとめたもの。 汎用的な機能をまとめたもの。 我々側が、ライブラリの中にある機能を呼ぶ。 一部の部品として使う。 フレームワーク(Framework) ある処理を実行するための枠組みが含まれているもの。 我々側が…
リクエストを格納するインターフェイス。 = リクエストの情報を持つ。 取得できる情報 HTTPメソッド URL Cookie など、、
Cookieとは ユーザー情報をパソコンに一時的に記録・参照する機能。 サーバーがWebブラウザを通じて訪問してきたユーザーのパソコンに一時的にデータを書き込んで保存する仕組み。 Cookieにはサーバー側が指定したデータを保存しておくことができる。 ユーザ…
IPアドレスとは ネットワーク上の住所。 プロバイダがIPアドレスを割り当ててくれる。 プロバイダとは、自分が使っている回線とインターネットをつなげてくれる仲介役。 IPアドレスの必要性 友達に手紙を送りたいと思っても、住所がないと手紙を届けることが…
関数 プログラミングにおいての関数とは、計算式や処理を指す。 関数型言語 宣言型プログラミング どのような手段で探すかを記さない。それは任せる。 命令型プログラミング データに何らかの処理を加えて、その連続で組み立てていくもの。 関数型言語はここ…
ドメイン 値の取り得る範囲のこと。 Javaではテーブルのカラムの値をドメインと呼ぶ。
デザインパターン よく使われる設計をパターン化したもの。 メリット プログラムの再利用がしやすくなる コードが読みやすくなる 有名なのがGoFデザインパターン。 GoFには23個のデザインパターンがある。 Builderパターン 様々なオブジェクトを作るためのパ…
そもそもHTTPとは WebクライアントとWebサーバーの送受信において使われる取り決めのこと。 リクエスト・レスポンスのルール。 Webアクセスの流れ ユーザーがURLを入力する HTTPリクエストが、サーバーに送られる サーバーがHTTPリクエストを読み取って要求…
あらかじめ要素数がわかっている定数の集合であるときにenumを使うといいらしい。 メリットはソースが読みやすくなる。 宣言方法 クラス修飾子 enum クラス名 { 列挙定数, 列挙定数, ... } 列挙定数は大文字で書く。 クラス修飾子は、piblic・private・stati…
cat ファイルを指定することで、そのファイルの中身を表示させる。 cat ファイル名 tail テキストファイルの末尾のn行を抜き出す。 tail -n 行数 ファイル名
origin レポジトリの場所の名前(別名) master デフォルトのブランチの名前 upstream ブランチの派生元 イマイチわかってないのでまた後で調べよー
JavaSE(=JDK) Java Platform Standard Edition (Java Development Kit)の略。 Javaの開発を実行に関する必要なプログラムがすべてまとめられている。 この中にJREも含まれている。 JRE Java Runtime Environmentの略。 Javaのプログラムを実行するために…
CriteriaAPIを呼び出すと、クエリオブジェクトを構築する方法で、JPQLで定義しされている文法と同じ内容のクエリを作成できる。 JPQLとは、JPAで使われるクエリ記述言語のこと。