検索
特集/連載

「宇宙船演算子」「破滅のピラミッド」とは? “謎のIT用語”の正体11個のクールな技術用語とスラング【第1回】

さまざまな独特の用語であふれているIT業界。その用語のうち「宇宙船演算子」「破滅のピラミッド」とは何かを解説する。

Share
Tweet
LINE
Hatena

関連キーワード

プログラマー | プログラミング


 IT業界には、独特の頭字語や略語があふれている。ソフトウェアエンジニアは、よく使用される記号や用語、文字の組み合わせに難解な名前を付け、IT分野に関する独自のスラングを作りがちだ。本連載は、ソフトウェアエンジニアが最初のソフトウェアプロジェクトに参加する前に知っておくべき、11個のクールな技術用語とスラングを紹介する。

用語1.宇宙船演算子

 開発者はしばしば2つの値を比較し、真か偽の結果を返す。もし比較が2つではなく3つの条件を生成できるとしたらどうだろうか。2つの数字を比較する場合に「宇宙船演算子」を使うと、左辺が右辺より大きいか、等しいか、小さいかという3つの条件を生成できる。2つの値を比較して、左辺が右辺より大きければ1、等しければ0、小さければ-1を返す。

 以下にプログラミング言語「Kotlin」で記載したソースコード例を示す。「System.out.println」は、かっこ内の結果を標準出力に出力する関数だ。

System.out.println( 2 <=> 1 ); // 1を出力する
System.out.println( 1 <=> 1 ); // 0を出力する
System.out.println( 1 <=> 2 ); // -1(左辺が右辺より小さい)を出力する

 宇宙船演算子はソースコードをより簡潔にし、後述する「破滅のピラミッド」(Pyramid of Doom)を回避するのに役立つ。

用語2.破滅のピラミッド

 破滅のピラミッドとは、条件文や繰り返し文を幾つも入れ込んだ構造のことだ。例えば以下の構造は、条件文である「if」を多重に入れ込んでいる。

if (doom == true) {
  if (gloom == true) {
    if (boom == true) {
      if (tomb == true) { }
    }
  }
}

 破滅のピラミッド内のロジックはメンテナンスが難しく、他の開発者が更新する際にエラーが起こりやすくなるため、回避することが望ましい。破滅のピラミッドは、さまざまな方法でリファクタリング(動作を変えないまま内部構造を修正すること)できる。具体的には宇宙船演算子を使ったり、後述の「Null条件演算子」を使ったりする方法がある。


 次回は、3つ目と4つ目の用語を紹介する。

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る