(三)Pulse GUI 语言设计理念与规范
(三)Pulse GUI 语言设计理念与规范前言第一篇聊了范式,第二篇落地成语言。接下来该画界面了。 这篇记录 Pulse GUI 的设计思路。 一、从哪里开始?前两篇设计的是逻辑层——事件怎么流转、模块怎么通信。但程序不只有逻辑,还有界面。 先想清楚一个问题:程序运行在哪?
(三)Pulse GUI 语言设计理念与规范前言第一篇聊了范式,第二篇落地成语言。接下来该画界面了。 这篇记录 Pulse GUI 的设计思路。 一、从哪里开始?前两篇设计的是逻辑层——事件怎么流转、模块怎么通信。但程序不只有逻辑,还有界面。 先想清楚一个问题:程序运行在哪?
(二)Pulse 语言的设计思路前言上一篇文章从编程范式的角度,得出了一个结论:事件化模型能从根本上消除并发问题。 思考到这一步,自然会问:如果从零设计一门语言,让事件驱动成为唯一范式,会长什么样? 这就是 Pulse。 这篇文章记录每个设计决策背后的原因。 一、从结论到约束上
(一)从面向对象到事件化:一种编程范式的思考前言这篇文章记录了一次关于编程范式的思考,从公开/私有方法的设计,到面向对象与面向过程的关系,再到事件化模型如何解决并发问题。 核心观点:各范式不是对立的,按场景选择就好。 一、公开与私有的平衡为什么有私有方法?封装(Encapsul
Spring如何对Controller的返回值进行统一格式化输出前言Spring的RestController中,经常需要对返回值进行封装,将Java的VO或DTO对象封装为带code和message的响应结果。但是又不想每个方法都进行处理,类似:Respose.success(
Spring如何对Enum进行validate前言Spring的HTTP请求中,一般都需要对接口参数进行校验,如:在对象上使用@NotNull等注解;那么如何对枚举(enum)进行校验呢? 新建一个自定义注解@ValueOfEnum: @Documented @Constrai
Spring如何对ApplicationEventPublisher进行Mock前言Spring框架里,ApplicationEventPublisher默认是不能Mock的,因为ApplicationEventPublisher是一个复杂的Bean,不能简单的被Mock,会报错
Rust学习笔记// TODO
ZeroTier安装与配置前言家里和公司总会有很多设备需要管理,虽然可以通过类似向日葵、TeamViewer等进行远程控制,但是总是不方便;如果是安装VPN的方式,所有的流量都走VPN,内网的设备互联比较慢;需要一种能将所有设备通过虚拟内网的方式连接起来,同时,如果设备自身在同一
keepalived安装与配置前言在多机环境下,安装keepalived,保证高可用;同时多个机器对外暴露一个VIP(Virtual IP),客户端连接VIP即可; 开始0. 前置条件 多个机器,如: Node1(主节点 MASTER): 192.168.31.1 Node2(备
Java里判断值是否为Null并赋值给其他对象的扩展方法前言项目里,经常需要判断一个对象的值是否为空,然后再判断某个属性是否为空,然后将值赋值给其他对象的属性;代码类似: if(user.getName() != null){ user2.setName(u