プロジェクトのアーキテクチャー
4D プロジェクトは、一つのプロジェクトルートフォルダー (パッケージフォルダー) に格納された、複数のファイルやフォルダーから構成されています。 例:
- MyPackage (project root folder)
Components
Data
ログ
Settings
ドキュメント
Plugins
Project
DerivedData
Sources
Trash
リソース
Settings
userPreferences.username
WebFolder
バイナリデータベースから変換されたプロジェクトの場合には、追加のフォルダーが存在している場合があります See "Converting databases to projects" on doc.4d.com.
Project
folder
典型的な Project フォルダーの構造です:
<applicationName>.4DProject
fileSources
Classes
DatabaseMethods
Methods
フォーム
TableForms
トリガー
DerivedData
Trash
(if any)
<applicationName>.4DProject
file
プロジェクトを定義し、起動するためのプロジェクト開発ファイルです。 このファイルを開くには次のいずれかが必要です:
- 4D
- 4D Server (read-only, see Opening a remote project)
4D プロジェクトの開発は 4D によっておこない、マルチユーザー開発はソース管理ツールによって管理します。 4D Server は .4DProject ファイルを開くことができますが、クライアントからの開発はおこなえません。
This text file can also contain configuration keys, in particular "tokenizedText": false
.
Sources
内容 | 説明 | 形式 |
---|---|---|
catalog.4DCatalog | テーブルおよびフィールド定義 | XML |
catalog_editor.json | ストラクチャーエディターでのテーブル、フィールド、およびリンクのカスタム位置と色。 Depends on a Compatibility setting in converted projects | JSON |
folders.json | エクスプローラーフォルダー定義 | JSON |
menus.json | メニュー定義 | JSON |
settings.4DSettings | Structure database settings. They are not taken into account if user settings or user settings for data are defined (see also Priority of settings. Warning: In compiled applications, structure settings are stored in the .4dz file (read-only). For deployment needs, it is necessary to enable and use user settings or user settings for data to define custom settings. | XML |
tips.json | 定義されたヘルプTips | JSON |
lists.json | 定義されたリスト | JSON |
filters.json | 定義されたフィルター | JSON |
dependencies.json | Names of components to load in the project | JSON |
styleSheets.css | CSS スタイルシート | CSS |
styleSheets_mac.css | Mac用 CSS スタイルシート (変換されたバイナリデータベースより) | CSS |
styleSheets_windows.css | Windows用 CSS スタイルシート (変換されたバイナリデータベースより) | CSS |
DatabaseMethods
内容 | 説明 | 形式 |
---|---|---|
databaseMethodName.4dm | プロジェクト内で定義されているデータベースメソッド (1つのデータベースメソッドにつき1ファイル)。 | text |
Methods
内容 | 説明 | 形式 |
---|---|---|
methodName.4dm | プロジェクト内で定義されているプロジェクトメソッド (1つのメソッドにつき1ファイル)。 | text |
Classes
内容 | 説明 | 形式 |
---|---|---|
className.4dm | 特定のオブジェクトをインスタンス化するための、ユーザークラス用の定義メソッド。 1クラスにつき1ファイル。ファイル名がクラス名になります。 | text |
フォーム
内容 | 説明 | 形式 |
---|---|---|
formName/form.4DForm | プロジェクトフォームの定義 | json |
formName/method.4dm | プロジェクトフォームメソッド | text |
formName/Images/pictureName | プロジェクトフォームのスタティックピクチャー | picture |
formName/ObjectMethods/objectName.4dm | オブジェクトメソッド (1つのオブジェクトメソッドにつき1ファイル) | text |
TableForms
内容 | 説明 | 形式 |
---|---|---|
n/Input/formName/form.4DForm | 入力テーブルフォームの定義 (n: テーブル番号) | json |
n/Input/formName/Images/pictureName | 入力テーブルフォームのスタティックピクチャー | picture |
n/Input/formName/method.4dm | 入力テーブルフォームのフォームメソッド | text |
n/Input/formName/ObjectMethods/objectName.4dm | 入力テーブルフォームのオブジェクトメソッド (1つのオブジェクトメソッドにつき1ファイル) | text |
n/Output/formName/form.4DForm | 出力テーブルフォーム (n: テーブル番号) | json |
n/Output/formName/Images/pictureName | 出力テーブルフォームのスタティックピクチャー | picture |
n/Output/formName/method.4dm | 出力テーブルフォームのフォームメソッド | text |
n/Output/formName/ObjectMethods/objectName.4dm | 出力テーブルフォームのオブジェクトメソッド (1つのオブジェクトメソッドにつき1ファイル) | text |
トリガー
内容 | 説明 | 形式 |
---|---|---|
table_n.4dm | プロジェクト内で定義されているトリガーメソッド ( 1つのテーブルにつき1ファイル;n: テーブル番号) | text |
Note: The .4dm file extension is a text-based file format, containing the code of a 4D method. ソース管理ツールに対応しています。
Trash
プロジェクトから削除されたメソッドやフォームがあれば、Trash フォルダーにはそれらが格納されます。 たとえば、つぎのフォルダーが格納されている場合があります:
Methods
フォーム
TableForms
削除された要素はファイル名に括弧が付いた形でフォルダー内に置かれます (例: "(myMethod).4dm")。 The folder organization is identical to the Sources folder.
DerivedData
DerivedData フォルダーには、処理を最適化するため 4D が内部的に使用するキャッシュデーターが格納されます。 これらは必要に応じて自動的に生成・再生成されます。 このフォルダーは無視してかまいません。
Libraries
このフォルダーは macOS でのみ使用されます。
The Librairies folder contains the file resulting from a compilation with the Silicon compiler on macOS.
リソース
Resources フォルダーには、追加のカスタムプロジェクトリソースファイルやフォルダーが格納されます。 アプリケーションインターフェースの翻訳やカスタマイズに必要なファイルはすべてここに格納します (ピクチャー、テキスト、XLIFF ファイルなど)。 4D は自動のメカニズムによってフォルダー内のファイル (とくに XLIFF ファイルおよびスタティックピクチャー) を扱います。 リモートモードにおいては、サーバーとすべてのクライアントマシン間でファイルを共有することが Resources フォルダーによって可能です See the 4D Server Reference Manual.
内容 | 説明 | 形式 |
---|---|---|
項目 | プロジェクトリソースファイルとフォルダー | 様々 |
Images/Library/item | ピクチャーライブラリの個別ピクチャーファイル(*)。 各アイテムの名称がファイル名となります。 名称が重複する場合には、名称に番号が追加されます。 | picture |
(*) .4db バイナリデータベースから変換されたプロジェクトの場合のみ
Data
Data フォルダーには、データファイルのほか、データに関わるするファイルやフォルダーがすべて格納されています。
内容 | 説明 | 形式 |
---|---|---|
data.4dd(*) | レコードとして入力されたデータと、レコードに属するデータが格納されたデータファイルです。 4D プロジェクトを開くと、アプリケーションはカレントデータファイルをデフォルトで開きます。 If you change the name or location of this file, the Open data file dialog box will then appear so that you can select the data file to use or create a new one | binary |
data.journal | データベースがログファイルを使用する場合のみ作成されます。 ログファイルは2つのバックアップ間のデータ保護を確実なものにするために使用されます。 データに対して実行されたすべての処理が、このファイルに順番に記録されます。 つまりデータに対して操作がおこなわれるたびに、データ上の処理 (操作の実行) とログファイル上の処理 (操作の記録) という 2つの処理が同時に発生します。 ログファイルはユーザーの処理を妨げたり遅くしたりすることなく、独立して構築されます。 データベースは 1つのログファイルしか同時に使用できません。 ログファイルにはレコードの追加・更新・削除やトランザクションなどの処理が記録されます。 ログファイルはデータベースが作成される際にデフォルトで生成されます。 | binary |
data.match | (内部用) テーブル番号に対応する UUID | XML |
(*) .4db バイナリデータベースからプロジェクトに変換した場合、データファイルは変換による影響を受けません。 このデータファイルの名称を変更して移動させることができます。
Settings
(user data)
This folder contains user settings for data used for application administration.
These settings take priority over user settings and structure settings. See also Priority of settings.
内容 | 説明 | 形式 |
---|---|---|
directory.json | このデータファイルを使ってアプリケーションが実行されている場合に使用する 4D グループとユーザー、およびアクセス権の定義 | JSON |
Backup.4DSettings | Database backup settings, used to set the backup options when the database is run with this data file. Keys concerning backup configuration are described in the 4D XML Keys Backup manual. | XML |
settings.4DSettings | データファイル用のカスタムデータベース設定。 | XML |
ログ
Logs フォルダーには、プロジェクトが使用するすべてのログファイルが格納されます。 以下のログファイルが格納されます:
- データベース変換
- Webサーバーリクエスト
- backup/restore activities journal (Backup Journal[xxx].txt, see Backup journal)
- コマンドデバッグ
- 4D Serverリクエスト (クライアントマシンおよびサーバー上で生成)
An additional Logs folder is available in the system user preferences folder (active 4D folder, see Get 4D folder command) for maintenance log files and in cases where data folder is read-only.
Settings
(user)
This folder contains user settings used for application administration.
These settings take priority over structure settings file. However, if user settings for data exist, they take priority over the user settings. See also Priority of settings.
内容 | 説明 | 形式 |
---|---|---|
directory.json | 4D グループとユーザー、およびアクセス権の定義 | JSON |
Backup.4DSettings | Database backup settings, used to set the backup options) when each backup is launched. This file can also be used to read or set additional options, such as the amount of information stored in the backup journal. Keys concerning backup configuration are described in the 4D XML Keys Backup manual. | XML |
BuildApp.4DSettings | Build settings file, created automatically when using the application builder dialog box or the BUILD APPLICATION command | XML |
settings.4DSettings | プロジェクト用のカスタム設定 (すべてのデータファイル) | XML |
logConfig.json | Custom log configuration file | json |
userPreferences.<userName>
ブレークポイントやウィンドウの位置など、ユーザーの環境設定を定義するファイルを格納するフォルダーです。 このフォルダーは無視してかまいません。 格納されるファイルの例です:
内容 | 説明 | 形式 |
---|---|---|
methodPreferences.json | カレントユーザーのコードエディター環境設定 | JSON |
methodWindowPositions.json | カレントユーザーのメソッドのウィンドウポジション | JSON |
formWindowPositions.json | カレントユーザーのフォームのウィンドウポジション | JSON |
workspace.json | 開かれているウィンドウのリスト;macOS ではタブウィンドウの順序 | JSON |
debuggerCatches.json | キャッチコマンドリスト | JSON |
recentTables.json | 最近開かれたテーブルのリスト | JSON |
preferences.4DPreferences | カレントデータパスおよび主なウィンドウの位置 | XML |
CompilerIntermediateFiles | Apple Silicon用にコンパイルした結果生成される中間ファイル | Folder |
Components
コンポーネントを格納する従来のフォルダー (Projectフォルダーと同じ階層に保存する必要があります)。
It is now recommended to use the dependencies.json and (optionnally) environment4d.json files to declare your components instead of the Components folder.
Plugins
アプリケーションプロジェクトが利用するプラグインを格納するフォルダーです。 このフォルダーは、Project フォルダーと同じ階層に置きます。
ドキュメント
このフォルダーには、クラス・メソッド・フォームなどのプロジェクト要素について作成されたドキュメンテーションファイル (.md) がすべて格納されます。 ドキュメンテーションファイルは、4D エクスプローラーにて表示・管理されます。
For more information, refer to Documenting a project.
WebFolder
ページ、ピクチャーなどのための、4D Web サーバーのデフォルトのルートフォルダー。 Web サーバーが初回起動時に、自動で作成されます。
.gitignore
file (optional)
git が無視するファイルを指定します。 You can include a gitignore file in your projects using the Create .gitignore file option on the General page of the preferences. To configure the contents of that file, see Create .gitignore
file.