気象会社の Web 開発者としての仕事中に、私たちは同じタスクに何度も直面しています。どこか (FTP/Web/ディレクトリ/メール) からいくつかのファイルを取得し、含まれているデータをデータベースにインポートします。
もちろん、ファイル形式は決して同じではありません。データベースは常に異なって設計されており、無数の特殊なケースを処理する必要があります。
だから今、私はまさにこの種の作業のためのインポートフレームワークを計画しています. 私たちは経験豊富な PHP 開発者であり、現在のスクリプトは PHP または Perl のいずれかであるため、スクリプト言語として PHP を使い続けることにします。
- データ ゲッターは、ソースからファイルを取得して開き、内容を文字列変数に格納します。(心配しないでください。PHP は十分なメモリを取得します。)
- データ ハンドラーは、文字列をある種の配列に変換する複雑な作業を行います。
- 配列はデータベースに保存されるか、新しいファイルに書き込まれます。
この機能に加えて、いくつかの一般的なエラー処理、ログの書き込み、および電子メールの報告があります。
アイデアは、クラスのコレクションを使用することです (いくつかの getter クラス、多くの特殊なハンドラー、いくつかのライター クラス)。
私の質問:これらのクラスを作業スクリプトで実際に整理するにはどうすればよいですか? 解釈され、それに応じてクラスが呼び出されるある種のメタ言語を発明しますか? それとも、これらのクラスが実装しなければならないいくつかの単純なインターフェースを提供するだけで、私のユーザー (私が言ったように: 経験豊富な PHP 開発者) は、これらのクラスをロードする小さな PHP スクリプトを作成しますか?
2 番目のバージョンは、ほぼ確実に最大の柔軟性と拡張性を提供します。
そのような取り組みに関して他に何か考えはありますか。