+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2019-03(1)

2019-04(1)

2019-05(2)

2019-06(2)

2019-07(5)

由库的使用引发的思考

发布于2020-04-23 18:46     阅读(173)     评论(0)     点赞(20)     收藏(4)


题记:我理解的创造的真实含义

你创造你的实相,其实就是根据自己的最高兴奋去思维、用你的语言方式去表达、用你的风格去行动,进而经验到这个过程。

事件缘起

近日同事离职了,交接给我两个项目。随着逐渐接手、熟悉离职同事的代码,学到了不少,一方面的确弥补了一些自己知识体系的欠缺,另一方面造成这种“颇有收获”的错觉也是由于很多第三方库的不熟悉。相比于自己经常徒手造轮子,同事的代码给我的启发就是,遇到一个新的技术层面的需求,首先应该想到去找成熟的开源库实现,而且前辈们实现的基本上要比自己现撸来的好。但转念一想,又挺失落的。原因在于,以java web开发spring体系来说,全家桶真的是方便至极,已经变得傻瓜化了。你能用到、用不到的,想到、想不到的,它都帮你做啦。那不禁要问,我自己的价值和核心竞争力在哪里?公司的价值和核心竞争力在哪里?

由库的使用引发的思考

不主张徒手造论子

如上所说,无论从工期进度控制来说,还是从设计实现的稳定、安全、易用性来说,重新造轮子可能都不是一个好的选择。但我坚决维护自己造论子的权利——永远不要放弃独立思考。

用库的前提

无论我们用库还是写轮子,前提一定是对相关技术栈有个基本原理的理解,不然轮子造不出,库也同样用不到点上。所以,知其然还要知其所以然,这个追求不能放弃。

对待库的态度

应知:库的选择和使用是实现细节层面上的事情,不是设计层面上的。用库的目的在于方便加快我们开发进度,以及比起我们自己手写能得到更好的对业务的支持。因此,千万不要把库的使用当作核心技能,当宝贝似的捧着不放。着眼点一定要高于使用层面。如果说学习一个库,应该深入其源码,学习理解作者的设计思路。当然,能用库写出可以工作的代码是底线,否则莫谈其他。

启发

既然库的使用,乃至编码实现都是次要的,那么主要的是啥?

我理解的价值(核心竞争力)

我认为,是产品的UE(用户体验)。设计最终还要回归到人的因素上来,做出符合大多数人的心智的产品来,即以人为本。在提供良好的服务解决方案的基础上,力争产品美观、易用、安全、快捷等。如此,做出的产品能够为人们(也包括自己)、社会带来益处,得到认可才是价值的体现。

设计是表达的过程

做出有价值的产品是很考验人的设计能力,而设计绝不仅仅是程序员的事,不仅仅是UI设计师的事,不仅仅是IT行业的事,而是所有人的事。在我看来,设计是一种表达的过程。而每个人无时无刻不在表达这自己。忠实的表达自我,向内挖掘自己的过程。可是,所谓众口难调,我们不可能去迎合所有人的感受,那如何做设计呢?答案是不去迎合,而去通过深入的审视自己,将自己的理念表达、传达、引导。而无数获得成功赢得赞誉的产品,它们的存在已经证实了总会有一个符合大多数人心智模型、人体工学的良好解决方案,引得用户共鸣。共鸣的基础就是频率相当,这表明we are one,我们是一体的。我们有先天的心智共通的基础。你只需要诚实的向内去审视、挖掘、表达出来。

一个很好的比喻

在程序员萧井陌的《编程入门指南》v1.5中
做过这样一个比喻,我这里援引一下——“学习编程类比为学习厨艺:你为了烧得一手好菜买了一些关于菜谱的书,如果你只是想为家人做菜,这会是一个不错的主意,你重复菜谱上的步骤也能做出不赖的菜肴,但是如果你有更大的野心,真的想在朋友面前露一手,做一些独一无二的美味佳肴,甚至成为「大厨」,你必须理解这些菜谱背后大师的想法,理解其中的理论,而不仅仅是一味地实践。但是如果你每天唯一的工作就是阅读那些厚重的理论书籍,因为缺乏实践,你只会成为一个糟糕的厨子,甚至永远成为不了厨子,因为看了几天书后你就因为枯燥放弃了厨艺的学习。总之,编程是连接理论与实践的纽带,是计算机科学与计算机应用技术相交融的领域。正确的编程学习方法应该是:通过自顶而下的探索与项目实践,获得编程直觉与推动力;从自底向上的打基础过程中,获得最重要的通用方法并巩固编程思想的理解。”——这段话对我在编程这件事上的审视还是一直有警示作用的,与大家分享出来,感兴趣可以到知乎上搜索”编程入门指南v1.5“,查阅全篇指南。

引用这段比喻是想表达,我们绝大多数程序员是在应用层去开发产品,不太指望大家成为计算机科学工作者;但要想成为一个有品质的程序员,适当深入底层、深入设计思想还是必要的;而且推而广之,知行合一是任何学习、工作要贯彻的方针。另外,也是鼓励大家包括自己,不要轻视应用层开发,以 产品设计为驱动,工具只是工具,例如各种开源库对每个人都是透明的,但怎样使用工具做出万千种类的精美作品(就像菜肴),那是值得下功夫追求的。

努力的方向

回到题记上来。设计做为自我表达,而表达自我又是创造过程的一环,从设计到实现完整的经验创造这一过程。无论作为程序员还是其他工种、社会角色,我们的眼界不应止步于表面、流于形式,而要去追寻形式背后的逻辑,形而之上谓之道嘛;而是要将产品设计和自我的心智融为一体,处理好这些关系。开启一个while(true)的线程,给自己设定目标,让自己去创造吧!本文忠心希望能够在如何看待技术、工具、乃至实现上给予读者一些参考,同时也用于自勉。

原文链接:https://blog.csdn.net/GengMingHui_5/article/details/105664579



所属网站分类: 程序员的那点事

作者:精灵

链接: https://www.pythonheidong.com/blog/article/339635/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

20 0
收藏该文
已收藏

评论内容:(最多支持255个字符)