深圳幻海软件技术有限公司 欢迎您!

  • go-浅学设计模式随记

    责任链模式组成:由多个处理器及处理器处理标志串联组成作用:常用于处理流水线事务,利用多个处理器对同一个对象进行处理,可以利用各处理器开关场景:常见逻辑层处理逻辑:获取参数、fetch数据、逻辑处理数据、返回参数一系列数据处理优点:将复杂的流水线处理逻辑简化为一个个单元,操作较为便捷,可以随意在处理器

  • 为什么我觉得GoFrame的Garray比PHP的Array还好用?

    前言写过PHP的同学都知道 PHP的数组Array非常好用,特别灵活。我在写PHP之前使用Java做安卓开发,在接触PHP的数组Array之后,直呼太香了!而在学习Go基础知识的时候了解到Go的数组和PHP的数组并不一样;从一定程度上讲,Go的slice切片类型和PHP的数组array比较

  • 【Go Slice详解】读者纷纷表示终于理解了Cap

    定义复制vars1[]int//定义一个存放int类型元素的切片vars2[]string//定义一个存放string类型元素的切片fmt.Println(s1,s2)fmt.Println(s1==nil)//true为空没有开辟内存空间fmt.Println(s2==nil)//true1.2.

  • 深入理解 Go 语言的一等函数及其应用

    ​1.什么是Go中的一等函数任何一门编程语言都离不开函数,无论是命令式语言C、多范式编程语言C++,还是面向对象编程语言Java、Ruby,动态语言Python、JavaScript,函数这一语法元素都是当仁不让的核心。Go语言没有面向对象语言的语法,比如类、继承、对象,但Go语言中最重要的部分就是

  • GoFrame的gmap相比Go原生的map,天然支持排序和有序遍历!?

    前言有好多初学GO的小伙伴都被Go语言中map的无序性“坑过”。尤其是PHP转Go的小伙伴~这篇文章会为大家介绍:GoFrame的gmap相比于Go原生的map有什么优势?为什么天然支持排序和有序遍历?如何做到的?GoFrame的gmap有哪些使用技巧?先说结论GoFrame提供的gmap字典类型,

  • 为什么Go搞了协程GoFrame还要搞协程池?怎么用?什么时候用?

    最近收到「程序员升级打怪」知识星球[1]的提问:“go协程本来就是轻量级线程,还有必要做复用增加工作量吗,性能可以提升多少呢?”先说结论Go的协程goroutine非常轻量级,这也是Go天生支持高并发的主要原因。但是协程goroutine频繁的创建销毁对GC的压力比较大,会影响性能。grpool的作

  • Go 学习:那些不一样的知识点(上)

    在学习Go语言的过程中,会涉及到语法、数据结构、和一些Go特有的东西,其中有不少现在还印象深刻,本文就说说Go语言中那些不一样的地方。1、变量和函数的声明复制packagemainimport"fmt"funcmain(){varnamestringname="oec2003"age:=18fmt.

  • 参加了个算法比赛,真是一言难尽啊

    hello大家好呀,我是小楼。上周参加了一个区的程序员技能比赛的初赛,其实就是算法比赛,虽然最后结果是过了初赛,但过程真是一言难尽啊。这次的算法比赛和ACM非常类似,虽然我大学是数学专业,虽然大学也修过ACM这门课,但是我的算法是真的不行,很菜很菜的那种。好在这次比赛是组(抱大腿)队模式,3人一组,

  • 用位运算为你的程序加速

    前言最近在持续优化之前编写的 JSON 解析库xjson,主要是两个方面的优化。第一个是支持将一个 JSONObject 对象输出为 JSON 字符串。这点在上个版本中只是利用自带的 Print 函数打印数据:复制fun

  • 学会 Go 中的时间处理

    ​作为程序员,我们经常需要对时间进行处理。在Go中,标准库time提供了对应的能力。本文将介绍time库中一些重要的函数和方法,希望能帮助到那些一遇到Go时间处理问题就需要百度的童鞋。应对时区问题在编程中,我们经常会遭遇八小时时间差问题。这是由时区差异引起的,为了能更好地解决它们,我们需要理解几个时

  • 一篇文章带你了解Go语言基础之切片补充

    前言Hey,大家好呀,我是星期八,这次咱们继续学习Go基础之切片补充扒。make疑云我们知道,可以通过make创建切片。复制varnames=make([]string,10,10)1.这句话表示动态创建了一个切片,切片中的元素数量为10个,切片的容量也为10个。你有疑惑吗???切片的数量和容量是什

  • Go语言和其他语言的不同之基本语法

    Go语言作为出现比较晚的一门编程语言,在其原生支持高并发、云原生等领域的优秀表现,像目前比较流行的容器编排技术Kubernetes、容器技术Docker都是用Go语言写的,像Java等其他面向对象的语言,虽然也能做云原生相关的开发,但是支持的程度远没有Go语言高,凭借其语言特性和简单的编程方式,弥补

  • Golang 常见设计模式之装饰模式

    想必只要是熟悉Python的同学对装饰模式一定不会陌生,这类Python从语法上原生支持的装饰器,大大提高了装饰模式在Python中的应用。尽管Go语言中装饰模式没有Python中应用的那么广泛,但是它也有其独到的地方。接下来就一起看下装饰模式在Go语言中的应用。简单装饰器我们通过一个简单的例子来看

  • Go1.18 新特性:弃用 strings.Title 方法,换个新坑吧!

    本文转载自微信公众号「脑子进煎鱼了」,作者陈煎鱼。转载本文请联系脑子进煎鱼了公众号。大家好,我是煎鱼。最近在看Go1.18ReleaseNotes时,发现strings,bytes标准库的Title方法,竟然被弃用了(Deprecated),这是为什么呢?今天这篇文章就由煎鱼和大家一起看看。介绍这里

  • 跟着官网学Go之Golang环境准备

    我一直都想实践Golang,这段实践我计划跟着Golang官网学习Go语言,因为有C#的基础,所以,在学习Golang的实践过程中,不会记录那么细致了。环境安装Windows安装Go环境还是很方便的,直接下载官方提供的安装包安装即可,目前官网的Golang版本为1.17.6先将其下载到本地,然后双击

  • Go Error 嵌套到底是怎么实现的?

    GoError的设计哲学是「ErrorsAreValues」。这句话应该怎么理解呢?翻译起来挺难的。不过从源码的角度来看,好像更容易理解其背后的含义。GoError源码很简单,寥寥几行:复制// src/builtin/builtin.go  type err

  • Go Error 嵌套到底是怎么实现的?

    GoError的设计哲学是「ErrorsAreValues」。这句话应该怎么理解呢?翻译起来挺难的。不过从源码的角度来看,好像更容易理解其背后的含义。GoError源码很简单,寥寥几行:复制// src/builtin/builtin.go  type err

  • 超全总结:Go 读文件的 10 种方法

    大家好,我是明哥。Go中对文件内容读写的方法,非常地多,其中大多数是基于syscall或者os库的高级封装,不同的库,适用的场景又不太一样,为免新手在这块上裁跟头,我花了点时间把这些内容梳理了下。这篇是上篇,先介绍读取文件的10种方法,过两天再介绍写入文件的。 1.整个文件读取入内存直接将

  • 两个 Go 程序之间的 WebSocket 通信

     实现两个Go服务之间做WebSocket通信要怎么做?本文做了介绍。使用WebSockets时,一个程序必须充当服务器。但是可以有许多其他程序作为客户端。在本文中,我们将创建一个服务器和一个客户端WebSocketServer服务器的代码非常简单。因为我们不想重新发明轮子,所以我们将使用

  • 5个好用的开发者Vim插件

     通过这5个插件扩展Vim功能来提升你的编码效率。我用Vim已经超过20年了,两年前我决定把它作为我的首要文本编辑器。我用Vim来编写代码、配置文件、博客文章及其它任意可以用纯文本表达的东西。Vim有很多超级棒的功能,一旦你适合了它,你的工作会变得非常高效。在日常编辑工作中,我更倾向于使用

推荐阅读