我的系统设计之道

说明:此文章为腾讯云机器自动从本人csdn博客搬迁过来。是本人授权操作。

申明:无本人授权,不可转载本文。如有转载,本人保留追究其法律责任的权利。

龚浩华,QQ 29185807,月牙寂 道长

第一时间获取文章,可以关注本人公众号 月牙寂道长 yueyajidaozhang

道家说,道法自然,顺其自然。任何事物,都有着自身的法则(规律),要充分的理解事物的法则(规律)后,顺应这个法则(规律),则会事半功倍。 现代科学,从牛顿经典力学说起。牛顿的经典力学,则是属于对法则的一个抽象模式。顺应,利用这个法则,近代科学发展起着重要作用。 但牛顿经典力学,在解决经典力学的方面是适用的。在量子层面,以及相对论层面,则是不试用的。 模式,何为模式。模式(Pattern)其实就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度,那就是模式。 这也就是所谓的,适合才是最好的。 那么从这里开始延伸,在程序设计的时候,有经典的23种设计模式,这些设计模式,对应相应的场景。可以解决相对应的程序设计问题。 那这些设计模式之上,是不是可以再抽象出一种模式,暂称为模式之模式。 起初,利用简单的设计模式,如经典的单例模式,工厂模式等23设计模式,来进行程序设计,这时,只是简单的接受前人总结的模式。缺点,模式有限。 仔细思考,其实发现,这23种设计模式,全部能够对应到现实生活。就如最简单的工厂模式,这个和现实生活中的是一样的。 是否可以摆脱23设计模式的限制?是否可以转变思想,先模拟现实模式,再来程序设计? 答案是肯定的。将需求转变成现实模式,真正实现程序是对现实生活的模拟,然后再来实现程序。 这里的设计,包括程序设计,架构设计。都是可以用此方案来实现。 经过对现实具象化的模拟,实现了设计思想的转变。但如何落地呢? 在程序设计中,最熟悉的莫过于,面向对象编程。在架构设计上,目前最火热的,莫过于微服务。 那么从这两方面,我们就可以将现实具象化实现。但其中的面向对象,对现实的模拟还缺乏很多支撑。那么面向智能体编程Aop(Agent Oriented Programming)则可以完美实现现实具象化设计。 以上的系统,还属于简单系统。如设计模式中的工厂模式,角色划分简单,功能简单,角色数量少,交互少。但当前IT界的发展,系统越来越复杂,特别是微服务数量一多,则其造成的系统复杂性就会非常高。 那么简单的从辩证角度来看,有种整体与局部的辩证方式,可以解决此种问题。 假如我们有20个微服务,如果20个微服务之间,进行通信,那么会形成一个蜘蛛网一样的网络。我们将20个微服务,化分为不同的领域,假如我们划分为5个领域,领域组成大的微服务,那么组织间的网络将得到极大的简化。 那么各个领域之下,其内部又包含几个小的微服务,其之间有着自身的网络通信。 这种整体与部分的辩证,也可以用到程序设计中。目前go语言结合aop设计,可以实现角色划分。并通过领域划分,划分为不同的领域,在不同的领域里包含不同的aop。不同的领域又组成大的程序。 从整理和局部的辩证来做一些优化,只是做了一些系统的简化处理。但依旧不能解决系统复杂度越来越大的情形。 这个情形与近代科学发展是一致的。近代科学都是以简单系统研究为主,所出现的理论都是简单的模式。近几十年,复杂系统的概念将科学发展引到新的层面。 那么我个人的思考形成过程。 从简单的行为,到群体的行为关注。 有简单的种群行为分析,如生物种群模型,利用微分方程来建模。最经典的就是捕鱼业的持续收货,这个只是简单的种群模型,再复杂一点有,狼图腾中的草原、黄羊、狼,三者的种群数量的自动调整。 这里的是简单的种群互相影响的行为。再复杂一点,还有群体智能模型。如一些群体智能算法,遗传算法,粒子群算法,蚁群算法等等,但这些知识简单的算法。如利用到程序设计角度来看。利用的则是两个东西,正反馈和负反馈。通过激励与惩罚机制,形成群体的一个智能。但这个需要个体到达一定的数量,形成群体。 那么把系统资源具象成环境资源,将个体具象成黄羊、狼、蚂蚁、蜜蜂等个人。整个系统便具象成了一个生态系统。 这方面的研究还有很多,比较符合IT行业的,有元胞自动机、协同学。而其中的协同学、耗散系统、超循环系统被统称为新三论。也正是自组织理论。这三者的研究,可以给复杂系统的设计,提供一些理论支撑。 当前的复杂适应系统模型说的,复杂的行为并非出自复杂的基本结构, 极为有趣的复杂行为是从极为简单的元素群中涌现出来的。生物体在共同进化过程中既合作又竞争, 从而形成了协调精密的生态系统; 原子通过形成相互间的化学键而寻找最小的能量形式, 从而形成分子这个众所周知的涌现结构; 人类通过相互间的买卖和贸易来满足自己的物质需要, 从而创建了市场这个无处不见的涌现结构。 从这段话来体现,IT系统以后越来越复杂,是否也是可以通过构建简单的个体模块,通过一系列的,激励与惩罚,实现系统的自足自,让其涌现出系统智能? 我个人认为,系统的演进,应该是殊途同归的。也是道家所说道法归一。IT系统的发展,势必会像着自组织系统发展。当前就是简单系统向复杂系统演变的奇点。把握方向,便是把握未来。 很多东西在头脑中,便于篇幅的原因,很多都是简单的提下。有兴趣的话,可以联系,互相学习。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PPV课数据科学社区

【工具】Excel,SPSS和QlikView等数据可视化产品选型指南

大数据的核心不是“大”,也不是“数据”,而是蕴含在其中的商业价值。作为挖掘数据背后潜在价值的重要手段,商业智能和分析平台成为大数据部署中的 关键环...

2866
来自专栏Crossin的编程教室

程序员教流浪汉编程,开发APP

一天,Patrick McConlogue宣布他将要教一个流浪汉学JavaScript语言,帮助他开发一个属于他自己的app。今年23岁的Patrick是一名软...

3094
来自专栏大数据文摘

[可视化]时间线的7种设计方式

3249
来自专栏玉树芝兰

互联网上的时光机器

移动互联网时代,搞社会研究的人总是需要从网络采集各种数据。假设你本周的任务是搜集世界主流媒体对某一主题的报道。你好不容易学习并且掌握了搜索引擎的各种窍门后,辛辛...

521
来自专栏吴伟祥

生词篇-Shiro官网 的笔记_0115 原

Reference Manual ['ref(ə)r(ə)ns]['mænjʊ(ə)l]    n. 手册、指南

391
来自专栏ATYUN订阅号

【业界】微软发布高级AI工具,减轻AI从业人员的负担

微软的Cognitive Services(认知服务)是该公司托管的AI算法的集合地。今天,该公司宣布推出几项Cognitive Services(认知服务)工...

2995
来自专栏大数据文摘

7种方式玩转信息可视化中的时间线设计

2545
来自专栏互联网杂技

你必须知道的4条设计黄金原则

子曰:“三人行,必有我师焉;择其善者而从之,其不善者而改之。” ? 如果你曾在纽约找过公寓,那么你一定会了解这是一个非常独特的地狱般的折磨。 在经历了多方面...

3278
来自专栏互联网杂技

有哪些实用秘诀可以帮助UI/UX设计师自我提升

如果你对艺术有着足够的热忱,又能够玩转技术,那么UI/UX 一定是你的菜。这是为数不多能为技能、想象力、创造力和技术提供一个出口的工作,也正是这种属性,使得这经...

35711
来自专栏walterlv - 吕毅的博客

卡诺模型(KANO Model)

2018-01-09 09:57

591

扫码关注云+社区