4Dは、4D Server 1.0以来、ずっとチーム開発を支持してきました。同じソースコードで一緒に作業することの最大の利点は、チーム開発とチームテストの両方を可能にすることです。しかし、分散したチームにとっては、同じソースで作業することができないため、いくつかのデメリットが生じることがあります。
完全に書き直された4Dは、バイナリとプロジェクトの2つの方法でソースを扱えるようになりました。バイナリーは、私たちが知っている4Dで、ソースをバイナリーファイルにして、4D Serverでチーム開発ができるようにしたものです。プロジェクトは、ソースをプレーンテキストファイルでソースコントロールシステムに保存することで、分散したチームでの共同作業をより簡単にします。
より技術的に
つまり、バイナリソース(.4DBファイル)をプロジェクトフォルダ … 何千ものテキストファイルと一緒に変換することができるのです。すべてのメソッド、すべてのフォーム、すべてのフォームオブジェクトメソッド、メニュー、そしてもちろん構造そのものが、別々のテキストファイルとして保存されています。4Dは、以前と同じようにデザインモードで動作するため、あなたの開発作業には、完全に透明性があります。
さて、あなたは、”何千ものテキストファイルが、デプロイ時に一体どのように役に立つのだろう?” と疑問に思うかもしれません。 慌てないでください。デプロイメントのために、4Dは、以前と同じように、すべての作業を1つのファイルにコンパイルすることができます。
プロジェクトは、私の開発方法をどのように変えるのでしょうか?
全てのコードがテキストベースになったので、Git、Perforce、SVNなどのソースコントロールシステムにコミットするのが簡単になりました。また、単にコミットするだけでなく、リバースや他のブランチとのマージも可能です。このことは、4Dを使ったアプリケーションの開発方法に大きな影響を与えます。
一人のデベロッパーとして
ソース管理は、自分の作業のバックアップに使うだけでなく、新しい機能をテストし、うまくいかなかった場合にロールバックする方法としても使うことができます。そして、ここからが面白いのですが、ロールバックする復元ポイントを選択することができます(ファイルのフルバックアップの代わりに)。一言で言えば、プロジェクトによって、制御可能で、透明性が高く、メンテナンスが容易な方法で、機能の構築、テスト、マージが可能になるのです。
チームとして
チームが世界のどこにいても、最終的には各自の開発が共通のバージョンにマージされるため、全員が仕事をすることができます。ファイルやプロジェクトの最新バージョンがどこにあるのか、迷うことはありません。すべてはバージョン管理システムに一元化されています。
要するに…
もちろん、4Dはバイナリモード(4DB)をサポートし続けますが、もう1つのオプションがあります。4D Serverを使用してリモートの開発者を接続し同期させることもできますし、4D Developer Editionを使用してソースコントロールシステムを活用することもできます。
あなたのチームに最適なものを選択することができます。
期待すること
これは、Projectの最初の(ベータ)バージョンです。関連する機能は、4D v17 R5 Betaからすぐにパートナーに展開される予定です。他の機能は、R-リリースにのみ含まれます(完全にテストされ、生産可能であるとみなされた後)とは対照的に、プロジェクトはまだ開発中で、テスト目的のみです。100%完全でバグがないわけではないので、まだ本番で使用するべきではありません。とはいえ、皆さんのフィードバックは今まで以上に必要です。
テストは、4D v17 R6 Betaで継続されます。これからの6ヶ月のテストと皆さんの協力で、4D v18は4Dの歴史に残るものになるでしょう。