Python勉強中に知った用語の備忘録

  Pythonを勉強する中で知った専門用語の意味をまとめておきます。これからもどんどん追加していく予定です。他の言語では意味が違う場合もあるので注意してください。

 長い記事になるのでWindowsの人はCtrl+F、Macの人はCommand+Fでキーワードを検索すると便利だと思います。

 

・アクセサ

オブジェクト内部の属性に外部からアクセスするために用意されたメソッド。属性を外部から直接参照させないために用意されている。

 

アーカイブ

消してはいけないデータを長期保存するために、専用の保存領域に安全にデータを保存すること。

 

・インターフェース

異なる種類のものを結びつける共有部分。プログラム同士の間でデータのやり取りをする際の形式。

 

・インデクシング

角括弧を伴った表記で要素を参照すること。

 

インタープリタ型言語(スクリプト言語)

PythonRubyJavascriptPHPPerlなどのコードを書いたらそのまま実行できる言語。

 

コンパイル型言語

CやC++Javaなどのコンパイルという手順を踏んで実行ファイルを生成してから実行する言語。コンパイルに時間と手間がかかる分実行が高速であることが特徴。

 

・エミュレート(emulate)

英単語の意味は「競う」と「真似る」があるが、 プログラミングでは真似るの意味で使われる。あるものの動作を真似て、代替として使えるようにすること。擬似的に別の装置の環境を再現することをエミュレーションという。

 

Unicodeエンコード(encode)

文字と数値を互いに変換するためのルール。Unicode 文字列はコードポイントという 0 から 0x10FFFF (10 進表記で 1,114,111) までの数値のシーケンスである。このシーケンスはメモリ上ではバイト (つまり 0 から 255 までの値) の集まりとして表される。Unicode 文字列をバイトのシーケンスとして翻訳することがエンコードでありその規則がエンコーディングである。一番使われるエンコーディングutf-8

 

・オーバーライド

スーパークラスで定義されたメソッドをサブクラスで定義し直し、動作を上書きすること。

 

・クエリ文字列(query string)

WebブラウザがWebサーバーに送信するデータをURLの最後に付け加えたもの。http://example.com/foo/var.php?name1=value1&name2=value2 の下線のところらしい(コピペしました)

 

クリップボード

コピーしたものを一時的に保存しておく場所。新たにコピーの操作を行ったりすると上書きされる。

 

・クローリング

Webページのハイパーリンクをたどって次々にWebページをダウンロードする作業。

 

スクレイピング

ダウンロードしたWebページから必要な情報を抜き出す作業。

 

コマンドライン引数

コマンドラインからプログラムを起動する時にプログラムに渡す値。

 

コンパイル

プログラミング言語で書かれた文字列(ソースコード)をコンピュータ上で実行可能な形式(オブジェクトコード)に変換すること。

 

インタプリタ

プログラミング言語で書かれたソースコードないし中間表現を逐次解釈しながら実行するプログラムのこと。

 

・シーケンス

配列やリストのように順番に処理するためのデータ構造。基本的なシーケンス型には文字列、リスト、タプル、rangeがある。

 

シンタックスシュガー(syntax sugar、糖衣構文)

複雑でわかりにくい書き方と全く同じ意味になるものを、よりシンプルでわかりやすい書き方で書くことができるもの。

 

・シンボルテーブル

プログラムのソースコード内の名前とその内容となるデータがセットになった情報のテーブル。

 

・セマンティクス

ソースコード中で利用されている変数や文が正しく動作するかを判断する基準のこと。

 

・コンテキストマネージャ

with文によって起動され、コードブロックを実行するために必要な入り口および出口の処理を扱うオブジェクト。

 

ハッシュ値

データが改変されていないことを確認するためにある整数値で、辞書を検索する際に辞書のキーを高速に比較するために使われる。

 

・パス名

ディスク上のファイルの場所を示す名前。

 

・フロントエンド

プロセスの最初の工程、つまりユーザーと直接やりとりする部分を指す。バックエンドとはフロントエンドの入力データや指示をもとに、処理を行って結果を出力したり、記録媒体に保存したりする部分であり、フロントエンドとバックエンドの結合部をインタフェースという。

 

・リダイレクト 

元々は「向きを変える」という意味の言葉で、Web ページ を訪れた ユーザー を自動的に別のWeb ページ へ転送すること またはコマンドの出力先を変えること(python関連で出てきたら大体こっちの意味)

 

・ルータ

データを2つ以上の異なるネットワーク間に中継する通信機器。

 

ワイルドカード

任意の文字列を指定する際に使用する特殊文字のこと。

 

・識別子

変数や関数などの名前(に使えるもの)。予約語(Pythonではkeywordとも呼ばれる)は識別子に使うことができない。Python3.3ではTrue,is,return,ifなどの33単語が予約語になっている。

 

・attr

attribute(属性)の略。pythonにはdelattr(属性の削除)、setattr(属性の作成)という組込関数がある。

 

API(application programing interface)

主にウェブサービスを利用する時に必要になる、コンピュータ同士が相互に連携するための仕組み。

 

・argc 

argument count(引数の個数)の略

 

・argv 

argument vector(引数の配列)の略

 

・stdin 

standard input(標準入力)の略

 

・stdout

standard output(標準出力)の略

 

・stderr

standard error(標準エラー)の略

 

・urllib

pythonの標準ライブラリ。URL+libraryという意味。

 

・smtplib

pythonの標準ライブラリ。Simple Mail Transfer Protocol(メールの送信の仕組み)+libraryという意味。

 

・parse(パース)

文法に従って構文を解析すること。

 

・serializing(シリアライズ)

標準モジュール jsonPython のデータ階層を取り、文字列表現に変換すること。(pyrthonの公式ドキュメントにはこう書いてありましたが一般的な意味は違うようなので注意してください)

 

・pointer(ポインタ)

変数の格納場所(アドレス)を指し示す変数

 

・refactoring(リファクタリング)

プログラムの外部から見た動作を変えずにソースコードの内部構造を整理すること

 

・**kwargs

キーワード指定の可変長引数のこと。おそらく由来はkeyword arguments。

 

・enumerate

数え上げるという意味。pythonの組込関数の一つ。

 

・foo

変数名の例をあげる時に最初に使われることが多い意味を持たない言葉。2番目はbar、3番目はbaz。

 

・prompt

動作を促すマークのこと。ターミナルで入力待ちの時に出ているマークが代表的な例。

 

I/O

input/outputの略。入出力のこと。

 

VM

virtual machineの略。仮想マシンのこと。

 

Apache

世界で一番人気なWebサーバーのソフトウェア。

 

basic認証

httpに元々用意されている認証(ログイン)機能。ウェブサイトへのアクセスを制限する方法の一つ。

 

・PaaS(パース、Platform as a Service)

Cloudサービス(インターネットに接続した状態で使うサービス)の一種で、サーバやOS、データベース、ネットワークなどをインターネット越しにできるようにするもの。

 

・heroku(ヘロク)

代表的なPaaS。アプリケーションを公開するのに必要な面倒な作業をやってくれるので人気がある。JavaRubyPythonも使える。

 

XML

文章の見た目や構造を記述するためのマークアップ言語の一種。HTMLやMarkdownの仲間。

 

XPath

XML文章中の要素、属性値などを指定するための言語。HTMLもXMLの一部とみなしてHTML中の要素を指定することができる。Pythonではクローリングをする時に使う。

 

Hadoop(ハドゥープ)

めちゃくちゃ大きいデータを分散させて処理するためのフレームワーク

 

HTTPステータスコード

HTTPにおいてWebサーバからのレスポンスの意味を表現する3桁の数字からなるコード。百の位が2なら成功、4なら失敗などの決まりがある。

 

・substring(サブストリング)

部分文字列のこと。文字列の中の一部を指すときにsubstringやsubと書いてあることが多い。

 

・delimiter(デリミタ)

区切り文字のこと。