一、程序设计语言
Lisp
1.特点:属于函数式程序设计语言
2.适用场景:用于符号演算、微分和积分演算,游戏推演、以及人工智能的其他领域
Prolog
1.特点:以特殊的逻辑推理形式回答用户的查询
2.应用:多用于数据库和专家系统
二、OSI七层模型
三、软件项目估算
COCOMO:该模型按其详细程度分为基本、中级、详细COCOMO模型
·基本:该模型是一个静态单变量模型,用于对整个软件系统进行估算
·中级:该模型时一个静态多变量模型,将软件系统模型分为了系统和部件两个层次,系统由部件构成
·详细:将软件系统模型分为系统、子系统和模块三个层次
注:COCOMOII模型在模型层次结构中有三种不同的规模估算选择:对象点、功能点和代码行
四、B树
B-树:
1、所有键值分布在整颗树中(索引值和具体data都在每个节点里);
2、任何一个关键字出现且只出现在一个结点中;
3、搜索有可能在非叶子结点结束(最好情况O(1)就能找到数据);
4、在关键字全集内做一次查找,性能逼近二分查找;
B+树:
1、所有关键字存储在叶子节点出现,内部节点(非叶子节点并不存储真正的 data);
2、为所有叶子结点增加了一个链指针;
五、知识产权
软件著作权:即软件开发完成之日起产生,自动生成,不需要履行任何形式的登记或注册手续。接受他人委托开发的软件,其著作权的归属由委托人与受托人签订书面合同约定;无书面合同或者合同未作明确的,有受托人享有。
专利权:智力活动的规则和方法不取得专利权。计算机软件本身属于智力活动规则和方法策略,即不能被授予专利权。但进行智力活动规则和方法而设计制造的仪器,装备能获得专利保护。
六、OLTP与OLAP
联机事务处理OLTP(on-line transaction processing)传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。
联机分析处理OLAP(On-Line Analytical Processing)是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
七、极限编程
极限编程是一个轻量级的、灵巧的软件开发方法,同时它也是一个非常严谨和周密的方法。它的基础和价值观是交流、朴素、反馈和勇气,即任何一个软件项目都可以从四个方面入手进行改善:加强交流;从简单做起;寻求反馈;勇于实事求是。
XP是一种近螺旋式的开发方法,它将复杂的开发过程分解为一个个相对比较简单的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等,并根据实际情况及时地调整开发过程。
八、动态规划法和分治法
动态规划也是一种分治思想(比如其状态转移方程就是一种分治),但与分治算法不同的是,分治算法是把原问题分解为若干个子问题,自顶向下求解子问题,合并子问题的解,从而得到原问题的解。动态规划也是把原始问题分解为若干个子问题,然后自底向上,先求解最小的子问题,把结果存在表格中,在求解大的子问题时,直接从表格中查询小的子问题的解,避免重复计算,从而提高算法效率。
九、耦合
图解7种耦合关系 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/22281389
十、I/O设备管理软件