文章目录

  • 1.线性代数是什么?
  • 2.线性代数在干什么?
    • 2.1映射
  • 3.ORM
  • 4.客观规律与元数据
  • 5.继承、封装、多态与线性代数的辩证关系
  • 6.从唯物辩证法的角度看待Java
  • 7.软件设计

本人才疏学浅,此文为本人一点头脑风暴,还在不断修改中,试图找到其同一性,始终认为数、哲、史、编程不分家,他们统一于物质。实践决定认识,认识反复无限。如有错误,恳请指出。


1.线性代数是什么?

从算行列式到各类矩阵、和二次型,我不由得思考,线性代数到底在干什么?

世界是多维且复杂的,而多维矩阵能很好的抽象这个世界,而多维矩阵的性质总结起来,就是线性代数。

从这个角度出发,我们今日应用的很多东西,无外乎是线性与混沌。而今日编程,很大程度上是建立在线性关系上的。

2.线性代数在干什么?

线性代数本质是对世界的一种抽象,以方便让人类更容易理解客观规律。从这个角度来说,高数、线代、英语等语言没有本质区别,都是对客观规律或信息的描述,而线性代数的信息冗余较少,能够很好的抽象这个世界。

2.1映射

从中学开始,接触到函数 y=f(x)y=f(x)y=f(x),函数即function,黑盒,便是映射思想的初步。通过映射,我们可以通过研究x去研究y的性质,即起到了转换研究对象的目的。
类似的应用还有很多,如:二次型的标准化与规范化,我们通过可逆的线性变换,来对二次型进行研究对象转换。

3.ORM

4.客观规律与元数据

我们对一个东西下定义有两种方式

方式 解释
属类定义 用大的集合去描述小集合,如:学生是在上学的人,对象是类的实例等
关系定义 当一个集合无法找到比他更大的范围时,用临近关系定义,如:物质和意识的关系
如:如果要跟概念下定义,则概念的概念是什么?我们可以找到更大的集合来描述它。
概念:思维的基本形式之一,反映客观事物的一般的、本质的特征。

在Java中,类是对一类事物的抽象,更准确的说,是对事物部分属性的抽象。
但其实,对象其实也是事物(物质)部分属性的抽象。
而类是用来描述对象的元数据。
从这一点出发,字节码是用来描述类的元数据。我更愿意把类称作为字节码对象。

由于class文件很灵活, 它甚至比Java源文件有着更强的描述能力

其实我们仍能以此出发继续深入下去,由此直到电子信号,甚至能下定义到更底层。
所以我们的学习所谓的底层,其实一直是相对底层,就如同几何证明,证明到定理那一步即可,不必非证明到公理那一部。换言之,到绝对底层的方面,是前人花费无数时间堆积起来的,我们只需站在巨人肩膀上前行。事物的真正本质,是不必过多纠结的,因为我们绝大多数人,一辈子也想不明白一件真正的本质(如爱因斯坦的相对论)。

由此出发,其实我们现在所谓的底层,源码,在未来或许以另一种形式演化成不需要人思考的产物,人只需要关心更顶层的东西。如:现在汇编对于从事软件工作的很多人来说已经不是刚需。但是,这些必然依赖于硬件水平的发展、生产力的提高、软件架构的革新。未来究竟是何种形式,实在令人期待。

5.继承、封装、多态与线性代数的辩证关系

6.从唯物辩证法的角度看待Java

7.软件设计

软件最大的敌人是复杂性。复杂性的根本原因是系统性和藕合。这导致了软件系统最著名的“人月定律”困境和“巴别塔”问题。

因为,对任何一个复杂的,内部互相影响的系统,变化会导致混沌性产生(比如三体问题),由于混沌性本身的难以预测性和计算,直接就产生了一个软件一旦陷入混沌的”焦油坑“就产生了著名的人月现象:加人解决不了问题,减人解决不了问题,减需求解决不了问题,加需求解决不了问题,降低质量要求解决不了问题,增加质量要求同样解决不了问题,反而软件延期可能更厉害……因为任何变化对混沌系统都是难以预测的,甚至不变也未必是最好的——世界本身必然是变化的。

解决一个混沌系统的方式

方式一 降低系统内部的自由度,构建相对隔离的子系统,而不是内部完全自由的大系统
方式二 子系统之间有尽量少得耦合和频率,内部可以有相对多的内聚性和频率
方式三 子系统数量不要太多,耦合方式最佳是MECE

【天下有春】数、哲、编程随想(待完成)相关推荐

  1. 快手2019春招笔试编程题

    快手2019春招笔试编程题 第一题 输入描述 输出描述 分析 代码 第二题 输入描述 输出描述 分析 代码 第三题 输入描述 输出描述 分析 代码 个人主页:http://redtongue.cn o ...

  2. java新手的通病_编程随想:Java新手的通病 PDF 下载

    编程随想:Java新手的通病 PDF 下载 下载地址: 提取码:onyi 相关截图: 主要内容: 其实很早以前就想写这样一个文章,可惜当时我没有 Blog,所以到现在才写下来.最近几年,随着 Java ...

  3. vivo2020春招笔试编程题(下)

    本文介绍笔者参加过的vivo2020春招笔试编程的第三题. 第三题:手机屏幕解锁模式 题干 现有一个 3x3 规格的 Android 智能手机锁屏程序和两个正整数 m 和 n ,请计算出使用最少m 个 ...

  4. Java-函数式编程(二)Lambda表达式

    本文首发: Java-函数式编程(二)Lambda表达式 "Lambda 表达式"(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直 ...

  5. 数控g71编程实例带图_数车编程G71实例讲解

    老铁们大家好,我是你们的好朋友少白,最近找我学习数车编程的老铁们有点多,今天呢我就给大家来分享一组案例,希望能给大家带来一些帮助, G71,G70 编程指令是数控车最常用,也是最方便的指令,一般零件的 ...

  6. [Google Guava] 4-函数式编程

    原文链接 译文链接 译者:沈义扬,校对:丁一 注意事项 截至JDK7,Java中也只能通过笨拙冗长的匿名类来达到近似函数式编程的效果.预计JDK8中会有所改变,但Guava现在就想给JDK5以上用户提 ...

  7. Java黑皮书课后题第6章:**6.26(回文素数)回文素数是指一个数同时为素数和回文数。编程程序,显示前100个回文素数,每行显示10个数,数字中间用一个空格隔开

    6.26(回文素数)回文素数是指一个数同时为素数和回文数.编程程序,显示前100个回文素数,每行显示10个数,数字中间用一个空格隔开 题目描述与运行示例 代码 题目描述与运行示例 6.26(回文素数) ...

  8. python实现一个数如果恰好等于它的因子之和,这个数就称为“完数” 。例如, 6的因子为 1、2、3,而 6=1+2+3,因此 6 是完数。编程找出1000之内的所有完数

    一个数如果恰好等于它的因子之和,这个数就称为"完数" . 例如, 6 的因子为 1.2.3,同时6=1+2+3,因此 6 是完数. 编程找出 1000 之内的所有完数,并输出该完数 ...

  9. 【天下有春】剑气纵横三万里,一剑光寒十九洲

    少年高高提起的双手之间,有缕缕春风欢快萦绕双袖,如一尾尾青色蛟龙在云海游曳. 陈平安轻声问道:"齐先生?" 一个温暖醇厚的嗓音在陈平安身旁响起,"在的." 慢慢 ...

  10. 如果一个数等于它的因子之和,则称该数为“完数”(或“完全数”)。例如,6的因子为1、2、3,而6=1+2+3,因此6是“完数”。编程找出1000之内的所有完数。

    如果一个数等于它的因子之和,则称该数为"完数"(或"完全数").例如,6的因子为1.2.3,而6=1+2+3,因此6是"完数".编程找出10 ...

最新文章

  1. Hashing散列注意事项
  2. OpenSceneGraph 笔记--如何导出三角形数据
  3. tns 连接超时_ORA-12170:TNS:连接超时
  4. 【收藏】HDFS的Java API使用
  5. DOCKER存储驱动之DEVICE MAPPER简介
  6. 第一款Micropython图形化编辑器—Python Editor
  7. 交互式地图_张晟推出学校资源交互式地图工具
  8. spring教程笔记3
  9. 找不org.apache.commons.lang3.builder.EqualsBuilder和commons-lang下载链接
  10. javascript在IE下的格式问题
  11. FOR XML PATH 应用及其反向分解
  12. 【信号与系统】Multisim 仿真信号合成与分解
  13. jquery 鼠标按住移动的解决方案
  14. python读取tif图片_python读取tif图片时保留其16bit的编码格式实例
  15. java 内部类,匿名内部类
  16. 用p5.js绘制创意自画像
  17. halcon例程学习笔记(11) 一维码、二维码识别
  18. 码率,帧率,分辨率_详解
  19. 喜欢你,才不顾一切的作践自己:QQ伤感日志
  20. R语言实战Topsis综合评价法

热门文章

  1. 搭建基于springboot的FTP服务器
  2. 地质信息系统学习笔记
  3. python数字水印 (图片和PDF文档)
  4. Weex 原理之带你去蹲坑
  5. BZOJ5415 [NOI2018] 归程
  6. Launcher图标加载
  7. 联合高德推AR实景导航,OPPO手机的又一差异化策略
  8. RL笔记 DQN 系列
  9. AppHangB1:explorer进程停止与Windows交互
  10. Contest3143 - 2021级新生个人训练赛第36场_B: 数字游戏