宣言的パラダイムに注目が集まっている。これは処理方法ではなく、対象の状態を宣言するコンピューティング手法のことであり、プログラミング効率/品質の飛躍的な向上や、大規模分散システムの低コスト運用を実現するものである。企業は、宣言的パラダイムの動向に注目し、有望なテクノロジに果敢に挑戦すべきである。
近年、コンピューティングの世界において、「宣言的(Declarative)」という言葉を散見するようになった。「宣言的」という言葉が利用される場面は、大きく分けて2つある。コンピューティング・パラダイムの意味と、プログラミング手法の意味である。本稿では、前者を中心に解説し、後者についても簡単に紹介する。
宣言的パラダイムとは、コンピューティングにおける考え方のひとつで、処理方法ではなく対象の状態を宣言することを意味している。「宣言的」の対義語は「命令的(Imperative)」である。一般的なコンピューティング・パラダイムでは、対象への処理を逐一命令するものであった。しかし、この考え方に基づくと、命令する前の対象の状態を認識したうえで命令を行う必要があった。これに対して宣言的パラダイムでは、対象の状態を気にすることなく、処理後の対象の状態を宣言するだけでよい。
図1に「命令的」と「宣言的」の違いを、部屋の照明を点灯するユースケースを用いて示した。「命令的」の場合、対象となる照明に対して、『今照明が点灯していないのであれば照明用の電源をONに変える、点灯している状態であれば電源はそのままにする』という命令を出す必要がある。命令を出す前に対象の状態を常に把握し、その状態によって異なる指令を出す。これに対し「宣言的」では、『照明が点灯している状態にする』という指令を出すだけでよく、対象の状態、つまり照明が点灯しているか否かを気にする必要はない。実際には、システム内部では命令的と同様の処理をしているかもしれないが、エンジニアがプログラミングする指令としては最終的な状態を記述するだけでよい。