可能重复:
设计模式真的是语言缺陷吗?
在花了多年时间阅读有关OOP和OOP技术的书籍,并且最近越来越多地参与编程的功能样式之后,推断设计模式是指向面向对象编程作为一个整体的系统性问题的指针是否公平.面向对象编程是否存在根本性缺陷(不要与设计混淆),因为在通过封装处理状态时,已经导致越来越多的模式来解决这种范式的问题.
我对此没有得出任何结论,但我的"直觉"感觉是OOP范式可能会出现更严重的错误.
封装的想法是否导致了比他们解决的问题更多的问题.
通过电子邮件尝试应用程序消息传递应用程序.我已经创建了我的SMTP服务器但现在缺少集中式传送机制.我可以很容易地创建一个适当的交付机制,但我正在尝试使用协议标准.我对HTTP,FTP或SOAP不感兴趣,只对邮件协议感兴趣.
我已经浏览了网络上的python示例,到目前为止没有运气.我不想花费太多的时间和精力,因为它目前只是一项技术现场研究,看看电子邮件系统上的异步传递是否是应用程序之间通信的可行方法.我知道sendmail解决方案,我对此不感兴趣,因为解决方案需要是一个完整的Python解决方案,尽可能使用"电池",或者如果我真的有,也可以使用Twisted.
到目前为止,我所研究的唯一两个标准是IMAP和POP.我仍然无法相信在这个时代我们需要两个邮件发送和传递协议,如果有什么东西可以做到二合一(协议)我会很乐意调查它.
在进一步调查之后,我认为唯一可行的选择是扭曲的,任何帮助都会很好
更新 在POP/IMAP服务器上,它的工作量太少,只需要很少的奖励.但是,我使用了一种"现成的"服务器解决方案,它将电子邮件作为IMAP4提供,并作为SMTP发送出去.现在我已经找到了这个,我将继续通过电子邮件调查应用服务.到目前为止,创建了一个应用程序,可以下载RSS源并以html格式向它们发送电子邮 通过用Python编写的服务器应用程序过滤我感兴趣的内容的电子邮件.下一阶段是与服务器通信的DSL语言,有点像telnet通过电子邮件.应该很有趣.在多个应用程序之间的RPC over Email之后.
在Cpython中可以做些什么在IronPython中无法完成?
可能重复:
用于Python中静态类型检查的工具
在大多数情况下,我喜欢这样一个事实:你可以选择任何类型并将它放在你喜欢的Python中,然后让Duck打字接管.但是如何通过编译时间来阻止这种糟糕的事情.有没有办法在编译时需要执行某种健全性检查,而不需要求助于单元测试.
在搞乱了F#之后,有一些非常好的功能,我认为当我必须回到C#时,我会想念我,如何能够让自己脱离以下内容,或者更好地复制它们的功能:
最后但并非最不重要的是Erlang启发的Message Processing.
我知道这个问题的"销售推销"答案是肯定的,但技术上是否正确.
公共语言运行时(CLR)被设计为基于命令式编程(IP)的中间语言,但在处理声明性编程(DP)时这具有明显的含义.
那么,当在CLR中实现时,基于与Imperative Style不同的范式的语言效率如何?
我也觉得DP的步骤会产生一个额外的抽象层次,可能无法在所有表现形式进行建模,这是一个公平的评论吗?
我用F#做了一些简单的测试,看起来很棒,但是如果程序变得更复杂,我会错过一些东西吗?
在函数式编程语言中使用对象的有效理由是什么?我看到f#是一种函数式编程语言,在处理类的.net生态系统时,它在对象方面给予了很大的帮助.但是除了与其他程序集/程序的交互可能用c#编写之外,为什么有人会选择使用对象来分解以函数为导向的语言或样式的程序?
混合一种程序风格是一种帮助还是障碍?
我刚开始使用Go(GoLang),我发现它是一种很棒的语言.但是,经过多年的UML和面向对象的方法,我发现建模Go程序(逆向工程)有点问题,因为Go Structs包含属性/状态,但没有方法,以及使用Structs作为参数的方法/函数(即使那些做魔法使它使一个Struct看起来像一个对象),也不包含方法或状态.
这是否意味着我应该使用另一种Methodology来模拟Go程序,或者UML是否对语言结构进行了充分的建模?
是的我知道如果你在Structs上使用方法,可以通过结构和结构方法的组合将UML中对象的行为映射到Go,但我发现这是错误的,在范例中阻抗不匹配排序.
对于一个行为不再受物体控制的勇敢新世界,是时候采用新的(消亡思想!)图表技术了吗?行为可以建模而不参考它正在影响的状态?
更新:
我正在尝试数据流图,看看它们是否更适合范式.到目前为止一切都那么好,但我认为当我对Struct的方法进行建模时,我将会失败,DFD中的折衷方案是它们被视为函数.:(
Go支持继承!arghhh!(头被吹干净.)你可以组成一个由另一个结构组成的结构,它有方法,子结构现在继承了......你得到了吗?我的思绪被吹了.意味着UML有效......完全但感觉很脏.
Go不支持继承,它就是这样.:) DFD就是这样!
我在C#工作了几年,有一件事总是让我烦恼.代表们.它们没有状态,它们是对象方法的指针,是处理线程或.net必须提供的任何其他类型的并行编程技术时唯一的方法.
我主要担心的是,当以面向对象的方式编程时,代表通过打破如果你去面向对象的概念打破范式这一事实,那么使用UML和CRC的设计阶段应该映射到你使用的语言.
正如标题所要求的那样,代表是真实对象还是编程异常,需要在面向对象设计范围之外完成.
因此,如果一个对象没有状态并且委托可以用UML建模,那么它是否可能成为一个对象?
一位知名人士曾就天文学进行过公开讲座.他描述了地球如何围绕太阳运行,以及太阳如何围绕着被称为银河系的大量恒星的中心轨道运行.讲座结束时,房间后面的一位小老太起身说道:"你告诉我们的是垃圾.这个世界实际上是一只支撑在巨龟背上的平板." 这位科学家在回答说:"乌龟站在什么地方?"你很聪明,年轻人,非常聪明",老太太说."但是乌龟一路走下来了!----斯蒂芬霍金斯
我认为这与物体及其所处的基本类型非常相关.你能真正说出它的物体吗?
是否可以使用Reactive Extensions(Rx)在.NET 3.5中创建执行并行化的应用程序,还是以某种方式限制?我从http://www.microsoft.com/download/en/confirmation.aspx?id=26649下载了Rx ,在创建了一个带引用的反应式程序集的简单项目之后,我找不到与.NET 4.0中的任务相对应的任何类.我正在尝试为"任务"找到课程,但唉,我找不到任何课程.难道我做错了什么?