-
Go 确实有枚举吗?
所属栏目:[语言] 日期:2021-12-07 热度:189
Go 中有枚举吗?这是一个模棱两可的问题。有人说它有,有人说它没有。 什么是枚举 代码抽象于现实。程序与生活中关于枚举的概念是相通的:枚举代表一个对象所有可能取值的集合。例如,表示星期的 SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY、SATUR[详细]
-
PHP 8.1 发布,带来很多创新
所属栏目:[语言] 日期:2021-12-07 热度:122
PHP 是一种服务器端脚本语言,用于开发 Web 应用程序。根据 W3Techs 的数据,78.2% 的网站使用 PHP 并使用已知的服务器端编程语言。换句话说,您在 Internet 上访问的每 10 个网站中几乎有 8 个以某种方式使用 PHP。 在宣布成立PHP 基金会几天后,该语言通过[详细]
-
面试官 线程池多余的线程是怎样回收的?问到我了!
所属栏目:[语言] 日期:2021-12-07 热度:58
JDK线程池ThreadPoolExecutor的源码,对线程池执行任务的流程有了大体了解,实际上这个流程也十分通俗易懂,就不再赘述了,别人写的比我好多了。 不过,我倒是对线程池是如何回收工作线程比较感兴趣,所以简单分析了一下,加深对线程池的理解吧。 下面以JDK1.[详细]
-
C++ 控制台格式化打印技能
所属栏目:[语言] 日期:2021-12-07 热度:101
我写文章主要是为了给自己写文档。我在编程时非常健忘,所以我经常会写下有用的代码片段、特殊的特性,以及我使用的编程语言中的常见错误。这篇文章完全切合我最初的想法,因为它涵盖了从 C++ 控制台格式化打印时的常见用例。 像往常一样,这篇文章带有大量的[详细]
-
在 Go 中运用 Dockertest 进行集成测试
所属栏目:[语言] 日期:2021-12-07 热度:148
进行集成测试(或系统测试)通常意味着让数据库填充数据,像 redis、elasticsearch 等,通常,我们的软件与之交互的任何基础设施都可以工作。 最常见的方法是复制我们的生产基础设施,其实用容器来实现还是比较容易的,比如 docker 容器。 我们可以为需要复制的[详细]
-
C# 多线程使用Parallel.ForEach并行循环,真的能提升效能?
所属栏目:[语言] 日期:2021-12-07 热度:168
Parallel类是.NET 4中新增的抽象线程类。Parallel.For()方法类似于C#的for循环语句,也是多次执行一个任务。但是使用Parallel.For()方法,可以并行运行。微软的并行运算平台(Microsofts Parallel Computing Platform (PCP))提供了这样一个工具,让软件开发人[详细]
-
透过一个编译报错,总结两个Go程序编译的关键知识
所属栏目:[语言] 日期:2021-12-07 热度:168
调研了一下某个做 APM 的厂商的 Go 探针程序,说是引入一个包,全程不用再修改其他代码就能在项目里引入探针。没想到在刚引入包试着构建了一下就翻车了。 main.go:10:2: build constraints exclude all Go files in /xxx/github.com/xxx/agnet/xxxx 编译器编[详细]
-
为什么C和C++难以被替代
所属栏目:[语言] 日期:2021-12-07 热度:183
这是为什么呢?难道没有其他语言能取代C/C++吗? 我个人认为确实很难有。即使技术上有了(如rust)也很难真的流行起来,在市场使用上打败C/C++。原因有这么几个。 一个重要原因就是前两天提到的技术惯性问题。人们总是倾向于使用自己熟悉的技术,总是在不得不改变[详细]
-
new[]和delete[]必定要配对使用吗?
所属栏目:[语言] 日期:2021-12-07 热度:97
在平时资料中,我们常看到:new和delete,new[]和delete[]一定要配对使用! 也有人说:有时候不配对使用也不会出现问题。也许你也是只知其然,不知其所以然,然而我也有点懵了_(3」)_ 那就研究下这个问题: 首先,看下这段配对使用代码: #include stdlib.h #[详细]
-
选择 Go API 框架时要顾虑的四件事
所属栏目:[语言] 日期:2021-12-07 热度:85
用 Go 编写 API 服务,许多语言新手问的第一件事是:我应该使用哪个框架?。 那些来自 Ruby 或 Python 等语言的人可能熟悉大多数开发人员(例如 Rails、Django 或 Flask)使用的单一 Web 框架。Go 有点不同,因为实际上没有一个框架是社区中最受欢迎的。虽然有几[详细]
-
盘点Python中四种读取Json文件和提取Json文件内容的办法
所属栏目:[语言] 日期:2021-12-07 热度:103
我们知道json是一种常见的数据传输形式,所以对于爬取数据的数据解析,json的相关操作是比较重要的,能够加快我们的数据提取效率。 思路 关于这个问题,倒不是很难,群里提出了三个方法,第一个是才哥说的pd处理或者正则表达式,第二个是小编自己提出的json处[详细]
-
Go1.18 资讯 新的 IP 包
所属栏目:[语言] 日期:2021-12-07 热度:170
Go 1.18 标准库新增了一个包:net/netip,大部分人可能用不上这个包,但这个包的设计思路以及和现有标准库 IP 的比较值得学习。 标准库 net.IP 的问题 前 Go Team 成员之一 Brad Fitzpatrick 加入 Tailscale[1] 后,经常需要操作 IP 地址。因为使用 Go 语言实[详细]
-
神器 ffmpeg 操作视频,极度舒服
所属栏目:[语言] 日期:2021-12-07 热度:79
无论做什么事情,都要去分析一下最重要的是什么,然后集中精力攻克,再继续找最重要的事。 对我们这个任务来说,不算是个大项目,不过呢,还是要找最重要的事开始,步步为营,最终将整个问题解决了。 整体来来看,我们需要从一个目录中读取视频文件,然后,对[详细]
-
十个疯嗨的 Python 项目创意
所属栏目:[语言] 日期:2021-12-07 热度:194
你知道 Python 是被称为 全能编程语言 的吗? 是的,它确实是,虽然不应该在每个项目中都使用它。 你可以使用它来创建桌面应用程序、游戏、移动应用程序、网站和系统软件。它甚至是最适合用于实现 人工智能 和 机器学习 算法的语言。 因此,在过去的几周里,[详细]
-
几行代码就能实现漂亮进度条,太棒了!
所属栏目:[语言] 日期:2021-12-07 热度:66
作为程序员,我们经常会遇到比较耗时的操作,这个时候我们大多数人会无助地等待程序执行完成,有些人会趁机摸一下鱼,以便渡过这个无聊看起来又有点未知的时间,我就是这样做的。 但是,我们也可以选择另一种方式用一个炫酷的进度条,来观察处理进度,也可以[详细]
-
ASP.NET Core 判断请求是不是为Ajax请求
所属栏目:[语言] 日期:2021-12-07 热度:160
在写后台程序时,有时候需要知道客户端发送的是普通的请求,还是ajax 请求,最近在做项目的时候,有些地方需要判断当前的请求是不是ajax。特地找了下发现,jQuery 发出 ajax 请求时,会在请求头部添加一个名为 X-Requested-With 的信息,信息内容为:XMLHttpR[详细]
-
敲定Matplotlib运行报错 Usingagg,non-GUI backend
所属栏目:[语言] 日期:2021-12-07 热度:63
最近想玩玩python的图形处理模块来进行数据图形显示相关的开发,目的是把服务器中的数据资源生成图形(docker资源利用率展示不符合需求)。而matplotlib是python绘图这方面的权威,它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式,于是决定对其进[详细]
-
Java 问题排查技术共享
所属栏目:[语言] 日期:2021-12-07 热度:188
问题排查 可从三个方面入手 知识:有些问题,思考一下就有答案,就像传说中多隆那样,回忆下就知道第83行代码有问题~ 工具:当然不是每个人都能做到过目不忘,也有可能这代码完全不是你写的,这时就需要靠工具来定位问题 数据:程序运行时产生的数据,也能提[详细]
-
HashMap面试常见的六连问,你可以扛得住吗?
所属栏目:[语言] 日期:2021-12-07 热度:176
高手过招,招招致命 JDK1.8 中 HashMap 的底层实现,我相信大家都能说上来个 一二,底层数据结构 数组 + 链表(或红黑树) ,源码如下: /** * 数组 */ transient NodeK,V[] table; /** * 链表结构 */ static class NodeK,V implements Map.EntryK,V { final[详细]
-
一文带你搞明白 Python 的输入输出
所属栏目:[语言] 日期:2021-12-07 热度:119
为什么要输入和输出? 无论是从 一开始的hello world,还是前面的各种例子,基本都是些自说自话,展示类的代码片段。只有能够接收用户输入,根据输入代码生成结果,并输出到屏幕上展示出来,才算一个较为完整,简单的程序。 input输入函数 获取用户输入,保存[详细]
-
你,也许没完全搞懂 Java 泛型
所属栏目:[语言] 日期:2021-12-07 热度:198
今天我们来谈谈泛型。其实在初学的时候,我就对泛型有点蒙,因为看到有人说 Java 的泛型不是真的泛型,我搞不懂。 还有人说 Java 的泛型在实际运行时候会把类型给擦除了,我想着擦除是什么意思?为什么要擦除? 那把类型给擦除了为什么反射的时候还能得到泛型的[详细]
-
值得收藏的 C# 策划模式套路之三
所属栏目:[语言] 日期:2021-12-07 热度:78
行为设计模式跟前两种模式从内容上是有区别的。行为设计模式更关注对象之间的通信,以及职责和任务的交互。 一、责任链 名称起得很明显, 就是一个链式的责任或任务。为什么要链式呢?是因为请求要沿着多个处理程序往后传递。一个任务,可能要分很多步,又不想[详细]
-
Go 企业应用案例共享 Go 用于支付和奖励系统
所属栏目:[语言] 日期:2021-12-07 热度:107
Go 与其他编程语言的不同之处在于认知负载。你可以用更少的代码做更多的事情,这样可以更容易地推理和理解你最终编写的代码。 大多数 Go 代码最终看起来非常相似,因此,即使你使用的是全新的代码库,你也可以非常快速地上手并运行。 总的一句话,他们认为:G[详细]
-
Go 泛型 Maps 包正式释出,当下可用!
所属栏目:[语言] 日期:2021-12-07 热度:83
给大家带来一个关于泛型的新消息,那就是:在几天前,Go 泛型的配套标准库 golang.org/x/exp/maps 包已经正式提交,放出来了,可以使用。 cs.opensource.google 包代码如下: package maps func Keys[M ~map[K]V, K comparable, V any](m M) []K { r := make([详细]
-
Java 如何校验两个文件内容是同样的?
所属栏目:[语言] 日期:2021-12-07 热度:154
如果两个文件的内容相同,那么它们的摘要应该是相同的。这个原理能不能帮助我们鉴定两个文件是否相同呢? Java实现文件摘要 带着这个疑问,我写了一个文件摘要提取工具类: /** * 提取文件 checksum * * @param path 文件全路径 * @param algorithm 算法名 例[详细]
