资讯

  • 让我们一起聊一聊反射

    让我们一起聊一聊反射

    反射的引入【1】反射可以做什么?1) 反射可以在运行时动态获取变量的各种信息,比如变量的类型,类别等信息2) 如果是结构体变量,还可以获取到结构体本身的信息(包括结构体的字段、方法)3) 通过反射,可以修改变量的值,可以调用关联的方法。4) 使用反射,需要import ("reflect")【2】反射相关的函数1) reflect.TypeOf(变量名),获取变量的类型,.Type类型2) ref...

    日期:2023-08-14点击:172
  • 警惕 C++ 中的隐式类型转换

    警惕 C++ 中的隐式类型转换

    今天文章的主题灵感来自客户的一个问题:我在研究一个代码中的栈溢出问题。为了减小栈帧的大小,我尽可能多地删除了局部变量,但仍有很多栈空间无法解释。除了局部变量、参数、保存的寄存器和返回地址之外,栈上还有什么其他的东西呢?我的回答是,嗯,还有结构化(SEH)的异常处理信息,但这通常不会占用太多栈空间,因此不会成为”大量”神秘栈使用的来源。我的猜测是,代码正在生成大量大型 C++ 临时对象。请考虑以下程...

    日期:2023-08-14点击:192
  • Go的Net/Http有哪些值得关注的细节?

    Go的Net/Http有哪些值得关注的细节?

    golang的net/http库是我们平时写代码中,非常常用的标准库。由于go语言拥有goroutine,goroutine的上下文切换成本比普通线程低很多,net/http库充分利用了这个优势,因此,它的内部实现跟其他语言会有一些区别。其中最大的区别在于,其他语言中,一般是多个网络句柄共用一个或多个线程,以此来减少线程之间的切换成本。而golang则会为每个网络句柄创建两个goroutine,一...

    日期:2023-08-14点击:187
  • 计算机底层原理~CPU缓存一致性

    计算机底层原理~CPU缓存一致性

    CPU Cache知识回顾CPU 的高速缓存,通常可以分为 L1、L2、L3 这样的三层高速缓存,也称为一级缓存、二级缓存、三级缓存。L1 高速缓存访问速度几乎和寄存器一样快,大小在几十 KB 到几百 KB 不等。每个 CPU 核心都有一块属于自己的 L1 高速缓存。L2 高速缓存同样每个 CPU 核心都有,但是 L2 高速缓存位置比 L1 高速缓存距离 CPU 核心 更远,它大小比 L1 高速缓...

    日期:2023-08-14点击:217
  • 停止过度设计中等规模的前端应用程序

    开发一个小型应用程序很简单。另一方面,开发大规模应用程序极其困难,但至少有大量可用的资源可以指导你。然而,大多数实际应用存在的中间地带,却鲜少受到关注。在软件开发领域,不陷入过度工程化的陷阱,写出可维护的代码的做法,已经越来越少见了。让我们探索哪些流行的成分可能对中型应用有益,并评估它们是否会帮助你管理复杂性,或者是否会制造出比解决的问题更多的问题。TypescriptYES ✅首先,我们来解决这...

    日期:2023-08-14点击:207
  • SpringBoot使用WebSocket实现即时消息

    SpringBoot使用WebSocket实现即时消息

    环境:SpringBoot2.4.12.依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency>...

    日期:2023-08-14点击:209
  • 提升Go的HTTP路由器的提案

    提升Go的HTTP路由器的提案

    译者 | 刘汪洋审校 | 重楼Go 的标准库中包含一个稳定且成熟的 HTTP 服务器。然而,内置的请求路由器http.ServeMux 功能较为简洁,因此你常常需要自己编写路由代码。其主要短板是,它并未支持 HTTP 方法的匹配(如GET和POST的区别),同时也无法持/users/{user}/settings这种类型的通配符路径。然而,这两个功能几乎是所有 REST 风格的 API ...

    日期:2023-08-14点击:209
  • 穿上App外衣,保持Web灵魂——PWA温故

    穿上App外衣,保持Web灵魂——PWA温故

    早在2015年,设计师弗朗西斯·贝里曼和Google Chrome的工程师亚历克斯·罗素提出“PWA(渐进式网络应用程序)”概念,将网络之长与应用之长相结合,其核心目标就是提升 Web App 的性能,改善 Web App以媲美Native的流畅体验。1. 什么是PWAPWA 不是一个框架或工具集,而是一个概念,是开发人员需要在应用程序中实现的一组功能,以便将应用程序的用户体验提升到一个新的水平上...

    日期:2023-08-14点击:215
  • 提高虚拟机游戏性能指南

    提高虚拟机游戏性能指南

    在本文中,我们将解释什么是虚拟机游戏,以及在什么情况下可以使用它来最大限度地提高性能。在这篇文章中,我们将解释什么是虚拟机游戏,并在什么情况下可以使用它。您还将了解如何最大化性能,使虚拟机上的游戏流畅而愉快。虚拟机游戏:设置和性能提升虚拟化为优化硬件资源的利用创造了许多机会。这不仅适用于构建高性能服务器来运行复杂环境的组织,也适用于普通人。如果您想要使用虚拟机进行游戏呢?简而言之:这是可能的。玩家...

    日期:2023-08-14点击:189
  • 什么是代码审查及其如何节省时间:开发人员指南

    什么是代码审查及其如何节省时间:开发人员指南

    学习有效的代码审查最佳实践和技巧。通过专家的建议和洞察力提高代码质量和软件开发流程。在思科公司,每个客户支持电话的成本是33美元,该公司希望减少每年5万次的呼叫数量。代码审查既用于消除缺陷,又用于改善可用性。过去,代码审查常常是冗长且耗时的过程。随着开发环境向更快速和更敏捷的方法转变,代码审查过程也转变为与现代方法相一致的轻量级方法,使您的编程更加出色。在现代场景中,我们可以使用无缝集成到软件配置...

    日期:2023-08-14点击:194
  • JavaScript 中有趣的九个常用编码套路

    JavaScript 中有趣的九个常用编码套路

    这篇文章是面向新手的,但如果幸运的话,希望能给各位大佬们带来一些小小的启发。1、set对象:数组快速去重常规情况下,我们想要筛选唯一值,一般会想到遍历数组然后逐个对比,或者使用成熟的库比如lodash之类的。不过,ES6带来了一个新玩意儿!它引入了一个全新的对象类型:Set!而且,如果结合上...展开运算符,我们可以超级快速地创建一个已经去重的全新数组!const arr = [10, 10, 1...

    日期:2023-08-14点击:205
  • 面试官:JavaScript中“x !== x”可以返回True吗?

    面试官:JavaScript中“x !== x”可以返回True吗?

    在面试的过程中,你有被问一些奇怪面试题的经历吗?这些面试题与常规问题不同:这些面试问题看起来很简单,但却考验你对 JavaScript 的透彻理解,今天我将它们整理出来,看看你是否都能回答出来。1.“x !== x”可以返回true吗?要输出“hello fatfish”,“x”的值应该是多少?const x = ? // Please fill in the value of "x? if (...

    日期:2023-08-14点击:201
  • 破解代码:每个Web开发者都应该知道的七个秘密

    破解代码:每个Web开发者都应该知道的七个秘密

    网页开发是当代商业成功的基石,在数字世界中具有重要地位。网站的功能和外观直接影响用户体验,进而决定了公司在竞争激烈的在线领域中的成败。网页开发人员掌握着最大限度发挥数字世界可能性的关键,从设计美感到互动复杂性。理解基础知识坚实基础的HTML基础知识HTML是网页开发的基石,它为构建网站提供了数字画布。每一行代码都创建了一个蓝图,浏览器会将其解释为用户所见到的视觉壮丽。除了美学之外,语义化的HTML...

    日期:2023-08-11点击:211
  • 九个实用的 JavaScript 技巧

    九个实用的 JavaScript 技巧

    JavaScript 的最初目的是为网站添加一些功能的简单语言。令人惊讶的是,如今它无处不在,而且更加复杂。随着 Web 应用程序变得越来越复杂,JavaScript 也发展得如此之快。编写简洁、可读且可维护的 JavaScript 程序不再像以前那么容易了。本文将总结 9 个实用的 JavaScript 技巧,帮助您编写更好的前端代码,感受这种优雅编程语言的美妙之处。现在,让我们一起来看看吧。1...

    日期:2023-08-11点击:189
  • 使用Python从头开始构建决策树算法

    使用Python从头开始构建决策树算法

    决策树(Decision Tree)是一种常见的机器学习算法,被广泛应用于分类和回归任务中。并且再其之上的随机森林和提升树等算法一直是表格领域的最佳模型,所以本文将介绍理解其数学概念,并在Python中动手实现,这可以作为了解这类算法的基础知识。在深入研究代码之前,我们先要了解支撑决策树的数学概念:熵和信息增益熵:杂质的量度熵作为度量来量化数据集中的杂质或无序。特别是对于决策树,熵有助于衡量与一...

    日期:2023-08-11点击:188
  • 五个 AI API 可自动解决你的日常问题

    五个 AI API 可自动解决你的日常问题

    让我们利用当今的人工智能技术实现手动工作的自动化。现在可以使用我们最喜欢的编程语言 Python 来完成校对文档、创作艺术或在 Google 中搜索答案等任务。在本文中,我将分享 5 个可以帮助自动化解决我们日常问题的 AI API。现在,让我们开始吧。01、图像生成人工智能想要将您的想象变成现实,那么,您可能会对使用图像生成 AI API 感兴趣。该工具可让您将文本转换为美丽的艺术作品。Geti...

    日期:2023-08-11点击:211
  • 面试官:你能停止 JavaScript 中的 forEach 循环吗?

    面试官:你能停止 JavaScript 中的 forEach 循环吗?

    面试官:你能停止 JavaScript 中的 forEach 循环吗?在回答这个问题时,我的回答导致面试官突然结束了面试。我对结果感到沮丧,问面试官:“为什么?实际上可以停止 JavaScript 中的 forEach 循环吗?”在面试官回答之前,我花了一些时间解释我对为什么我们不能直接停止 JavaScript 中的 forEach 循环的理解。我的答案正确吗?小伙伴们,下面的代码会输出什么数字...

    日期:2023-08-11点击:186
  • 新兴技术趋势将彻底改变我们的世界

    新兴技术趋势将彻底改变我们的世界

    技术进步的快速步伐继续重塑我们所知道的世界,开创了一个充满变革可能性的新时代。从远远超出我们想象的人工智能领域,到现实与虚拟的融合,今年已经推出了一系列新兴技术,这些技术将重新定义行业,提升人类体验,并挑战我们存在的结构。在对2023年新兴技术趋势的探索中,我们踏上了一段穿越创新前沿的旅程,在这里,突破性的想法与有形的现实融合在一起,未来呈现出大胆而令人振奋的形态。我们在本文中解释了2023年的新...

    日期:2023-08-11点击:207