我已经构建一个网络应用程序一年多了。这是我在学习 PHP 和 MYSQL 等时开始构建的第一件事。它已经从一个用原始 PHP 编码的非常简单的预算应用程序发展成为一个完整的个人财务跟踪器,我每天都在 Codeigniter 上使用它。同时,我还构建了其他几个小型 Web 应用程序,因此我比我刚开始这个项目时的经验多了 1 年,我认为由于基本设计,我的开发开始受到影响我在第一天做出的决定。
尽管代码已被重写以与 codeigniter 一起使用,但数据库结构仍然相同,我觉得我必须编写比解决数据库架构问题所需的更多代码。
我的问题是:
- 有没有什么好的资源来学习如何有效地设计数据库?书籍、课程等
- 回到我开始这个项目的时候,我非常“像我编码一样设计”,但我觉得也许更明智的方法是在功能级别设计所有东西,这样你就可以在编写一行代码之前看到流程和逻辑是什么. 这种类型的开发是否有一个特定的名称,或者它只是标准做法?(我没有接受过网络开发方面的正式培训,所以我觉得我可能只是偶然发现了每个人都已经知道的东西)
- 我应该设计我的逻辑和功能然后我的数据库还是从数据库开始然后逻辑和功能?