摘要: Natasha 5.0 版本已于 2022/10/10 日发布, 此次大版本更迭带来了兼容性支持, 目前 Natasha 可以兼容 standard2.0 及 coreapp3.1 以上版本. 下载使用 NuGet\Install-Package DotNetCore.Natasha.CSharp 阅读全文
posted @ 2022-10-10 15:45 AzulX 阅读(1017) 评论(0) 推荐(8) 编辑
摘要: Natasha 模板 Natasha 在编译单元的基础上进行了封装整理, 并提供了多种模板帮助开发者构建功能. 使用此篇的 API 前提是您对 C# 非常熟悉, 对系统的一些类型足够了解. 据此 Natasha 将拒绝与科普相关 C# 的 issue , 望谅解. 目前已有的模板: | 模板名 | 阅读全文
posted @ 2022-01-23 12:28 AzulX 阅读(494) 评论(0) 推荐(3) 编辑
摘要: Natasha 的设计 动态编译 Roslyn 为开发者提供了动态编译的接口, 允许我们以 C# 代码来编写 Emit 或 表达式树生成的程序集, 但是完成一个编译需要诸多步骤, 用户参与的操作也很多, 例如: 格式化整理语法树, 创建编译选项, 填充对应的引用程序集来支持语义检查和编译, 控制输出 阅读全文
posted @ 2022-01-22 10:28 AzulX 阅读(543) 评论(2) 推荐(3) 编辑
摘要: 域与ALC 在 Natasha 发布之后有不少小伙伴跑过来问域相关的问题, 能不能兼容 AppDomain, 如何使用 AppDomain, 为什么 CoreAPI 阉割了 AppDomain 等一系列的问题. 今天答复一下: 首先 AppDomain 作为程序集隔离容器的存在, 是风靡了 .Net 阅读全文
posted @ 2022-01-21 10:26 AzulX 阅读(698) 评论(2) 推荐(4) 编辑
摘要: Natasha 简介 Natasha 是一个基于 Roslyn 的动态编译类库, 它以极简的 API 完成了动态编译的大部分功能, 使用它可以在程序运行时编译出新的程序集. Natasha 允许开发人员直接使用 C# 代码即可编写运行时的功能, 避免了 Emit 的学习,开发,维护的成本. Nata 阅读全文
posted @ 2022-01-20 15:52 AzulX 阅读(948) 评论(3) 推荐(8) 编辑
摘要: 嘿!各位小伙伴,大家好! 自 FreeRedis 开库以来,已经有很多人将其用在了生产环境中,它是稳定的,由老叶在做维护。 另一方面我们正在对 FreeRedis 的各功能模块做优化,请注意,这条信息不意味着现版的 FreeRedis 有问题,我们只是希望在某些方面做得更好。 直到目前为止,实验中的 阅读全文
posted @ 2020-12-19 11:36 AzulX 阅读(714) 评论(0) 推荐(4) 编辑
摘要: 关于 Natasha 动态构建已经成为了封装者们的家常便饭,从现有的开发趋势来看,普通反射性能之低,会迫使开发者转向EMIT/表达式树等构建方式,但是无论是EMIT还是表达式树,都会依赖于反射的元数据。 Natasha 通过使用 Roslyn技术,已经解决了上述的问题,在保证高效可靠的同时,提供了一 阅读全文
posted @ 2019-09-04 09:15 AzulX 阅读(2343) 评论(5) 推荐(7) 编辑
摘要: 开源库满足于个人,而完善于大众。 Natasha 自稳定版发布之后,众多老铁参与增强改进,感谢如下老铁的反馈: 1. 异常搜集 在 wenjq0911 建议下,添加了异常捕获,现 Natasha 的编译器已支持 Exception 字段,它将在整个编译周期中搜集异常。 UT地址:https://gi 阅读全文
posted @ 2019-08-31 11:07 AzulX 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 人老了,玩不转博客园的编辑器,详细信息转到:https://mp.weixin.qq.com/s/1r6YKBkyovQSMUgfm_VxBg 关键字:Github, NCC, Natasha,Roslyn, .NET Core2.0,.NET Core2.1,.NET Core2.2,.NET C 阅读全文
posted @ 2019-08-01 18:51 AzulX 阅读(1126) 评论(0) 推荐(2) 编辑
摘要: 如果您的孩子不适应编译型语言怎么办? 如果您的孩子贪玩不想花多时间在编程上怎么办? 如果您还没有孩子怎么办? 如果您夜晚兼职觉不够睡又怎么办? 不妨试试 “ 拍 簧 片 ”。 妈了巴子的有点麻烦,但别怕,接下来我将用一把梭带你把这个“场子“搭起来: 使用VSCode搭建“拍簧片”环境: 1、装VsC 阅读全文
posted @ 2019-04-05 15:04 AzulX 阅读(1199) 评论(0) 推荐(1) 编辑