什么是编程道场,实际上在我之前的一篇文章中已经说的很清楚了,大家可以参考。
但这篇文章是有感而发,所以写的比较感性,也比较琐碎。今天这篇文章来自于《The coding dojo handbook》中的一章,作者从本质上把握了一下什么是编程道场,以及什么是编程道场中不可或缺的组成元素。
在叔本华看来,独立、自为的思考是最高价值的精神活动,其它任何精神层面的活动都无法代替它,甚至包括阅读最经典的书籍。
过多的阅读会让我们精神思考失去弹性,就像一个弹簧受到持续不断的重压最终失去弹性一样。所以,我们的第一要务就是要触发、保持这种独立、自为的思考过程。这种自发的思考比任何由外部阅读而引发的思考价值百倍。因为由外部阅读引发的思考只是一种假象,实际上是别人的思考在我们头脑中的映像,我们的大脑只是成为了别人思维的游乐场,当这种思维的盛宴撤去以后,留存在我们头脑中的真正有价值的东西寥寥无几。
我们后端的服务采用Micro-Service的架构,按照功能切分成各种细小的服务,对于每个服务不限制编程语言,比如我们的团队成员就使用了三种编程语言——golang、python、nodejs。服务与服务之间使用了Facebook开源的thrift通讯框架来做RPC调用,灵活、简单、功能上也基本满足了需求。关于thrift的使用,可以参考它的官网。
正如在前面的文章《Go语言基础——为什么选择Go》中提到的,Go语言采用了独创的新的错误处理机制,抛弃了之前主流语言中使用的try-catch模式的错误处理机制。因为传统的try-catch结构会破坏程序的可读性和维护性,让开发者仅仅为了程序安全性而添加大量一层套一层的try-catch语句,这个跟Go语言奉行的简单精致的设计哲学背道而驰,所以Go语言的设计者抛弃了这种做法。
亲爱的宇宙公主:
今天早上你以自己嘴上起泡为由赖着不起床,更是让我为你向幼儿园老师请假,我拒绝了你,坚持让你起床,坚持让你去上学,虽然你很是不情愿,还落下了一些眼泪,但最终还是去了。爸爸是很为你感到自豪的,但我知道你心里肯定在埋怨爸爸:为什么自己这么难受还非要送我去上学呢?
熟悉C语言的同学可能都知道在标准C的编程中,我们通常使用标准C库提供的signal函数来捕获系统信号并执行我们注册的回调函数。对于进行服务端编程的同学来说,这样一个需求是很普遍的。我最近一直在使用Go语言写服务端程序,很自然也碰到了这个需求。那么在Go语言中如何实现捕获系统的信号并处理我们自己的流程呢?