-
Golang 语言编程使用接口有哪些益处?
所属栏目:[语言] 日期:2021-12-06 热度:151
在 Golang 语言中,接口类型定义了一组方法签名,接口类型的值可以保存实现了这些方法的任何值。 Golang 语言的接口是隐式实现的,它不像其他某些编程语言,使用 implements 关键字显式实现接口,Golang 语言没有 implements 关键字,一个类型只要实现接口定[详细]
-
Go 1.18 中的 Any 是啥?
所属栏目:[语言] 日期:2021-12-06 热度:64
Go 1.18 因为泛型引入 any,这实际上是 interface{} 的别名: type any = interface{} 以下代码虽然不是泛型,但用 Go 1.18 可以正常运行,证明 any 和 interface{} 是一样的:(这里可以在线运行:https://gotipplay.golang.org/p/dPeNhe-7nkA) package main[详细]
-
长篇长论Python生成器
所属栏目:[语言] 日期:2021-12-06 热度:68
ython生成器是什么 一句话解释:包含了yield关键字的函数就是生成器,它的返回值是一个生成器对象。我简单画了个示意图: yield相当于return。 函数遇到yield就暂停,保存当前信息,返回yield的值。 在下次执行next()时,从当前位置继续执行。 比较有意思的事[详细]
-
11月份Github上Java开源项目排行名单
所属栏目:[语言] 日期:2021-12-06 热度:154
QuestDB是一个高性能、开源的SQL数据库,适用于金融服务、物联网、机器学习 、DevOps和可观测性应用。它拥有支持PostgreSQL线协议的端点,使用InfluxDB线协议的模式无关的高吞吐数据获取方式,以及用于查询、批量导入和导出的REST API。QuestDB实现了ANSI SQ[详细]
-
编写无Bug Java代码的几个优秀实行
所属栏目:[语言] 日期:2021-12-06 热度:169
在编写代码时,开发人员努力以最少的复杂性和最多的功能编写没有bug的代码。无论你是初学者还是专家,都应该遵循一些规则,以便为客户机获得最佳代码。下面是无bug代码编写的规则。 规则 :不需要依赖于初始化 在Java中,开发人员总是依赖构造函数的使用来初[详细]
-
EasyC++,名称空间其他特征
所属栏目:[语言] 日期:2021-12-06 热度:106
名称空间其他特性 嵌套 我们可以将名称空间声明进行嵌套: namespace elements { namespace fire { int flame; ... } float water; } 我们观察一下可以发现这里的flame位于elements::fire当中,所以当我们使用解析运算符使用它的时候写成:elements::fire::fl[详细]
-
.NET Core怎样配置TLS Cipher 套件 ?
所属栏目:[语言] 日期:2021-12-06 热度:155
.NET Core Cipher(套件)配置 如果没有项目上的苛刻要求,我断然也就无法在此方面展开研究和实践 本文具以.NET 5为例,只不过针对.NET Core 3或3.1通过工具扫描出的协议套件结果略有所差异,但不影响我们对安全套件的配置,我们使用OpenSSL生成自签名证书,后[详细]
-
Java9异步编程-反应式流运用
所属栏目:[语言] 日期:2021-12-06 热度:170
Reactive API总览 要构建一个流,主要使用三个抽象,并将它们组合成异步处理逻辑。 每个流都需要处理由Publisher实例发布给它的事件;发布者有一个subscribe()的方法。 如果某个订阅者希望接收发布者发布的事件,则需要使用subscribe()订阅发布者。 消息的接收[详细]
-
Go泛型系列 Maps 包有哪些?
所属栏目:[语言] 日期:2021-12-06 热度:103
真实的场景 不少新手,对 map 的输出是随机的有迷惑,曾经,map 的输出顺序是固定的,但官方怕大家依赖这个顺序,之后故意让输出顺序不固定。 但实际场景中,会有按某种顺序输出 map 的需求,怎么办呢?这需要对 map 的 key 进行排序,伪代码如下: for k := m[详细]
-
Python远程连接服务器用它就可以了
所属栏目:[语言] 日期:2021-12-06 热度:154
使用fabric玩转远程服务器管理 fabric基于强大的paramiko、invoke等库,构建出一整套简单易用的API,使得我们使用简洁的语句就可以应付常见的各种远程服务器操作,使用pip install fabric完成安装,本文演示对应版本为2.6。 1. 连接到远程服务器并执行终端命[详细]
-
敏感词过滤算法达成
所属栏目:[语言] 日期:2021-12-06 热度:157
敏感词、文字过滤是一个网站必不可少的功能,如何设计一个好的、高效的过滤算法是非常有必要的。 在实现文字过滤的算法中,DFA是唯一比较好的实现算法。DFA即Deterministic Finite Automaton,也就是确定有穷自动机,它是是通过event和当前的state得到下一个s[详细]
-
为什么C和C++难以被替代
所属栏目:[语言] 日期:2021-12-06 热度:189
这是为什么呢?难道没有其他语言能取代C/C++吗? 我个人认为确实很难有。即使技术上有了(如rust)也很难真的流行起来,在市场使用上打败C/C++。原因有这么几个。 一个重要原因就是前两天提到的技术惯性问题。人们总是倾向于使用自己熟悉的技术,总是在不得不改变[详细]
-
new[]和delete[]必定要配对使用吗?
所属栏目:[语言] 日期:2021-12-06 热度:73
在平时资料中,我们常看到:new和delete,new[]和delete[]一定要配对使用! 也有人说:有时候不配对使用也不会出现问题。也许你也是只知其然,不知其所以然,然而我也有点懵了_(3」)_ 那就研究下这个问题: 首先,看下这段配对使用代码: #include stdlib.h #[详细]
-
选择 Go API 框架时要顾虑的四件事
所属栏目:[语言] 日期:2021-12-06 热度:141
用 Go 编写 API 服务,许多语言新手问的第一件事是:我应该使用哪个框架?。 那些来自 Ruby 或 Python 等语言的人可能熟悉大多数开发人员(例如 Rails、Django 或 Flask)使用的单一 Web 框架。Go 有点不同,因为实际上没有一个框架是社区中最受欢迎的。虽然有几[详细]
-
盘点Python中四种读取Json文件和提取Json文件内容的办法
所属栏目:[语言] 日期:2021-12-06 热度:136
我们知道json是一种常见的数据传输形式,所以对于爬取数据的数据解析,json的相关操作是比较重要的,能够加快我们的数据提取效率。 思路 关于这个问题,倒不是很难,群里提出了三个方法,第一个是才哥说的pd处理或者正则表达式,第二个是小编自己提出的json处[详细]
-
Go1.18 资讯 新的 IP 包
所属栏目:[语言] 日期:2021-12-06 热度:179
Go 1.18 标准库新增了一个包:net/netip,大部分人可能用不上这个包,但这个包的设计思路以及和现有标准库 IP 的比较值得学习。 标准库 net.IP 的问题 前 Go Team 成员之一 Brad Fitzpatrick 加入 Tailscale[1] 后,经常需要操作 IP 地址。因为使用 Go 语言实[详细]
-
神器 ffmpeg 操作视频,极度舒服
所属栏目:[语言] 日期:2021-12-06 热度:60
无论做什么事情,都要去分析一下最重要的是什么,然后集中精力攻克,再继续找最重要的事。 对我们这个任务来说,不算是个大项目,不过呢,还是要找最重要的事开始,步步为营,最终将整个问题解决了。 整体来来看,我们需要从一个目录中读取视频文件,然后,对[详细]
-
十个疯嗨的 Python 项目创意
所属栏目:[语言] 日期:2021-12-06 热度:198
你知道 Python 是被称为 全能编程语言 的吗? 是的,它确实是,虽然不应该在每个项目中都使用它。 你可以使用它来创建桌面应用程序、游戏、移动应用程序、网站和系统软件。它甚至是最适合用于实现 人工智能 和 机器学习 算法的语言。 因此,在过去的几周里,[详细]
-
几行代码就能实现漂亮进度条,太棒了!
所属栏目:[语言] 日期:2021-12-06 热度:180
作为程序员,我们经常会遇到比较耗时的操作,这个时候我们大多数人会无助地等待程序执行完成,有些人会趁机摸一下鱼,以便渡过这个无聊看起来又有点未知的时间,我就是这样做的。 但是,我们也可以选择另一种方式用一个炫酷的进度条,来观察处理进度,也可以[详细]
-
ASP.NET Core 判断请求是不是为Ajax请求
所属栏目:[语言] 日期:2021-12-06 热度:173
在写后台程序时,有时候需要知道客户端发送的是普通的请求,还是ajax 请求,最近在做项目的时候,有些地方需要判断当前的请求是不是ajax。特地找了下发现,jQuery 发出 ajax 请求时,会在请求头部添加一个名为 X-Requested-With 的信息,信息内容为:XMLHttpR[详细]
-
用 Python 搞一个按键记录器
所属栏目:[语言] 日期:2021-12-06 热度:123
按键记录器,就你在电脑上的每个按键,都会被记录下来,可以进行操作追踪,当然了,你在网站上输入的用户名密码等敏感信息也会被记录下来。用 Python 实现这个可以说非常简单,不过这玩意请不要用在别人的电脑上,哈哈。 教程 pynput 模块可以帮助我们实现,[详细]
-
面试官 Final、Finally、Finalize 有什么差异?
所属栏目:[语言] 日期:2021-12-06 热度:119
final 介绍 final 是 Java 语言中的一个关键字,使用 final 修饰的对象不允许修改或替换其原始值或定义。 final 可以用来修饰:类、方法、变量和参数,其中可以用来修饰参数这一项,容易被人遗忘,这是 final 的 4 种用法。 1.1 final 用法说明 当 final 修饰[详细]
-
介绍一个C++中很有用的设计模式
所属栏目:[语言] 日期:2021-12-06 热度:123
大家好,今天介绍一个C++中非常常用的模式:pimpl 至于它有什么作用,直接看代码: // MyClass.h class MyClass { public: void func1(); void func2(); private: void func3(); void func4(); int a; int b; }; 假设我们在开发一个SDK,或者设计某个模块,需[详细]
-
GET 和 POST请求的本质差别是什么?看完觉得自己太无知了
所属栏目:[语言] 日期:2021-12-06 热度:99
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清[详细]
-
你只能用 split?试试 StringTokenizer,性能可以快 4 倍!!
所属栏目:[语言] 日期:2021-12-06 热度:56
分割字符串要使用 String 的 split() 方法,split 方法虽然深入人心,使用也简单,但效率太低! 其实在 JDK 中,还有一个性能很强的纯字符串分割工具类:StringTokenizer。 这个类在 JDK 1.0 中就推出来了,但在实际工作却发现很少有人使用,网上有人说不建议[详细]