软件开发的历程和镇江锅盖面是一样一样的。20年前,做面相当复杂耗时:和面(水多了,加面;干了,加水….. an iterative process)、揉面(女汉子的活,容易弄成面人)、切面…..加工调料(需要祖传秘方,否则无人问津),什么都是从头来。现在满大街都是面店,2分钟搞定一碗味道不错的面。现在的软件开发人员也要Be lazy, do not reinvent the wheel, 利用已有的,only create your own objects,又快又好地完成任务。生活就是生活,不是生意,有时候我们也要回到原来,全家总动员,从和面开始,吃一顿自己的锅盖面,顺便来一场化妆晚会。同样,学习和工作不同,为了探究软件的魅力,我们要追根究底,理解基本原理,培养自己从头开始的能力,提高软件开发的素养,更好地工作。
如果说c、c++是手动挡,java、c#就是自动挡,对挡位进行了封装,自动换档,不需要手工换档。然而,心中要有挡位才能开好车,一味地油门、刹车,既费油又废车;指针(内存地址)是c++的难点和精华,java、c#对指针进行了封装,进一步解放了程序员。但是,心中要有指针才能用好java、c#, 否则容易从码农变成码奴。
IT(Information Technology)的发展和成熟催生了DT(Data Technology)时代, 用户体验至上(I 疯、I死……),要求我们程序员具有大国工匠精神,be considerate,需要在实战中不断思索、打磨、打拼……iteratively,不断悟道,最终升仙,不是某某某速成班能实现的!这样的大国工匠不会是青春饭,不会有34岁的不幸,应该是越老越值钱。具备了大国工匠的素质,才能进一步成为具有创造和抽象能力的分析、设计大师,为程序员指明方向和确定方案,如果方向和方案搞错了,何谈用户体验?周冰倩和周艳泓演唱的“真的好想你”都达到了大国工匠的水平,但是,冰倩版唱出了热恋中的感觉和心声,而艳泓版是失恋感的想,可以想象,冰倩版对于失恋者一定是学友的“心如刀割”,可见分析和设计是多么的重要。