85
60

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

EC-CUBE1系・2系・3系・4系の違い

Last updated at Posted at 2017-12-16

2K、3K って何??
どれを選んだらいいの??
という声をよく聞くので、まとめてみます。

EC-CUBE 0.9.x

2006年9月1日にリリースされたβバージョン。
PHP4系に対応。
リリース当初は、 FreeBSD, PostgreSQL のみに対応。
0.9.3 で MySQL 4.1 に対応。
0.9.6 で Windows, Linux に対応。
文字エンコーディングは EUC-JP だった。
この頃から改修され続け、現在も第一線で稼働し続けている伝説的なサイトもある模様。

EC-CUBE 1系

2007年2月14日にリリースされた正式リリースバージョン。
PHP4.x, 5.0.xに対応。
1.3.0 で、モバイル(ガラケー)対応。
1.4.0 あたりで、モジュール配信に対応。
当時は、CVS でバージョン管理され、情報は pukiwiki にまとめられていた。
HTML は、もちろんテーブルレイアウト。
最終バージョンは 1.4.5

1.3.4コミュニティ版

開発コミュニティからの要望を集約したバージョン。
UTF-8 対応、 Subversion でのバージョン管理、 Trac での課題管理が始まる。

EC-CUBE 2系

大きく分けて、 2.4以前、2.4系、2.11系、2.12系、2.13系、2.17系に分けられる。
2.4系〜2.13系は、ミドルバージョンが変わると、データベースも含め、大きく構成が変更されるため、バージョンアップの難易度が高い。

2.0.x

2007年12月4日に正式版リリース。

当初、 1.5 として開発されていたが、プログラムのクラス構成や、ディレクトリ構成が大きく変更された ため、2.0 となる。

UTF-8 対応、複数カテゴリ、 CSSレイアウトへの対応など。
EC-CUBEオーナーズストアがオープンし、有償の自動アップデートサービス(現在は廃止)などもあった。

2系のアーキテクチャは、このバージョンがベースとなっている。
EC-CUBE2系 ってオレオレフレームワークだから〜 っていう話をよく聞くが、当時は PHP4, 5 と MySQL, PostgreSQL に対応し、1系のデータベースを大きく変更せずに移行可能な良いフレームワークが無かったので、自分たちで作るしかなかった。

2.1.x

2008年4月10日にリリース。
商品カテゴリCSVアップロード/ダウンロードの対応、共有SSL対応など。
共有SSL は、非SSL領域とディレクトリ階層が異なる場合は対応していない。

2.2.x

2.3.x に向けてのベータ版。
ここだけバージョン番号がイレギュラー...

2.3.x

2008年10月1日にリリース。
変更点はこちら

2.4.x

2009年5月19日にリリース。
最終バージョンである 2.4.4 は2010年6月29日にリリースされてた。
バグフィックスを中心にしたバージョンであり、開発人口も増え、安定していたので、多くのサイトに採用された。

開発コミュニティ版

comu-ver2 ブランチ で開発が続けられていた。
ナイトリービルドもあり、本家より開発が活発だったため人気があった。
Seasoft さんの貢献が偉大。
管理画面が CSS レイアウトになっている(pinerayさんの貢献)

2.11.x

2011年3月23日にリリース。
東日本大震災に負けないよう日本を元気にしよう!ということでリリース。
PHP4 にも対応している。

開発コミュニティ版をベースとし、大幅にリファクタリングされた。
複数お届け先への発送に対応。
2.11.2 で、スマートフォン対応。
データベース構造も、 2.4 から大きく変更され、 MySQL でのパフォーマンスも改善した。
特に商品規格のデータ構造がツリー構造になっており、再帰クエリの使用可能なデータベースでは大量のデータでもパフォーマンス向上が期待できる。

詳しくは gihyo.jp の連載 を参照。

2.4.4 からのデータ移行モジュール有

2.12.x

2012年5月31日にリリース
プラグイン機能を目玉としたバージョン。
2.11.x の商品規格データ構造が複雑すぎるということで、 2.4系に近いかたちに変更された。
PHP4 のサポートは無くなり、 PHP5.1.6 以降に対応

2.11.x からのデータ移行モジュール有

2.13.x

2013年9月19日にリリース。
2014年4月の消費税増税に対応したバージョン。
PHP5.3.3〜PHP5.6.x に対応。

2.12.x からのデータ移行モジュールは無いが、 seasoft さんの公開している SQL で、データ変換可能。

3系がリリースされたが、カスタマイズに関する情報や、ノウハウも多く蓄積されており、EC-CUBEの開発経験豊富なベンダーに根強い人気がある。

2.17.x

2.13.5 を PHP7 に対応したバージョン
2019年10月29日リリース。

共有レンタルサーバーでもレイテンシ100msを切る驚異的なパフォーマンスを誇る。速いは正義!
3系、4系に先行して、一早くPHP7.4に対応。
フレームワークによるサポート期限の縛りが無いため、 EC-CUBEでは一番長くサポートされるバージョン となっている。3年以上保守したいサイトにも適している。
(RHEL8 と組み合わせれば2029年5月までのサポート。 RHEL8 の PHP は AppStreamのサポートサイクルに組込まれている)

PHP8にもマイナーバージョンアップで対応。

2.4系からのデータ移行プラグインあり

EC-CUBE 3.0系、 3.1系

2015年7月1日にリリース
Silex + Symfony フレームワークの採用、ソースコードも全面的に書き換えられた。
PHP5.3.9以降の対応

Subversion + Trac から、 github へ SCM を移行した。
開発の主力は次期バージョンに移っており、バグフィックス中心の開発が続けられている。

積極的に新機能を使いたい人、オレオレフレームワーク嫌な人向けのバージョン。

のぶろぐさんの移行プラグインあり。(会員データ商品データ受注データ)

Symfony 2.7 系を使用している。Symfony プロジェクトとしてのサポート期間は 2019年5月まで となっている
また、 Silex は 2018年6月に開発終了している。

EC-CUBE 公式としては継続してサポート予定。
3.0系は、 3.0.18 が最終バージョン。

EC-CUBE 4系、4.1系

2018年10月11日リリース。 Silex の開発中止となる関係上、 Silex を切り離して Symfony 3.4 ベースとなっている。
Symfony 3.4 のサポート期間は 2021年11月まで(約4年)となっているため、2021年9月21日に Symfony 4.4 に対応した4.1系をリリース。
PHP8には未対応。
PHP7.4のサポート期限が2022年11月に迫っており、その頃には PHP8 及び Symfony5系に対応するためにメジャーバージョンアップをすると思われる。
メジャーバージョンアップには、多くの工数がかかることが多いため、予め予算組みをしておいた方が良いだろう。

EC-CUBE 3.0.11以降のバージョン3系でも各種キャッシュを設定すれば、4.0と同等のパフォーマンスを出すことが可能。

EC-CUBE 4.2系

2022年9月27日リリース
Symfony5系及びPHP8に対応したバージョン。
4.1系との後方互換性は無くなるが、プラグインや Customize ディレクトリのプログラムはマイグレーションツールで変換できる。
インボイス制度に対応。バグバウンティ を開催し、多くのバグが修正された。

TODO

  • 機能比較表とかも作りたい
  • データ構造の比較表とかも作りたい
  • バージョンアップ時の互換リストとかも作りたい
    • 顧客データの移行は比較的容易だけど、パスワードの暗号化方法が変わってるから気をつけてねとか
85
60
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
85
60

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?