- 博客(65)
- 收藏
- 关注
原创 Typora打开多个窗口
使用Typora有一个很难受的地方,你想打开两个md文件左右对照看,然后你在打开一个md文件的情况下,点击打开另一个md文件,Typora就会给你展示一下它的欢迎页面,然后就没有然后了。你用Typora里面的打开文件功能也不行。
2025-03-24 18:04:32
294
2
原创 由编程语言如何存储数据类型扩散到计算机硬件固件
编译器会为num分配足够的内存空间来存储一个整数。具体的内存大小取决于系统架构:在32位系统上通常是4字节,在64位系统上通常是8字节。
2025-02-06 11:25:55
623
原创 【Shell教程】一、初识
打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh,扩展名为 sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用 php 写 shell 脚本,扩展名就用 php 好了。业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念。由于习惯的原因,简洁起见,本文出现的 “shell编程” 都是指 shell 脚本编程,不是指开发 shell 自身。是会找不到命令的,要用。
2024-12-23 10:58:08
789
原创 【Go】运行main之前原来还做了这么多?(func init、var、const)
为了掌握项目,打算从main开始一点点挖,在main打了断点,但是在运行时发现,断点还未断到,程序就已经执行了很多,那这些执行的代码从何而来呢?在 Go 程序中,main 函数是程序的入口点,但在 main 函数执行之前,Go 会执行一系列初始化步骤。初始化顺序:const 常量 -> var 全局变量 -> func init()最终定位发现执行的代码处于。
2024-12-04 11:00:57
832
原创 【极客兔兔-Web框架Gee详解】Day2 上下文Context
相比第一天的代码,这个方法也有细微的调整,在调用 router.handle 之前,构造了一个 Context 对象。将和路由相关的方法和结构提取了出来,放到了一个新的文件中router.go,方便我们下一次对 router 的功能进行增强,例如提供动态路由的支持。router 的 handle 方法作了一个细微的调整,即 handler 的参数,变成了 Context。路由的处理函数,以及将要实现的中间件,参数都统一使用 Context 实例, Context 就像一次会话的百宝箱,可以找到任何东西。
2024-11-06 18:33:28
230
原创 【极客兔兔-Web框架Gee详解】Day1环境搭建与前置知识
在HTTP协议中,请求头(Request Headers)是客户端发送给服务器的附加信息,用于提供关于客户端环境、请求的细节以及客户端期望的响应格式等信息。Go Modules(Go):如果是Go 1.11及以后,推荐使用Go Modules,因为它提供了更现代化的依赖管理方式,支持版本控制,并且不依赖于GOPATH的固定目录结构。这个程序的功能是启动一个简单的HTTP服务器,能够响应两个不同路径的请求,并在响应中输出请求的相关信息。接口的实例,所有的HTTP请求,就都交给了该实例处理了。
2024-11-05 17:26:34
118
原创 【极客兔兔-Web框架Gee详解】Day0 序言
Web开发就是创建和维护网站的过程。它涉及从设计网站的外观和用户体验,到编写代码实现网站的功能,再到确保网站在互联网上正常运行。简单来说,Web开发就是把一个网站从无到有地创建出来,并确保它能在互联网上正常运行和使用。
2024-11-04 16:09:31
919
原创 【Redis】你就是Redis原理啊?!也就那样吧
Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。与MySQL数据库不同的是,Redis的数据是存在内存中的。它的读写速度非常快,每秒可以处理超过10万次读写操作。因此redis被广泛应用于缓存,另外,Redis也经常用来做分布式锁。除此之外,Redis支持事务、持久化、LUA 脚本、LRU 驱动事件、多种集群方案。
2024-11-04 11:55:18
839
原创 【RPC】RPC、gRPC 你给我往脑子里钻啊啊!
RPC(Remote Procedure Call Protocol)远程过程调用协议。一个通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个对象,就像调用本地应用程序中的对象一样。比较正式的描述是:一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC是协议:既然是协议就只是一套规范,那么就需要有人遵循这套规范来进行实现。目前典型的RPC实现包括:Dubbo、Thrift、GRPC、Hetty等。
2024-10-17 20:58:26
1116
原创 【Golang】踩坑记录:make()创建引用类型,初始值是不是nil!!
创建切片时的内存分配:使用创建切片时,会根据指定的容量分配底层数组的内存。即使容量为 0,make仍然会创建一个切片结构,但底层数组的内存不会被分配,因为没有元素需要存储。发散问题“容量为 0,make 仍然会创建一个切片结构,只是没有分配底层数组的内存。”意思是 切片指向数组的指针为nil?\qquad在Go中,当你使用创建一个切片时,切片的内部结构确实被初始化,但它的底层数组指针并不是nil。相反,它指向一个特殊的、零长度的数组。具体来说:切片的长度和容量都是 0。
2024-10-17 12:00:29
1209
原创 【SVN】Iinux下SVN解决冲突步骤及SVN相关命令操作
进入项目组,进行代码版本维护,要学会相关管理软件的操作及发生冲突时的处理方式,以下以TortoiseSVN为例参考https://blog.youkuaiyun.com/bravezhe/article/details/7396151。
2024-09-26 11:59:17
1780
原创 【protobuf】protobuf语法及序列化原理
序列化 是将数据结构或对象转换为一种可以存储或传输的格式的过程。常见的序列化格式包括 JSON、XML、Protocol Buffers、Thrift 等。反序列化 是将序列化后的数据恢复为原始数据结构或对象的过程。message用于定义结构数据,可以包含多种类型字段(field),每个字段声明以分号结尾。message经过protoc编译后会生成对应的class类,field则会生成对应的方法。
2024-09-01 17:43:12
1523
原创 【设计模式】创建型模式——抽象工厂模式
抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,属于对象创建型模式。这些类实现了抽象产品接口。// WindowsButton 是 Windows 风格的按钮// MacButton 是 Mac 风格的按钮// WindowsTextBox 是 Windows 风格的文本框// MacTextBox 是 Mac 风格的文本框声明了创建一组相关对象的方法。
2024-08-29 21:51:53
1192
原创 【Go高性能】测试(单元测试、基准测试)
要想改进程序的性能,首先要知道程序的当前性能。benchmark 是 go 语言中用于测试基准性能的工具。该工具用于测试被测试函数的平均运行耗时、内存分配次数。主要适用于在已知性能瓶颈在哪里时的场景。通过对相同功能函数的不同实现的性能指标(平均运行耗时、平均内存分配次数)进行比较,以判断性能的优劣。
2024-08-29 16:10:17
1703
原创 【设计模式】创建型模式——工厂方法模式
工厂方法模式(Factory Method Pattern)又称为工厂模式,也叫虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphic Factory)模式,它属于类创建型模式。在工厂方法模式中,工厂父类负责定义创建产品对象的公共接口,而工厂子类则负责生成具体的产品对象,这样做的目的是将产品类的实例化操作延迟到工厂子类中完成,即通过工厂子类来确定究竟应该实例化哪一个具体产品类。
2024-08-28 15:32:45
925
原创 【设计模式】创建型模式——简单工厂模式
简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。
2024-08-28 14:45:36
1524
原创 【Go函数详解】三、匿名函数和闭包
匿名函数时一种没有指定函数名的函数声明方式(与之相对的,有名字的函数被称为具名函数),在很多编程语言中都有实现和支持。// 1、将匿名函数赋值给变量// 调用匿名函数 add// 2、定义时直接调用匿名函数} (1, 2)为什么可以将匿名函数赋值给一个普通变量呢?以下解析。
2024-08-27 18:18:00
1225
原创 【实践经验】端口被占用问题:listen tcp:bind:only one usage of each socket address
可知,进程号1428是运行的svchost程序,说明之前运行的程序没有被杀死,继续占用端口。导致再运行项目的时候,显示端口被占用。经过搜索,确定是端口被占用,所以确定解决方法是查看端口是被什么程序占用了,是否可以需要杀死占用的程序还是更换端口。因为我的进程号9840显示没有程序,所以换个进程号1428进行演示。netstat -ano|findstr “端口号”taskkill /T /F /PID 进程号。tasklist|findstr “进程号”输入cmd,打开控制台。查看是否还有程序占用。
2024-08-26 11:09:39
5912
原创 【Go函数详解】一、函数入门
Go 普通函数的基本组成包括:关键字func、函数名、参数列表、返回值、函数体和返回语句。func 函数名(参数列表)返回值{函数体返回语句return Sum若函数的参数列表中包含若干个类型相同的参数,则可以在参数列表中省略前面变量的类型声明,只保留最后一个。即定义在同一个目录下的go文件中,只需要直接调用如果是在不同包中,需要先导入该函数所在的包,然后才能调用该函数。在调用其他包 定义的函数时,只有函数名首字母大写的函数才能被访问。
2024-08-22 21:24:23
245
原创 【反射机制】深入理解Go语言反射机制,全方位解析
反射(Reflection)在编程中通常被定义为在运行时检查程序的能力。这种能力使得一个程序能够操纵像变量、数据结构、方法和类型这样的对象的各种属性和行为。这一机制在Go中主要通过reflect标准库实现。
2024-08-21 21:51:15
1528
原创 【Goland】常用快捷键
工作中进行Go语言开发时,选择Goland作为IDE,掌握常用的快捷键,可以更高效地编写和管理自己的项目。以下快捷键都是Windows/Linux环境下可用。
2024-08-21 15:04:12
1764
原创 【百度】25届秋招内推码
📣 百度TPG技术中台事业群组—深度学习技术平台部 25届校招正在进行中,可通过定向内推形式get校招绿色通道!欢迎联系我定向内推🌟【部门介绍】飞桨(PaddlePaddle)以百度多年的深度学习技术研究和业务应用为基础,集核心框架、基础模型库、端到端开发套件、丰富的工具组件、星河社区于一体,是中国首个自主研发、功能丰富、开源开放的产业级深度学习平台。
2024-08-17 13:00:28
1374
原创 【Markdown】语法
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + S
2024-08-16 17:15:05
666
原创 6. MongoDB 文档插入、更新、删除、查询
文档的数据结构和JSON基本一样。所有存储在集合中的数据都是BSON格式。BSON是一种类似JSON的二进制形式的存储格式,是Binary JSON的简称。
2024-08-13 11:28:00
1514
原创 5. MongoDB 集合创建、更新、删除
options 可以是如下参数:下面是带有几个关键参数的 createCollection() 的用法:!! 在插入文档时,MongoDB 首先检查固定集合的 size 字段,然后检查 max 字段。!!2. 更新集合名在MongoDB中,不能直接通过命令来重命名集合。MongoDB可以使用renameCollection方法来重命名。 renameCollection方法在MongoDB的admin数据库中运行,可以将一个集合重命名为另一个名称。2.2 实例将test数据库中的
2024-08-12 14:48:35
1570
原创 4. MongoDB 数据库创建、删除、查看
在MongoDB中,数据库的创建是一个简单的过程,当首次向MongoDB中插入数据时,如果数据库不存在,MongoDB会自动创建它。只需要选择一个数据库名称,并开始向其中插入文档即可。
2024-08-12 11:41:46
1012
原创 3. MongoDB-连接
执行启动操作后,mongodb 在输出一些必要信息后不会输出任何信息,之后就等待连接的建立,当连接被建立后,就会开始打印日志信息。
2024-08-12 11:16:14
907
原创 0 MongoDB教程
菜鸟教程学习笔记MongoDB 简介 | 菜鸟教程 (runoob.com)MongoDB是一个流行的开源文档型数据库,它使用类似 JSON 的文档模型存储数据,这使得数据存储变得非常灵活。MongoDB 是一个基于文档的 NoSQL 数据库,由 MongoDB Inc. 开发。MongoDB 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。1. MongoDB特点
2024-08-11 15:34:16
889
原创 【Linux】常用命令——Grep
Linux grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。
2024-08-06 15:02:31
3323
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人