SegmentFault 思否技术周刊 Vol.80 — 玩转新时代前端构建工具

2023-02-07
阅读 3 分钟
5k
Vite 提供了一套原生 ESM 的 HMR API。 具有 HMR 功能的框架可以利用该 API 提供即时、准确的更新,而无需重新加载页面或清除应用程序状态。Vite 内置了 HMR 到 Vue.js 单文件组件(SFC)和 React Fast Refresh 中。
封面图

SegmentFault 思否技术周刊 Vol.79 — 如何优雅的使用 Go?

2023-01-31
阅读 3 分钟
4.9k
Go 是 Google 开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。本期技术周刊一起了解 Go,欢迎大家阅读 ~文章推荐Golang 如何优雅接入多个远程配置中心? // 王中阳Goviper是适用于go应用程序的配置解决方案,这款配置管理神器,支持多种类型、开箱即用、极易上手。本地配置文件的接入能很快速的...
封面图

SegmentFault 思否技术周刊 Vol.78 — Git 必看技术补给

2023-01-17
阅读 3 分钟
5.4k
Git 的诞生是一个非常有趣的故事。1991年 Linus 开源了 Linux 内核,无数 Linux 爱好者在世界各地为 Linux 编写代码,那么问题来了,这些代码该如何管理呢?起初 Linus 使用 BitKeeper(BitMover 公司的版本控制软件)管理 Linux 的核心开发,后来 BitMover 停止了对 Linux 的支持,于是 Linus 秉承自己的版本自己写的精神...
封面图

SegmentFault 思否技术周刊 Vol.77 — 探究关于 iOS 的特性

2023-01-10
阅读 2 分钟
4.6k
本文从 Tagged Pointer、objc 源码、dealloc 原理、AutoreleasePool 原理、野指针探究等技术点展开聊了聊 iOS 内存相关问题。
封面图

SegmentFault 思否技术周刊 Vol.76 — 破解 Javascript 玩法

2023-01-03
阅读 2 分钟
3.2k
维基百科:在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure)或函数闭包(function closures),是在支持头等函数的编程语言中实现词法绑定的一种技术。MDN: 闭包(closure)是一个函数以及其捆绑的周边环境状态(lexical environment,词法环境)的引用的组合。
封面图

SegmentFault 思否技术周刊 Vol.75 — 简简单单画个“图”

2022-12-27
阅读 3 分钟
4.7k
很多时候,在使用 Canvas 绘制圆角矩形都是一件比较麻烦的事,因为之前并没有直接的方法,只能通过直线和圆弧间接组合而成,下面是一个常规绘制方式 {代码...} 这里x、y、w、h、r分别代表x坐标、y坐标、宽度、高度、圆角。这段代码应该是最精简的了,虽然不是特别复杂,但是应该很少有人能直接手写,主要是不够语义化,...
封面图

SegmentFault 思否技术周刊 Vol.74 — 浅谈 Android 进阶指北

2022-12-20
阅读 3 分钟
4.9k
在日常的安全渗透过程中,我们经常会遇到瓶颈无处下手,这时候如果攻击者从 APP 进行突破,往往会有很多惊喜。但是目前市场上的APP都会为防止别人恶意盗取和恶意篡改进行一些保护措施,比如模拟器检测、root 检测、APK 加固、代码混淆、代码反调试、反脱壳、签名校验等等对抗机制。而测试人员对APP进行渗透的首步操作通...
封面图

SegmentFault 思否技术周刊 Vol.73 — 如何有效地学习 JavaScript ?

2022-12-13
阅读 2 分钟
5.1k
在前端开发的过程中,开发者经常会用到 new Date() 来获取当前时间,但是 new Date() 是获取的当前操作系统的时间,由于用户可以修改当前电脑时间,所以它是不准确的。大部分情况下,用户修改当前电脑时间都没有什么问题,但是当我们需要根据服务端传递的数据时间与当前时间进行计算时,前端展示就会出错。同时,需要过...
封面图

SegmentFault 思否技术周刊 Vol.72 — 使用 CSS 实现一个足球场

2022-12-07
阅读 2 分钟
2.6k
一眼望去,这里的形状只有圆形和矩形,在不借助其他标签的情况下(包括伪元素),其实很容易联想到渐变,一起看看如何绘制的吧,有非常多的渐变小技巧~
封面图

SegmentFault 思否技术周刊 Vol.71 — 解读 Go 语言

2022-11-29
阅读 4 分钟
3.2k
通过这篇文章我们已经掌握了 gRPC 相关的知识点,可以独立用 Go 实现客户端和服务端的编写,并且通过服务注册对外提供服务,实现可客户端和服务端的 gRPC 通信。
封面图

SegmentFault 思否技术周刊 Vol.70 — 深入 MySQL 实战

2022-11-22
阅读 2 分钟
4.9k
MySQL 软件采用了 GPL( GNU 通用公共许可证),由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。
封面图

SegmentFault 思否技术周刊 Vol.69 — SpringBoot 框架都有哪些优秀的特性?

2022-11-15
阅读 3 分钟
4.9k
SpringBoot 基于 Spring4.0 设计,不仅继承了 Spring 框架原有的优秀特性,而且还通过简化配置来进一步简化了 Spring 应用的整个搭建和开发过程。
封面图

SegmentFault 思否技术周刊 Vol.68 — JavaScript 有哪些高阶玩法?

2022-11-08
阅读 3 分钟
5k
JavaScript 是一门弱类型的动态脚本语言,支持多种编程范式,包括面向对象和函数式编程,被广泛用于 Web 开发。一般来说,完整的 JavaScript 包括以下几个部分:ECMAScript,描述了该语言的语法和基本对象文档对象模型(DOM),描述处理网页内容的方法和接口浏览器对象模型(BOM),描述与浏览器进行交互的方法和接口它...
封面图

SegmentFault 思否技术周刊 Vol.67 — 优秀的 React 厉害在哪 ?

2022-11-01
阅读 3 分钟
2k
来自 React 的 “Hello, world!” {代码...} React 是一个用于构建用户界面的 JavaScript 库。React 使创建交互式 UI 变得轻而易举。为你应用的每一个状态设计简洁的视图,当数据变动时 React 能高效更新并渲染合适的组件。本期技术周刊一起了解下 React ,欢迎大家阅读 ~文章推荐《React 内部是如何实现 cache 方法的?...
封面图

SegmentFault 思否技术周刊 Vol.66 — 这些写 CSS 的新姿势你还不知道?

2022-10-25
阅读 3 分钟
2.4k
CSS 节省了大量的工作;样式可以通过定义保存在外部.css 文件中,同时控制多个网页的布局,这意味着开发者不必经历在所有网页上编辑布局的麻烦。
封面图

SegmentFault 思否技术周刊 Vol.65 — Vite 是不是在重复造轮子?

2022-10-18
阅读 2 分钟
4.7k
Vite 是一种前端构建工具,能够显著提升前端开发体验。它主要由两部分组成:一个开发服务器,它基于 原生 ES 模块 提供了 丰富的内建功能,如速度快到惊人的 模块热更新(HMR)。一套构建指令,它使用 Rollup 打包你的代码,并且它是预配置的,可输出用于生产环境的高度优化过的静态资源。Vite 意在提供开箱即用的配置,...
封面图

SegmentFault 思否技术周刊 Vol.64 — 浅谈如何使用 Webpack ?

2022-10-11
阅读 2 分钟
4.4k
最近在开发一个低代码平台,主要用于运营搭建 H5 活动。这中间涉及到第三方组件的开发,而第三方组件想要接入平台,需要经过我们特定的打包工具来 build。构建之后的组件,会合并成单个的 js 文件,而且代码会被压缩会混淆,这个时候如果需要调试,那就会极其痛苦。想要有一个好的调试环境,就要涉及 SourceMap 的输出,...
封面图

SegmentFault 思否技术周刊 Vol.63 — 学 Java 能做什么?

2022-09-27
阅读 3 分钟
1.9k
今天我们继续来聊聊流程实例。部署之后的流程,这个还不能直接运行,例如我们部署了一个请假流程,现在 zhangsan 想要请假,他就需要开启一个请假流程,lisi 想请假,他也需要开启一个请假流程,这一个一个开启的请假流程就是流程实例,而我们一开始部署的请假流程,则类似于一个模版,基于此模版,我们可以开启很多个具...
封面图

SegmentFault 思否技术周刊 Vol.62 — 你还想学 Go 语言吗 ?

2022-09-20
阅读 2 分钟
6.2k
运算符重载其实并不是一个常用的功能;因为会改变运算符的语义,比如明明是加法却在重载函数中写为减法。这会使得代码阅读起来困难,但在某些情况下我们又非常希望语言本身能支持运算符重载。比如在 Go 中常用的一个第三方精度库 decimal.Decimal,进行运算时只能使用 d1.Add(d2) 这样的函数,当运算复杂时...
封面图

SegmentFault 思否技术周刊 Vol.61 — 如何做好性能优化?

2022-09-13
阅读 3 分钟
2.9k
前端性能优化不管是在面试中还是在实际开发过程中,都是每一个前端开发工程师都必不可少的能力。本文总结本人多年开发经验中对前端性能优化的理解,希望对大家有所帮助,因涉及的优化方向较多,针对某些细节不再详细说明,大家有兴趣的可深入了解,话不多说,正文开始。
封面图

SegmentFault 思否技术周刊 Vol.60 — 你对 Vue 了解多少?

2022-09-06
阅读 2 分钟
4.6k
Vue 默认按照“就地更新”的策略来更新通过 v-for 渲染的元素列表。当数据项的顺序改变时,Vue 不会随之移动 DOM 元素的顺序,而是就地更新每个元素,确保它们在原本指定的索引位置上渲染。默认模式是高效的,但只适用于列表渲染输出的结果不依赖子组件状态或者临时 DOM 状态 (例如表单输入值) 的情况。
封面图

SegmentFault 思否技术周刊 Vol.59 — 关于 JavaScript 给你看点有用的!

2022-08-30
阅读 2 分钟
4.6k
最近收到需求,需要开发一些针对业务特定公共逻辑部分使用的 JavaScript 函数(类似于开发一个公共 SDK),统一维护,同时供各业务部门的前端开发人员进行复用。为了满足公共库开发调试简单、易用性与健壮性等需求,需要满足以下要求:支持 TypeScript;支持输出多种模块化文件(UMD、CommonJS、ESM 等),便于引入使用...
封面图

SegmentFault 思否技术周刊 Vol.58 -- 程序员如何用编程展现艺术?

2022-08-23
阅读 2 分钟
4.5k
点击楼层,催动电梯上升或者下降电梯到达对应楼层,电梯左右门打开门打开之后,里面的美女就出来啦提示信息: 本美女就要出来了,请速速来迎接按钮会有一个点击选中的效果根据以上的分析,我们就可以很好的实现电梯小程序啦,接下来让我们进入编码阶段吧。PS: 这里的楼层数是动态生层的,不过建议值不要设置太大,可以在...
封面图

SegmentFault 思否技术周刊 Vol.57 -- 这几个 Vue 知识点,全都会你就是神!!!

2022-08-17
阅读 2 分钟
4.2k
首先,我们先来看一下 Reactivity Object 响应式对象,它是基于使用 Proxy 创建一个原始对象的代理对象和使用 Reflect 来代理 JavaScript 操作方法,从而完成依赖的收集和派发更新的过程。然后,我们可以根据需要通过使用 Vue3 提供的 ref、compute、reactive、readonly 等 API 来创建对应的响应式对象。
封面图

SegmentFault 思否技术周刊 Vol.56 -- 掌握这个概念,你就理解了 React

2022-08-10
阅读 2 分钟
5.3k
公司前端工程还处于 React+Mobx 与 Spring MVC(freemarker+jQuery)技术栈共存的阶段,两种技术栈页面难免会存在一些相同的业务功能点,如果分别开发和维护,就需要双倍的人力成本,因此,我们尝试将 React 业务组件在 webpack、babel 等利器的帮助下应用于 Spring MVC 项目。
封面图

SegmentFault 思否技术周刊 Vol.55 -- Amazing!CSS 也能实现炫酷特效

2022-08-03
阅读 2 分钟
6.2k
CSS 的全称是 Cascading Style Sheets,即层叠样式表, 是一种样式表语言,用来描述 HTML 或 XML(包括如 SVG、XHTML 之类的 XML 分支语言)元素所呈现的样式。
封面图

SegmentFault 思否技术周刊 Vol.54 -- Spring Boot 是否很难用?

2022-07-27
阅读 2 分钟
5.7k
关于 Spring Boot + Vue3 的动态菜单,松哥之前已经写了两篇文章了,这两篇文章主要是从代码上和大家分析动态菜单最终的实现方式,但是还是有小伙伴觉得没太看明白,感觉缺乏一个提纲挈领的思路,所以,今天松哥再整一篇文章和大家再来捋一捋这个问题,希望这篇文章能让小伙伴们彻底搞清楚这个问题。
封面图

SegmentFault 思否技术周刊 Vol.53 -- 日常使用 Git,这些问题你遇到过吗?

2022-07-20
阅读 2 分钟
6k
Git 的诞生是一个非常有趣的故事。1991年 Linus 开源了 Linux 内核,无数 Linux 爱好者在世界各地为 Linux 编写代码,那么问题来了,这些代码该如何管理呢?起初 Linus 使用 BitKeeper(BitMover 公司的版本控制软件)管理 Linux 的核心开发,后来 BitMover 停止了对 Linux 的支持,于是 Linus 秉承自己的版本自己写的精神...
封面图

SegmentFault 思否技术周刊 Vol.52 -- 这份 Webpack 有点料!

2022-07-13
阅读 2 分钟
5.8k
从分析图中可以比较直观的看出,三个输出 bundle 文件中都包含了 m1.js 文件,这说明有重复的模块代码。splitChunks 的目的就是用来把重复的模块代码分离到单独的文件,以异步加载的方式来节省输出文件的体积。splitChunks 的配置项很多而且感觉官方文档的一些描述不是很清楚,下面通过一些重点配置属性和场景解释来帮助...
封面图

SegmentFault 思否技术周刊 Vol.51 -- 掘地三尺搞定 Redis!

2022-07-05
阅读 2 分钟
1.9k
REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统。Redis 提供了一些丰富的数据结构,包括 lists, sets, ordered sets 以及 hashes ,当然还有和 Memcached 一样的 strings 结构 . Redis 当然还包括了对这些数据结构的丰富操作。
封面图