ColdFusion

ColdFusionは、ソフトウェア全般（特に動的ウェブサイト）の開発に使われるアプリケーションフレームワークであり、アプリケーションサーバである。Webサイト開発フレームワークという意味では、ASP.NETやJakarta EE（旧・Java EE）などの製品と同等である。
概要.
ColdFusionの第一の機能はそのマークアップ言語 ColdFusion Markup Language (CFML) であり、スクリプト言語 と一緒に使われる。CFMLは文法的にはHTMLに似ており、JSP、C#、PHPに比肩する。ColdFusionとCFMLは同一視されることが多いが、ColdFusion以外にもCFMLを採用したアプリケーションサーバは存在する。ColdFusionは以外のプログラミング言語もサポートしている（サーバサイドActionScriptなど）。
元々の開発会社はAllaireだが、2001年にマクロメディアに買収され、2005年にはマクロメディアごとアドビシステムズ（現・アドビ）に買収された。
ColdFusion はデータ駆動型のウェブサイトやイントラネットに使われることが多い。あるいはJakarta EEの上位層としてColdFusionを活用したり、サービス指向アーキテクチャ (SOA) のミドルウェアとして活用したり、SOAP やRESTfulなWebサービス生成、Flashリモーティングといった使い方がある。
ColdFusion は他にも次のような付加価値サービスを提供する。
バージョン.
Cold Fusion 1.0.
1995年、JJ Allaire という個人がほぼ1人で開発した最初の ColdFusion（当初の名称は Cold Fusion）がリリースされた（Allaire Corporation より）。非常に基本的なシステムであり、データベースアクセス以上の機能はほとんど備わっていなかった。
Cold Fusion 3.1.
バージョン 3.1 からサン・マイクロシステムズの Solaris に ColdFusion を移植した（日本語版は4.0Jより）。あわせて Allaire HomeSite をベースとした ColdFusion 専用開発エディタとして ColdFusion Studioをリリースし（日本語版は4.5Jより）、HTMLシンタックスチェックとライブページプレビュー・デバッギング機能を実装した。
ColdFusion 4.
このバージョンより日本語版がリリースされる。また、それまで製品名が"Cold Fusion"だったのを"ColdFusion"に変更した（常温核融合という一般の用語と製品名とを区別するためだと思われる）。このバージョンから、エンタープライズレベルのデータベースへのネイティブ接続やロードバランシングなど、より大規模なWebアプリケーションの動作に向けた Enterprise 版が投入された。
ColdFusion 4.5.
バージョン4.5では、Javaオブジェクトの呼び出しや、OSのシステムコマンドの実行、Java EEサーバとの連携を行う機能が実装された。また、ColdFusion Server 4.5 for Linux 英語版が新たにリリース。Linux用は英語版のみの提供だったが、日本語に対応しないタグ・関数を補うカスタムタグ集「CFTagPac-L」がリリースされ、ColdFusion Server 4.5 for Linux 英語版とバンドルされる形で国内向けにリリースされた。開発は、株式会社ワイスリー（現・デフィデ株式会社）。
ColdFusion 5.
2001年1月16日、Allaire はマクロメディアとの合併を発表した。マクロメディアとの合併後も製品開発を続け、マクロメディアから最初のリリースとなるColdFusion5.0を2001年6月に発売した。このバージョンまでの ColdFusion は Microsoft Visual C++ を使って書かれていたため、特定のOSごとにコーディングが行われた最後のバージョンでもある。
バージョン 5では、ユーザー定義関数やクエリ結果に対するクエリ（クエリ・オブ・クエリ）、グラフ機能などの新機能が追加されたほか、メモリ管理の最適化やマルチプロセスサポートなどパフォーマンスの向上も行われた。
ColdFusion MX (6).
2000年になる前に、Allaireは ColdFusionをJavaで書き直すプロジェクト（コードネーム "Neo"）を開始。のちにこのプロジェクトはColdFusion Serverを完全にJavaを使用する形にリファクタリングされることが明らかになった。ColdFusionがJavaランタイム環境の内部で実行されることにより、プラットフォームごとの移植性が容易になりサポートOSが格段に広がるとともに、セキュリティも向上した。
2002年6月にマクロメディアはバージョン6.0をリリースした。マクロメディアの製品名の体系に合わせて Macromedia ColdFusion MX としてリリースされた、Java EEベースの製品の最初のバージョンであり、JSPやASP.NETのようにバイトコードにコンパイルされるようになった。JSP のように、.class ファイルにコンパイルされるとそれがキャッシュされ、ソースが変更されるまで保持される。Macromedia Flashとも連携できるよう設計されていた。
ColdFusion MX のリリースと共に、CFML もオブジェクト指向プログラミングをサポートするよう拡張された。タグベースの CFML 文法とは別に、CFScript と呼ばれる JavaScript風の埋め込み型スクリプト言語もサポートしている。
2003年8月には、ColdFusion MXのメンテナンスアップグレードの位置づけとして ColdFusion MX 6.1 がリリース。
ColdFusion MX 7.
2005年2月7日、ColdFusion7.0（正式名は Macromedia ColdFusion MX 7）がリリースされた。 CFMX7は、Macromedia Flex 1.5のエンジンを内包し、Flashベースのフォームが出力できるようになった。また、既存のHTMLベースのフォームの機能拡張、及び、XFormsのサポートなど、Webフォーム機能が充実した。また、フリーのレポートツールであるReport builderも提供され、Adobe PDF、FlashPaperなどの出力に対応した。また、任意のHTMLページをPDF形式に変換して高品質な印刷可能文書にする機能もある。Enterprise 版ではGateways機能も追加された。これにより、HTTP以外のサービス要求も扱えるようになった（IMサービス、SMS、ディレクトリウォッチャーなど）。XMLサポートも強化され、このバージョンではネイティブスキーマのチェックなどが行える。
後にリリースされたColdFusion MX 7.0.2（コードネーム "Mystic"）は、Adobe Flex 2との連携を行うための機能が備わっている。
Adobe ColdFusion 8.
2007年7月30日（日本語版は9月21日）に、アドビシステムズはColdFusion 8（コードネーム "Scorpio"）をリリースした。事前に公開されたベータ版では、アドビの予想である5000名を超える世界中の14,000名以上のデベロッパーがベータテストを行った。この頃のColdFusionの開発チームは、ニュートン/ボストン、バンガロール、インドのマサチューセッツ州といくつかのオフショアからなりたっていた。
新機能の一部には、Adobe Acrobatフォームとの統合を行えるcfpdfformタグ、画像操作機能、.NET Frameworkとの連携、およびAdobe Acrobat Connectでも用いられているWebベースのプレゼンテーション機能であるcfpresentationタグなどがある。加えて、Enterprise版にはColdFusionサーバ内部の監視を行うサーバモニター機能が追加された。ColdFusion 8は、Linux、Mac OS XおよびWindows Server 2003を始めとした複数のオペレーティングシステムをサポートしている。
その他のColdFusion 8新機能としては、ビルトインAjaxウィジェット、ファイルのアーカイブ操作 (CFZIP)、Microsoft Exchangeサーバ統合（CFEXCHANGE）、画像認証で用いられるcaptchaの生成 (CFIMAGE)、ページ処理中に別のスレッドをマルチで生成、AtomとRSSフィードの読み込み、従来の機能も拡張され、強力な暗号化ライブラリ、配列および構造体の改良、データベースドライバの改善、MX 7と比較しての大規模なパフォーマンスの向上、PDF操作およびマージ機能 (CFPDF)、インタラクティブなデバッグ機能、組み込みデータベースのApache Derbyのサポート、さらには、一部のタグ・関数についてはECMAScript準拠の記述にも対応した。
また、ColdFusionアプリケーションの開発のための、いくつかの開発ツールにも対応した。主にAdobe Dreamweaver CS4、Macromedia HomeSite 5.x、CFEclipse、Eclipseなどである。一部のエディタでは、ColdFusion8で追加されたタグ・関数をサポートするためにアップデータ (Extension) が提供された。
Adobe ColdFusion 9.
ColdFusion 9（コードネーム "Centaur"）は2009年10月5日（日本語版は11月4日）にリリースされた。CF9の新機能は次のとおりである。
ColdFusion 9.0.2は2012年6月1日にリリースされた。ColdFusion 9.0.2はフルインストーラーのみの提供であり、ColdFusion 9.0.0や9.0.1からのアップデータモジュールは提供されていない。ColdFusion 9.0.2はColdFusion 9.0.1に累積ホットフィックスと2012年6月までに公開されたセキュリティホットフィックスが含まれたものであるが、全文検索エンジンのVerityは含まれていない。また、ColdFusion 9.0.2の公開にともない、ColdFusion 9.0.0の公開は終了した。
Adobe ColdFusion 10.
ColdFusion 10は、Adobe MAX2010で開発中であることが確認された。次期ColdFusionバージョン（コードネーム "Zeus"）は、ブログやTwitterなどで、ColdFusion Xとも呼ばれ、当時のColdFusionプロダクトマネージャーである Adam Lehman によって、米国内の顧客や開発者、ユーザーグループなどと数え切れないほどのミーティングを設定し、次期バージョンに追加する機能などの青写真を策定した。2010年9月にアドビの経営上層部による完全なサポートと承認を与えられた。Adobe MAX2011にて次期ColdFusionバージョン"Zeus"に関するセッションが行われ、2012年2月16日にColdFusion 10のベータ版が公開され、2012年5月15日に ColdFusion 10 International English版・日本語版が同時リリースされた（日本時間では時差の関係で2012年5月16日）。
ColdFusion10の新機能は次のとおりである。
尚、2013年3月6日に、Windows 8、Windows Server 2012 ＋ IIS 8 をサポートする新しいColdFusion10インストーラーが公開された。新しいインストーラーは、アドビのColdFusion10製品ページより体験版をダウンロードすることで入手できる。
Adobe ColdFusion 11.
ColdFusion 11は、次期ColdFusionバージョン（コードネーム "Splendor"）として2013年10月24日・25日にアメリカのラスベガスで開催されたColdFusion Summit2013の中で正式に発表が行われ、新機能に関する情報が数多く紹介された。国内では2013年12月10日に東京で開催されたColdFusion Day 2013イベントで紹介された。2014年2月20日にColdFusion Splendorのパブリック・ベータ版が公開され、2014年4月29日にColdFusion 11のリリースがアナウンスされた（日本は祝日のため2014年4月30日）。
ColdFusion 11の新機能は次のとおりである。
尚、2014年12月11日に、同梱のJREを1.7から1.8 (1.8.0_25) に変更し、最新の Update 3 も含む新しいColdFusion11インストーラーが公開された。ただし、このインストーラーを利用した際、インストール時に日本語ロケールを認識できずに英語版としてインストールされてしまう問題と、J2EE（現・Jakarta EE）セッション変数を有効にした際の問題が確認されたため、2015年1月21日に修正版の新インストーラーが公開された。該当ユーザーは、製品版、または、体験版を再ダウンロードすることで新しいインストーラーを入手できる。
Adobe ColdFusion 2016 (12.0).
ColdFusion 2016 (12.0)は、2015年にコードネーム "Raijin（雷神）"として発表され、2015年11月9日・10日にラスベガスで開催されたColdFusion Summit 2015で新機能に関する情報が数多く紹介された。その後、日本でも2015年11月20日に東京で開催されたColdFusion Day 2015イベントでも紹介された。日本時間2016年2月16日の夜にメーカーの公式ブログでColdFusion 2016のリリースに関する投稿が行われ、同日深夜に米国Adobe Systems社のニュースリリースで発表された。翌17日に日本での販売が開始された。
ColdFusion 2016 リリース (12.0) の新機能は次のとおり
2016年12月14日に、最新のUpdate 3を含み、同梱のServer JRE 1.8.0_112にリビジョンアップした新しいColdFusion2016インストーラーが公開された。このインストーラーには、Enterprise版で利用可能な APIマネージャーのインストーラーと、古いライブラリ (Portlets, YUI, Spry) は同梱されなくなり、必要に応じて別途ダウンロードを行う必要がある。
2017年4月28日に、Windows Server 2016をサポートする新しいColdFusion2016インストーラーが公開された。このインストーラーは上記と同様にUpdate 3を含み、 Enterprise版で利用可能な APIマネージャーのインストーラーと、古いライブラリ (Portlets, YUI, Spry) は同梱されなくなっている。
Adobe ColdFusion 2018 リリース (13.0).
ColdFusion 2018 リリース (13.0)は、Aetherというコードネームで開発が進められ、2018年7月12日にリリースされた。
ColdFusion 2018 リリース (13.0) の新機能は次のとおり
2019年2月12日に、Update 2を含み、同梱のJVMを 11.0.01に変更した新しいColdFusion2018インストーラーが公開された。このインストーラー（及び Update 2）に合わせてExtJSなどのライブラリもバージョンアップされた。
Adobe ColdFusion 2021 リリース (14.0).
ColdFusion 2021 リリース (14.0)は、Project Stratus というコードネームで開発が進められ、2020年11月11日にリリースされた。
ColdFusion 2021 リリース (14.0) の新機能は次のとおり
2021年9月15日に、Update 2を含み、同梱のJVMを 11.0.11に変更した新しいColdFusion2021インストーラーが公開された。
Adobe ColdFusion 2023 リリース (15.0).
ColdFusion 2023 リリース (15.0)は、Fortuna というコードネームで開発が進められ、2023年5月17日にリリースされた。
ColdFusion 2023 リリース (15.0) の新機能は次のとおり
Adobe ColdFusion Builder.
Adobe ColdFusion Builderは、Eclipseベースの総合開発環境であり ColdFusionアプリケーションを構築するための開発エディタである。開発時のコードネームは "Bolt"。
Adobe ColdFusion Builder 1.0.
ColdFusion Builderは、2010年3月22日にAdobe Flash Builder 4 とともに発売が開始された。
主な機能:
Adobe ColdFusion Builder 2.0.
ColdFusion Builder 2.0（コードネーム "Storm"）は、Adobe MAX 2010で発表された。主な機能として、コードナビゲーションの改良、検索機能の強化、コードフォーマットの改良など。2011年5月3日にリリースされた。
新機能:
Adobe ColdFusion Builder 2.0 Updater 1.
ColdFusion Builder 2.0 Updater 1（コードネーム "Twister"）は、ColdFusion 10のリリースと同日の2012年5月16日に発表と同時に発売が開始された。
主な強化として、
Adobe ColdFusion Builder 3.
ColdFusion Builder 3 は、次期 ColdFusion Splendor（コードネーム） のパブリックベータ版と同時に公開されたColdFusion専用エディタThundor（コードネーム）である。今回のバージョンでは、ColdFusion 11の新機能であるモバイル開発機能向けの機能強化が行われており、デバッグやリモートテスト機能の他、PhoneGap Buildと連携して、モバイルアプリ向けのパッケージの作成の操作を行うことができる。
Adobe ColdFusion Builder 2016 (3.1).
ColdFusion Builder 2016 (3.1) は、ColdFusion 2016 (12.0)と同日にリリースされたColdFusion専用のIDEである。ColdFusion 2016 (12.0)で追加されたタグ・関数のシンタックスに対応したほか、ColdFusion 2016 (12.0) Enterprise Editionと連携する事で、コードレベルでのセキュリティ安全性のチェックを行うことができる。
Adobe ColdFusion Builder 2018 (3.2).
ColdFusion Builder 2018 (3.2) は、ColdFusion 2018 (13.0)と同日にリリースされたColdFusion専用のIDEである。ColdFusion 2018 (13.0)で追加されたタグ・関数のシンタックスに対応したほか、ColdFusion 2018から追加されたパフォーマンス管理ツールセットのコードプロファイラのデータと登録したColdFusionプレジェクトを連携して測定データをチェックすることができる。
Adobe ColdFusion Builder 拡張機能 for Visual Studio Code.
新たにMicrosoftが開発しているソースコードエディタであるVisual Studio Code（VS Code）の拡張機能として、2022年7月29日より提供を開始した。これまでのColdFusion Builderと異なり、無償の拡張機能として提供されている。従来のColdFusion Builderと同じ機能を実装しており、最新のColdFusion 2023リリース、2021リリースもサポートする。
代替サーバ環境.
ColdFusion は Web技術の業界標準に基づいた独自技術に発している。しかし、CFMLをサポートする他の製品もあるため、それほど閉じた技術にはなっていない。代表的な製品としては、Lucee、Railo、OPENBD、BlueDragon などがある。
ColdFusion はある意味で Jakarta EE や .NET よりもプラットフォーム依存性が低いとも言われる。なぜなら、CFML は .NET のサーバ上 (New Atlanta) でも動作するし、Jakarta EEサーバ上（JRun、WebSphere、JBoss、Apache Geronimo、Apache Tomcat、Resin、Jetty など）でも動作する。理論上、ColdFusion アプリケーションは変更なしで Jakarta EEサーバから .NETサーバに移行できる。
これら代替サーバ環境は、ColdFusion の最新の機能をサポートするには時間がかかることに注意されたい。