本周由于Myuki大佬感染新冠,国际板块暂停更新一周,将在下周补齐,所以本周只有国内板块。
https://www.cnblogs.com/ElderJames/p/resolves-width-issues-in-blazor-caused-by-element-wrapping.html
实践过不同前端框架的朋友应该都知道,对于同一个样式,在不同框架上的表现都会有不同,时时需要做“适配”,在 Blazor 上也不例外。在做 Ant Design Blazor 时就深有体会,因为我们是同步官方的样式,他们的样式只考虑了React 上的实现,除非有人专门提 PR,否则都不会特别考虑其他框架的实现。本文就介绍一个典型问题。
https://zhuanlan.zhihu.com/p/649763690
数据库是数据存储和管理的重要基础设施,这里介绍下关系数据库之外的一些数据库,了解与掌握这些数据库,有助于人工智能应用的开发。本节主要介绍三个数据库:
LiteDB:纯 C# 实现的、简单易用的嵌入式数据库,快速开发的利器。当数据量不大的时候,直接使用 litedb,简单粗暴。
RocksDB:经过业界检验的 kv 数据库,也是很多新生代数据库的存储引擎。当数据量很大的时候,可以考虑使用 RocksDB。
milvus:开源的向量数据库,支持经典的向量索引,主要用于向量相似度检索。
https://zhuanlan.zhihu.com/p/649766306
前面这些,是我实战总结的一套 AI 开发架构。来一个简单的小结:
推理层:直接调用各个inference库,零代码;
引擎层:采用 csharp 开发,通过 NativeAOT 编译为各个平台的动态链接库,暴露 common api 接口;
SDK:基于 common api 接口,进行各种语言的封装;
Api Server:采用 http://asp.net,通过 SDK 调用引擎,对外提供 Web API
Web 应用开发:
数据存储:采用 LiteDB/RocksDB/milvus
轻量全栈(Web/桌面/移动)开发:Blazor Hybrid
桌面/移动开发: Avalonia
小工具/教学:dotnet script/polyglot
不写cpp代码,不写 sql 不搞 orm,写少量的 js,靠 dotnet 实现了全栈 AI 应用开发。轻量全栈和桌面/移动开发还待验证,其它皆已在实际项目/产品中使用。
https://www.cnblogs.com/pandefu/p/17536259.html
Span<T>
是C# 中的一种结构体,它是一种内存安全的类型,可以用来表示连续的内存区域。Span<T>
可以被用于访问和操作数组、堆上分配的内存和栈上分配的内存。使用 Span<T>
可以避免不必要的内存拷贝,从而提高性能。
https://www.cnblogs.com/hejiale010426/p/17613121.html
WebAssembly(简称Wasm)是一种用于基于堆栈的虚拟机的二进制指令格式。Wasm被设计为编程语言的可移植编译目标,支持在web上部署客户端和服务器应用程序。
https://www.cnblogs.com/savorboard/p/cap-7-2.html
今天,我们很高兴宣布 CAP 发布 7.2 版本正式版,我们在这个版本中主要致力于 Dashboard 对 k8s 服务发现的支持。
从 7.1 版本以来,我们发布了4个小版本,在这些版本中我们主要解决发现的Bug和添加一些小功能,这篇文章中可能也会提及我们在这些小版本中加的一些小功能。
下面,具体看一下我们新版本的功能吧。
https://www.cnblogs.com/huangxincheng/p/17614463.html
前段时间有位朋友找到我,说他的程序内存会出现暴涨,让我看下是怎么事情?而且还告诉我是在 Linux 环境下,说实话在Linux上分析.NET程序难度会很大,难度大的原因在于Linux上的各种开源工具主要是针对 C/C++, 和 .NET 一毛钱关系都没有,说到底微软在 Linux 上的调试领域支持度还远远不够。
虽然知道分析起来难度可能会很大,但该分析还是要分析的,让朋友抓一个 dump 过来,上 WinDbg 说话。
https://www.cnblogs.com/hnzhengfy/p/CST.html
C# 里面的泛型不仅可以使用泛型函数、泛型接口,也可以使用泛型类、泛型委托等等。在使用泛型的时候,它们会自行检测你传入参数的类型,因此它可以为我们省去大量的时间,不用一个个编写方法的重载。与此同时,使用泛型会提升程序的效率。
本文将围绕泛型的各个方面,详细看下泛型到底怎么用,会给每位开发者带来什么便利。
https://www.cnblogs.com/shanyou/p/17615851.html
微软在2023年8月9日 发布了.NET 8 Preview 7[1],这是它在11月14日 RTM 之前进入发布候选阶段之前的最后预览版。 该预览版也于也与 VS 2022 v17.7 版本一起发布。对于预览版7,System.Text.Json 和 codegen 在此版本中具有最大的变化。所有这些特定项目都属于 .NET 网站主题[2]中提供的一般指导。
https://www.cnblogs.com/hnzhengfy/p/JObjectJArray.html
在日常开发中,对于 Json 的使用还是比较频繁的,特别是 Json 对象和字符串或者实体对象之间的转换。
虽然几乎天天用,但是总是感觉没那么明了,今天结合微软的 Newtonsoft.Json.Linq 类,试着详解一下,把相关的内容列一下。
https://www.cnblogs.com/edisonchou/p/dotnet_multithread_learning_notes_chap4.html
去年换工作时系统复习了一下.NET Core多线程相关专题,学习了一线码农老哥的《.NET 5多线程编程实战》课程,我将复习的知识进行了总结形成本专题。
本篇,我们来复习一下.NET中锁机制的相关知识点,预计阅读时间10分钟。
https://www.cnblogs.com/yyfh/p/17621881.html
在.NET中,理解对象的内存布局是非常重要的,这将帮助我们更好地理解.NET的运行机制和优化代码,本文将介绍.NET中的对象内存布局。
.NET中的数据类型主要分为两类,值类型和引用类型。值类型包括了基本类型(如int、bool、double、char等)、枚举类型(enum)、结构体类型(struct),它们直接存储值。引用类型则包括了类(class)、接口(interface)、委托(delegate)、数组(array)等,它们存储的是值的引用(数据在内存中的地址)。
本周由于Myuki大佬感染新冠,国际板块暂停更新一周,将在下周补齐,所以本周只有国内板块。
由于笔者没有那么多时间对国内的一些文章进行整理,欢迎大家为《.NET周刊-国内文章》板块进行贡献,需要推广自己的文章或者框架、开源项目可以下方的项目地址提交Issue或者在我的微信公众号私信。
格式如下:
https://github.com/InCerryGit/.NET-Weekly
相信大家在开发中经常会遇到一些性能问题,苦于没有有效的工具去发现性能瓶颈,或者是发现瓶颈以后不知道该如何优化。之前一直有读者朋友询问有没有技术交流群,但是由于各种原因一直都没创建,现在很高兴的在这里宣布,我创建了一个专门交流.NET性能优化经验的群组,主题包括但不限于:
希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET性能问题和宝贵的性能分析优化经验。目前一群已满,现在开放二群。
如果提示已经达到200人,可以加我微信,我拉你进群: lishi-wk
另外也创建了QQ群,群号: 687779078,欢迎大家加入。
感谢大家对我公众号的支持与陪伴!为庆祝公众号一周年,抽奖送出一些书籍,请大家关注公众号后续推文!