【Golang】快速复习指南QuickReview(六)——struct
实际编程时,经常需要用相关的不同类型的数据来描述一个数据对象。C#中有类(Class
),结构(Struct
),当然类就不介绍了。Golang
中叫结构体(C
,C++
好像还是结构体),单词还是Struct
,无论是在Golang还是C#,struct都是一个值类型。
专注于IT互联网,Web技术,Go语言(golang)、.Net,.Net Core,Node.js,前端框架、项目管理、软件架构
只有原创,没有转载,只有实践,才会成文。
实际编程时,经常需要用相关的不同类型的数据来描述一个数据对象。C#中有类(Class
),结构(Struct
),当然类就不介绍了。Golang
中叫结构体(C
,C++
好像还是结构体),单词还是Struct
,无论是在Golang还是C#,struct都是一个值类型。
指针也就是内存地址,指针变量是用来存放内存地址的变量。学习C
语言,C++
经常使用指针,Golang
中也是指针使用的高频语言,C#
几乎没怎么用过。但是不代表C#
中不能使用指针。只是设计者并不希望开发者在不熟练的情况下使用指针,引发安全问题。
作为增强代码的复用性和可读性,函数必不可少。
学名:映射关系容器。
俗名:键值对key-value
map跟slice一样,依然是一个引用类型。
在上一篇【Golang】快速复习指南QuickReview(一)——字符串string的字符串翻转代码实现中,提到了切片,切片在golang
中是很重要的数据类型。说到切片,就不得不提数组,但是数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性。而切片(Slice
)是可变长度的,其实切片是基于数组类型做了一层封装,所以切片会指向一个底层数组。切片新增元素,当切片指向的底层数组能够容纳,则直接新增元素,当底层数组不能容纳新增的元素时,切片就会自动按照一定的策略进行“扩容”,此时该切片指向的底层数组就会更换。
切片有两个非常重要的属性,长度(len
),容量(cap
),前者是切片已经包含的元素数量,后者是切片的首指针(第一个元素)指向的底层数组索引至底层数组最后一个元素的长度。
春节期间,再加上疫情,博主学习了几天Golang,之后便缺乏使用。这几天看到一些Golang项目的源码,发现自己对Golang好像有点不熟,为了加深自己的记忆,艾宾浩斯记忆遗忘曲线告诉我们:要勤于复习。作为一个C#使用频率超高的.NET开发者,预备在接下来采用:C#与Golang的对比,以Golang为主,C#为辅的复习系列。既然是复习,面不会全部覆盖,所以这个系列并不是教程,如果想系统的学习,博主可推荐。
在rabbitMQ
中,官方文档中,接收消息最方便且推荐的方法:使用IBasicConsumer
消费者接口设置订阅。messages
到达队列后将自动发送,只要订阅了Received
事件,就可以从中接收到队列消息,而不必主动请求。实现这种消费者(发布订阅)模式 ,.NET/C# Client API
是通过C#事件。事件的本质就是多播委托。
在View UI
中,表格组件Table
是一个常用组件,表格组件重要的元素是列columns
,如果仅仅是单调的纯文本功能展示,那么在使用组件时,在columns
中定义好映射就算完成了。但是我们大部分需求并没有那么简单。
SPA
单页面应用已经遍地开花,熟知的三大框架,Angular
、Vue
和React
,其中Angular
与React
均可集成至ASP.NET Core
,且提供了相关了中间件。但是Vue没有:
As far as I’m aware, we don’t have plans to introduce Vue-specific features. This isn’t because we have anything against Vue, but rather just to limit the growth in the number of frameworks that we’re maintaining support for. The dev team only has a finite capacity for handling third-party concepts, and last year we made the strategic choice to focus on only Angular and React.
本篇将介绍如何集成Vue
。
最近在调试接口时,web api 报了一个415状态码。好久没见到这个状态码,一时还真不知道啥情况。所以,人的大脑是有遗忘规律的,为了加深印象,所以我觉得我有必要再复习一下。