<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chi8708的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chi8708</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chi8708]]></copyright><item><title><![CDATA[TypeScript模块化]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/139074678</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/139074678</guid><author>chi8708</author><pubDate>Mon, 20 May 2024 20:53:36 +0800</pubDate><description><![CDATA[在 TypeScript 中，模块是指一个独立的文件或代码块，它封装了一组相关的数据和函数，并提供了对外的接口。TypeScript 提供了丰富的模块功能，使得开发者可以更加方便地使用模块化思想来构建和组织自己的代码。TypeScript 模块需要经过编译才能转换为可执行的 JavaScript 代码。编译过程中，TypeScript 会将模块的类型信息保留下来，并生成相应的 JavaScript 代码。：这是 TypeScript 的默认模块类型，它与 JavaScript 中的 ES 模块化标准一致。]]></description><category></category></item><item><title><![CDATA[TypeScript数据类型]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/139041410</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/139041410</guid><author>chi8708</author><pubDate>Sun, 19 May 2024 13:11:33 +0800</pubDate><description><![CDATA[2.如果多次声明同一个变量、函数或类，这些声明会被自动合并为一个声明。而 type 关键字也可以用于声明合并，允许我们扩展已有的类型声明。1type 用于定义类型别名，使得我们可以为一个复杂类型或者一个较长的类型声明一个简短的别名。这个别名可以在任何地方使用，以代替原始的类型。类型是TS中最重要的部分，因为TS的诞生主要就是解决JS弱类型的问题，增加了代码的可读性和可维护性。可重复定义相同名称的接口，重名后将合并属性。数组只能是一种数据类型，元组多个数据类型。将多个类型合并成一个新的类型。]]></description><category></category></item><item><title><![CDATA[TypeScript入门介绍]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/139024922</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/139024922</guid><author>chi8708</author><pubDate>Sat, 18 May 2024 14:25:18 +0800</pubDate><description><![CDATA[1.1 TypeScript 是由微软开发的一种开源的编程语言。它是 JavaScript 的一个超集，通过为 JavaScript 提供静态类型检查，增加了代码的可读性和可维护性。]]></description><category></category></item><item><title><![CDATA[C#特性知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138910947</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138910947</guid><author>chi8708</author><pubDate>Wed, 15 May 2024 15:38:41 +0800</pubDate><description><![CDATA[它们允许程序员在代码中添加额外的信息，以影响程序的行为、编译过程或提供其他元数据。C#中的特性为程序员提供了一种强大的元数据驱动机制，可以应用于多种场景。通过在代码中定义和使用特性，可以增强代码的可读性、可维护性，并提供灵活的方式来控制程序的行为和属性。要获取 MyCustom 特性，您可以使用反射来检查某个类型或成员上是否应用了该特性，并且访问该特性的属性。特性分为：框架自带特性(如：[Required]、[Authorize]、[Route]、[HttpPost]等)和自定义特性,都继承。]]></description><category></category></item><item><title><![CDATA[C#反射知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138874579</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138874579</guid><author>chi8708</author><pubDate>Tue, 14 May 2024 23:17:33 +0800</pubDate><description><![CDATA[获取类型和对象的信息: 反射可用于获取有关类型和对象的大量信息，包括类型名称、属性、方法、构造函数等。这对于需要根据类型或对象的信息执行操作的应用程序非常有用。创建代理对象: 反射可用于创建代理对象，代理对象可以拦截和修改对目标对象的调用。调用方法: 反射可用于调用对象的任何方法，包括私有方法。Type 对象表示一个 .NET 类型，并提供用于访问该类型及其成员的方法和属性。C# 反射（Reflection）是一种强大的机制，它允许程序在运行时访问和操作 .NET 程序集中的类型和成员。]]></description><category></category></item><item><title><![CDATA[C# 程序集、模块和类型的概念及关系]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138801117</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138801117</guid><author>chi8708</author><pubDate>Mon, 13 May 2024 14:11:55 +0800</pubDate><description><![CDATA[程序集、模块和类型是 C# 中构成 .NET 应用程序的基本单元。它们之间具有层次关系，程序集包含模块，模块包含类型。程序集 是包含 .NET 代码的单元，它可以是一个可执行文件（EXE）或一个动态链接库（DLL）。在 C# 中，程序集、模块和类型是构成 .NET 应用程序的基本单元。模块是程序集中的逻辑单元，它通常对应一个 .cs 源文件。类型是程序集或模块中定义的代码结构，它代表一种实体或行为。类型 是程序集或模块中定义的代码结构，它代表一种实体或行为。类型：模块中定义的所有类型。]]></description><category></category></item><item><title><![CDATA[C#泛型知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138720138</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138720138</guid><author>chi8708</author><pubDate>Sat, 11 May 2024 16:14:54 +0800</pubDate><description><![CDATA[泛型通过使用类型参数来实现这一点，类型参数是在创建泛型类型或方法的实例时指定的占位符。我们在编程的时候经常遇到功能非常相似但是数据类型不同的情况，但是我们没有办法，只能分别写多个不同的方法或类来处理不同的数据类型。主约束通常用于指定类型参数的基本类型，例如值类型或引用类型。泛型是一种非常强大的编程工具，可以显著提高代码的重用性、类型安全性、性能和可扩展性。泛型是C#2.0中推出的新语法，泛型不是语法糖，而且由框架升级提供的功能。泛型包括：泛型类、泛型方法、泛型接口、泛型委托、泛型事件。]]></description><category></category></item><item><title><![CDATA[C#异步Task]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138680934</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138680934</guid><author>chi8708</author><pubDate>Fri, 10 May 2024 20:41:04 +0800</pubDate><description><![CDATA[异步编程要解决的问题就是许多耗时的IO可能会阻塞线程导致CPU空转降低效率，或者一个长时间的后台任务会阻塞用户界面。通过将耗时任务异步执行来使系统有更高的吞吐量，或保持界面的响应能力]]></description><category></category></item><item><title><![CDATA[C#线程知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138631415</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138631415</guid><author>chi8708</author><pubDate>Thu, 09 May 2024 20:56:06 +0800</pubDate><description><![CDATA[多个线程可以提高应用程序的整体性能、并发能力、响应速度。但它使程序更难维护和调试。使用时注意共享数据同时修改，数据不一致问题。]]></description><category></category></item><item><title><![CDATA[C#事件知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138305904</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138305904</guid><author>chi8708</author><pubDate>Mon, 29 Apr 2024 11:06:05 +0800</pubDate><description><![CDATA[事件是一种特殊的多播委托，是委托实例变量, **事件只能在类的内部定义，只能从声明它的类中进行调用**。 外部只能订阅和取消订阅事件。]]></description><category></category></item><item><title><![CDATA[C#委托知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138291708</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138291708</guid><author>chi8708</author><pubDate>Sun, 28 Apr 2024 21:22:06 +0800</pubDate><description><![CDATA[委托定义一种类型，该类型封装一个或多个方法（一个或多个方法指向委托实例）]]></description><category></category></item><item><title><![CDATA[C#数据类型知识点]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/138138817</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/138138817</guid><author>chi8708</author><pubDate>Tue, 23 Apr 2024 21:15:31 +0800</pubDate><description><![CDATA[dynamic 不能跨程序集访问，传参：因为匿名类型默认是private  的，所以在B程序集中定义的匿名类型，A程序集是无法直接获取其成员信息的，因而无法输出。从编程历史上看，早期的结构化编程几乎所有的方法都是静态方法，引入实例化方法是面向对象编程以后的事情了，所以实例化方法不是解决运行效率问题，内存问题。浅复制：复制一个对象的时候，仅仅复制原始对象中所有的非静态类型成员和所有的引用类型成员的引用。深复制：复制一个对象的时候，不仅复制所有非静态类型成员，还要复制所有引用类型成员的实际对象。]]></description><category></category></item><item><title><![CDATA[C#对象浅拷贝和深拷贝]]></title><link>https://blog.youkuaiyun.com/chi8708/article/details/137827194</link><guid>https://blog.youkuaiyun.com/chi8708/article/details/137827194</guid><author>chi8708</author><pubDate>Tue, 16 Apr 2024 15:30:28 +0800</pubDate><description><![CDATA[示例代码	https://github.com/chi8708/DotNetNote/blob/master/Note.Basic/01CopyDemo.cs。浅拷贝是指只拷贝对象的值类型成员，而引用类型成员的引用则保持不变。这意味着新的对象和原始对象将共享所有引用类型成员的实际对象。深拷贝是指不仅拷贝对象的值类型成员，而且还拷贝所有引用类型成员的实际对象。在C#中，对象拷贝是指将一个对象的副本创建到另一个对象中。但是，如果需要避免意外修改原始对象，则应使用深拷贝。C#中的对象深拷贝和浅拷贝。]]></description><category></category></item></channel></rss>