回答
如果您在几个不同的网站上工作,那么通过在所有这些网站上使用通用框架,您可以花时间在代码上工作,而不是试图记住什么位置和原因。
我总是会使用某种框架,即使它是你自己的,因为统一性会帮助你构建你的项目。除非它是一个页面的静态HTML项目。
但是没有强制性限制。
我不认为有一定的复杂性水平需要一个框架。对于我来说,无论何时我写一个动态网站,我都会立即考虑一个框架,如果它能节省我的时间,我就会使用它(它几乎总是这样,而且我几乎总是这样做)。
所有因素很重要。您应该测量使用第三方框架可以节省多少时间,并将其与使用其他代码的风险进行比较。
从不“强制”。任何框架都没有很好地解决一些问题。当您正在实现的大多数代码已经以适合您特定应用程序的方式由相关框架实现时,切换到框架将是可以想象的。这样可以节省您的时间,精力,并且很可能比您编写的新代码更加稳定。
这实际上是两个问题,你意识到。 :-)第一个答案是,它从来没有强制,但老实说,从一开始就直接解析HTML请求参数是非常可怕的。我甚至不想这么做,所以我倾向于比较早地走向框架。
至于什么测量是实用的,那么你担心什么?你列出的所有描述都有价值。在我看来,数据库大小主要是为了扩展,如果你有一个非常简单的模式,即使数据库中有成千上万行,你也可以编写一个非常简单的应用程序。功能列表可能会决定UI页面的数量和复杂程度,从而有助于确定代码长度。
所有的框架和库都是您可以使用的工具。确定哪些将使您的生活更容易为您的给定项目和使用它们。
请考虑这个问题可能是错误的。许多最复杂的网站都没有使用任何流行的,预先存在的框架。谷歌有自己的网络服务器和自己定制的做事方式,亚马逊以及其他许多其他网站也是如此。
如果一个框架使您的任务更容易,或提供附加价值,那就去做吧。但是,当你获得这个框架时,你就会受到新的依赖。我开始重新基本上一个乔尔的软件后,所以我会在这里你重定向更多关于增加不需要依赖于你的代码:
我想说的情况正好相反。在某个时候,你的项目变得如此广泛,你实际上由于框架的缺陷而变慢了。对于足够大的项目,事实上,您可以更好地开发自己的框架,以满足您自己的需求。我曾多次看到人们在做出可能做出的决定或可能产生的工作时被阻止,因为他们试图做一些框架没有预料到的事情。做这些框架没有预料到的事情可能会非常麻烦。制作你自己的框架的好处是,它可以随着你的项目发展,成为你系统的帮助,而不是阻碍。
因此,总之,小项目应该使用现有的框架。大型项目应该包含自己的框架。
- 1. ASP.NET MVC框架需要什么应用程序信任级别?
- 2. 为什么我们需要依赖管理的复杂性
- 3. 实体框架中复杂类型属性名称的别名
- 4. Quartz 2.1框架需要说明什么?
- 5. 什么是DSA复杂性?
- 6. 托管扩展性框架(MEF),为什么需要导入?
- 7. 为什么实体框架连接需要元数据属性?
- 8. 组合框需要什么属性?
- 9. 为什么这个级联宏需要一个间接级别?
- 10. 复杂事件处理(即Progress Apama)框架和C#之间有什么区别?
- 11. RestKit:映射复杂嵌套的问题,需要forceCollectionMapping的多个级别
- 12. 为什么在这里需要更复杂的jQuery模式?
- 13. 确定复杂性等级
- 14. zend框架骨架:为什么该行需要'init_autoloader.php'工作?
- 15. 块级框与主要块级框之间的区别是什么?
- 16. 为什么MutationObserver的复杂性?
- 17. SetLength的复杂性是什么?
- 18. OrderedDictionary的复杂性是什么?
- 19. dist()的复杂性是什么?
- 20. Exists C#的复杂性是什么?
- 21. SonarQube使用什么样的复杂性?
- 22. 该代码的复杂性是什么?
- 23. NSComparisonResult的复杂性是什么? [Post interview]
- 24. C++中set_intersection的复杂性是什么?
- 25. `sort_by`的复杂性是什么?
- 26. btree的插入复杂性是什么?
- 27. JavaScript中JSON.parse()的复杂性是什么?
- 28. 为什么LevelDB需要两个以上的级别?
- 29. 级别遍历的时间复杂度
- 30. 需要FSM框架
我想你的意思是'比较'而不是'对抗'那里。 – 2008-09-16 00:55:34