我花了一些时间研究Django并且我做了一些应用程序。但我真的不知道在开发应用程序时最好的方法是什么,我的意思是,有几种选择:制作所有模型,然后是所有网址,视图,然后制作所有模板。其他人建议使用敏捷方法,使用用例并一直走到完全正常运行,当然可能还有其他可能的建议。我个人觉得敏感的方法真的很吸引人,但我真的不知道,因为我附加到我的数据库的每一个模型都意味着创建一个新模型。
总结一下,在开发和应用Django时应该采取的最佳方法是什么,考虑到它带来的所有后果?
谢谢。
答案 0 :(得分:1)
我不是Django专家,而且我对Django的攻击很多,因为我没有使用Django模型(除了基本的中间件,如会话和用户配置文件)。除此之外,我根本不使用Django数据库模型。 所以我的经历非常不同。
从我的角度来看,这完全取决于你团队的工作习惯。我不关心它是敏捷开发还是直接的1天黑客攻击。
我想说出一些规格。您需要知道您想要提供哪些型号和服务,对吧?
准备好初始规格后,即可开始编码。我认为最简单的(对我而言)是编写一些模型,然后编写一些视图,并编写与我正在处理的模板相对应的模板。实际上,为了开始,我必须编写一些基本模板文件和一个显示所有必要组件的虚拟视图,这样我就可以在浏览器上正确显示我的基本htmls。
但之后,我首先编写我的模型,因为它通常是最难处理的。关系(模型和模型类)之间的关系不是最直观的事物。
当我认为我已准备就绪时,我会通过浏览来测试我的代码。我还没写测试代码。我写下它们,直到我觉得我有足够的时间来测试。
严重。这是一种习惯。
此时我不能做测试驱动因为它需要太多时间。
我应该改写它。根据我的项目环境和我的经验,我通常会等到我有更多的观点才能继续前进。这就是我。有些人会对每次尝试添加/修改进行测试。这是一种习惯。在过去,我会花很多时间重写相同的功能,只是为了让它看起来很漂亮。但由于时间有限,如果我确定我的功能有效(没有拼写错误等),我会在写完一些视图之后编写测试。
如果你让我测试一个科学的计算程序,很容易做测试驱动。我仍然很擅长使用Django进行测试(模拟,Django unittest),所以对我来说很难。
只要您和您的团队感觉正确,就要按照您认为合适的方式行事。随着时间的推移,你将改进发展。
请确保您始终编写测试,并尽可能地记录您的代码。
不要过分关注the right development approach
。有熟练的开发人员讨厌测试驱动的开发。您的规格将一直在变化。有一天,我写了10个视图和10个表单,第二天我不得不销毁它们,因为我需要以RESTful风格编写我的URL。我的视图参数必须更改。
答案 1 :(得分:0)
我认为应该首先创建模型。即使你没有非常详细的规范,我会说,在开始编码之前,应该总是知道他们的后端是什么样的。是的,这意味着坐下来写下所有内容而不编码。
接下来是观点。没有模板或ui(除了绝对最小值,就像在这个页面上会有一个表格,它会要求输入用户名/密码等),我甚至在摆弄模板之前以编程方式测试所有内容。
最后是模板。