240 发简信
IP属地:上海
  • 120
    绞杀者模式 (一)

    背景 随着系统老化、开发工具逐渐落伍、bug 堆积,项目会变得及难维护。所以“腐烂”是所有遗产项目不可避免的一环。一般企业基本不会再去碰遗产项目,但是现代很多公司却喜欢另辟蹊...

  • 120
    JS 尾调优化

    概述 尾调 在说尾调优化(Tail Call Optimization,下文简称 TCO)前,先解释什么是尾调——Tail Call。 通俗来说,尾调就是一个出现在另一个函数...

  • 120
    Testing library 101 (二)

    书接上文[https://www.jianshu.com/p/1b7ba84e5a73],上篇说到了 React Testing library 的安装和最基本用法。本篇继续...

  • 120
    JAMStack 架构简介

    我记得我刚入行的时候,Web 开发有个叫 MEAN(MongoDB, Express.js, AngularJS, and Node.js)的技术栈,当时还是挺新奇的。时隔多...

  • 120
    极客时间《架构师训练营》大作业

    背景 通达是一款本地即时配送平台。公司秉承“通派无障,使命必达”的信念,专注于用移动和众包的方式解决 O2O 领域最大的痛点:居民的最后 5 公里配送。公司刚成立,已组建了 ...

  • 120
    Mirage JS——海市蜃楼

    这期介绍一款比较别致的 mock 工具,mirage.js。说它别致,缘由是与竞品有一点点区别:它是在客户端启动的一个 mock 服务,恰如“海市蜃楼”为远程调度展现一幅 a...

  • 前端基建

    这两三年我自学了一些前端知识,有幸在一个小型团队里经历了从 0 建设前端项目的整个过程。这期写写我在这次经历中的一些体会吧。 代码规范 基建的第一点自然是代码风格了,我记得早...

  • 后半截就看不懂了

    Java Concurrency学习笔记

    背景 近来多有涉及,但多数时候都是浅尝辄止,其具体实现原理及应用未有系统总结。近日特地学习了一下相关源码。对AtomicInteger, ReentrantLock, Sem...

  • Java Concurrency学习笔记

    背景 近来多有涉及,但多数时候都是浅尝辄止,其具体实现原理及应用未有系统总结。近日特地学习了一下相关源码。对AtomicInteger, ReentrantLock, Sem...

  • 120
    前端静态资源部署

    前几天厂里的网突然渣掉了,某些网页变得极度卡顿,但是划水网站依旧流畅;我觉得很有趣就打开 DevTools 对比了一下,结果看到某卡顿网页的 Network 状况如下,我大概...

  • 感觉手写好麻烦……前端有没有可能回到可视化开发的时代?

    内容布局(四):Grid布局

    耽搁了好久一直没写 Grid 布局,主要是写布局的文章太累人😅。这期就朝花夕拾,写写 Grid layout 的入门教程。 Grid Basic Grid layout 翻译...

  • 120
    内容布局(四):Grid布局

    耽搁了好久一直没写 Grid 布局,主要是写布局的文章太累人😅。这期就朝花夕拾,写写 Grid layout 的入门教程。 Grid Basic Grid layout 翻译...

  • 至少,可以出成面试题……

    Vue 高阶组件

    HOC(Higher Order Components)也就是传说中的高阶组件,是由 React 社区推广开来的一种实现技巧。通俗来说,它就是一个工厂方法:传入一个旧组件(C...

  • Vue 高阶组件

    HOC(Higher Order Components)也就是传说中的高阶组件,是由 React 社区推广开来的一种实现技巧。通俗来说,它就是一个工厂方法:传入一个旧组件(C...

  • Vue portal

    最近看了下 vue3 的新 feature,里面讲到了一个新的模版 tag——Portal (传送门)。顾名思义,它能将某个节点传送到 DOM 树的任意位置。今天就讲讲传送门...

  • CSS 的变量

    CSS 变量,又称为 CSS 自定义属性,是前端开发中比较新颖的知识点;但是由于很多前端开发人员专注于使用 UI 框架,CSS 反倒变成一个小众知识点了。本文就借次机会复习一...

  • CSS 模块化管理

    昨天看了一道面试题,说如何管理 CSS 代码;它谈到了君子协定BEM 规范(然后楼主就说自己马上就拿到 offer 了😅)。但是,BEM 规范说实在已经不够接地气了,现代 C...

  • 120
    回忆杀,Nuxt.js

    这两年,我主要从事部门周边业务,搭建了数个细碎的 web 应用。最近由于一些人事变动,我又回到了最初的产品线上。时光飞逝,欣赏着自己的遗(la)产(ji)代码,“青骢”岁月浮...

  • 120
    反向代理(Reverse Proxy)

    反向代理是系统设计中常用到的一个概念,是相对于正向代理的一种中介服务,还常常与负载均衡作比较。今天就班门弄斧谈一谈自己的代理体会。 正向代理 先了解一下Reverse Pro...

  • JS条件判断小技巧(一)

    经常code review,我发现JS newbie很容易写出一堆冗长的代码。今天就列几个比较常见的“解决之道”,看看如何减少JS里的条件判断。 提前返回,少用if...el...