你还记得几年前流行的那篇名为“全面解析PHP的糟糕设计(PHP:afractalofbaddesign)”(https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/)博客文章吗?当我第一次读它的时候,我在一个不入流的公司工作,那里有很多老旧的PHP项目。这篇文章让我思考我是否应该放弃编程,去做一些完全不同的事情。幸运的是,我很快地就换了份工作。更重要的是,自5.*版本后,PHP有了长足的发展。今天,我想向那些不再使用PHP编程,或者仍然在老旧项目中蹒跚踯躅的人分享我的一些切身体会。剧透一下:今天的PHP依然有些很糟糕的设计,就像几乎所有的编程语言都有它的怪癖一样。很多PHP核心函数的方法签名仍然不一致,它的配置设置仍然很
发自内心的,我真的不想回答架构需要做什么,架构师应该负责什么。因为从实际情况来看,在不同的系统层次,不同的需求,架构师的职责会有所不同;从不同的技术角度来看,架构师是一只变色龙。——是技术大师,技术策划,技术团队指挥。 那么,如何回答“什么是架构,什么是架构师”这个问题呢?也许我们需要先解决另一个问题。——一个程序员如何走上架构师的道路?从很多朋友那里学到了很多实际案例。程序员走架构师这条路,最常见的原因就是他早把代码写好了。 那么,写得好的代码是架构吗?显然不是。写得好的代码只是表象,一切都需要规划,尤其是复杂的软件系统,更需要规划,否则你可能一行代码都写不出来。复杂的软件系统肯定需要做大量的准备工作,如抽象设计、对象规划、界面