我试图掌握LINQ.最困扰我的是,即使我更好地理解语法,我也不想在不知不觉中牺牲性能来表达.
它们是"有效LINQ"的信息或书籍的集中存储库吗?如果做不到这一点,你个人最喜欢的高性能LINQ技术是什么?
我主要关注LINQ to Objects,但是当然也欢迎LINQ to SQL和LINQ to XML的所有建议.谢谢.
实际上我们在Eclipse + Freemarker插件(来自JBoss)下有freemarker文件(ftl).
你知道格式化ftl文件的方法吗?
谢谢
我想我有类似"程序员的强迫症"的东西.我喜欢我的代码是美观和干净的,我希望它是"完美的"(正如在处理所有可能的情况时那样正确和漂亮).我经常发现自己花了很多时间一次又一次地走过同一个地方,看看我可以在哪里进行优化以及哪些方面可以做到万无一失.
因此,当涉及到尝试......捕获块时,我会对所包含的内容感到一些偏执.我的意思是,我在哪里绘制代码应该满足的代码?例如,进行文件处理.我应该把一个该死的文件操作放在一个try ... catch块中,万一有些事情可能发生(文件被应用程序外部某人/某些东西锁定,磁盘损坏等)?
有时它会让我的大脑感觉到可能有些东西(我甚至都不知道)可能会绊倒一些代码.
编辑:
我不是在谈论使用try ... catch来涵盖糟糕的编程,我在谈论操作和程序,否则实现得当,但依赖于我无法控制的其他因素 - 即使它们可能是模糊不清(这就是重点),只有在我没有预料到的极其"不幸"的情况下才会发生.
文件处理是一个明显的例子.当我倾向于让人感到紧张时,我就想知道在其他内置功能的幕后进行什么样的处理,以及它如何响应我的代码.
这是一个例子:
Dim serverUrl as String = My.Settings.ServerUrl
Run Code Online (Sandbox Code Playgroud)
那里有一个磁盘操作(从app.config读取).如果是在一个try ... catch块封闭?这就是我的意思,它在哪里结束.
害怕内存泄漏是另一回事.是否只有非托管代码才会构成威胁?我怎么知道什么是非托管代码?有清单吗?
更多编辑:
另一个我感到不自信的领域是在引擎盖下的某些地方有访问限制或政策.
当我阅读关于编程的文章和讨论时,我看到了很多解释,"好吧,你的问题是当你打电话给X时,.Net在内部试图访问某某,除非你的应用程序在上下文类型Y中运行,或者您具有权限Z,它将引发异常".这只会增加我的偏执 - 当涉及到建立防水异常处理时.因为我根本不知道语言/平台的所有内部运作,并且不知道在哪里看(不必花费我的生命来研究它).
我很乐意为此专门制作某种形式的纲要或简明的维基,这将概述需要特别关注的编程领域(文件处理等),示例场景,典型挑战和罪魁祸首(使用解决方案),最佳实践模型,编程模式,并且至少为像我这样的凡人提供了一套指导方针,遗憾的是,它并没有参与实际构建语言及其库.
所有这一切都在一个地方,而不是必须在语言参考或网上的随机文章中追踪分散的信息 - 在许多情况下我甚至不知道该寻找什么.
至于我当前的特定项目,它是在Windows服务的上下文中.没有UI,我正在研究的一个子任务是创建一个健壮的引导程序,可以优雅地处理所有问题场景.在这种情况下,所有关于日志记录 - 然后要么忽略异常(如果它足够微不足道) - 或者只是退出!如果在尝试登录时发生问题 - 那我该怎么办?刚退出 - 没有发生什么事情的痕迹?这个引导程序只记录它的启动(之后,主程序集 - 它是动态加载的 - 接管并记录它自己的东西,尽管有相同的挑战),并且这样做是为了一个简单的"bootstrap.log"文件.将它登录到EventLog会更好(或有价值的补充)吗?或者EventLog是另一个可能产生新问题世界的区域(同样,访问限制等等.事件日志是否也基于需要"尝试和捕获"的磁盘操作......?)
看到?偏执狂.
我知道有些人会回复一些事情,比如<LineBreak/>这不是我想要的.
我想知道如果我将textblock的字符串存储在资源文件中,我可以做些什么来使textblock中的文本转到新行.
试过"< ; LineBreak/ > ;"(没有空间),
试着 /r/n
试着
没有一个选项有效,任何人都有想法?
当我在本地启动我的服务器时,我收到以下通知:
please set config.active_support.deprecation to :log at config/environments/development.rb
Run Code Online (Sandbox Code Playgroud)
当我添加config/environments/development.rb时
config.active_support.deprecation = :log
Run Code Online (Sandbox Code Playgroud)
我明白了:
undefined local variable or method `config' for main:Object (NameError)
Run Code Online (Sandbox Code Playgroud)
我的环境:Rails 3.0.1 Ruby 1.8.7 Ubuntu 10.04
Development.rb文件
# Settings specified here will take precedence over those in config/environment.rb
# In the development environment your application's code is reloaded on
# every request. This slows down response time but is perfect for development
# since you don't have to restart the webserver when you make code changes.
config.active_support.deprecation = …Run Code Online (Sandbox Code Playgroud) Minitest的规范库很棒.我已经能够在Rails单元测试中使用它没问题.但是,Rails功能测试继承自ActionController :: TestCase,它在其设置中提供了像@controller这样的实例变量.
有没有人使用Minitest :: Spec lib进行Rails功能测试?
如果没有,我正在考虑创建一个小型库来做到这一点.我对rspec并不太热衷,并且应该开始将它的重点转移到rspec上.拥有一些轻量级的东西并且基于已经提供的工具构建它会很不错.
如果您经常在您的程序中使用您喜欢的集合路径:
键入List<T>无处不在.
定义类:
class TT:List<T>
{
}
Run Code Online (Sandbox Code Playgroud)定义类:
class TT
{
private List<T> _tt;
// ...
}
Run Code Online (Sandbox Code Playgroud)我认为这不是很重要,但在上一个项目之后我开始经常考虑它.
x当我在左侧后增加它时,我可以在布尔表达式的两侧使用吗?
有问题的一行是:
if(x-- > 0 && array[x]) { /* … use x … */ }
Run Code Online (Sandbox Code Playgroud)
这是通过标准定义的吗?array [x]会使用新值x还是旧值?