-
Go 确实有枚举吗?
所属栏目:[语言] 日期:2021-12-06 热度:128
Go 中有枚举吗?这是一个模棱两可的问题。有人说它有,有人说它没有。 什么是枚举 代码抽象于现实。程序与生活中关于枚举的概念是相通的:枚举代表一个对象所有可能取值的集合。例如,表示星期的 SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SAT[详细]
-
Golang 语言编程使用接口有哪些益处?
所属栏目:[语言] 日期:2021-12-06 热度:106
在 Golang 语言中,接口类型定义了一组方法签名,接口类型的值可以保存实现了这些方法的任何值。 Golang 语言的接口是隐式实现的,它不像其他某些编程语言,使用 implements 关键字显式实现接口,Golang 语言没有 implements 关键字,一个类型只要实现接口[详细]
-
用例子来学会 Stream
所属栏目:[语言] 日期:2021-12-06 热度:55
引言 先从一个例子开始,看看为什么在Java8中要引入流(Stream)? 比如实现这么一个需求:在学生集合中查找男生的数量。 传统的写法为: public long getCountsOfMaleStudent(ListStudent students) { long count = 0; for (Student student : students) { if[详细]
-
怎样写出令人惊叹的 Python 类
所属栏目:[语言] 日期:2021-12-06 热度:127
如何写出令人惊叹的 Python 类 本文分享了如何通过魔法方法编写一个非常优雅的类,魔术方法可在 Python 内置的函数或操作中自动调用,可以让我们编写出可读性、易用性更好的类,就像本文中的 DateTimeRange。 作者:somenzz 来源:Python七号|2021-11-29 07[详细]
-
在 Go 中运用 Dockertest 进行集成测试
所属栏目:[语言] 日期:2021-12-06 热度:114
进行集成测试(或系统测试)通常意味着让数据库填充数据,像 redis、elasticsearch 等,通常,我们的软件与之交互的任何基础设施都可以工作。 最常见的方法是复制我们的生产基础设施,其实用容器来实现还是比较容易的,比如 docker 容器。 我们可以为需要复制[详细]
-
C++ 控制台格式化打印技能
所属栏目:[语言] 日期:2021-12-06 热度:159
我写文章主要是为了给自己写文档。我在编程时非常健忘,所以我经常会写下有用的代码片段、特殊的特性,以及我使用的编程语言中的常见错误。这篇文章完全切合我最初的想法,因为它涵盖了从 C++ 控制台格式化打印时的常见用例。 像往常一样,这篇文章带有大量[详细]
-
透过一个编译报错,总结两个Go程序编译的关键知识
所属栏目:[语言] 日期:2021-12-06 热度:91
调研了一下某个做 APM 的厂商的 Go 探针程序,说是引入一个包,全程不用再修改其他代码就能在项目里引入探针。没想到在刚引入包试着构建了一下就翻车了。 main.go:10:2: build constraints exclude all Go files in /xxx/github.com/xxx/agnet/xxxx 编译器[详细]
-
C# 多线程使用Parallel.ForEach并行循环,真的能提升效能?
所属栏目:[语言] 日期:2021-12-06 热度:135
Parallel类是.NET 4中新增的抽象线程类。Parallel.For()方法类似于C#的for循环语句,也是多次执行一个任务。但是使用Parallel.For()方法,可以并行运行。微软的并行运算平台(Microsofts Parallel Computing Platform (PCP))提供了这样一个工具,让软件开发[详细]
-
Gin 源码阅读之 Gin 与 Net/Http的联系
所属栏目:[语言] 日期:2021-11-06 热度:50
gin 是目前 Go 里面使用最广泛的框架之一了,弄清楚 gin 框架的原理,有助于我们更好的使用 gin。这个系列 gin 源码阅读会逐步讲明白 gin 的原理,欢迎关注后续文章。 gin 概览 想弄清楚 gin, 需要弄明白以下几个问题: request数据是如何流转的 gin框架到底[详细]
-
看完后让你成为武松,手把手教你打败Java中的纸老虎
所属栏目:[语言] 日期:2021-11-06 热度:101
泛型,其实算是Java当中比较难的语法了,很多人一开始都对其一知半解,也很害怕阅读带泛型的源码,虽然看起来语法很难,但当你理解后会觉得很简单,其实只是一个纸老虎罢了。下面,我将会用非常简单易懂的方式带你去理解它,相信你在认真看完后会有非常大的[详细]
-
一文掌握 C++ 智能指针的应用
所属栏目:[语言] 日期:2021-11-06 热度:122
RAII 与引用计数 了解 Objective-C/Swift 的程序员应该知道引用计数的概念。引用计数这种计数是为了防止内存泄露而产生的。 基本想法是对于动态分配的对象,进行引用计数,每当增加一次对同一个对象的引用,那么引用对象的引用计数就会增加一次, 每删除一[详细]
-
你清楚JDK版本相关特性吗?结果令人尴尬!
所属栏目:[语言] 日期:2021-11-06 热度:128
关于版本意识,尤其是初学者,很少有人会关注(很多三五年了,照样没怎么关注)。 为什么不关注呢?因为他们关注都是功能点或者知识点。 后来,逐渐的,一部分人在开发中就会遇到各种各样的问题,于是就开始关注版本了,而另外一部分人完全就是为了应付面试。[详细]
-
从 Hotspot 虚拟机角度来分析 Java 线程开启
所属栏目:[语言] 日期:2021-11-06 热度:177
基本概念 Java 线程其实是映射到操作系统的内核线程上的,所以 Java 线程基本上也就是操作系统在进行管理。在 Linux系统中,线程和进程用的是同一个结构体进行描述的,只不过进程拥有自己独立的地址空间,而同一个进程的多个线程之间是共享资源的。 简单说[详细]
-
揭秘Python list 深/浅拷贝原理
所属栏目:[语言] 日期:2021-11-06 热度:85
1. python list的深/浅拷贝 python 有一种常用数据类型:list,使用list时经常需要考虑一件事件,那就是:浅拷贝与深拷贝。 至于什么是深浅拷贝,先从一个示例代码来分析一下: import copy # list 测试使用的源数据 lists = [[1, 2, 3], 4, 5, 6] def low_[详细]
-
怎样在 Java 中使用外部库
所属栏目:[语言] 日期:2021-11-06 热度:113
外部库填补了 Java 核心库中的一些功能空白。 Java 自带有一组核心库,其中包含了定义常用数据类型和相关行为的库(例如 String 和 Date)、与主机操作系统交互的实用程序(例如 System 和 File),以及一些用来管理安全性、处理网络通信、创建或解析 XML的有用[详细]
-
Python太好用了!AI初学者快速体验人脸检查
所属栏目:[语言] 日期:2021-11-06 热度:117
我们使用python进行AI识别测试,具体方式是是开启本地电脑的摄像头进行实时的识别,或者直接传入一张图片进行行人检测,在分析代码把数据源传入到识别,看到的是source=0,但是这个参数是打开本地电脑的摄像头流,再进行行人检测。 但我们需要对此处进行修[详细]
-
我近日偶遇的六个很酷的Python库
所属栏目:[语言] 日期:2021-11-06 热度:128
Python是机器学习不可或缺的一部分,库让我们的生活更简单。最近,我在处理机器学习项目时遇到了6个很棒的库。它们帮我节省了大量时间,本文将介绍它们。 1. clean-text clean-text是真正很出色的库,如果您需要处理抓取内容或社交媒体数据,它应该是您的首[详细]
-
什么是可中断锁?有什么用?怎么达成?
所属栏目:[语言] 日期:2021-11-06 热度:165
在 Java 中有两种锁,一种是内置锁 synchronized,一种是显示锁 Lock,其中 Lock 锁是可中断锁,而 synchronized 则为不可中断锁。 所谓的中断锁指的是锁在执行时可被中断,也就是在执行时可以接收 interrupt 的通知,从而中断锁执行。 PS:默认情况下 Lock[详细]
-
会诱发 Goroutine 挂起的 27个因素
所属栏目:[语言] 日期:2021-11-06 热度:106
上个月面向读者的提问,我们针对 goroutine 泄露中都会看到的大头 runtime.gopark 函数进行了学习和了解,输出了 《Goroutine 一泄露就看到他,这是个什么?》。 有小伙伴提到,虽然我们知道了 runtime.gopark 函数的缘起和内在,但其实没有提到 runtime.gop[详细]
-
Python项目实操篇-常用验证码标注和识别
所属栏目:[语言] 日期:2021-11-06 热度:75
大家好,我是Snowball。 一、前言 今天给大家分享的实战项目是常用验证码标注识别,从想法诞生到实现思路,再到编码实战的整体过程,这个过程我前后整理了上万字,计划分章节来发布。言归正传,一起来看看今天的内容吧!今天这篇内容主要讲解这篇文章的创作[详细]
-
适合开发者的十大优质Python编译器
所属栏目:[语言] 日期:2021-11-06 热度:130
由Guido van Rossum于1991年创建的Python,如今已是发展最快、使用最广的编程语言之一。它可以在诸如:Web应用、桌面开发、机器学习、人工智能、数据分析、以及数据可视化等领域,得到广泛的使用。 值得注意的是,近年来,随着Python生态系统的不断发展壮大[详细]
-
C#多线程研发之任务并行库
所属栏目:[语言] 日期:2021-11-06 热度:92
之前学习了线程池,知道了它有很多好处。 使用线程池可以使我们在减少并行度花销时节省操作系统资源。可认为线程池是一个抽象层,其向程序员隐藏了使用线程的细节,使我们可以专心处理程序逻辑,而不是各种线程问题。 但也不是说我们所有的项目中都上线程池[详细]
-
几行Java代码弄完图片提取文字功能
所属栏目:[语言] 日期:2021-11-06 热度:185
近日浏览网上一些图片提取文字的网站,觉得甚是有趣,花费半日也做了个在线图片识别程序,完成了两个技术方案的选择,一是 tesseract + Python flask的方案实现,二是 tesseract + Spring web 的技术解决方案,并简作论述,与君共勉。 一、tesseract-ocr介[详细]
-
Spring Boot + MyBatis + MySQL达成读写分离!
所属栏目:[语言] 日期:2021-11-06 热度:151
1、引言 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做。 因此,一般来讲,读写分离有两种实现方式。第一种是依靠中间件(比如:MyCat),也就是说应用程序连接[详细]
-
写 Go 时怎样优雅地查文档
所属栏目:[语言] 日期:2021-11-06 热度:50
某天写代码时发现自己对 IDE 的依赖非常深,如果没了 Goland 就不会写代码了,心里为之一惊。 Goland 的自动补全功能已经是必需品了,只要打出相关的几个字符,不管是变量名还是函数调用,都能帮你直接补全。我们只需要往相应的位置填东西就行了。 进而又想[详细]