C#最佳工具集合:IDE、分析、自动化工具等
C#是企业中广泛使用的编程语言,特别是那些依赖微软的程序语言。如果您使用C#构建应用程序,则最有可能使用Visual Studio,并且已经寻找了一些扩展来对您的开发进行管理。但是,这个工具列表可能会改变您编写C#代码的方式。
C#编程的最佳工具有以下几类:
-
IDE
-
VS扩展
-
编译器、编辑器和序列化
-
反编译和代码转换工具
-
构建自动化和合并工具
-
版本控制
-
测试工具和VS扩展
-
性能分析
-
APM
-
部署自动化
-
容器
使用上面的链接直接跳转到特定工具,或继续阅读以浏览完整列表。
IDE
1. Visual Studio Code
Visual Studio Code是C#开发人员最受欢迎的代码编辑器。您可以使用Visual Studio Code与C#扩展功能实现强大的编辑功能,并完全支持C# IntelliSense和调试。
主要特征:
-
优秀的自动完成与上下文感知提示
-
内置Git集成,实现更好的版本控制
-
大量的扩展进一步增强平台
2. MonoDevelop
由Xamarin开发,MonoDevelop具有许多与VS Code相似的功能,也是跨平台的。使用MonoDevelop,您可以在Windows,Linux和Mac OS X上快速编写桌面和Web应用程序。
主要特征:
-
标准功能,如代码提示和调试
-
还配有Unity,一个游戏引擎,可以为视频游戏等应用程序实现高级C#编程
-
支持C#代码提示
-
代码模板和代码折叠
-
多语言支持
3. SharpDevelop
一个用于C#、VB.net和Boo项目的免费开源IDE,#develop(SharpDevelop)是VS Code的轻量级替代品。
主要特征:
-
Visual Studio提供的通常功能,包括代码编辑,编译和调试
-
一些高级功能包括上下文操作和后台语法检查
4. Rider
Jet Brains产品套件中一个成员,Rider是基于IntelliJ平台和ReSharper的跨平台.NET IDE。
主要特征:
-
与其他JetBrains产品无缝集成
-
2000多种代码检查
-
上下文操作
-
支持Unity游戏引擎
-
支持.NET Framework和.NET Core
Visual Studio 扩展
5. Productivity Power Tools 2017
由Microsoft提供,这是一个很好的扩展,以加快Visual Studio的开发。
主要特征:
-
中间点击滚动
-
快速查找
-
解决方案错误可视化
-
直观的界面
-
其它版本可用于旧版Visual Studio版本
6. jQuery Code Snippets
简化jQuery框架编码,jQuery Code Snippets为Visual Studio 2012,2013,2015和2017提供了超过130个代码段。
主要特征:
-
130多种jQuery代码片段
-
支持所有版本的Visual Studio
-
对于那些刚入门jQuery开发人员来说非常棒,可以使用这个扩展来学习jQuery的门道
7. CodeMaid
CodeMaid是一个开源的VS扩展,可以帮助您清理和简化除C#之外各种支持语言的代码。
主要特征:
-
从代码中删除不必要的字符,如空格
-
代码整理
-
使用树型结构视图轻松浏览代码
-
支持多种语言
-
注释格式
8. Refactoring Essentials
使用Refactoring Essentials,一个具有内置的C#和VB代码转换器的VS扩展,使您的C#代码更容易阅读和修复常见错误。
主要特征:
-
修复常见的错字和编码错误
-
在代码库中找到每种不匹配的样式
-
开源代码,您可以扩展或改进它
编译器、编辑器和序列化
9. SlickEdit
SlickEdit是一个代码编辑工具,可以提高生产力并提高代码质量。它是一个跨平台的代码编辑器,可在九个平台上支持超过60种语言(包括C#)。
主要特征:
-
编译并调试您的代码,显示所有错误以便行快速访问
-
可以处理非常大的代码文件,大到2TB
-
语法扩展和缩进
-
按键模拟
-
备份历史记录
-
多个光标和选择
-
标准和专业版可用于满足您的需求
10. Rextester
Rextester(代表正则表达式测试器)是C#的简单在线编译器。
主要特征:
-
每段代码运行CPU时间最多为5秒
-
每段代码最多可以占用150MB内存
-
代码在应用程序域中运行,具有基本的执行、反射、线程控制和web权限
11. C# Pad
C# Pad是C#的一个方便的REPL工具。使用起来很简单:输入代码,点击“Go”执行。
主要特征:
-
在线快速测试C#代码
-
包括代码自动完成
-
可嵌入其它网站
12. Jdoodle
另一个轻量级代码编译器,Jdoodle支持63种语言(包括C#),并允许您保存程序并与其他人共享URL。您可以将Jdoodle中创建的代码嵌入到您的网站,用于协作,在线访问等。
主要特征:
-
在线快速测试一小段代码,而无需打开IDE
-
轻松地与他人分享您的代码
-
API即将推出
13. .NET Fiddle
C#的一个流行的调试工具,.NET Fiddle的灵感来自于JSFiddle.net,旨在快速,简单的代码测试,而无需打开Visual Studio并创建一个新的项目。
主要特征:
-
让您编写,保存和协作C#代码
-
支持4种项目类型:控制台,Script,MVC,Nancy
-
还支持VB.NET和F#
14. Telerik Fiddler
Telerik Fiddler允许您在线执行代码。它提供了一系列功能,包括Web调试、Web会话操作、性能测试、安全测试等。
主要特征:
-
运行一系列测试,如性能测试、Web调试和安全测试
-
FiddlerCore可让您将Fiddler应用程序嵌入到您自己的应用程序中,以便您可以避免整个Fiddler UI,还可以获得Fiddler的所有功能
15. Json.NET
Json.NET是一个流行的JSON框架。使用它,您可以在任何地方(Windows,Windows Store,Windows Phone,Mono和Xamarin)运行它时,创建、解析、查询和修改JSON,在XML和JSON之间进行转换。
主要特征:
-
对.NET对象进行序列化和反序列化
-
查询JSON数据库
-
使用JObject,JArray和JValue对象创建、解析、查询和修改JSON
-
开源
16. Scriptcs
一个简单的在线编辑器,编写和执行C#代码,Scriptcs被设计为非常简单,以避免使用过于复杂的工具和解决方案阻碍您的工作效率。
主要特征:
-
避免完整IDE的臃肿
-
为您提供简单的C#编码任务的灵活性和速度
-
管理与NuGet的依赖关系
-
优雅的C#脚本语法
反编译和代码转换工具
17. dotPeek
dotPeek允许您将.NET程序集反编译为C#。dotBeek是JetBrains提供的免费独立工具,基于ReSharper捆绑的反编译器。
主要特征:
-
强大的搜索和导航功能
-
将任何.NET程序集解码为等效的C#或IL代码
-
支持多种格式(.dll、.exe、.winmd)
-
将反编译的程序集保存为Visual Studio项目
18. ILspy
基于Red Gate的.NET Reflector开源反编译器,在2011年停止维护,ILspy需要.NET Framework 4.0。
主要特征:
-
浏览程序集并将其反编译为C#
-
将程序集保存为C#项目
-
直观的搜索和导航功能
-
导航历史
-
支持C#5.0 “async”
-
反编译为VB和C#
19. JustDecompile
一个来自Telerik的反编译器,JustDecompile是一个免费的开源反编译引擎。
主要特征:
-
可扩展的开放API
-
快速代码导航
-
轻松地在标签页中切换方法和程序集
-
在加载程序集中使用书签
-
从反编译的程序集创建一个Visual Studio项目
-
Visual Studio扩展在VS项目中进行反编译
20. Telerik Code Converter
Telerik代码转换器将VB代码转换为C#,反之亦然。一个简单而强大的工具,Telerik代码转换器易于使用,具有直观的界面。
主要特征:
-
基于云的转换,快速和轻松的
-
使用NRefactory库进行复杂的代码转换
-
使用ASP.NET AJAX的Telerik UI
构建自动化和合并工具
21. Cake Build
Cake(C#Make)是C#版的开源Make Build自动化工具。一个跨平台构建自动化系统,Cake使用C# DSL来编写代码,运行单元测试,复制文件和文件夹,压缩文件和构建NuGet软件包等任务。
主要特征:
-
在Windows,Linux和OS X上可用
-
建立与其他CI系统相同的方式
-
支持构建工具,包括MSBuild,MSTest,xUnit,NUnit,NuGet,ILMerge,WiX和SignTool
-
高可扩展
22. MSBuild
MSBuild是由Microsoft于2008年推出的。它不是Visual Studio平台的一部分,但它是您的C#开发工具包的一个很好的资源,例如在您构建代码项目时,除了解决方案之外。
主要特征:
-
来自微软,它被许多MS商店广泛使用
-
微软把它放到了Visual Studio中确保它不会成单独存
-
构建多个项目
-
构建Win32,x86,x64或任何cpu平台
-
为多个平台构建多个配置
23. FinalBuilder
FinalBuilder是构建自动化工具的一个很好的商业选择。使用FinalBuilder,您不需要编辑XML或编写脚本来自动完成构建过程。
主要特征:
-
通过包括可视化调试,使构建变得容易
-
可视地定义和调试构建脚本
-
使用Windows调度程序安排脚本
-
与Continua CI,Jenkins或任何其它CI服务器集成
24. SemanticMerge
SemanticMerge分析您的代码,旨在处理已被移动或修改的代码,使其成为团队协作的强大工具。
主要特征:
-
实现协作和分布式开发
-
从结构合并开始,然后在发生冲突时移动到更具体的基于文本的合并
-
基于结构而不是位置合并
-
处理特定于语言的冲突
-
避免错误地识别自动合并
-
保持清洁的代码并分析更改
版本控制
25. Git
Git就不需要介绍了。这是一个免费的开源版本控制系统,也是当今最流行的版本控制系统。
主要特征:
-
现代版本控制工具,适用于当今地理位置分布的团队
-
包括强大的默认值,用于解决冲突,自动恢复等
-
便宜的本地分支
-
方便的暂存区
-
多个工作流程
26. Team Foundation Version Control
TFS版本控制是Microsoft替代Git的一种,它集成到Visual Studio中。它是企业准备的,所以对于使用VS项目的任何规模的团队来说,这是一个不错的选择。
主要特征:
-
利用Visual Studio功能提供本地体验
-
跟踪分支机构的代码更改
-
在代码签入之前提供反馈
-
集成最流行的CI和自动化构建工具
27. BitBucket
BitBucket是Jira的Git替代品,也是一个有能力的版本控制工具——“唯一一个大规模的协作的Git解决方案。”
主要特征:
-
使用内联注释选项更快地协作
-
由于代码是开源的,还是让Jira为您管理代码
-
拉请求允许更有效的代码审查批准
-
使用BitBucket数据中心进行不间断的访问
-
无限私有存储库
28. SourceTree
SourceTree是另一个Jira产品,一个用于Windows和Mac的免费Git客户端,具有简单的Git GUI来管理您的仓库。
主要特征:
-
支持Windows和Mac
-
与您的存储库进行视觉交互
-
简化分布式版本控制
-
对初学者来说足够简单 足够强大的专家
测试工具和VS扩展
29. LINQPad
一个用于即时测试C#,F#和VB中的代码片段的工具,LINQPad可以让您以交互方式查询数据库。
主要特征:
-
有自己的查询语言 - LINQ,这是一个强大的查询数据库的方法
-
非常适合学习C#,因为它为您提供了IDE的许多功能,而不臃肿
-
在LINQ(或SQL) - SQL/CE/Azure、Oracle、SQLite和MySQL中查询数据库
-
丰富的输出格式
-
脚本并以您首选的.NET语言自动化
30. Selenium
Selenium是目前最流行的测试工具之一。它可以自动化Web浏览器,以便您可以在规模和精度上运行测试。
主要特征:
-
自动化的基于Web的管理任务
-
创建强大的回归自动化套件和测试
-
跨环境和脚本分发
-
构建您自己的Selenium服务器或使用供应商提供的托管选项
31. ReSharper
由JetBrains创建的,ReSharper是.NET开发人员的Visual Studio扩展。使用它来即时分析代码质量,消除错误,安全地更改代码库等。
主要特征:
-
提供即时代码分析
-
快速修复错误
-
帮助复杂重构
-
多个代码编辑助手
32. OzCode
OzCode是C#的Visual Studio扩展,提供强大的调试工具,因此您可以花更多的时间开发和更少的时间调试。
主要特征:
-
使Visual Studio中更容易找到并修复错误
-
与ReSharper合作
-
用Magic Glance来绘制出复杂的表达式
-
强大的搜索,显示和比较功能
33. CodeRush
CodeRush可以帮助您轻松找到并修复问题,像本节中的其它测试工具一样,是一个VS扩展。
主要特征:
-
视觉突出显示代码库中的问题,并帮助您快速发现问题
-
快速创建新的测试和测试套件与快捷方式
-
容易重构
性能分析
34. Prefix
一个用于.NET和Java的轻量级开发工具,Prefix会实时显示日志、错误、查询等。它可以在您现有的工作站内使用 - 它是免费的。
主要特征:
-
提供每个Web请求的详细跟踪
-
没有凌乱的配置或代码更改
-
立即下载; 立即获得代码分析结果
-
按要求查看日志
-
查找隐藏的异常
-
查看SQL查询
-
快速找出可疑行为
35. dotTrace
来自JetBrains,dotTrace是一个分析器,可帮助排除性能问题并加快应用程序的速度。
主要特征:
-
了解SQL查询和HTTP请求如何影响应用程序性能
-
查看逐行剖析数据并获取特定的绩效指标
-
获取调用执行时间的数据
-
配置文件SQL查询和HTTP请求
-
简介静态方法和单元测试
-
在Visual Studio中配置和可视化结果
36. ANTS Performance Profiler
ANTS性能分析器是.NET代码的分析工具,包括提供逐行分析统计信息。
主要特征:
-
查看SQL查询和HTTP请求的性能数据
-
提供逐行结果
-
显示历史性的表现
-
深入了解长期分析结果
37.N Profiler
一个分析工具声称比任何其培训分析器更快,N Profiler提供丰富的.NET性能数据,可以节省90%的优化时间。
主要特征:
-
了解性能问题的真实原因 - 数据库查询或I/O时间
-
性能指标组织在调用树中,可以在概述或细节级别查看
APM
38. Retrace
Retrace是唯一将APM、日志、错误、指标和监控结合在一个平台上的开发者工具,可帮助您更好地构建。它专为生产和预生产服务器而设计,每月只需10美元。
主要特征:
-
在代码级收集性能数据
-
应用程序和服务器记录
-
各种来源的应用指标
-
错误跟踪和监控
-
与现有堆栈一起工作
-
免费试用
部署自动化
39. Octopus
C#主要部署自动化工具,这使得自动化复杂的应用程序部署成为可能。
主要特征:
-
提供和配置新机器来部署您的应用程序
-
与CI服务器集成,将构建自动化和CI进程扩展到部署中
-
精简各环境之间的版本
-
可重复,可靠的部署
40. Appveyor
一个CI构建服务器,不仅可以处理构建,而且还可以进行部署,Appveyor非常强大,安全,并且无需设置即可开始使用。
主要特征:
-
用于构建,测试和部署端到端解决方案
-
易于使用,无需设置
-
隔离构建环境
-
使用UI或YAML的开发人员友好的构建配置
-
内置部署和NuGet服务器
-
多分支构建
41.AppHarbor
AppHarbor不仅仅是部署:它是一个完全托管的.NET 平台服务。它用于托管从个人博客到高流量网络应用程序的所有内容。
主要特征:
-
从源代码存储库获取代码,并将其部署在自己的托管平台上
-
使用您最喜欢的版本控制工具即时部署和扩展.NET应用程序
-
不用担心扩展您的基础架构来跟上负载,AppHarbor会为您处理这一切
42. Jenkins
Jenkins不仅仅是部署自动化工具,也是最受欢迎的CI服务器,它将其覆盖面扩展到部署和交付阶段。
主要特征:
-
丰富的收集扩展,以适应每个堆栈
-
从构建到部署的端到端解决方案
-
数以百计的插件来支持构建,部署和自动化
容器
43. Docker.DotNet
Docker.DotNet是Docker API的C#客户端库。通过它,您可以通过编程方式与Docker Remote API进行交互。
主要特征:
-
可以通过Visual Studio的NuGet库管理器进行安装
-
在.NET中启用完全异步,非阻塞,面向对象的代码
44. Distelli
一个强大的工具来集中化C#应用程序,Distelli帮助您从头到尾自动化您的容器工作流程。有关如何使用Distelli构建和部署C#应用程序,请参阅此有用的教程 。本教程提供了构建和部署Docker C#应用程序的分步说明。
主要特征:
-
使用Distelli自动化您的容器工作流端到端
-
部署到Kubernetes,用于最先进的容器编排
C#和.NET Core 将在2018年及以后的得到巨大的发展,磨练C#技能将在未来几年内为您服务。我们希望您已经找到了一两种可以使用的工具,并提高了C#开发的质量和生产力。如果有什么工具我们遗漏了,请告诉我们,这个工具应该在这个工具包中有一席之地。
文章转载自:Sweet-Tang
原文链接:https://www.cnblogs.com/tdfblog/p/best-csharp-tools.html
体验地址:引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构
相关文章:
C#最佳工具集合:IDE、分析、自动化工具等
C#是企业中广泛使用的编程语言,特别是那些依赖微软的程序语言。如果您使用C#构建应用程序,则最有可能使用Visual Studio,并且已经寻找了一些扩展来对您的开发进行管理。但是,这个工具列表可能会改变您编写C#代码的方式。 C#编程的…...
promethues grafana 安装和使用
文章目录 1、promethues安装2、node-exporter安装3、grafana安装4、配置promethues监控node节点5、grafana操作外传 Docker 镜像下载地址: https://hub.docker.com 比较好的hub.docker.com///-- https://hub.docker.com/u/bitnami grafana监控面板:https…...
华为DriveONE电机控制器拆解实拍
如果说之前的问界M5、M7,华为让我们看到其在智能化上确实拥有遥遥领先的能力,那么在智界S7上,则让我们看到华为在动力、底盘这些硬件执行层面,竟然也有不输给很多车企的实力。1、华为电驱,全球第一?在智界S…...
【git使用】历史commit的分割(git rebase和 git reset的联合使用)
参考 [译] 分割一个已存在的 git commit - 掘金Git - 重写历史idea git如何撤回提交 - PingCodegit 工作原理与撤销操作图解 | Shall We Code? 分割一个已存在的 git commit Git 与其他版本控制系统的主要区别之一,在于其允许用户重写历史。实现这一目的的主要途…...
栈和队列oj题——225. 用队列实现栈
** 个人主页:晓风飞 专栏: 数据结构| Linux|| C语言 路漫漫其修远兮,吾将上下而求索 文章目录 题目要求:实现 MyStack 类:注意:示例:解释:提示: 解题核心数据结构的定义初…...
集合的三种遍历方式
迭代器(Iterator) 概述:Iterator 是个接口,迭代器是集合的专用遍历方式 使用方法,我们想要使用迭代器,必须首先得到集合对象,通过集合对象生成迭代器对象,才能进行集合的遍历 常用…...
Mysql 中的常用命令
在数字化世界中,数据库已经成为数据存储和处理的核心。而MySQL,作为最受欢迎的关系型数据库管理系统之一,其强大的功能和易用性使它成为开发者和企业的首选。掌握MySQL中的常用命令,是每一位数据库管理员和开发者的基本要求。本篇…...
【Java】CompletableFuture使用方法
背景 CompletableFuture是Java 8中引入的一个类,它实现了Future和CompletionStage接口,用于表示异步计算的结果。使用CompletableFuture可以方便地编写异步编程的代码,并且可以链式地组合多个异步操作。 接口 CompletableFuture实现了Future…...
摆烂式学习ssh
摆烂式学习ssh ssh工作原理ssh基本使用sshd配置文件密钥登录1.客户端2.服务器3.注意事项4.使用密钥登录测试 ssh高级使用技巧1.在非正规端口启动2.rsync 命令3.透过 ssh 通道加密原本无加密的服务4.以ssh信道配合x server 传递图形接口5.ssh配合virtualbox虚拟机使用技巧 ssh工…...
用 Python 抓取 bilibili 弹幕并分析!
01 实现思路 首先,利用哔哩哔哩的弹幕接口,把数据保存到本地。接着,对数据进行分词。最后,做了评论的可视化。 02 弹幕数据 平常我们在看视频时,弹幕是出现在视频上的。实际上在网页中,弹幕是被隐藏在源代码…...
目标检测YOLO实战应用案例100讲-基于红外图像处理的无人机光伏组件故障检测(续)
目录 3.2 自适应温度阈值故障检测算法设计 3.3 基于拟合灰度曲线的故障检测方案设计...
go mod 命令详解
文章目录 1.关于模块2.关于 go mod3.格式4.示例参考文献 1.关于模块 模块(Modules)是 Go 1.11 版本引入的一依赖管理机制。 一个模块是 Go packages 的集合,定义在项目根目录下的 go.mod 文件。go.mod 文件定义了模块的路径,这也…...
花了一小时,拿python手搓了一个考研背单词软件
听说没有好用的电脑端背单词软件?只好麻烦一下,花了一小时,拿python手搓了一个考研背单词软件。 代码已经开源在我的github上,欢迎大家STAR! 其中,数据是存放在sqlite中,形近词跳转是根据jaro …...
一篇文章学会Vim
一篇文章学会Vim 声明:以下内容均为我个人的理解,如果发现错误或者疑问可以联系我共同探讨 简介 Vim是一个高度可定制的终端文本编辑器,它可以很方便的创建和修改任何类型的文本。作为vi的升级版,有许多新的特性(以下列出的特性…...
面试算法91:粉刷房子
题目 一排n幢房子要粉刷成红色、绿色和蓝色,不同房子被粉刷成不同颜色的成本不同。用一个n3的数组表示n幢房子分别用3种颜色粉刷的成本。要求任意相邻的两幢房子的颜色都不一样,请计算粉刷这n幢房子的最少成本。例如,粉刷3幢房子的成本分别为…...
js逆向第11例:猿人学第4题雪碧图、样式干扰
任务4:采集这5页的全部数字,计算加和并提交结果 打开控制台查看请求地址https://match.yuanrenxue.cn/api/match/4,返回的是一段html网页代码 复制出来格式化后,查看具体内容如下: <td><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAA…...
OpenEular23.09(欧拉)操作系统为企业搭建独立的K8S集群环境,详细流程+截图
一.环境; win10,vmware16 pro,openeular23.09,linux内核 6.4.0-10.1.0.20.oe2309.x86_64, docker-engine 2:18.09.0-328,kubernetes 1.25.3,containerd 1.6.22,calico v3.25 集群…...
学生成绩管理系统半成品
C语言的老师在给我们讲指针的时候,讲的并不深入,她用了一个学生成绩管理系统来引入指针这个东西并给我们讲解,但我觉得她的管理系统功能有一些不足,并且不是很美观,所以说心血来潮,自己也动手写了一个学生成…...
国家信息安全水平等级考试NISP二级题目卷⑤(包含答案)
国家信息安全水平等级考试NISP二级题目卷(五) 国家信息安全水平等级考试NISP二级题目卷(五)需要报考咨询可以私信博主! 前言: 国家信息安全水平考试(NISP)二级,被称为校园版”CISP”,由中国信息…...
4.快速实现增删改查,模糊查询功能
打开springboot项目,在com.example下建包common,在common下新建Result.java 4.1封装统一的返回数据结构 1.在Result.java中编写如下代码: private static final String *SUCCESS*"0"; private static final String *ERROR*"-1"; p…...
【Redux】自己动手实现redux和react-redux
1. React提供context的作用 在class组件的世界里,如果后代组件共享某些状态,比如主题色、语言键,则需要将这些状态提升到根组件,以props的方式从根组件向后代组件一层一层传递,这样则需要在每层写props.someData&#…...
代码随想录算法训练营day6|242.有效的字母异位词、349.两个数组的交集、202.快乐数
哈希表理论基础 建议:大家要了解哈希表的内部实现原理,哈希函数,哈希碰撞,以及常见哈希表的区别,数组,set 和map。 什么时候想到用哈希法,当我们遇到了要快速判断一个元素是否出现集合里的时…...
2024.1.4每日一题
LeetCode每日一题 2397.被列覆盖的最多行数 2397. 被列覆盖的最多行数 - 力扣(LeetCode) 题目描述 给你一个下标从 0 开始、大小为 m x n 的二进制矩阵 matrix ;另给你一个整数 numSelect,表示你必须从 matrix 中选择的 不同 …...
C++协程和线程的区别?详细介绍一下C++协程
C协程和线程的区别 线程是操作系统级别的资源,由操作系统负责调度和切换,每个线程都有自己的堆栈和执行上下文。线程之间的切换需要保存和恢复线程的执行上下文,这个过程有一定的开销。协程是用户态的轻量级线程,协程的调度完全由…...
数字信号处理期末复习——计算大题(一)
个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:V…...
matlab数值计算函数--ode45
当难以求得微分方程的解析解时,可以求其数值解,Matlab中求微分方程数值解的函数有七个:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb。本文讲解ode45,其…...
Vue3地图选点组件
Vue3地图选点组件 <template><div style"width: 100%; height: 500px"><div class"search-container"><el-autocompletev-model"suggestionKeyWord"class"search-container__input"clearable:fetch-suggestion…...
JS之注册事件兼容性解决方案
本章介绍注册事件兼容性的解决方案 废话不多说,直接上代码: function addEventListener(element, eventName, fn) {//判断当前浏览器是否支持 addEventListener 方法if (element.addEventListener) {element.addEventListener(eventName, fn); // 第三个…...
C#中使用as关键字将对象转换为指定类型
目录 一、定义 二、示例 三、生成 使用as关键字可以将对象转换为指定类型,与is关键字不同,is关键字用于检查对象是否与给定类型兼容,如果兼容则返回true,如果不兼容则返回false。而as关键字会直接进行类型转换,如果…...
【Spring实战】21 Spring Data REST 常用功能详细介绍
文章目录 1. 资源导出(Resource Exporting)2. 查询方法(Query Methods)3. 分页和排序(Pagination and Sorting)4. 关联关系(Associations)5. 事件(Events)6. …...
网站开发设计资讯/企业网站制作与维护
每天一点点,记录工作中实操可行 hive json数组解析 hive中有字段A长这个样子,想把其中的name值全部解析出来 [{"itemRateId":"73288842","name":"东北有机大米饭","rating":4,"ratingContent&…...
北京市著名的网站制作公司/百度竞价关键词怎么优化
转载https://www.bilibili.com/video/BV1Vx411j7kT?p12 创立数据集 我们创建一些假数据来模拟真实的情况. 比如两个二次分布的数据, 不过他们的均值都不一样. import torch import matplotlib.pyplot as plt# 假数据 n_data torch.ones(100, 2) # 数据的基本形态 …...
找网站开发公司/色盲眼镜
1. 题目 2. 解答 2.1 方法 1 定义快慢两个指针,慢指针每次前进一步,快指针每次前进两步,若链表有环,则快慢指针一定会相遇。 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* …...
青岛建站费用/福州360手机端seo
Mask RCNN基于Faster RCNN改进,所以若有看不懂的地方可以先去看看我上篇博客Faster R-CNN整体介绍及部分细节讲解 论文全称:Mask R-CNN 目录一、整体总结1. general notes2. 整体架构二、论文细节三、RoI Pool和RoI Align一、整体总结 1. general notes…...
个人购买域名做企业网站/厦门网站制作
nginx -s reload :修改配置后重新加载生效nginx -s reopen :重新打开日志文件nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确关闭nginx:nginx -s stop :快速停止nginx quit :完整有序的停止nginx其他的停…...
政府网站建设与管理规范/网站怎么收录到百度
java语言进行加密解密速度挺慢的。。一个6MB左右的文件需要10多秒。。。等有空了瞅瞅ffmpeg去。。MainActivity.java/*** 视频加密/解密** author oldfeel** Created on: 2014-2-17*/public class MainActivity extends Activity {// 原文件private static final String filePa…...