摘要: 在我之前的一篇博客 NullReferenceException,就不应该存在! 中,我吐槽了 C# 中 null 的弊端以及避免 null 的方法;事实上这本都是现代高级语言中极力推崇的做法。Kotlin 和 Swift 自诞生之日起引用类型就不能为空,C# 背着历史的包袱直到 8.0 才开始这么 阅读全文
posted @ 2017-12-30 14:46 walterlv 阅读(523) 评论(0) 推荐(0) 编辑
摘要: 一个按钮,点击执行一个任务。我们可能直接在它的 Click 事件中写下了执行任务的代码。 一般我们无需担心这样的代码会出现什么问题——但是,这样的好事情只对同步任务有效;一旦进入了异步世界,这便是无尽的 BUG! 重新进入(Reentrancy) ▲ 以上,在按钮点击事件中执行同步任务 上面的代码, 阅读全文
posted @ 2017-12-30 14:30 walterlv 阅读(257) 评论(0) 推荐(0) 编辑
摘要: WPF 自带的键盘焦点样式是与传统控件样式搭配的,但 WPF 凭着其强大的自定义样式的能力,做出与传统控件样式完全不同风格的 UI 简直易如反掌。这时,其自带的键盘焦点样式(FocusVisualStyle)就非常不搭了,改改会舒服得多。比如,改成 UWP 的样式。 本文将展示 WPF 自定义键盘焦 阅读全文
posted @ 2017-12-30 14:28 walterlv 阅读(574) 评论(1) 推荐(0) 编辑
摘要: 将文档放到代码里面,文档才会及时地更新! 微软从 .NET Framework 4.0 开始,增加了 System.Diagnostics.Contracts 命名空间,用来把契约文档融入代码。然而后面一直不冷不热,Visual Studio 都没天然支持。ReSharper 不知何时加入了 ReS 阅读全文
posted @ 2017-12-30 14:21 walterlv 阅读(692) 评论(0) 推荐(0) 编辑
摘要: Windows 10 的创造者更新为开发者们带来了 Connected Animation 连接动画,这也是 Fluent Design System 的一部分。它的视觉引导性很强,用户能够在它的帮助下迅速定位操作的对象。 不过,这是 UWP,而且还是 Windows 10 Creator’s Up 阅读全文
posted @ 2017-12-30 14:17 walterlv 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 不知你有没有看过 Linux 上 oh-my-zsh 的样子?看过之后你一定会惊叹,原来命令行还能这么玩!然而 Windows 下能这么玩吗?答案是可行的,接下来就来看看怎么玩。 Windows 下我们用 Oh My Posh 在 PowerShell 中实现这样的效果。先放一张我的美化效果图: 接 阅读全文
posted @ 2017-12-30 14:10 walterlv 阅读(1333) 评论(0) 推荐(0) 编辑
摘要: 当我们为一个委托写 -= 的时候,ReSharper 会提示“Delegate Subtraction Has Unpredictable Result”,即“委托的减法可能出现非预期的结果”。然而在写为事件写 -= 的时候却并没有这样的提示。然而这个提示是什么意思呢?为什么会“非预期”?为什么委托 阅读全文
posted @ 2017-12-30 10:56 walterlv 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 我给博客改了主题色,从 这样的 改成了 这样的;然而我问小伙伴看看效果他却并没有发现改变。 红绿色盲在亚洲人中占比,男性约 5%,女性则小得多。也就是说,就算仅考虑为国内用户开发应用,这也是很大的一部分用户了。 本文将通过更加了解色盲(Color Blindness)来指导我们为更多用户提供更好的 阅读全文
posted @ 2017-12-30 09:05 walterlv 阅读(1157) 评论(0) 推荐(0) 编辑