本篇解答開發者常見的四個問題:

  • .per 與 .4fd 的差異是什麼?
  • 應該使用 .per 還是 .4fd?
  • 如何在兩種格式之間轉換?
  • 為什麼大多數範例和 demo 使用 .per 而非 .4fd?

主要差異

.per 檔案是以純文字格式儲存的表單檔案,可用任何文字編輯器或 Genero Studio 的 Code Editor 進行編輯。

.4fd 檔案是以 XML 格式儲存的表單檔案,使用 Genero Studio 的 Form Designer 進行編輯,提供接近所見即所得(WYSIWYG)的設計介面。

如同原文所說:「Form Designer 與其 GUI IDE 提供接近所見即所得的體驗;而使用 Code Editor 時,你必須發揮一點想像力,去設想完成後的畫面長什麼樣子。」

功能上的差異

從技術層面來看,「使用 .per 與 .4fd 並無任何差異」。.4fd 的主要優勢在於開發效率——GUI 方式通常能減少調整表單版面所需的反覆迭代次數。

格式轉換方式

格式間的轉換:

  • .per 轉 .4fd:在 Project Manager 中對 .per 檔案按右鍵 → 選擇「Import text Form...」
  • .4fd 轉 .per:在 Project Manager 中對 .4fd 檔案按右鍵 → 選擇「Export Text Form (.per)」
  • 命令列等效指令:使用 gsform -importgsform -keep

編譯流程

編譯 .4fd 檔案時,Genero Studio 會先將其轉換為 .per 檔案,再透過標準表單編譯器(fglform)產生已編譯的表單檔案(.42f)。

技術考量

版本控制的挑戰

開發者應注意,.4fd 檔案以 XML 格式儲存,當多位開發者同時編輯同一個檔案時,可能造成合併衝突。如原文所說:「XML 檔案在使用版本控制系統或原始碼儲存庫進行合併時,可能會遇到問題。」

腳本化處理與版本升級

對多個 .4fd 檔案進行批次變更時,可以直接修改底層的 XML 結構來撰寫腳本。gsform -c 指令即使用此方式,將 .4fd 檔案升級至不同的 Genero 版本。

歷史背景

過去範例和儲存庫以 .per 檔案為主,是因為當時尚未有從 .4fd 匯出為 .per 的功能。原文說:「隨著『Export Text Form (.per)』功能的推出,這個障礙已經消失了。」

視覺化比較

兩種方式的主要區別在於編輯體驗:

  • Code Editor 方式(.per):所有內容在文字編輯器介面中顯示
  • Form Designer 方式(.4fd):使用 Form Structure 視圖、Properties 面板與視覺化工具列元件
原文:https://4js.com/ask-reuben/ig-165/  ·  有任何 Genero 技術問題或翻譯疑問,歡迎來信 support@t100.app