跳至主要內容
什么是以太坊

引言

以太坊(Ethereum)是继比特币之后最受关注的区块链项目,它不仅是一种加密货币,更是一个开放的区块链平台,允许开发者构建和部署去中心化应用(DApps)。本文将深入探讨以太坊的起源、技术原理、应用场景以及其在加密货币世界中的地位,同时介绍以太币(Ether)及其与其他虚拟货币的关系。

以太坊的起源与发展

创始背景

以太坊由俄裔加拿大程序员Vitalik Buterin于2013年末提出。当时年仅19岁的Buterin是比特币杂志的联合创始人,他认为比特币的脚本语言存在局限性,无法满足更复杂应用的需求。2014年,Buterin发表了以太坊白皮书,详细阐述了这一新型区块链平台的愿景和技术架构。


Cap原创...大约 9 分钟BFF
Object.defineProperty与Proxy

Object.defineProperty

Object.defineProperty 是 ES5 引入的方法,用于在对象上定义新属性或修改现有属性。

let obj = {};
Object.defineProperty(obj, 'prop', {
  value: 42,
  writable: false
});

Cap原创...大约 3 分钟vue
Object.defineProperty可能表现更好的场景

简单对象的监听

当我们只需要监听一个简单对象的少量属性时,Object.defineProperty 可能会有更好的性能。这是因为它不需要创建额外的代理对象。

let obj = {};
Object.defineProperty(obj, 'name', {
    get() {
        console.log('Getting name');
        return this._name;
    },
    set(value) {
        console.log('Setting name');
        this._name = value;
    }
});

Cap原创...大约 2 分钟vue
左手粘着Vue右手舞着React

作为前端开发工程师,当我们左手拿着 Vue,右手拿着 React,关于它们的种种,其实我们都应该是了然于胸的。

宏观概念

拿到一个前端框架,我们更应该如何去看?肯定不是一头扎进 api 的调用方式,也不是一头扎进源码的海洋。我们应该有对比的看,和你熟悉的一个框架去对比。

众所周知,前端接触最多的是浏览器,浏览器也是面向用户最直接的宿主环境。我们的页面,不管是 SPA,SSR
在浏览器呈现出来的,就是 html/css/js。所以我们以结果触发,首先看,这个框架是如何生成 html/css/js 的?
我们先掌握这个宏观概念,再带着疑问去看细节。


Cap原创...大约 5 分钟
音视频编解码常用知识点

视频播放器原理

视频播放器播放一个互联网上的视频文件,需要经过以下几个步骤:解协议,解封装,解码视音频,视音频同步。如果播放本地文件则不需要解协议,为以下几个步骤:解封装,解码视音频,视音频同步。他们的过程如图所示。

image
image

Cap原创...大约 28 分钟video audio
前端工程首屏优化策略

网络传输层面

  1. cdn
  2. nginx配置Gzip压缩
  3. 开启http2协议

资源加载层面

  1. 图片等静态资源的压缩处理
  2. 字体文件的压缩处理
  3. 打包产物的处理(代码分割/懒加载)
  4. 第三方库的资源加载

渲染层面

  1. 首页的SSR
  2. 骨架屏(优化体验)

代码层面

  1. 规范的代码风格

Cap原创...小于 1 分钟
小程序的工程化

如何推进小程序的工程化,其实就是如何在前端工程化的各个环节去推进小程序的工程化,沉淀出一套可复用的体系。

原则就是基于现状,先思考是否需要,再逐步推进;先解决有无,再解决好坏。

前端工程化

  1. 规范化
  2. 版本控制与协作
  3. 模块化与组件化
  4. 工具化
  5. 自动化测试
  6. 持续集成
  7. 监控与告警

从开发到上线的链路来看,小程序和一般的web项目还是稍有些不同的。懂得都懂。这里随便列举几个点

  • 开发工具需要使用微信开发者工具
  • 小程序的发布需要走小程序的发布流程且包大小有限制
  • 小程序的开发版/体验版/正式版

Cap原创...大约 2 分钟
模拟问题

技术能力

Vue.js 经验:你在Vue.js方面有很多经验。能否分享一个你在Vue项目中遇到的技术挑战,并说明你是如何解决的?在这个过程中,你做出了哪些关键决策?

小程序对接IM的挑战

问题:

解决方案:

关键决策:

老官网被识别为欺诈网站,全屏红色

某天的傍晚,使用chrome访问官网时返现被标记为欺诈网站,并且全屏红色。快速响应,制定方案。

一、申诉报告

由运维根据网站指引,去发送申诉邮件。

二、工程自检

前端主导,根据谷歌提供的诱导广告信息,排查官网的页面和接口,寻找可疑信息。


Cap原创...大约 3 分钟
小程序的总结梳理

面对的情况

初来乍到,公司只有APP和H5,用户的转换量很少。因为作为中老年为主的患者,第一步去下载APP,对他们来说就已经有一定的成本了。特别是安卓有各种应用市场,APP Stroe有各种验证。小程序以微信为载体,在一定程度上大大降低了用户的操作门槛。

业务场景分析

  1. 首先面向的用户

    面向的群里的帕金森患者,多以中老年群体为主。

  2. 主要的业务场景,就是给患者提供的服务

    小程序提供图文问诊服务,患者和医生的在线IM聊天,直播分享

  3. 关键的技术节点

    IM聊天、分享、直播、图文问诊


Cap原创...大约 2 分钟
2
3