Home
Chirpy
Cancel

Getting Started

Prerequisites Follow the instructions in the Jekyll Docs to complete the installation of the basic environment. Git also needs to be installed. Installation Creating a New Site There are two wa...

Responsive rendering of Chirpy theme on multiple devices.

Text and Typography

This post is to show Markdown syntax rendering on Chirpy, you can also use it as an example of writing. Now, let’s start looking at text and typography. Headings H1 - heading H2 - heading H3 - ...

Jetpack Compose - Starter

基本概念 Jetpack Compose 与日常的 Android View 开发相比,有大量的新概念需要了解,有通用的,也有 Compose 自身专有的,本节介绍这些概念,以让读者能快速跨过最初的门槛。 1. 声明式 vs 命令式 Jetpack Compose 以声明式的方式来描述界面样式和交互。通过简单地描述数据与界面的关系,将界面的生成过程与数据变化的响应紧密结合。与传统的命令式...

ReactJS 源码阅读

之前尝试不用编译器插件的前提下实现 compose Remember,想到的方案是牺牲一定的使用自由度,调用顺序获得 remember 能力,今天看了 ReactJS,其实他就是这样实现的。 https://medium.com/@ryardley/react-hooks-not-magic-just-arrays-cd4f1857236e react-to-compose useRe...

Flutter-bloc

使用篇 Flutter BLoC 是基于 BLoC 模式的 flutter 实现,使用了 provider( InheritedWidget 的一个扩充包) 和 Stream 实现相关功能。 API 也较为简单易用: // Builder BlocBuilder<BlocA, BlocAState>( condition: (previousState, state){ ...

Flutter 1.12 前生成的旧 Android 项目迁移指引

通过 flutter create 会生成 Android 模板文件,新旧版本通常会有些不同,本文信息来自官方 wiki : Upgrading pre 1.12 Android projects 本文所说的变动,不会马上影响现存的纯 flutter 项目,在可见的未来仍旧会正常工作。(但编译时会有个烦人的提示) 但新的 Android 模板会封装了新的 Android 插件开发 API...

再见2020

人生不过是一次殊途同归的旅行 意义 《士兵突击》中,许三多一直给自己循环播放的一句话是:好好活着就是做有意义的事,做有意义的事就是好好活着。这句话很让我费解。直到我又看到一句话:如果所有事情都没意义,那就意味着每一件事都·可以·有意义。人生的意义并无公论,放羊娃对人生的定义是娶妻生娃,共产党员对人生的定义(可能)是人类大同。这两者并不存在哪个更高尚的区分。 人生并没有意义,你想...

再谈短期利益与长期利益

记得不久之前,我挑战过一位同学的代码设计问题,命名问题,直到他终于有情绪了,说:花了那么多时间讨论了半天,我都没时间写需求了,这段代码不改,也不影响功能呀! 再回到近期有些同事离职转岗,其中多少和正在进行中的一些变化有些关系。再联想前不久,BG 发了个调查,其中有一道非常坦承的问题,其答案有一个选项:继续搞 XXX 就离职!。 尝试着分析一下大家的想法,可能有以下几种: 业务已经...

今日读书笔记:为长期利益接受短期受损,需提前做好心理建设

KPI 指标的一个标准错误: 当考核焦点为销售收入时。指标定为销量,员工会不惜牺牲利润;增加利润指标后,员工为获得订单承诺帐期可能产生大量应收帐款;再设置回款指标,又可能造成客户权利不平衡,产生客户流失;继而要增加客户保胡率指标… 指标越来越多,导向越来越不清晰,注意力是有限的,导向太多等于没导向。 在制定目标时,应当考虑什么是核心价值,为核心价值的持续提升,应该做好这样的心理建设:短期...

Flutter 自动化测试

如 官方文档 介绍,Flutter 的自动化测试分为三类:单元测试,Widget测试,集成测试。这三种测试各维度的对比:   单元测试 Widget 测试 集成测试 可信度 低 中 最高 维护成本 低 ...