据我所知,尽管花费了数百万或数十亿美元用于OOP教育,语言和工具,但OOP并未提高开发人员的工作效率或软件可靠性,也没有降低开发成本.很少有人在任何严格的意义上使用OOP(很少有人坚持或理解LSP等原则); 人们对问题域建模所采用的方法几乎没有统一性或一致性.这个课程常常仅用于语法糖; 它将记录类型的函数放入它们自己的小命名空间中.
我为各种各样的应用程序编写了大量代码.虽然有些地方真正的可替代子类型在应用程序中发挥了重要作用,但这些都非常特殊.总的来说,虽然谈到"重复使用"的口号很多,但实际情况是,除非一段代码完全符合您的要求,否则几乎没有成本效益的"重复使用".设计类以正确的方式扩展是非常困难的,因此扩展的成本通常很高,以至于"重用"根本就不值得.
在许多方面,这并不让我感到惊讶.现实世界是不是"OO",这种想法在OO隐含的 - 我们可以用一些类分类模型的事情 - 在我看来非常根本性的缺陷(我可以坐在桌子上,一个树桩,一个车盖某人的膝盖 - 但不是其中一个 - 一把椅子).即使我们转向更抽象的领域,OO建模通常也很困难,违反直觉,最终无益(考虑圆/椭圆或正方形/矩形的经典例子).
那我在这里错过了什么?哪里是OOP的价值,为什么所有的时间和金钱,没有作出任何软件好?
在大学的第二年,我们被"教"了Haskell,我对它几乎一无所知,更不用说函数式编程了.
什么是函数式编程,为什么和/ xor我想在哪里使用它而不是非函数式编程?我认为C是非函数式编程语言是正确的吗?
我正在寻找可以在我的RoR应用程序中使用的预构建解决方案.我理想地寻找类似于ASP.NET Forms身份验证的东西,它提供电子邮件验证,注册控制,并允许用户重置他们的密码.哦是的,并且很容易让我拉出当前登录到应用程序的用户.
我已经开始研究已经写过的文章,但我发现它真的很混乱.我查看了LoginGenerator,RestfulAuthentication,SaltedLoginGenerator,但似乎没有一个地方有很棒的教程或提供它们的比较.如果有一个我还没有发现的网站,或者大多数人都使用了事实上的标准,我会很感激你的帮助.
我从小就开始使用IRC,我一直很着迷.作为一种语言练习,我在考虑使用Shoes作为图形前端在Ruby中编写一个简单的IRC客户端.我的问题,亲切的,我需要熟悉什么才能开始这个伟大的冒险(当然除了鞋和Ruby)?我想有一些关于IRC协议的规范.有什么指针吗?
在C#中,我可以使用FileSystemWatcher对象来监视特定文件,并在创建,修改等事件时引发事件.
我在这个类中遇到的问题是,即使创建文件的进程仍在编写过程中,它也会在创建文件的那一刻引发事件.我发现这是非常有问题的,特别是如果我试图读取类似XML文档的东西,其中文件必须具有一些结构,在完成编写之前不会存在.
.NET(最好是2.0)是否有任何方法可以在文件可访问后引发事件,或者我是否必须不断尝试读取该文件,直到它不会抛出异常才知道它可用?
是否有可能为Internet Explorer开发一个可替代现有收藏夹功能的插件?
我正在寻找一个Web框架来将基于Windows的应用程序移动到Web上.
WF的主要要求如下:
我长期以来一直认为,goto如果可能的话,永远不应该使用它.在前几天阅读libavcodec(用C语言编写)时,我注意到它的多种用途.goto在支持循环和函数的语言中使用是否有利?如果是这样,为什么?
当我尝试boo.exe从网络共享(映射到驱动器)运行.NET程序集()时,它失败,因为它只是部分信任:
Unhandled Exception: System.Security.SecurityException: That assembly does not allow partially trusted callers.
at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Assembly asm, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed)
at BooCommandLine..ctor()
at Program..ctor()
at ProgramModule.Main(String[] argv)
The action that failed was:
LinkDemand
The assembly or AppDomain that failed was:
boo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=32c39770e9a21a67
The Zone of the assembly that failed was:
Intranet
The Url of the assembly that failed was:
file:///H:/boo-svn/bin/boo.exe
Run Code Online (Sandbox Code Playgroud)
根据博客文章的说明,我向.NET配置添加了一个策略,完全信任所有程序集file:///H:/*作为其URL.我通过在.NET配置中file:///H:/boo-svn/bin/boo.exe的Evaluate Assembly …
试图找到一些简单的SQL Server PIVOT示例.我发现的大多数例子都涉及计算或总结数字.我只想转动一些字符串数据.例如,我有一个返回以下内容的查询.
Action1 VIEW
Action1 EDIT
Action2 VIEW
Action3 VIEW
Action3 EDIT
Run Code Online (Sandbox Code Playgroud)
我想使用PIVOT(如果可能的话)来产生如下结果:
Action1 VIEW EDIT
Action2 VIEW NULL
Action3 VIEW EDIT
Run Code Online (Sandbox Code Playgroud)
PIVOT功能可以实现这一点吗?