`
rysh0818
  • 浏览: 23813 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

道与术

 
阅读更多

所谓道,就是事物的基础和本质,是一种思想和理论,是不易改变的部分。所谓术,就是具体实现的方法和手段,是一种实践的过程,是容易改变的部分。在科学发展的过程中,一般都是先从术开始,开始解决某一个具体的问题,从研究这个具体问题所用的方法,研究这个问题后背的本质,从而推导出一些基础理论和思想,再有这个基础理论,应用到实践,交替的发展。

之所以说这个话题,主要是在回顾这些年自己的技术生涯中存在的问题以及思考如何再进一步提高我们的技术水平。个人觉得学习的过程应该是和科学的发展规律是类似的,先从解决一系列具体的问题入手,在思考这些问题后背的本质是要解决哪些基础问题,在抽象出来这些问题背后的本质,进而思考这一类问题的本质解决思路应用到实践过程中,从一个先具体——>抽象——>泛华的过程。

一个技术人员想要成长,前期是肯定要不断学习应用技术,思考对于特定问题的解决方案,能够有效的解决技术中的难题,当自己的术积累到一定的阶段的时候,想要再有突破,就必须提高自己的道,透过自己在术上的积累,完成道的提升。从道和术的关系来看,术是一中思维的具体化,而道是思维的抽象化,从具体化上升到抽象化,需要主动思考,积极总结,把具体化的事务中不变性和易变性进行区分,找到不变的部分,这些才是本质。在很长一段时间内,我都过分追求所谓的术,喜欢不断的看新的技术,学习新的业务,通过各种项目来锻炼自己的能力,但是缺乏对其背后原理的分析,在短时间内,你会发现感觉你能力提升很快,但如果长期如此,就会遇到瓶颈,因为你积累的永远是术,而非道也。

上面说的比较抽象,可以从一个具体的例子来说明如何从一个具体的问题背后提出这个问题的本质是什么,以及有解决这个本质的问题有哪些实际的方案,这个例子也是当初我在工作中遇到,当初由于能力原因,没有设计出来一个很好的扩展性很强的架构方案。

具体场景:某公司提供了一个产品,这个产品主要是解决企业用户通过我们的服务批量付款到指定的银行卡里面,我们约定了一个打款的文件格式,客户通过http post 的方式上传文件到公司指定的URL。而打款文件里面主要是有客户姓名,卡号,金额三列,其他的不是重点,这里不不描述了。

从这个应用场景来看,用程序来实现这个功能非常简单,通过一个web服务器端程序,下图描述了这种简单方案的实现方式

3C8719E7 8D73 4B9D AF6A 051E24EE8388

问题一:协议版本与关注点分离

接下来,我们就面临问题了,对于大多数企业客户,都比较好说话,都挺配合我们的,但是对于一些国企,比较牛逼的客户,觉得你们的功能不够好啊,我想在文件里面追加一列手机号,希望在打款完成的同时,短信通知用户。这个说实在的比较合理,谁叫别人是大爷了,只有改了。最简单的方案就是在解析文件的时候,增加一列好了,数据也增加一个字段。后来,大家就知道了,还有一些客户也有其他的特殊需求,比如发邮件通知,收费需求等等,我们的方案就是文件不断的加列,数据里面不断的加字段。

现在的问题有两个:1 如何应对约定文件格式经常变化的问题 , 2 如何解决客户的特殊需求

对于第一个问题,从表象来看,是文件格式定义的不具有扩展性,在现实生活中,我们也会遇到这样的问题,比如我们去银行办理业务需要签约,签约内容随着时间的不同,也会发生变化,而银行每次签约就会把签约的协议版本记录下来,每一份不同的协议都有一个版本。对于这里的打款文件,其实就是一份协议,我们简称数据协议,那么问题就转化为如何面对协议内容发生变化。在计算机世界,协议可能是应用最广泛的词之一了,当然可以从这里找到答案,从我们最熟悉的http协议看来,就是约定协议号。在商户上传文件的时候,说明这个协议的版本号,我们根据版本号的不同,对文件解析处理也就不一样。

从这个问题来看,如果把文本内容进行抽象,就是一种数据协议。任何通信的双方交互数据交互都需要约定数据协议和其版本,这样在协议发生改变的时候,可以更有效的对系统进行扩展。在计算机世界,协议可是太多了,比如ftp,http,smtp等等,每个协议肯定都有其对应的版本号。

对于第二个问题,主要是就是在变与不变进行隔离,对于功能点,核心的需求,也就是不变的需求,就是打款,姓名,卡号,金额是必要属性,而邮箱,手机号是增值服务,这个是扩展性属性,在数据持久化的时候,不变的属性和易变的属性要分开保存。在设计模式中,模板模式就是一个比较好的例子,不变逻辑的抽象出来,易变的逻辑让子类实现。

问题二:渠道以及通信方式

随着产品的发展,我们的接入的商户越来越多,有一些商户IT系统比较弱,或者说根本都没有,拿怎么办,我们只能在自己的网站开发一个功能,让商户登陆到我们的系统中,自己上传文件。后来,恶梦越来也多,有一些商户觉得http post 不安全,打算用socket方式传入文件流。我们只能不断的修改现有的系统,满足其要求。

在这个问题中,我们面临的就是一个渠道,在刚开始涉及系统的时候,没有考虑到渠道这个属性。其实通过http上传文件,就是我们产品销售的一个渠道。在现实世界中,如果一个厂商要卖产品的话,肯定是通过一定的渠道把产品卖出去,比如通过代理商卖,开网店卖,开直营店,还有骗子最喜欢的电视购物等等。在上面需求里面,缺乏渠道的建设,没有把渠道这一层抽象出来。

对于渠道这个概念,可以再次引申出 渠道类型以及渠道的通信方式,对于上面问题,可以凯利以下几个渠道 系统直连渠道,网站渠道,邮件渠道。

系统直连渠道:具体的通信方式可以包含 http方式,socket方式,ftp方式,webserivce

对于网站渠道:通信方式就是web

对于邮件渠道:通信方式就email

对于不同通信方式,涉及到的数据格式不一样,还需要进行格式转化,对于socket和webservcie方式,需要把接收到的数据格式转化为约定的文本文件格式。这里就需要数据适配层。

在系统应用架构上,需要抽象出渠道层,在渠道层包含各个通信方式的处理逻辑,还需要一个数据适配层,把不同类型的数据转化为标准的文件格式。对架构可以进行一下转化。

935BFCBF 33FF 46B3 96A4 BB1DB2B1A96F

以上两个问题,在我们的系统设计中经常回遇到,其实里面所设计到的问题就是,对于两个通信的双方,以何种渠道和通信方式,通过约定的协议进行通信的过程,这个思想,可以在很多场景下都使用。比如 CPU 和 内存之间的通信,网络客户端和网站服务器的通信等等,其中涉及到抽象概念都是比较类似的。

在技术的学习中,我们就是通过这种思考,要不断找寻技术中共通的本质。很多时候,提出问题比解决问题更重要,在看一门新技术的时候,我们要多对其中的原理的进行研究,而不是仅仅学习其应用,能够知道这个技术存在的问题以及其优势。在业务的学习上也是如此,至少我现在不是很喜欢去追求新的业务,也不喜欢把研究业务细节是如何实现的,而是更喜欢思考这些业务之间有哪些关联关系,业务中变化的部分与业务中不变的部分,思考那些有共同点。

还是中国古人一句话说的对,学而不思则罔,思而不学则殆。学而不思无道,思而不学无术。只有道术结合,才是能为强者。

分享到:
评论

相关推荐

    大数据分析的道与术

    大数据分析的道与术 大数据,这一概念在21世纪初兴起,如今已成为信息技术领域的重要研究方向。大数据分析,不仅仅是技术的应用,更是一门融合了哲学、策略与实践的综合学问。它涉及到如何从海量数据中提取有价值的...

    【企业数字化转型案例】2021企业数字化转型的道与术.zip

    "【企业数字化转型案例】2021企业数字化转型的道与术"这个主题深入探讨了这一过程中的策略、方法以及实际应用。 "道"在这里指的是企业的转型理念和战略,包括理解数字化转型的必要性,设定明确的转型目标,以及构建...

    大数据分析的道与术.docx

    大数据分析的道与术是当前数字化时代中企业竞争的核心策略之一。在这个信息爆炸的时代,数据已经成为了企业决策、战略规划的重要依据。理解大数据分析的"道"与"术",对于提升企业的运营效率和市场竞争力至关重要。 ...

    化妆品行业报告:国产化妆品崛起的道与术(29页).zip

    《化妆品行业报告:国产化妆品崛起的道与术》是一份深度剖析中国化妆品市场现状与发展趋势的专业报告。报告详细探讨了国产化妆品如何在激烈的市场竞争中崭露头角,以及其所采用的策略与方法。报告的核心内容可能包括...

    -电子信夕行业:企业数字化转型的道与术暨2021中国数字化转型服务商精选目录.pdf

    -电子信夕行业:企业数字化转型的道与术暨2021中国数字化转型服务商精选目录.pdf

    ASO优化道与术.xmind

    ASO优化道与术书本的读书笔记,亲自整理重点归纳和总结。

    短视频MCN的道与术.pdf

    ### 短视频MCN的道与术 #### 核心知识点解析 ##### 一、短视频MCN概览 **短视频MCN**(Multi-Channel Network)是指在短视频领域内,通过整合多个创作者或渠道资源,形成具有一定规模和影响力的网络联盟。这种模式...

    数据分析的道与术.pdf

    数据分析的道与术.pdf

    化债的道与术(一):13年化债之路,100个相关政策.pdf

    化债的道与术(一):13年化债之路,100个相关政策.pdf

    百度内部培训PPT流出:数据分析的道与术

    百度内部培训PPT流出:数据分析的道与术 主要聊一聊数据分析的艺术

    社群变现的道与术:私域流量&用户运营.pdf

    社群变现的道与术:私域流量&用户运营.pdf

    CTO成长 道与术 笔记.zip

    做好CTO,在我看来就两件事:一个是事,另一个就是人。如果你擅长处理人际关系,但对技术把控不到位,团队不会服你;如果你技术上很厉害,却管理不好团队,你会发现工作推动起来挺困难,所以作为CTO要重点理解和面对...

    SEO的道与术

    SEO的关键字获取、优化、调整,SEO中的规则,全面讲述SEO战术

    数据分析的道与术.zip

    《数据分析的道与术》这份资料包,正如其名,旨在深入探讨数据分析的哲学与实践技巧。数据分析,作为现代商业和科研中不可或缺的工具,它的重要性不言而喻。在这个数字化时代,数据如同石油,驱动着企业的决策和发展...

    大商境界——道与术的修炼.docx

    在探讨“大商境界——道与术的修炼”这一主题时,我们首先要理解“道”与“术”的概念。在商业领域中,“道”代表原则、理念,是企业家行事的出发点和根本准则,它关乎企业的长远发展和企业家的境界。而“术”则涵盖...

    小程序发展的道与术

    根据提供的文档内容,我们可以梳理出关于“小程序发展的道与术”的相关知识点,主要涉及小程序的发展策略、数据分析以及应用实例等方面。 ### 小程序发展概述 文档提到“小程序发展的道与术”,这暗示了讨论的主题...

    菜鸟PM眼中的道与术.pdf

    "菜鸟PM眼中的道与术" 本篇文章从一个菜鸟赛季产品经理的视角,讨论了产品经理的“道”和“术”。其中,“道”指世界观,即产品经理如何看待自己的世界;“术”指方法论,即产品经理如何做好自己的工作。 首先,...

    人工智能与内容安全风控-8-4 数字生活中,商家安全算法的道与术.zip

    本主题“人工智能与内容安全风控-8-4 数字生活中,商家安全算法的道与术”深入探讨了商家如何利用AI技术来确保用户在交易过程中的安全,以及在内容审核和风险管理上的策略。 一、人工智能在商家安全中的应用 1. ...

    大数据分析的道与术(1).pdf

    大数据分析的道与术(1).pdf

Global site tag (gtag.js) - Google Analytics