我正在对一个相当强大的ASP应用程序和CMS进行一次小型审计,以获得客户端(比常规CMS更好)并开始查看代码。 (编辑:这是在参与一个完整的ASP服务商店之前的快速概述。)
我来自主要使用PHP,Node.js和Ruby的背景,但是当我查看目录和文件的布局时,它看起来很糟糕。它让我想起了旧的PHP 4应用程序,文件到处都是。
我的问题是,这仍然是ASP中良好的编码实践吗?我期望找到一个更清洁/更容易理解的结构与这样的更自定义的应用程序。很像其他语言的Rails / Zend / etc。以下是来自webroot的一些文件的屏幕截图。
一个侧面的问题是,有没有更好的方法来组织ASP中的文件?我没有在6到8年内使用ASP进行编码,而且我用它的时间并不是很多。
答案 0 :(得分:2)
这不是ASP,它是ASP.NET;我还注意到它是WebForms,而不是MVC,它的布局非常不同。
无论如何,目录结构很乱,很可怕。这就是它的错误:
contact.aspx.cs
)(因为它有一个bin
目录),所以它们根本就不存在。index.html
,index1.html
等然后还有其他一些问题,但这些问题取决于开发人员的偏好:
*.master
文件直接放在应用程序的根目录中。Fonts
似乎包含字体文件,再次由样式表引用。它们都应该放在一个“样式”文件夹下。<img src="" />
元素),而不是样式表中使用的图像,都应与样式表图像分开,我假设这就是为什么你有令人困惑的“img”vs“Images”文件夹至于正确的方法,ASP.NET WebForms并不会导致整洁,组织良好的应用程序。因为每个(非重写的)URI直接对应于*.aspx
文件,这意味着文件系统布局必须与网站布局匹配。我担心除非你实现ASP.NET路由,否则你无能为力。
我还建议删除所有HTML文件并将其转换为ASPX文件,以便在适当时充分利用UserControls和MasterPages。