[小ネタ]もう間違えない!エイリアスとプレフィックスの違い
はじめに
こんにちは!AWS事業本部コンサルティングの和田響です。
突然ですが、私は入社して5ヶ月が経ち、最近になって会社に和田さんが多いことを知りました。
ある和田さんには「そろそろエイリアスを決めないとね!」と言われ、また別の和田さんには「プレフィックスがないと分かりにくよねぇ〜」と声をかけられます。
IT経験が短い私はなんとなく会釈をしていましたが、正直両者の違いがわかっておりませんでした。
この記事ではエイリアスとプレフィックスの違いを完全に理解し、次に入社する和田さんが私と同じような悩みをもたいないようにすることをゴールとします。
軽い気持ちで流し読みしていただければと思います。
先にまとめ
- 別の意味を与えるのがエイリアス
- 先頭文字に意味を持たせるのがプレフィックス
エイリアス
エイリアスとは
エイリアス(alias)とは、偽名、別名、通称などの意味を持つ英単語。ITの分野では、ある対象や実体を、複数の異なるシンボルや識別子で同じように参照できるする仕組みを指す。
一般的にはエイリアスをつけるとは「違う名前をつけること」と考えてよさそうです。
使われ方
IT業界では至るところでエイリアスという言葉が使われているようなので、代表的なものをまとめました。
コマンドエイリアス
シェルやコマンドラインインターフェースで使用される、あるコマンドの短縮形や代替名のことです。
Linuxでは以下のコマンドを実行することで、ls -l
というコマンドに ll
という別名を与えることができます。(LPIC-1で勉強しましたね)
alias ll='ls -l'
ファイルやフォルダのエイリアス
ファイルシステムにおいて、特定のファイルやディレクトリへのショートカットやリンクとして機能します。Windowsでは「ショートカット」と呼ばれ、macOSでは「エイリアス」と呼ばれます。これにより、ユーザーは元の場所に移動することなく、異なる場所からファイルやフォルダにアクセスすることができます。
メールエイリアス
メールアドレスの代わりに使われる別のメールアドレスのことで、実際のメールアドレスにメールを転送する役割を持ちます。これにより、ユーザーは複数のメールアドレスを持ちながら、実際は一つのメールアカウントでメールを管理することができます。
プログラミングにおけるエイリアス
プログラミング言語において、特定のデータ型や関数に対して短い名前や別の名前を割り当てることをエイリアスと呼びます。これにより、コードの可読性が向上したり、より簡単にコードを記述することができます。
以下の例では、react
パッケージからComponent
をReactComponent
としてインポートしています。
import { Component as ReactComponent } from 'react'; class MyComponent extends ReactComponent { // ... }
いずれも「別名や別の意味を与える」といった使われ方をしていますが、使われる場所は様々ですね。(非常に便利な言葉です)
プレフィックス
プレフィックスとは
プレフィックス(prefix)とは、接頭辞、前につける、などの意味を持つ英単語。“prefix” の “pre” (「前」「先」などの意)のように、単語の先頭に付加して特定の意味を付け加える要素(接辞)のこと。
使われ方
プレフィックスという言葉もIT業界で働くようになってからよく耳にします。
代表的な使われ方をまとめてみます。
言語学
言語学では、プレフィックスは単語の前につけられる接頭辞で、単語の意味を変えたり、修飾したりします。
例えばhappy
という英単語は幸せを意味しますが、un
というプレフィックスを与えたunhappy
という英単語は不幸を意味する(happyを否定する)ようになります。
通信
電話番号において、国番号や地域コードなどの番号の前につけられる数字の羅列もプレフィックスと呼ばれます。例えば、日本の国番号(プレフィックス)は "+81" です。
プログラミング
変数や関数の名前の先頭にプレフィックスをつけることで、そのスコープや型、目的などの情報を示すことがあります。
以下の例では、関数名にget
というプレフィックスを与えることで、関数の中身が何か(今回だとFullName)を「取得する」という処理であることをわかりやすくする効果があります。
const person = { firstName: 'John', lastName: 'Doe', getFullName: function() { return `${this.firstName} ${this.lastName}`; } }; console.log(person.getFullName()); // "John Doe"
コンピュータネットワーク
コンピュータネットワークにおいてプレフィックスは、特にIPアドレスに関連して使用される用語で、ネットワークのアドレス部分を指定するために使われます。IPアドレスには、ネットワーク部とホスト部があり、プレフィックスはそのネットワーク部の長さを示します。
CIDR(Classless Inter-Domain Routing)表記では、プレフィックス長をスラッシュ(/)に続けて記述します。例えば、192.168.1.0/24
という表記は、最初の24ビットがネットワークアドレス部分(プレフィックス)であり、残りの8ビットがそのネットワーク内の個々のホストを識別するために使用されることを意味します。
ちなみにプレフィックスと反対の意味のサフィックスという言葉も存在しますが、今のところ日常会話で「サフィックスをつけよう!」となったことはありません。
サフィックス(suffix)とは、接尾辞、末尾に付け加える、などの意味を持つ英単語。対義語は「プリフィックス」(prefix:接頭辞、前に付ける)。
まとめ
一言でまとめると以下になります。
- 別の意味を与えるのがエイリアス
- 先頭文字に意味を持たせるのがプレフィックス
和田響にエイリアスをつけるというのは「ワディ」「ワダル」といったあだ名をつけることを意味し、プレフィックスをつけるというのは「筋トレの和田さん」「テニスの和田さん」のような枕詞をつけることと捉えてよいでしょう。
最後に
聞いたことあるからなんとなく意味がわかるにレベルアップさせることは大切なことだと思いました。
知っている方からすれば「何を今さら?」という内容だったと思いますが、最後までお付き合いいただきありがとうございました。