跳转到主要内容
HPO Software 分步式 4D 数据库与低代码应用构建指南 —— 从创建首张表到打造可运行的商业应用。

本站部分链接为联盟营销链接:如果您通过这些链接购买,我们可能会获得佣金,且不会增加您的成本。这绝不会影响我们的推荐建议。详情请参阅我们的联盟披露声明。 联盟营销披露.

第四维度学习基础知识

如果您要从 FileMaker Pro、Microsoft Access 或现代低代码工具转向 4D(第四维),那么您首先需要的是真实的地形图。最初的“4th Dimension 学习基础知识”页面是对 FileMaker Pro 5.0 和 4th Dimension 6.5 之间的系统要求进行并排比较而编写的——大约是 1999 年至 2000 年的快照。该快照仍然有用,但前提是您了解“为什么”这些要求不同以及它们告诉您这两种产品如何看待世界。本文保留了原始比较并围绕它构建了上下文:数字的含义、平台如何分歧,以及今天在继承或维护 4D 系统时如何做出实际决策。如果您正在权衡 4D 是否仍然适合您的堆栈,我们的 4th dimension low code reviews 会看看它与当前工具相比如何。

要点

  • 原始 FileMaker 与 4D 要求表是历史基线,而不是购买指南 - 将特定 RAM 和操作系统数据视为时代产物。
  • 最重要的架构差异是 4D 是“可编程关系数据库开发环境”,而 FileMaker Pro 定位为最终用户数据库应用程序。
  • 4D 结构、方法、表单和数据文件的分离使其从单用户桌面工具扩展到客户端/服务器和网络发布系统。
  • 网络模型、运行时许可和编译器可用性是 4D 和 FileMaker 分歧最大的三个领域,也是迁移决策至今仍至关重要的三个领域。
  • 现代 4D(4D v20 及更高版本)在当前的 macOS 和 Windows 上运行,使用 SQL 和 REST,并与 Git 集成 - 6.5 时代的限制不再适用。

原始比较,保留

源材料对两种产品进行了正面比较。这是这个比较,原样保留下来,因为它记录了桌面数据库历史上的真实时刻。

FileMaker Pro 5.0 — Macintosh: Power Macintosh; 16MB 内存; Mac 操作系统版本 7.6.1 或更高版本; CD-ROM驱动器和硬盘驱动器; TCP/IP 或 AppleTalk 网络连接(通过网络共享 FileMaker 数据库所需)。 Web 发布要求包括能够通过 TCP/IP 持续访问 Internet 或 Intranet 的主机、用于 Internet 访问的 ISP,以及对每个滚动 12 小时期间限制为 10 个 IP 地址的 Web 发布数据库的访问。

FileMaker Pro 5.0 — Windows: Intel 兼容计算机(486/33 或更高版本); 16MB 内存; Windows 95 或 Windows 98,或 Windows NT 4 (Service Pack 3); CD-ROM 驱动器和硬盘驱动器。 Web 发布要求是相同的:具有连续 TCP/IP 访问的主机、ISP 以及每 12 小时内相同的 10 个 IP 地址限制。

4th Dimension 6.5 — Macintosh: 带硬盘驱动器的 Power PC 601 处理器和系统 7.6.1 或更高版本,带 20 MB RAM; CD-ROM 驱动器和硬盘驱动器。

4th Dimension 6.5 — Windows: 具有硬盘驱动器的 486 或基于 Pentium 的计算机以及以下设备之一:具有至少 16 MB RAM 的 Windows 95/98,或具有至少 24 MB RAM 的 Windows NT 工作站或服务器。

Related: — A spreadsheet-simple interface sitting on top of a real , with automations, views, and shareable interfaces..

有两点非常显著。首先,4D 要求 Mac 上有“更多”RAM(20 MB 与 16 MB),并区分 Windows NT 工作站和服务器配置 - 这表明 4D 已经部署在服务器角色中。其次,FileMaker 的 Web 发布是按 IP 地址计量的,这告诉您它是针对小型工作组发布,而不是企业部署。

为什么要求不同

16 MB 和 20-24 MB 之间的差距并不是任意的。它反映了每种产品“是什么”的根本区别。

FileMaker Pro 的设计使得非程序员也可以打开应用程序,在类似电子表格的界面中定义字段,拖动一些布局元素,然后开始输入数据。运行时占用空间很小,因为目标用户是桌面上的一个人。

If you are shopping: — A that plugs into the wider Zoho suite and prices per user rather than per app..

相比之下,4D 作为完整的开发环境提供。即使在 6.5 时代,它也包括:

  • 用于定义表、字段和关系的结构编辑器
  • 用于编写 4D 编程语言的方法编辑器
  • 用于设计输入和输出布局的表单编辑器
  • 一个编译器,可以将解释的代码转换成独立的应用程序
  • 与单用户版本不同的客户端/服务器架构

每个子系统都会消耗内存和磁盘。更高的要求是成为平台而不是应用程序的代价。

解释器与编译器的区别

这是最值得尽早内化的概念。在 4D 中,您可以在解释模式下开发和运行,其中 4D 语言在运行时逐行执行。迭代速度很快,但执行速度较慢,并且需要 4D 开发环境。

当您准备好交付时,您可以使用编译器来生成一个独立的、可双击的应用程序,该应用程序不再需要完整的开发环境。这在概念上类似于通过解释器运行 Python 脚本与分发已编译的二进制文件之间的区别。在同一时代,FileMaker 并没有以相同的方式提供相同的开发人员到独立应用程序的管道 - 它的运行时版本和开发人员版本后来出现,并且工作方式不同。

如果您今天正在学习 4D,请了解“编译的 4D 应用程序”是一流的部署目标,并从第一天开始相应地规划您的项目结构。

作为设计信号的系统要求

阅读旧的需求表是一项技能。以下是如何从它们中提取意义而不仅仅是怀旧。

Related: — A builder aimed at portals, directories, and internal tools — with flat-rate pricing instead of per-user fees..

信号中的要求它告诉你什么
单独的 NT 工作站与服务器数据供应商期望部署服务器,而不仅仅是桌面
单一平台上更高的 RAM该引擎可能首先在该平台上进行了优化或测试
用于网络访问的 IP 地址计量网络发布是一个附加组件,按连接授权
列出 CD-ROM 驱动器发行方式为物理媒体;没有自动更新
明确提及 AppleTalk在 TCP/IP 普及之前,AppleTalk 网络仍然很常见

实践教训:当您评估任何数据库平台(4D、FileMaker、Access 或现代低代码工具)时,请查看供应商是否单独列出服务器配置。如果这样做,则该产品是为多用户部署而构建的。如果他们只列出桌面规格,那么您所看到的单用户工具可能会在并发情况下陷入困境。

网络:客户端/服务器与文件共享

可以说,这两种产品之间的网络差异比 RAM 数据更重要。

FileMaker 最初的共享模型是通过网络共享文件 — 一台计算机打开数据库文件,其他计算机连接到该文件,使用 TCP/IP 或 AppleTalk 作为传输。这很简单,对于小型团队来说效果很好,但这意味着“服务器”实际上只是一个打开文件的对等机器。

Our pick: — The long-running relational database platform for teams that need custom apps on desktop, web, and mobile from a single file..

4D 的模型是真正的客户端/服务器架构。 4D 服务器进程管理数据、处理并发访问并为 4D 客户端应用程序提供请求。这更接近 PostgreSQL 或 Microsoft SQL Server 的操作方式,这就是 4D 可以扩展到更大的用户数量和更大的数据集的原因。

对于当今的任何建设者来说,决策框架是:

  • 单用户还是两个人? 桌面数据库就可以。
  • 局域网上有少量并发用户? 文件共享或轻量级服务器可以工作。
  • 数十个用户、远程访问或 Web 客户端? 您需要一个真正的客户端/服务器引擎,例如 4D Server。

FileMaker Web 发布上的原始 IP 地址计量很好地说明了该限制:它不是为开放 Web 流量而构建的。

运行时、编译器和部署

原始大纲中的“运行时差异”和“编译器”标题指向真正的岔路口。

  • 解释运行时: 您在 4D 开发环境中运行。最适合开发、调试和控制机器的内部工具。
  • 编译的应用程序: 您构建一个独立的可执行文件。最适合分发给不应该拥有开发环境的用户。
  • 4D 服务器: 多用户引擎。最适合并发访问的共享数据。
  • 4D 客户端: 连接应用程序。最适合与服务器通信的工作站。

对于新手来说,一个常见的错误是在解释模式下开发所有内容,然后发现编译器出现了解释器可以容忍的错误。尽早构建和编译,即使是在小型测试项目中,这样您就可以在编写数千行代码之前了解编译器的期望。

虚拟主机和数据图表

最初的大纲将“虚拟主机”和“数据图表”列为不同的主题,并且两者仍然相关。

4D 世界中的 Web 托管 意味着将您的数据库暴露给浏览器。历史上,这是通过 4D 的内置 Web 服务器完成的,该服务器可以提供 HTML 模板并使用 4D 语言响应请求。如今,4D 还支持 REST 风格的访问,并且可以与标准 Web 堆栈集成,因此您不会被锁定在专有的发布模型中。如果您正在规划 Web 前端,请尽早决定是在服务器端使用 4D 渲染页面还是通过 REST 将数据暴露给单独的前端框架。

数据图表意味着将查询结果转换为图表和仪表板。 4D 历来通过其表单对象和第三方插件提供图表。实用指南:将报告查询与数据输入表单分开,因为报告工作负载的性能特征与事务工作负载截然不同。

插件、工具和生态系统

原始大纲的“插件”、“工具/实用程序”和“资源”标题承认了一些重要的事情:没有数据库平台是孤立使用的。

  • 插件使用核心不提供的功能扩展 4D - 专用文件格式、硬件集成、高级图形。
  • 工具和实用程序涵盖从代码分析到数据修复的所有内容。
  • 资源 — 文档、论坛和社区网站 — 是您实际学习该平台的地方。

有关更广泛类别的权威背景,请参阅有关支持 4D 和 FileMaker 的数据库管理系统 和关系模型 的 Wikipedia 文章。对于语言和平台谱系,4D(编程语言) 条目是一个合理的起点。对于现代 4D 互操作的标准,即使您大部分时间都花在 4D 的本地语言上,SQL 概述也值得一读。

如何决定:实用框架

如果您正在选择或继承一个平台,请按顺序解决这些问题。

  1. 有多少并发用户? 一两个表示桌面工具。超过少数意味着您需要一个真正的服务器引擎。
  2. 您需要分发独立应用程序吗? 如果是,您需要一个带有编译器的平台,4D 提供了该平台。
  3. 是否会有 Web 或移动前端? 如果有,请选择具有 REST 或 SQL 访问权限的平台。
  4. 有多少自定义逻辑? 与表单驱动的环境相比,大量的业务规则更喜欢可编程环境。
  5. 您的团队的技能是什么? 低代码开发人员使用 FileMaker 风格的工具可以更快地提高工作效率;程序员会更喜欢 4D 的方法编辑器。

没有普遍正确的答案。正确的选择取决于问题的形状,而不是哪个产品具有更大的功能列表。

常见问题

4D 与第四维相同吗?

是的。 “4D”是最初称为“4th Dimension”的产品的现代名称。多年来,该名称已被缩短,但平台、语言和开发环境是相同的。 20 世纪 90 年代和 2000 年代的文档和社区帖子使用“4th Dimension”,而当前材料使用“4D”。

为什么 4th Dimension 需要比 FileMaker Pro 更多的 RAM?

因为 4D 作为一个完整的开发环境(结构编辑器、方法编辑器、表单编辑器、编译器和客户端/服务器组件)提供,而 FileMaker Pro 则定位为最终用户数据库应用程序。同时运行更多的子系统意味着更大的内存占用。更高的要求是作为一个平台而不是单个应用程序的结果。

4D 中解释模式和编译模式有什么区别?

解释模式下,4D语言在运行时逐行执行,开发方便,但速度较慢,并且需要开发环境。在编译模式下,编译器会将您的代码转换为独立的应用程序,该应用程序无需开发环境即可运行,并且执行速度更快。大多数生产部署使用编译的应用程序或 4D Server。

4D 数据库可以在 Web 上发布吗?

是的。 4D 长期以来一直包含一个内置的 Web 服务器,能够使用 4D 语言提供页面服务并响应请求,现代版本还支持 REST 风格的访问以及与标准 Web 堆栈的集成。最初的 FileMaker 比较通过 IP 地址计量 Web 访问,这反映了小型工作组发布模型而不是开放的 Web 流量。

旧的系统要求仍然适用吗?

不。原始比较中的数字(16 MB RAM、Windows 95/98、Mac OS 7.6.1)描述了大约 1999 年至 2000 年的硬件和操作系统。现代 4D 版本在当前版本的 macOS 和 Windows 上运行,并且需要更多内存,正如您对任何当代数据库平台所期望的那样。将旧表视为历史基线,而不是购买指南。

4D 初学者应该先学什么?

从结构编辑器开始:表、字段和关系。其他一切——表单、方法、值列表、报告——都是建立在该数据模型之上的。一旦您可以定义干净的关系结构,请转到方法编辑器并了解 4D 语言如何读取和写入记录。之后表单和值列表就会变得简单自然,因为它们只是您已经设计的结构之上的展示层。

Frequently asked questions

4D 与第四维相同吗?

是的。 “4D”是最初称为“4th Dimension”的产品的现代名称。多年来,该名称已被缩短,但平台、语言和开发环境是相同的。 20 世纪 90 年代和 2000 年代的文档和社区帖子使用“4th Dimension”,而当前材料使用“4D”。

为什么 4th Dimension 需要比 FileMaker Pro 更多的 RAM?

因为 4D 作为一个完整的开发环境(结构编辑器、方法编辑器、表单编辑器、编译器和客户端/服务器组件)提供,而 FileMaker Pro 则定位为最终用户数据库应用程序。同时运行更多的子系统意味着更大的内存占用。更高的要求是作为一个平台而不是单个应用程序的结果。

4D 中解释模式和编译模式有什么区别?

解释模式下,4D语言在运行时逐行执行,开发方便,但速度较慢,并且需要开发环境。在编译模式下,编译器会将您的代码转换为独立的应用程序,该应用程序无需开发环境即可运行,并且执行速度更快。大多数生产部署使用编译的应用程序或 4D Server。

4D 数据库可以在网络上发布吗?

是的。 4D 长期以来一直包含一个内置的 Web 服务器,能够使用 4D 语言提供页面服务并响应请求,现代版本还支持 REST 样式的访问以及与标准 Web 堆栈的集成。最初的 FileMaker 比较通过 IP 地址计量 Web 访问,这反映了小型工作组发布模型而不是开放的 Web 流量。

旧的系统要求仍然适用吗?

不。原始比较中的数字(16 MB RAM、Windows 95/98、Mac OS 7.6.1)描述了大约 1999 年至 2000 年的硬件和操作系统。现代 4D 版本在当前版本的 macOS 和 Windows 上运行,并且需要更多内存,正如您对任何当代数据库平台所期望的那样。将旧表视为历史基线,而不是购买指南。

4D初学者应该先学什么?

从结构编辑器开始:表、字段和关系。其他一切——表单、方法、值列表、报告——都是建立在该数据模型之上的。一旦您可以定义干净的关系结构,请转到方法编辑器并了解 4D 语言如何读取和写入记录。之后表单和值列表就自然而然地出现了,因为它们只是您已经设计的结构之上的表示层。


Try FileMaker Free for 45 Days

The long-running relational database platform for teams that need custom apps on desktop, web, and mobile from a single file.