记一次无语事件

Java 的 Springboot 项目,往前端进行 Json 格式转换,

对象属性的大写首字母变成了小写,属性名 JSON 化时竟然会有变化。

Java 的很多框架开发者有点死脑筋,命名规范这就是个规范,做框架底层没必要越厨代庖,强制采用这些规范。

做底层的东西就要把自由度留给使用人员,别人才好在此基础上扩展。

虽然可以通过一些注解什么的解决问题,但浪费很多时间。

整体上来说,无论是 Java 的一些框架还是语法本身都为了规范牺牲了太多的自由度,很多时候都是做些没有什么技术含量的东西。

编程思想

智能 IDE 以及编程语言随着时间的发展,现在编程的门槛已经算是很低了。

但是,编程的规范,工具和语言可以帮你做到,但是编程的灵魂,也就是编程思想,不是一时半会能够形成的。

并不能说你精通编码,就能写出任何东西。

一个简单的权限框架,如果你不知道或者不理解一些简单的如 RBAC 权限模型,只会用 if 和 else 来写,写出来的代码会是一个天坑,每加一个权限你就要多写一个 if,这是噩梦一样的代码。

不管你砌砖你砌的的多好,只会砌砖是建不出摩天大楼的。

JS篇章

JS 就属于扮猪吃老虎的语言,入门容易,精通难。

初学时一个 this 的指向问题,就让我头痛很久。不过现在函数式编程成了主流,在写前端的时候 this 用的越来越少了。

闭包,这个功能可以说是函数式编程的灵魂了,相信读者也有不少对这个疑惑的,

闭包的三个特性

  1. 函数嵌套函数
  2. 函数内部可以引用函数外部的参数和变量
  3. 参数和变量不会被垃圾回收机制回收。

最重要的是第三条特性,这个需要好好的去理解。如果不理解,可以思考一下,Vue的use的原理,或者思考一下pinia的原理。

判断自己对js的了解程度的其中一个好方法就是去看一些框架的源码,可以是Jquery,也可以是petite-vue,也可以是alpine,这是属于入门,如果可以理解,那就可以去看了解了解前端三大框架的源码了。

TS 这是一个由微软开发的语言,声称是JS的超集,在JS无类型的情况下,加上了Type。

TS 是强类型语言,解决了JS在编写大型项目时维护成本过高的问题。

了解一下,类型体操看一看,基本语法看一看。

TS中可以写JS,写新项目的时候,建议使用TS。

Kotlin篇

Kotlin,是一个智能语言,集百家之所长,避百家之所短。

这是一个新语言,没有过重的历史包袱,有着很多新特性。

语法设计十分讲究,真正意义上的面向对象。

对于这是一个JVM语言,不同人的看法不一致,有些人认为这就是第二个Java,我为什么不直接用Java呢,有些人认为这样挺好,保持跨平台的能力。

Ts 里面是适应 JS 的,Kotlin 里也是能写 Java 的。这是一种包容的哲学吧。

论编程思想

编程语言你学一个,且学精通就可以了,也不是让你只学一种语言,而是其他语言学习精通之后,再去学别的编程语言就很简单了。

编程语言本质就三个东西,变量,循环和条件控制。

经常调侃,一个编程语言我会定义变量,会 if,会 for,就已经掌握核心技巧了。

方法和函数,这两个就是名字不一样。写法怎么变,核心就只有参数值,返回值,访问域控制,这东西是不会变的。

一些浅浅的理解。纸上得来终觉浅。