この記事の目的
調べものするたびに何だったっけ?ってなる用語の意味や参考リンクをまとめます。用語検索の効率化用。
インタプリタ方式とコンパイル方式
インタプリタ方式
命令を一つずつ実行する方式。Pythonはこっち。実行結果がすぐに出力されるのでお手軽かつわかりやすい。また、実行環境にあったインタプリタを使うことで、OSやCPUなどが異なる実行環境に対応できる。デメリットは速度。特にfor文などで繰り返しの処理を行うときに遅くなる。
コンパイル方式
ソースプログラムから実行ファイルを生成する方式。C言語など。インタプリタ方式に比べて速い。コンパイルしないと実行できないので人手間かかることと、実行ファイルが環境に依存することがデメリットとして挙げられる。
スクリプト言語
比較的簡単に使えるプログラミング言語のこと。Pythonもこのカテゴリに入る。他にはJavascriptやRubyが挙げられる。
その多くがインタプリタ方式の言語なので、用語として混同されることが多いが、スクリプト言語=インタプリタ方式という定義はない。
静的型付けと動的型付け
静的型付け
変数や引数、返り値に対してどの型かを宣言しておく方式。型の整合性チェックを実行時には行わないので実行速度にメリットあり。逆に言うとプログラムを書くときに型の整合性を理解しておく必要がある。C言語やJavaなど。
動的型付け
実行時に自動的に型を判別する方式。Pythonはこっち。インタプリタ方式の言語に採用されている。実行ごとに型の整合性をとるので速度は遅くなる。プログラムを書くときには型をあまり意識しなくて良いので、学習コストが低く、記述量も減らせる。
リテラル
編集中
浅いコピーと深いコピー
編集中
シーケンス型
編集中
イテレート
編集中
リポジトリ
Gitなどでファイルやディレクトリの状態を記録する場所。
変更履歴などを管理する場所。共有のためのリモートリポジトリとローカルPCで作業するためのローカルリポジトリがある。
参考:サルGit