集成的版本控制
Visual Studio 2022 内置支持 Git 版本控制来克隆、创建和打开自己的存储库。 Git 工具窗口包含提交和推送代码更改、管理分支和解决合并冲突所需的一切内容。如果你有 GitHub 帐户,则可以直接在 Visual Studio 内管理这些存储库。
📑 代码分析工具:NDepend
NDepend是作为VisualStudio插件的最佳免费代码分析之一。它会立即、准确地检查源代码,从而呈现全面、定义明确和禁止的度量。
此外,NDepend还提供了强大的功能,可以分析您的代码并检查省份以及指标。此外,它定制分析的能力对项目来说是最好的。
让我们来看看NDepend的好处:
- NDepend提高了代码的可维护性。
- 开发人员使用此工具增强了对成本和风险的控制。
- 它与Visual Studio工具精确集成。
- 该工具提高了开发团队的生产力。
- 使用此工具,团队开发更好的代码。
- CQlinq定制代码分析的最佳帮助。
⭐ NDepend和SRP
避免类型过大
避免太多方法的类型
避免太多字段的类型
避免过大和过于复杂的方法
避免使用参数过多的方法
避免使用过多局部变量的方法
⭐ OCP 开闭原则
很多人认为开闭原则是所有原则中最难理解和应用的。所谓的开闭原则,指的是你的类型应该对拓展开放,但是对修改关闭。换句话说,对子类的增加一定不能导致父类的任何修改。NDEpend中的“基类不应该使用派生”规则通过指示基类永远不要提及其子类来帮助我们防止这种情况。
⭐ LSP 里氏替换原则
NDepend恰好有一条规则可以警告你这种情况,这条规则被相当恰当地称为“实现抛出NotImplementedException的方法。”
你会发现,在使用TDD时,此异常最有用。
⭐ ISP 接口隔离原则
接口隔离原则指的是:
不应强迫客户端依赖于不使用的接口。
为了遵循此原理,你应该使接口尽可能的小和精细。换句话说,你应该避免接口太大,这是我们现在要讨论的NDepend规则的确切名称。
⭐ DIP 依赖反转原则
所谓的依赖反转原则指的是:抽象接口不应该依赖于具体实现。而具体实现则应该依赖于抽象接口。
这条NDepend规则通过鼓励你将包含抽象的命名空间与包含具体内容的命名空间(即所述抽象的实现)分开来帮助你实现此目的。
📑 LINQPad
LINQPad适用于那些不喜欢质疑老式SQL语言的人,它是使用现代编程语言LINQ或SQL查询数据库的最佳选择之一。
LINQPad让开发人员有机会裁决代码行、测试片段和应用程序。
除此之外,对开发人员最有利的方面包括:
- 可选自动完成
- 输出格式
- 集成调试
⭐ 高级转储
正如你们中的许多人已经知道的那样,在控制台上打印东西你不必调用Console.WriteLine(somthing)
,但你可以使用somthing.Dump()
;
当然,这个简单的技巧会让你的代码更容易阅读!
好的,如果你有太多的 Dump 调用并且你不知道哪个操作打印哪个日志怎么办?幸运的是,该Dump
方法接受一个字符串作为 Title:该文本将显示在输出面板中。
⭐ 转储容器
转储容器是您的日志的某种接收器。实例化DumpContainer
对象后,您可以执行一些操作,例如AppendContent
在日志末尾附加一些内容、ClearContent
清除内容(显然!)以及Dump
在结果面板中显示容器的内容。
举个例子:我们想要遍历一个项目列表并使用一个 Container 来显示项目本身,并使用另一个 Container 来列出当我们对每个项目执行一些操作时会发生什么。
⭐ 从输入中读取文本
向我们的脚本提供输入的能力非常有用,但经常被忽视。
为此,您可以依赖Util.ReadLine
LINQPad 中已包含的方法:
运行应用程序时,您会在窗口底部看到一个黑框,允许您编写(或粘贴)一些文本。然后将该文本分配给myContent
变量。
⭐ 粘贴为转义字符串
这是我最喜欢的功能之一:很多时候我必须转义包含引号的文本,从其他地方复制以将其分配给string
变量;我过去常常浪费时间手动转义这些值(嗯,使用仍然比这个慢的其他工具)。
⭐ xUnit 测试支持
您可以用来玩弄您不知道的类或方法的另一个不错的功能是 xUnit 测试支持。
通过单击Query > Add XUnit Test Support,您可以将 xUnit 添加到您的查询中并编写(并运行,显然)单元测试。
📑 ReSharper
ReSharper已经有十多年历史了,但软件市场对该工具的需求仍然很高,以帮助.Net工具的开发人员进行编码。这些工具在开发人员中的流行是因为不断更新和开发最新功能。
这个工具最好的部分是它是对VisualStudio的增强,这意味着它为开发人员提供了一个全新的功能部分。
它被认为是Visual Studio的扩展,ReShaper以其独特的代码分析技能向前迈进了一步,当它检测到一些代码气味和代码泄漏时,它会立即纠正代码。
ReSharper.NET开发工具,其中包括非常重要的代码设计,.NET框架的开发人员可以从Visual Studio课程设计中获得这些设计。它可以在整个设置中轻松重构。
⭐ Resharper安装后的改变
VisualStudio的启动速度
VS启动变慢了,大约比之前会慢5-10s,所以,还是机械硬盘的同学赶紧换一块SSD吧;
你的任务管理器里面VisualStudio的内存开销变大了,所以,机器内存不足8GB的赶紧再加一根4GB的内存条吧;
安装后,Resharper会用他自己的英文智能提示
替换掉了VisualStudio的智能提示。
快捷键
使用VisualStudio的快捷键还是使用 Resharper的快捷键呢?我是使用Resharper的快捷键。
菜单和窗口的改变
Visual Studio菜单栏出现Resharper选项,包含了所有的命令(除了仅在上下文中可用的命令)。特定命令的工具窗口。所有工具窗口可用Resharper->Windows菜单调用。
简单上手
你可以简单地这样体验一下:Ctrl+Alt+Insert,回车,就可以在当前项目中添加一个类,还记得以前你是怎么做的吗?在解决方案资源管理器中选中一个项目,然后右键,在长长的弹出菜单中选择:添加——类,如果你的电脑够慢的话,我猜可能要在3秒钟之后才会弹出一个对话框来问你文件名。
📑 NuGet
NuGet让Microsoft建立了一种共享代码的机制,该机制定义了.NET的包,这些包是制作、促进和扩展的。
开发人员利用NuGet包来共享代码,这对于社区、企业、企业和工作组都是非常谨慎的。他们还可以使用包作为最简单的技术,将自己的代码用于项目中。
Nuget是 ASP .NET Gallery 的一员。NuGet 是免费、开源的包管理开发工具,专注于在 .NET 应用开发过程中,简单地合并第三方的组件库。
当需要分享开发的工具或是库,需要建立一个Nuget package,然后把这个package放到Nuget的站点。如果想要使用别人已经开发好的工具或是库,只需要从站点获得这个package,并且安装到自己的Visual Studio项目或是解决方案里。
NuGet能更方便地把一些dll和文件(如jquery)添加到项目中,而不需要从文件中复制拷贝。
📑 NUnit
NUnit是一个开源框架,用于设计和运行各种Microsoft.NET编程语言的测试。该工具可用于连续运行的测试以及同时运行的众多测试。
这个.NET开发工具还提供了快速的测试结果,它不需要人为地澄清测试结果。除此之外,该工具可以可靠且毫不费力地修复bug。
⭐ NUnit的基本用法
和其他xNUnit框架不同的是,NUnit框架使用Attribute(如前面代码中的[Test])来描述测试用例的,也就是说我们只要掌握了 Attribute的用法,也就基本学会如何使用NUnit了。VSTS所集成的单元测试也支持类似NUnit的Attributes,下表对比了 NUnit和VSTS的标记:
usage | NUnit attributes | VSTS attributes |
---|---|---|
标识测试类 | TestFixture | TestClass |
标识测试用例(TestCase) | Test | TestMethod |
标识测试类初始化函数 | TestFixtureSetup | ClassInitialize |
标识测试类资源释放函数 | TestFixtureTearDown | ClassCleanup |
标识测试用例初始化函数 | Setup | TestInitialize |
标识测试用例资源释放函数 | TearDown | TestCleanUp |
标识测试用例说明 | N/A | Description |
标识忽略该测试用例 | Ignore | Ignore |
标识该用例所期望抛出的异常 | ExpectedException | ExpectedException |
标识测试用例是否需要显式执行 | Explicit | ? |
标识测试用例的分类 | Category | ? |
📑 SQL Multi Script
创建SQL多脚本是为了加快DBA和数据库开发人员的数据库性能,SQL多脚本允许在多个SQL Server上快速轻松地完成多个脚本。
SQL Multi Script只需单击一次即可针对复杂的SQL Server执行各种脚本。此工具允许.NET开发人员在多个SQL服务器上执行多个脚本,并通过减少所需的步骤来节省.NET开发人员的大量时间。
此外,它还可以在结合了快速编辑功能的有效界面内对数据库进行清晰的查询。
SQL多脚本只需单击一次即可针对多个SQL Server执行多个脚本。
SQL多脚本的优点:
- 只需单击一次即可在多台服务器上部署多个脚本
- 并行查询数据库
- 通过汇总结果节省时间,便于分析
- 使用直观的界面快速编辑查询
📑 Stackify Prefix
Stackify Prefix是可用于Java和.NET开发的轻量级桌面分析器之一。尽管Prefix工具目前仅在Windows上运行,但从长远来看,您仍然可以找到支持其他操作系统的计划。
Stackify前缀用于.NET和.NETCore应用程序的概要文件,这些应用程序利用性能数据进行回收。
例如,开发人员获得Stackify Prefix的支持,以跟踪应用程序中任何程序的执行。此外,您还可以跟踪SQL查询、HTTP请求、日志等。
可以使用 Stackify Prefix 的最佳方法是查看应用程序日志并将正确的日志附加程序(log4net、NLog 或 Serilog)添加到您的项目中。
📑 Microsoft Web应用程序库
该工具是一个免费的软件包管理工具,可以轻松接收Microsoft Web平台的修改和新部分,包括:
.Net Framework
IIS
Visual Web Developer
SQL Server Express
此外,该系统还为.Net开发人员提供了现代化、新的更新和每个部分的最新模型。
Web PI执行,这很容易建立和运行最成功的免费Web应用程序,用于博客、内容管理和内置的Windows Web应用程序库。
📑 Windows 软件包管理系统:Chocolatey
最后一个是Chocolatey,它是Windows的免费软件包工具之一。Chocolatey支持设计软件包并使用市场上熟悉的工具进行部署。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
olatey支持设计软件包并使用市场上熟悉的工具进行部署。
[外链图片转存中…(img-deZPvkqE-1714334518459)]
[外链图片转存中…(img-yP4ZvJMm-1714334518461)]
[外链图片转存中…(img-cIUGTgmD-1714334518462)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新