几个高效使用Visual Studio 的小技巧

[原文发表地址]: Visual Studio’s most useful (and underused) tips [原文发表时间]: August 17, ’16   在我之前的博客中有一条很酷的评论。 评论内容是这样的:顺便说一下,”直到我意识到可以在解决方案资源管理器中的节点进行搜索”, 这个真的可以节省很多时间。 评论者Sam,注意到在我的博客里,我提到了”解决方案资源管理器可以进行文本搜索“。在Visual Studio中有很多这样的小技巧,即使是最有经验的开发人员有时也会忽略掉。当然, 这种现象不仅限于Visual Studio,而是会存在于所有软件中! 人们在Windows,OSX,iPhone中每天都会发现一些非显而易见的用户体验。 有一个关于微软Office有很多功能的众所周知的老笑话. 你可以从此文及评论中看到:“你所发现的在Office 当中大多数很棒的新功能一直存在于Office当中”   这里有一些人们在使用VisualStudio的时候经常错过的,非常有用的东西(顺便说一下,它们是可以免费下载和使用的)。   在解决方案资源管理器当中使用“Ctrl +;”进行搜索 你可以点击在解决方案资源管理器上方的那个文本输入框来搜索可见或者隐藏的所有的节捷键是“Ctrl+;” 即使是在整个解决方案底层的文件。结果显示模式是按照节点过滤的形式,并且会保持住,直到你清空了搜索的内容。   快速启动– Ctrl+Q 如果说有一个功能是大家都应该使用,但是没有人使用的话,它就是快速启动。有人告诉我说快速启动的内部遥测数据显示使用率是在个位数,或者更低。 你知道你(或者说我们)正在不断的在菜单中挖掘要使用的功能吗?大多数人使用鼠标打开“工具…选项…“,然后一直寻找。 想要改变字体大小? 只要按“Ctrl+Q”,然后输入”font”。 想要对比文件?你知道VS有那个功能吗? 找一个NuGet 包比使用NuGet对话框还要快。 答应我,你会使用“Ctrl+Q”一段时间。看看是否会养成一个使用它的习惯。我想到时候你会感谢你自己的。   滚动条的缩略图模式 我喜欢给人们演示能够让他震惊的功能。比如说是“我都不知道有那个功能”。试试在快速启动里面输入“模式”,然后启用它。接下来在一个大文件中看看你的滚动条。 你的滚动条会变成缩略图,你可以将你的鼠标悬停滚动条上,然后导航到你的文件去。   标签管理 很多人用以方式管理他们的标签。 打开标签 再打开一个标签 不需要标签了 关掉所有标签 重复第一步 其实,你是可以使用”固定标签“和“预览标签”的。…

0

开发过程中的两个快速简单的Web应用程序负载测试工具介绍

[原文发表地址]: Two tools for quick and easy web application load testing during development [原文发表时间]: August 10, ’16   今天早上我参加了ASP.Net社区会议,Jon提出了一种名为“Netling”的新负载测试工具。这使我想到了一种更为简单的轻量级负载测试。我用过像SilkTest和类似于Azure和Visual Studio的基于云计算的负载测试工具那样的大型企业系统。我也用过命令行工具,比如像WCAT,一种古老却很强大的负载测试工具。 我打算花一点时间去观察两种工具在本地的运行情况,目的是看看我如何轻松快速地完成负载测试和迭代的结果。   Netling Netling是由Tore Lervik 针对简单快捷的Web测试所设计的一个不错的小负载客户端测试仪。更棒的是,它在GitHub上并且是开源的。阅读他人的代码是比较有趣的。 Netling包括一个WPF版和控制台客户端版。使用WPF版本进行测试时,可以选择性的标记一个测试作为一个基准,然后根据你的喜好,做一些小小的改变并且快速的重新测试。如果进展顺利的话,你将会获得红色(坏)或者绿色(好)的测试结果。这个可能需要进行进一步调整,以确保其对红绿色盲可见。不管怎么说,它是一个用户界面简洁的测试工具,相信你也会将它列入到你常用的工具夹中并且经常使用它。 请记住,在不是自己的Web服务器上做负载测试是不太好的。 请注意现在没有正式的发布,所以你需要去克隆这个repro,并且去创建App。幸运的是, 它在Visual Studio2015 社区 的免费版本下创建起来非常简单。 Netling客户端控制台是以其简洁的ASCII图表著称。 D:\github\Netling\Netling.ConsoleClient\bin\x64\Debug [master ≡]> .\netling.exe http://www.microsoft.com -t 8 -d 20 Running 20s test @ http://www.microsoft.com/     Threads:        8     Pipelining:     1     Thread afinity: OFF…

0

Windows 10 “周年纪念版“的键盘快捷键集锦

[原文发表地址]: Collecting Windows 10 “Anniversary Edition” Keyboard Shortcuts [原文发表时间]: August 5, ’16   我是一个使用键盘快捷键的超级粉丝! 在业内人士提供的一个内部的window 10‘反馈中心’应用程序上,有一个非常有用的Window 10 快捷键列表。应用程序的直接链接地址请点击这里。但是由于列表中有太多有用的信息是不能被共享的,所以我觉得他们应该不会介意我将列表中的内容复制在网页上。 还有一个非常有用的网页,是关于Window 7, 8.1 和10 的键盘快捷键列表。 “我们向团队的工程师提议分享一些他们最喜欢的(和一些较不为人知的)window 10 的快捷键。下面是我们整理的一些快捷键列表!”   注: 【新】表示window 10周年纪念版里新增的键盘快捷键 基本系统功能的快速访问: Ctrl + Shift + Esc: 打开任务管理器。 WIN + F: 打开反馈中心,可以在反馈内容中附上截图。 WIN + I: 打开‘设置’应用。 WIN + L: 将锁住你的电脑。 WIN + X:  打开上下文菜单, 浏览有用的高级功能。 WIN…

0

Windows 10 “开发者模式”

[原文发表地址] Windows 10 “Developer Mode” [原文发表时间] July 20, ’16 再过几个星期,新的Windows 10更新版就要问世了。它也被称为Windows 10 “周年纪念版”(我会称它为10.1),而且它还包含了很多不错的改进。自从Windows 10发布以来,已经持续更新了好几次,而且这次更新又加了很多很酷的东西,像支持Bash on Ubuntu for Developers。对于那些说他们“等待第3版”的人而言,这次到来的更新版就是第3版了。 我注意到,在Windows 设置中有一个特定的设置部分,而且这块似乎也得到了更多的喜爱,对此我个人也是非常支持的。我希望我们(开发人员和超级用户)会注意到在这个部分的一些真正投入。如果你读完这篇文章后同意我说的,就在在评论中说出来,也许会有在微软的某些人注意到并且也赞同。 假如你去这些新版本的Windows 10上设置应用程序,你将会看到有一个”对于开发者”的新菜单项。在操作系统中它是一个正式的地方,在这里我可以告诉它我是一名开发人员。 我可以说 ”我想要这台机器处于开发者模式“。 在 Insider版本的开发者模式下面,有一个很好的将开发者和超级用户相关设置放到一个根目录下的设置选项。更棒的是,你已经知道了这些设置。作为一名开发人员,你可能会安装Windows,然后就围绕着Windows资源管理器、注册表和一些其他地方去做一些适合开发人员的设置。 例如,对于Windows资源管理器,非技术人员的父辈不需要去看隐藏的文件或者在标题栏显示完整的路径。但是我需要这些,而这些设置都可以在一个地方完成。 说正经的,”标题栏的完整路径”这个功能非常有用。我曾经说过 “这个完整路径应该是默认的“。现在我意识到了它不应该是默认的。对于开发者来说它应该是默认的。 还有一些用于远程桌面,PowerShell和远程诊断的设置选项。 今天这个新的开发者模式设置页面看起来像是一个便捷设置的不错组合,但是我坚信它会有更出色的潜力,再重申下我是一名开发者。 我希望在将来能看到(在这里头脑风暴下,因为我不在Windows开发部门)一种快速的方式去开启 Bash on Ubuntu on Windows 10,或者快速的下载VS代码或者Visual Studio 社区版,获取.NET核心,安装Python, 安装移动设备模拟器,安装 SysInternals或者设置我的系统进行远程调试。 你觉得怎么样?

0

一些很棒却被大家遗忘的Windows命令提示符功能

[原文发表地址]: Forgotten (but Awesome) Windows Command Prompt Features [原文发表时间]: June 20, 2016   我们经常会再去翻阅一些之前的一些小推文,它们可能是很随意地写出的,而且是写完后就置之脑后了。就像那天飞机起飞前,我正在用命令行做一些操作,通过输入”dotnet –version | clip” 来复制 .NET core 版本号到剪贴板。然后,我就在推特上发布了一条消息:”嘿,还记得这个伟大的功能吗?“。两小时后我下飞机,这条消息竟被转发了500次。好疯狂呀。 这真是太有意思了,因为这个正在被人们渐渐淡忘的命令提示符是最早发布在Vista系统,距今已有10年了,如今却引起了如此强烈的反响。 既然大家都挺喜欢这个,这里还有几个 “被遗忘的命令提示符功能”。 有一些是Windows 中一直存在的,甚至是DOS 中就有的。有些是Windows 10 中新增的。如有补充,可在评论中及时添加。   管道命令输出到剪贴板 在Vista中他们增加了clip.exe。它可以捕获任何的标准输入并将其放入剪贴板中。 这就意味着你可以: dir /s | clip ver | clip ipconfig /all | clip   F7键可以给你一个图形(文本)的历史 如果你已经输入了几个命令,可以按F7获得一个包含已经输入命令列表的ANSI弹出框。   调整命令提示符的透明度 在windows10之后,您可以调整命令提示符的透明度了!   全屏命令提示符 按“ALT-ENTER”键可以使命令提示符(包括prompt, cmd, powershell,…

0

WallabyJS 是在IDE或者编辑器中灵巧且功能强大的JavaScript测试执行工具

[原文发表地址]: WallabyJS is a slick and powerful test runner for JavaScript in your IDE or Editor [原文发表时间]: January 13, 2016   这周我的一个朋友提醒我说让我去试用一下WallabyJS。我在WallabyJS没有很成熟之前有用过WallabyJS一段时间,但是我没有安装最新版本的WallabyJS。喔,它现在变得很漂亮并且很好用了。如果你喜欢编写JavaScript的话,你应该去亲自试一试的。基于以下几点原因,它同时也是超级快的。 Wallaby.js 是非常非常快的,因为它只是执行你的Code变化影响到的测试用例, 并且同时执行多条测试用例。 WallabyJS 有专门针对InterlliJ平台的插件,Visual Studio, Atom, 和Visual Studio Code预览版和文本编辑器的支持也会很快到来。 它支持TypeScript, CoffeeScript, 和ES7。Wallaby 在执行测试用例的时候支持Jasmine,如果你想添加自己的测试框架和断言库,也是可以的。 因为Code支持扩展,所以现在在Visual Studio Code 中安装WallabyJS是非常简单的。 一旦你安装了扩展应用,就会下载需要的一些东西和WallabyJS启动程序。我在安装的时候碰到了一个小问题, 但是卸载后重新安装就解决了这个问题, 所以可能只是一个临时性问题。 如果你不想要很多的安装,而是想要快速行动的话,只要这样克隆下他们的计算器实例: git clone https://github.com/wallabyjs/calculator-sample.git 只有一个需要注意的是,目前的情况是在你安装完WallabyJS之后,你必须要自己手动去启动服务。 一旦它启动起来,就几乎是全自动了,而且你可以添加和保存测试用例,你可以使用快捷键或者是Visual Studio Code 命令窗口进行操作。 能够在Visual Studio中看到这样非常好用的工具真是太棒了。请记住你可以通过code.visualstudio.com获得针对任何平台的VSCode(现在已经开源了!),并且你能在WallabyJS的门户网站下载到WallabyJS。

0

如何托管自己的NuGet Server和 Package Feed

[原文发表地址] How to host your own NuGet Server and Package Feed [原文发表时间] April 13, 2016   托管自己的NuGet Server,尤其当你是一个公司,或者甚至是一个小的工作团队,这都是一件非常有用的事情。 这是一个能够确保每个团队建立的组件都是NuGet程序包的很好的方法,并且其他团队也可以使用这些包文件,而不是使用松散的DLL文件。 很多人(包括不久前的自己)不知道Visual Studio Team Services还为您的团队提供私人的NuGet Feed ,所以这是非常受人喜欢的。但是我想要尝试建立我自己的快速NuGet Server。我可以把它放在我私人的web服务器上或者是Azure上。   从NuGet网站可以知道: 有几个第三方可用 的NuGet 服务器使远程私人的包文件易于配置和设置,包括Visual Studio Team Services , MyGet , Inedo’s ProGet,JFrog’s Artifactory,NuGet Server 和 Sonatype’s Nexus。请参见An Overview of the NuGet Ecosystem去了解更多有关这些选项的概述。   将共享文件或者目录作为NuGet Server 从NuGet 3.3开始, 你可以只使用一个本地文件夹,它可以建立分层…

0

.NET基准测试代码

  [原文发表地址] Benchmarking .Net code [原文发表时间] February 25, 2016 前不久我发布了关于诊断和解决.NET序列化瓶颈的标准化基准, 也邀请Matt Warren 做客我的播客,然后我们做了一集关于性能作为特色 的展示。 今天Matt 正在与Andrey Akinshin 一起在称 为BenchmarkDotNet的开源库上工作。这 个库已经成为一个功能非常完善的.NET标杆库,并正被一些大项目使用。它甚至被 Ben Adams用在“Kestrel”的基准讨论中。 通常来讲基准属性其实非常类似于测试,例如:   其输出结果是极其友好的,就如下表所所示。你甚至可以方便地将它们粘贴到GitHub的问题表中。   通常来讲,它正在做一些你我可能都会做错的事情,关于基准测试的令人感到无聊的数据比特流。你可以参考很多关于框架的例子和CLR内部属性进行了解。 最后,它包含了大量的,能够使我们更容易地写出基准测试程序,包括CSV /减码/文本输出,参数化基准测试和诊断程序。加上它现在可以告诉你给每个基准所分配的内存,你可以参考Matt的最近的一篇博客获取更多细节的信息(通过使用ETW事件实现,如PerfView)。 社区里有许多了不起的测试基准。ASP.NET core近期达到每秒收到1.15万个请求的记录。 它每秒超过了12.6 Gbps。用户们看到了完善的在ASP.NET核心上进行的性能改进与升级(前身叫做ASP.NET RC1)。 相信这将是伟大的一年!一定要在GitHub上探索关于ASP.NET的基准https://github.com/aspnet/benchmarks,正如我们向TechEmpower基准探索一样! 您在使用什么基准测试你的代码?

0

Github活动的不足和编码人的FitBit

[原文发表地址]GitHub Activity Guilt and the Coder’s FitBit [原文发表时间]February 9, ’16 我今天收到Corey P.发的一封有趣的邮件. 经过允许转载了一部分。 我很好奇,你觉得GitHub的活动图怎么样?我发现自己对这个图越来越内疚/有压力。以至于我考虑着个人项目不再用GitHub 了(仅仅用它来拉请求,报告问题等等)。 我不禁觉得别人会用它来评价我(假综合症?)。我有种痛苦不堪的感觉,我需要公开的做些事情以便我可以有某种形式的书面记录,否则我会被别人瞧不起的(雇主们?同事们?) 这是一个很好的问题。让我们看一下我的GitHub图。 呀!这个图是好还是坏呢?从九月至十一月,虽然我访问了很多次,但是它还是相当的简单。 或许是Damian Edwards? 他带领ASP.NET,虽然他不是技术上的开发者(就人力资源而言),但他以我两倍的贡献值打败了我 OK,让我们看下真正的竞争者是什么样子呢,下面这个图是Monica Dinculescu,谷歌员工和Polymer的开发师: 还有David Fowler,ASP.NET的架构师和开发师。 到这里我们的收获是什么呢?是我很糟糕和Monica很厉害吗?(是的, 不过,我的确很糟糕, 还有请听一下Monica在最近的一个播客中给我讲的Web 组件) 这是我对那些图表的想法,我对你的看法也很感兴趣。 § GitHub的活动图显示的是公共版本库的活动,而不是私人的活动。 § 本周我有很多小的项目在私人或者本地的版本库上在做,有时我并没有把它们公开由于我正在做的工作有些(轻微)的尴尬。 § 这样衡量自己与他人并不总是明智的,尤其是如果它让你感到不好或者有些不舒服。 § 工作岗位不同。作为一个管理者有时需要你从编码中走出来。 § 如果这个图困扰你,设定一个合理的目标并朝着这个方向努力,但是做要应有个好的理由。(看合理性和合理因素的程度有多大?) 我能像monica或者david一样多产吗?可能不会,但是知道图的最高值也不错啊。同时,我们有不同的工作,Monica正在积极的做一个公共的开源项目,而我目前没有提交代码到ASP.NET核心。即使是Damian, 一个ASP.NET核心的项目经理,也不可避免的陷入“管理”这个图中,我怀疑他会重新考虑一下他的绿色的图。 我的工作目前没有像我平常那样把代码提交到公共版本库,但是我不会让这个表决定我在这个团队中的价值,我会把它作为我众多衡量标杆的其中之一,我也会鼓励你这样做。也许可以设定一个目标一周向一个开源软件项目提交几次代码? GitHub活动关系到招聘 Sasha Laundy在推特上对于你的GitHub活动图提出了一些重要观点。她说: 如果说GitHub提交代码只是业余项目,什么样的人会有时间去做这个呢?如果在招聘中因为你的公共的信息而被不信任,那它是如何影响公平和差异的呢? 她有一个很好的观点。值得争论的是,考虑到Github活动图只显示公共活动,基于这个做出判断自然倾向于以下: § 已经熟练编码的人VS代码新手 § 有更多的空闲时间的人,例如:年轻人,单身者,等等 § 在OSS全职工作的人(他们的公司支付他们,让他们公开提交代码) 她指出,如果你的GitHub的活动页面像你的LinkedIn那样差不多被重视,你怎么能知道基于此图你是否已经被悄悄地排斥工作之外呢?如果你是刚刚开始或者是一个20年的企业软件开发人员,你可能最终会得到一个空的图表和发现一个无知的招聘人员基于他们看到多少“绿色”而埋没了你的潜力或经验。…

0

在线实时编程的乐趣 – CodePen, REPL, TOPLAP, Alive, 以及更多

[原文发表地址]The Joy of Live Coding – CodePen, REPLs, TOPLAP, Alive, and more [原文发表时间]February 17, ’16 几周之前,我谈论了关于使用C# 和F# REPLS 代码交互的话题。似乎整整一代人错过了LIVE CODING, 我的意思是说,编写代码与编译代码同时进行。 很多人在使用C, C++, Delphi、C#、Java等语言编程,甚至已经超过15-20-30 年,他们有着非常标准的编写、 编译、调试、运行进程的习惯。二十多年前,我经常会等30分钟或更长的时间去完成某件事,现在只需要几秒钟。如今你们中的许多人都必须等待几小时来编译。 然而,如今很多可用的环境允许我们可以在运行的时候编写代码。这让人马上感到欣慰以及浏览器成为一个出色的实时编程的IDE。 在使用”Live Cording”一词的时候,他有多种定义。我故意将他们混为一谈,但实际上他们是不同的定义。Live Cording是分为”coding LIVE while people watch” 以及 “coding and watching your program change as you type”。当然,你可以认为他们是两个部分,但是我把它们混为一谈。 在线实时编程– 音乐和艺术 Mike Hodnick 谈到的在线实时编程对于我来说就是在音乐和艺术的背景下进行。实时编程使用广泛的语言和技术去制造音乐和艺术,包括 JavaScript、 Ruby、Haskell,Clojure,和DSL 的数目。这里有一个Mike的YouTube视频播放器 – 使用Tidaly音乐在线实时编程,是一种语言的即兴演奏。 资源…

0