美文网首页@IT·互联网
架构设计思维篇之概念

架构设计思维篇之概念

作者: chzne | 来源:发表于2022-03-25 14:30 被阅读0次
avatar

含义

关于概念是什么,至今也没有形成一个统一的定义。各门学科都从不同的视角表述了对概念的认识,比如:
在逻辑学中,概念是反映对象本质属性的思维形式;
在心理学中,概念是人脑对客观事物本质的反映,它是思维活动的结果和产物,同时又是思维活动借以进行的单元;
在哲学中,概念是抽象的观念。从各学科的定义中,至少我们可以看出概念是最小的思维单位,是抽象的东西。
其实,在软件工程中,我们对概念是什么应该是再熟悉不过的了,因为在面向对象的编程语言中,有一个东西和概念非常相似。
这便是我们构建应用程序的最小单位:类。

形成

应用程序设计中,让你创建一个接口想必不是什么难事,但让你定义一个稳定的、不变的接口,你未必能做得到。
定义接口其实就是定义概念,它是对事物层层抽象获取事物本质属性的结果,上层概念和下层概念之间的逻辑关系是包含关系。
比如说,日常生活中的这些概念:树、人、植物、动物、生物。
那每一层的概念如何形成的呢?一般概念的形成过程采用的是螺旋式归纳法,层层提取事物或概念共同属性的过程,大致可以分为5个基本步骤,分别是:经验、分析、对比、抽象、命名、定义。

经验作为感觉形成的第一个步骤,经验的结果即感觉是认识的材料,没有感觉我们很难想象思维何以可能。

分析是认识活动的起点。感觉中的事物有什么样的形状、颜色、气味、作用,都需要我们仔细分析事物所具有的属性。

对比是是将多个事物放在一起,找出它们之间的相似属性以及不相似的属性。

抽象是将相似的属性与不相似的属性分离,并从相似属性中提取本质属性的过程。

命名是给抽象出的本质属性找一个符号来代表其所指的事物。

定义是明确被命名的概念所反映的事物本质属性。

当然,上面的步骤仅仅只是一般的而非绝对的,而且概念的形成方式也不是仅有上面这种归纳式的方式,还有一些最抽象的概念是基于假设和演绎,如数字、时间、空间以及它们的属概念,这些概念严格意义上是无法靠归纳获得的。

范畴

avatar

范畴有两层含义,一层含义是指某个领域中最基本的概念,如上图中的View这个基本概念;另一层含义是指范围或领域,比如,我们说Button属于View范畴。
范畴是反映客观事物的普遍本质的基本概念,它可以用来表示某个特定域下的一切具体的事物。
古希腊哲学家亚里士多德在其逻辑学著作《工具论》中的范畴篇里,给出了人类认识的10个范畴,分别是:实体、性质、地点、时间、数量,关系、姿态、状况、主动、被动。
后来,德国伟大的哲学家康德对其进行了完善,将其分成4组每组三个总共12个范畴,如下:

量的范畴:单一性、多数性、全体性

质的范畴:实在性、否定性、限制性

关系范畴:实体--偶性、原因--结果、协同性

模态范畴:可能性--不可能性、实有性--非实有性、必然性--偶然性。

各学科和各行业因研究的对象不同或领域不同,也会形成自己的基本概念,它们的主要工作便是研究这些概念以及概念之间的普遍关系。
比如,逻辑学中的概念、命题、论证等,经济学中的需求、供给、均衡。
在比如,应用软件中,MVC架构模式中的模型、视图、控制器,它们是基本概念也是范畴。

总结

概念是抽象思维活动的产物,同质的概念属于同一范畴,同范畴中的概念因逻辑关系会形成抽象的等级结构,这个结构看起来像一棵树或金字塔,塔顶的概念是基本概念即范畴,塔底的东西是具体的事物,从塔底到台顶是不断抽象的过程。
应用程序便是由很多彼此联系的金字塔构成的,程序设计最重要的便是找到范畴或域,并定义范畴之间的关系、以及概念之间的层次关系。

相关文章

  • 架构设计思维篇之概念

    含义 关于概念是什么,至今也没有形成一个统一的定义。各门学科都从不同的视角表述了对概念的认识,比如:在逻辑学中,概...

  • apollo架构图

    一、Apollo基本概念 二、Apollo架构设计之客户端 三、Apollo架构设计之服务端 四、高可用设计

  • 架构设计思维篇之结构

    结构是相关元素之间的组织和安排,它是一个很普遍的概念,我们无时无刻不在谈论着各种对象的结构,如:细胞结构、人体结构...

  • 从0开始学架构

    一.开篇词 架构为什么有难度 1. 架构设计的思维和程序设计的思维差异很大。 架构设计的关键思维是判断和取舍,程序...

  • 神一样的产品经理-用户体验设计

    用户体验设计包括:用户研究、创建人物角色、概念设计、信息架构、交互设计、原型设计和视觉设计。 1、概念设计 概念设...

  • 软件设计混淆概念书目录

    设计概念 设计模式 框架 架构 平台 框架与架构之间的关系 框架与设计模式之间的关系

  • 深入领悟大系统架构设计

    小系统和大系统的架构设计之不同,首先是概念架构上的不同,而归根朔源这是由于架构所支撑的关键需求不同造成的。整个架构...

  • 软件架构:为什么要做软件架构设计?

    上一篇我们聊了软件架构的概念以及历史背景(WHAT),在这篇我们一起来聊聊为什么要做软件架构设计(WHY)。 架构...

  • 概念:设计思维之思维加工

    从今天开始分享一些设计方面的内容。 人的思维是怎样产生的呢?人的思维是如何进行的呢?人们对思维进行了广泛、深入的研...

  • 软件架构II:架构思维

    架构思维 != 思考架构。 架构思维是: 了解架构与设计之间的差异,并了解如何与开发团队合作以使架构正常工作。 这...

网友评论

    本文标题:架构设计思维篇之概念

    本文链接:https://www.haomeiwen.com/subject/kwfdjrtx.html