Highscalability在这里提到function标志: 5 things toxic to scalability 什么是function标志? 谢谢
我目前正在为我的公司修改一些文档模板。 我们从来没有过的一件事是正式的架构规范,所以我开始把它们放在一起。 你把什么样的东西放到你的架构规范中? 随意复制和粘贴目录 – 这将是有益的。 网上有没有好的模板可用?
我试图简化耦合和凝聚力的概念,以一个简洁的定义。 有人能给我一个简短的和可以理解的解释(比维基百科的定义在这里和这里更短)吗? 他们如何互动? 谢谢。 任何人都有一个很好的例子吗?
我想回到Joel Spolsky关于从不重写代码的文章。 总结一下他的论点:代码不会生锈,在多次维护版本发布之后可能看起来不太漂亮,但是如果可以的话,它就可以工作。 最终用户不关心代码有多漂亮。 你可以在这里阅读文章: 你不应该做的事情 我最近接pipe了一个项目,查看了他们的代码之后,这真是太糟糕了。 我立即想到了以前build立的原型,并明确表示不应该将其用于任何生产环境。 但是,当然,人们不听。 这个代码是作为一个网站build立起来的,没有任何问题的分离,没有unit testing,而且代码复制到处都是。 没有数据层,没有真正的业务逻辑,除非你在App_Code中计数一堆类。 我已经向利益相关者提出了这样的build议:虽然我们应该保留现有的代码,修复版本以及一些小的function版本,但是我们应该立即开始重写testing驱动开发,并且关注清楚。 我正在考虑去ASP.NET MVC路线。 我唯一担心的就是从头开始重写的时间。 这不是完全复杂的,漂亮的磨坊网站应用程序与会员等运行。 你们有没有遇到类似的问题? 你采取的任何特定的步骤? 谢谢一堆! 更新: 所以..我最终决定做什么? 我采取马特的方法,并决定重构许多领域。 由于App_Code变得相当大,从而减慢了构build时间,所以我删除了许多类,并将它们转换为类库。 我创build了一个非常简单的数据访问层,其中包含所有的ADO调用,并创build一个SqlHelper对象来执行这些调用。 我实施了一个清洁日志 解决scheme,这是更简洁。 虽然我不再参与这个项目(资金,政治,等等),但是我认为这让我对一些项目的写法有多么糟糕,以及一个开发人员可以采取的步骤来使事情变得更清洁,更可读,更公正随着时间的推移逐渐变小。 再次感谢所有评论的人。
“协程”和“线程”之间有什么区别?
我偶尔看到的一个术语是“环状复杂性”。 在这里,我看到了一些关于“如何计算语言X的CC”或“如何用最小量的CC来计算Y”的问题,但是我不确定我真的明白它是什么。 在NDepend网站上 ,我看到一个解释,基本上说:“一个方法中的决策数量,每个if,for,&&等等都给CC分数增加了+1”)是真的吗?这个不好吗?我可以看到,为了保持代码容易理解,可能需要保持if语句的数量相当低,但这真的是一切吗? 还是有一些更深层次的概念呢?
当我们阅读互联网上的devise模式时,我们注意到有三类: 创力 结构 行为的 但是当我们创build一个软件的体系结构时,我们会考虑MVP,MVC或MVVM。 例如,在创build模式中,我find了单例模式 ,但是我也在我的MPV中使用了单例模式 。 所以我的问题是:devise模式是一个产品的所有结构? 如果是的话,那么singleton如何成为devise模式呢? 因为我可以在应用程序的任何地方使用它。 基本上,它仅限于在内存中一次创build一个实例,但是这个概念不定义软件是如何devise的? 如果不是,那么MVP,MVC和MVVM在三类模式中哪里是? 软件的devise和体系结构有什么区别?
我想知道是否有人能简洁地比较/对比前端,后端和中间件(“中端”?)之间的差异。 有没有重叠的情况? 他们必须重叠的情况下,前端/后端不能分开? 就瓶颈而言,哪一端与哪种瓶颈有关?
作为构build过程的一部分,我们运行数据库更新脚本,因为我们将代码部署到4个不同的环境。 此外,由于相同的查询将被添加,直到我们将发布放入生产,它必须能够在给定的数据库上运行多次。 喜欢这个: IF NOT EXISTS (SELECT * FROM sys.tables WHERE object_id = OBJECT_ID(N'[Table]')) BEGIN CREATE TABLE [Table] (…) END 目前我在部署/构build脚本中有一个create schema语句。 我在哪里查询模式的存在?
我设法改变我的项目名称,但是如何改变在这个截图中显示的名字? 并且(请)不要向我传达应该总是从头改写的概念certificate,这个POC非常整齐,我正在努力完成一个不可能的截止date:-)