作揖主义
沈二先生与我们谈天,常说生平服膺《红》《老》之学。《红》,就是《红楼梦》;《老》,就是《老子》。这《红》《老》之学的主旨,简便些说,就是无论什么事,都听其自然。
一个技术宅的网络博客┗|`O′|┛ ~~
沈二先生与我们谈天,常说生平服膺《红》《老》之学。《红》,就是《红楼梦》;《老》,就是《老子》。这《红》《老》之学的主旨,简便些说,就是无论什么事,都听其自然。
Monday, February 21, 2022 | c++
要说c++或者c中最容易滥用的特性,莫不过于宏。
事实上,宏有很多缺点,比如难以调试,容易造成污染。(比如Windows.h里就定义了max和min宏,毫无避讳。如果调用xxx.max()之类的函数,那么恭喜你的max被替换了)
所幸,C++为我们提供了一套机制来减少宏的使用。
Sunday, February 6, 2022 | algorithm
笔者曾经实现过几个toy build system。这些构建系统都离不开拓扑排序算法:一个将一个有向无环图进行排序的算法。
哈哈,这么说可能有点抽象。举个例子,就是:吃饭前要做饭,做饭前要洗手,遵循一个特定的顺序,不能乱来。拓扑排序正是排序此类事务的算法。
最近在使用Java编写程序,需要和c++进行交互。正好碰到了Java17新添加的Native API(类似JNI)。来自JEP 412。
最近在使用Log4j2的时候,碰到了一些问题:无论是使用Configurator.initialize
还是LogManager.getContext().reconfigure()
都无法完全更新log4j2的配置。
在查看了Log4j2的源代码过后,笔者找到了解决方案。
汇总了一些gradle常用代码片段,包括:
至于汇集所有依赖到同一个jar包里的,笔者依然是使用插件的方式(shadowJar)实现。