C++初探索前言C++和C的区别主要在8个方面:输入和输出引用inline函数函数默认值函数重载模板函数new和deletenamespace我仅对印象不深的地方做了总结。目录C++初探索前言一、引用初探索1.引用的定义与区别2.引用的要求3.引用与指针的区别4.常引用5.何时使用引用二、inline内联函数1.内联函数的定义2.内联函数的处理流程3.内联函数与三者的区别3.1与普通函数的区别3.2与static函数的区别3.3与宏定义的区别4.仅realese版本才会产生内联5.inline函数使用的限制三、函数的重载四、函数模板五、new和malloc总结一、引用初探索1.引用的定义与区别
微前端微前端,前端这次词就不用多做解释了,这个概念的重点在于这个“微”字,从字面意义上看,微是小的意思,小是相对于大的一个用于比较的形容词,所以通常是在项目庞大的情况下,才会考虑将它变小,去考虑将它拆分成若干个小项目。这就是做微前端所要达到的主要目标,将庞大的项目拆分成多个独立运行、独立部署和独立开发的小项目,使得项目利于维护和更新,然后在运行时,作为一个整体来呈现。项目过于庞大的可能存在一系列问题,比如构建速度慢、应用加载慢、定位问题麻烦、项目可维护性差等等。早期过往的案例中,通常会使用iframe作为微前端的一种解决方案,但iframe有一些明显的缺点,比如浏览器的前进后退,由于ifram
微前端微前端,前端这次词就不用多做解释了,这个概念的重点在于这个“微”字,从字面意义上看,微是小的意思,小是相对于大的一个用于比较的形容词,所以通常是在项目庞大的情况下,才会考虑将它变小,去考虑将它拆分成若干个小项目。这就是做微前端所要达到的主要目标,将庞大的项目拆分成多个独立运行、独立部署和独立开发的小项目,使得项目利于维护和更新,然后在运行时,作为一个整体来呈现。项目过于庞大的可能存在一系列问题,比如构建速度慢、应用加载慢、定位问题麻烦、项目可维护性差等等。早期过往的案例中,通常会使用iframe作为微前端的一种解决方案,但iframe有一些明显的缺点,比如浏览器的前进后退,由于ifram
apijson初探本文试着用5W1H方式切入,试图快速建立自己对apijson的整体认知,所以这不是一趟快速入门的demo之旅,而是显得比较务虚的探索式知识体系整合过程。持续更新中...1、Why前后端开发过程中各种痛点:开发流程繁琐、周期长前端/客户端与后端各种扯皮文档过时-与接口不同步后端拼装数据费时费力且重复性劳动价值很低,全部交给前端拼装又浪费流量带宽等等谁应该负责彻底解决这个问题?后端。怎么解决?后端实现一种万能查询,并能减少绝大部分重复的常规数据CRUD功能及数据拼装等开发过程,定义一套统一的规范让前端来学习掌握,以后后端除了维护好这个DSL的运行时,就只需要做好数据实体的定义及权
apijson初探本文试着用5W1H方式切入,试图快速建立自己对apijson的整体认知,所以这不是一趟快速入门的demo之旅,而是显得比较务虚的探索式知识体系整合过程。持续更新中...1、Why前后端开发过程中各种痛点:开发流程繁琐、周期长前端/客户端与后端各种扯皮文档过时-与接口不同步后端拼装数据费时费力且重复性劳动价值很低,全部交给前端拼装又浪费流量带宽等等谁应该负责彻底解决这个问题?后端。怎么解决?后端实现一种万能查询,并能减少绝大部分重复的常规数据CRUD功能及数据拼装等开发过程,定义一套统一的规范让前端来学习掌握,以后后端除了维护好这个DSL的运行时,就只需要做好数据实体的定义及权
简介从事前端开发的同学,对富文本编辑器都不是很陌生。但是大多数富文本编辑器都是开箱即用,很少会对其实现原理进行深入的探讨。假如静下心去细细品味,会发现想要做好一款富文本编辑器,需要对整个前端生态有较深入的理解。在某种意义上说,富文本编辑器是前端一个集大成者。富文本编辑器根据其实现方式,业内将其划分为L0~L2,层层递进,功能的支撑也越来越强大。阶段描述典型产品L0视图层基于contenteditable,逻辑层基于document.execCommand,直接操作DOMUEditor、TinyMCEL1视图层基于contenteditable,逻辑层对DOM进行抽象,用数据去驱动视图更新Qui
简介从事前端开发的同学,对富文本编辑器都不是很陌生。但是大多数富文本编辑器都是开箱即用,很少会对其实现原理进行深入的探讨。假如静下心去细细品味,会发现想要做好一款富文本编辑器,需要对整个前端生态有较深入的理解。在某种意义上说,富文本编辑器是前端一个集大成者。富文本编辑器根据其实现方式,业内将其划分为L0~L2,层层递进,功能的支撑也越来越强大。阶段描述典型产品L0视图层基于contenteditable,逻辑层基于document.execCommand,直接操作DOMUEditor、TinyMCEL1视图层基于contenteditable,逻辑层对DOM进行抽象,用数据去驱动视图更新Qui
初探富文本之CRDT协同实例在前边初探富文本之CRDT协同算法一文中我们探讨了为什么需要协同、分布式的最终一致性理论、偏序集与半格的概念、为什么需要有偏序关系、如何通过数据结构避免冲突、分布式系统如何进行同步调度等等,这些属于完成协同所需要了解的基础知识,实际上当前有很多成熟的协同实现,例如automerge、yjs等等,本文就是关注于以yjs为CRDT协同框架来实现协同的实例。描述接入协同框架实际上并不是一件简单的事情,当然相对于接入OT协同而言接入CRDT协同已经是比较简单的了,因为我们只需要聚焦于数据结构的使用就好,而不需要对变换有过多的关注。当前我们更加关注的是Op-basedCRDT
初探富文本之CRDT协同实例在前边初探富文本之CRDT协同算法一文中我们探讨了为什么需要协同、分布式的最终一致性理论、偏序集与半格的概念、为什么需要有偏序关系、如何通过数据结构避免冲突、分布式系统如何进行同步调度等等,这些属于完成协同所需要了解的基础知识,实际上当前有很多成熟的协同实现,例如automerge、yjs等等,本文就是关注于以yjs为CRDT协同框架来实现协同的实例。描述接入协同框架实际上并不是一件简单的事情,当然相对于接入OT协同而言接入CRDT协同已经是比较简单的了,因为我们只需要聚焦于数据结构的使用就好,而不需要对变换有过多的关注。当前我们更加关注的是Op-basedCRDT
最近两天对go语言做了一个初步的了解,记录一下。之前没有按照原创发表,所以重新发布一次。第一个感受就是使用起来方便,从官网下载安装包,参考https://golang.google.cn/doc/install,解压到/usr/local/go目录,然后将go目录下的bin目录添加到环境变量即可exportPATH=$PATH:/usr/local/go/bin,最后运行goversion查看是否生效,编写一个简单的go文件,直接gorunhello.go即可运行起来了。如果要使用vscode进行调试也非常方便,安装go相关的插件即可(ctrl+shift+p,输入go:install),注意