ホームページ >バックエンド開発 >PHPチュートリアル >PHP フレームワーク CodeIgniter 4 の新バージョンの開発ロードマップは何ですか?

PHP フレームワーク CodeIgniter 4 の新バージョンの開発ロードマップは何ですか?

WBOY
WBOYオリジナル
2016-06-17 08:31:441333ブラウズ

PHP コミュニティが成熟し、PHP 7 が正式にリリースされるにつれ、多くの人に愛されているフレームワーク CodeIgniter も大きな変更が必要な時期を迎えています。今日は次世代フレームワーク CodeIgniter 4 を紹介する記事をお届けします。

プレビューとして、CodeIgniter 4 を詳しく紹介する記事を今後も公開していきます。新世代フレームワークが異なる開発体験をもたらすことを願っています。

PS: 現時点では、CI4 は開発中であり、まだリリースされていません。

返信内容:

CodeIgniter 4 提案されたロードマップ

著者: Lonnie Ezell (CI Council Member)
翻訳: Hex
原文: CodeIgniter 4 提案されたロードマップ
元の記事は 2015 年 8 月 5 日に公開されました 現在、CI 4 は開発中であり、まだリリースされていません

*************。 ********* **分割線*******************

コミュニティの要望や意見を総合的に考慮した上で、私たちには将来に対する明確なビジョンもあり、CI がどこに最も適しているかについていくつかの検討が行われ、その後 CI 評議会がフレームワークの将来についていくつかの決定を下しました。プレビューとして、将来的には大きな変更が加えられる予定ですが、それらは将来への備えとなるだけでなく、CodeIgniter の一貫した特性であるシンプルさ、スピード、柔軟性も維持されると考えています。


この記事は将来についての簡単な概要です。これは単なる初期計画であることに注意してください。開発の進行に伴い、情報は変更される可能性があります。


コアの変更

CodeIgniter の最初のバージョンがリリースされて以来、PHP コミュニティは劇的に変化しました。 CodeIgniter のコア要素の多くは当時必要でしたが、PHP5 がリリースされたとき、CodeIgniter のコアはほとんど何も変更されませんでした。 CodeIgniter が今後も高いレベルでパフォーマンスを維持し、PHP フレームワークの中での地位を確立したい場合は、大きな変更が必要です。


これは、システムを完全に書き直す必要があることを意味します。コードの明瞭さを維持するために、新しい CI は別のコード ベースで開発されます。以前のコードの一部を再利用しますが、最新の明確なコードに重点を置くことを想定しています。


PHP 7 をターゲットにして以来、PHP 5.6 はセキュリティ保守モードに入り、数か月以内に完全に廃止される予定です。 CI は、サポートが終了する PHP バージョンの新しいバージョンをリリースしません。ホスト環境は大きく異なり、一部のプログラムは PHP 7 を完全にはサポートしていない可能性があるため、3.x ブランチはしばらく維持されます。これは、3.x の終了後の 2.x ブランチの EOL 期間よりもはるかに長くなります。解放されました。


アプリケーション ディレクトリとシステム ディレクトリの両方が PSR-4 自動ロードをサポートします。 CodeIgniter は独自のオートローダーを使用し、Composer と統合します。


ほとんどの場合、CodeIgniter 以外のプロジェクトで使用できるように、いくつかのコンポーネントをカプセル化します。


パッケージ/モジュール

アプリケーションのパッケージとモジュールの概念を捨てます。パニックになる必要はありません。なぜなら、少なくともコントローラーとモデルに関しては、名前空間を使用してほとんどの状況に対処できるからです。ビュー、構成ファイル、ヘルパーなどのその他のものも、名前空間をサポートできるようにできると考えています。また、オートローダーにそれらの検索方法を指示することで、すべてのパッケージ機能とモジュール ルーティング機能を任意のディレクトリに配置することもできます。


ルーティング

ルーティング機能が更新されます。 URI をコントローラー/メソッドに直接マッピングする「マジック ルーティング」機能をオフにして、好みのルーティング方法を選択できるようにすることができます。ルーティング設定ファイルでは、「マジック ルーティング」を使用するか、各ルートを個別に指定するかを選択できます。


ロギングシステムの改善

ロギングシステムは改善される予定ですが、具体的な内容はまだ決まっていません。


テスト

テストには引き続き PHPUnit を使用します。これは、アプリケーションを自分でテストする必要があることも意味しますが、必要なツールは提供されます。


下位互換性

上で述べたように、これは古いバージョンと互換性のないバージョンである必要があります。私たちは、これがこのフレームワークにとって最良の未来であるべきだと考えています。私たちは長年にわたってこの大きな変更の基礎を築いてきました。移行をできるだけスムーズに行えるよう努めますが、提供できるコード ベースがどの程度最新化されるかはまだわかりません。


私たちは、CodeIgniter を長年にわたって人気を博してきた機能、つまりスピード、シンプルさ、「エレガントさ」を維持するために最善を尽くします。


開発スケジュール

開発プロセス全体は 3 つのフェーズに分かれます。


次のクラス ライブラリはカーネルから削除され、オンデマンドでダウンロードされます: 植字クラス、FTP クラス、ZIP クラス、および XML-RPC クラス。


ショッピングカートクラス、JavaScriptクラス、単体テストクラス、トラックバッククラスが削除されます。


基本的なカーネルを備えたアルファ版を 1 年以内に完成させたいと考えています。その後、カーネルの改善と残りのパッケージの開発に焦点を当てます。ほとんどのオープンソース プロジェクトと同様、コミュニティの貢献の量と質、およびコア開発者の時間とエネルギーに依存するため、正確なスケジュールは異なる場合があります。


フェーズ 1

最初のフェーズでは、フレームワークの最も重要な部分を理解することに焦点を当てます。これがフレームワークの残りの部分の基礎になります。それらには次のものが含まれます:


  • オートローダー
  • 依存関係の挿入
  • ログ
  • 例外処理
  • HTTP リクエスト/レスポンス層 (または入力/出力)
  • ルート
  • コントローラ
  • モデル
  • データベース層
  • 構成
  • セキュリティ

第 2 フェーズ

第 2 フェーズは、CodeIgniter ユーザーが望むいくつかのクラスと機能の改善に焦点を当てています。


  • ヘルパー
  • 言語/国際化機能
  • キャッシュ
  • メール
  • 暗号化
  • フォーム検証
  • 画像処理クラス ライブラリ
  • ページング
  • アップロード クラス
  • セッション
  • ビュー
  • デバッグおよび分析ツール

第 3 フェーズ - オプションのクラス ライブラリ

第 3 フェーズは、主にオプションのソフトウェア パッケージを拡張するために使用されます。この時点で、すべてのライブラリの準備が整うのを待たずに、フレームワークをリリースする準備ができているはずです。


  • FTP
  • XML-RPC
  • Zip
  • 植字クラス
  • テンプレートパーサー

私たちは、フレームワークがもたらした新しい機会に興奮しており、フレームワークが新しいバージョンに向けて最初の一歩を踏み出すのを待ちきれません。傍観するのをやめて、フレームワークの未来を構築しましょう。


************************ 分割線*************** *********


CodeIgniter China WeChat 公式アカウントをフォローして、CodeIgniter 4 の最新記事を誰よりも早く読みましょう。

PHP フレームワーク CodeIgniter 4 の新バージョンの開発ロードマップは何ですか? Hex 中国人コミュニティのリーダーとして、私はそれを理解しており、あなたの努力に感謝しています。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。