热门问题
时间线
聊天
视角
软件工程主题列表
维基媒体列表条目 来自维基百科,自由的百科全书
Remove ads
软件工程主题列表是为软件工程主条目提供一个概览、简介和补充。而软件工程是应用系统化、规范化、可量化的工程方法于软件的整个生命周期,包括开发、运行及维护。[1]
对社会的影响
软件工程师透过创造应用系统而影响整个社会。这些应用系统为用户创造价值但有时候也会造成风险或灾难。
软件工程师建立应用软件给人们使用。工程应用通过激励开发者以新的方法解决问题来影响软件工程.比如,消费者用的软件强调低成本,医用软件强调高质量,而互联网商业软件重视如何能快速的发展.
生产力与办公软件:
互联网与通信应用:
设计与媒体软件:
- 电脑辅助设计(CAD)
- 电脑图像
- 动画
- 特别效果 为视频或电影服务
- 编辑器
- 后期处理
企业与商业应用:
科学与工程软件:
- 科学
- 工程:所有传统工程分支都已经大量采用软件来协助日常工作。工程师用表格比用计算器更多,而对于其产品的设计,例如路桥和大型电力装置等,电脑辅助设计更是不可少,并配合上特别设计的软件来进行设计,分析及模拟等各种活动。这些计划与软件在多方面有相似之处,除了因为工作的结果包含了电子文件以外,计划亦经历了分析/设计/实践和测试四个阶段。
艺术、娱乐与游戏:
其他基础或支持软件:
Remove ads
软件曾是许多著名灾害的重要原因。
- 阿丽亚娜-5运载火箭
- 火星探测器
- 丹佛国际机场
- Therac-25 - 因软件设计时的缺陷造成六起医疗事故的一种放射治疗机器。
技术和实践
有技术的软体工程师运用技术及不同范畴的实践来改进生产力及质量。从而编程更快更容易。下列的技术和方法是在生产中天天被使用到的。
许多技术和做法(几乎所有)是软件工程所特有的,尽管其中很多与电脑科学是共同的。
- 算法与数据结构:作为电脑科学的核心,算法是解决问题的分步程序,而数据结构(如数组、链表、树和图)则是组织和存储数据的方法,以便这些算法能够高效地使用它们。
- 计算理论: 该领域从数学角度探索电脑的基本能力和局限性。它探讨哪些问题可被解决(可计算性理论)以及解决这些问题所需的时间或内存(复杂度理论)。
- 电脑系统结构:该领域关注电脑系统的内部结构与组织。它涵盖CPU、内存(RAM)和存储等组件的设计方式,以及它们在低级别上的交互方式,包括数据在二进制中的表示形式。
- 编程语言与范式:该领域涉及用于编写电脑指令的工具。它包括不同的编程范式——如过程式、面向对象和函数式编程——以及各种语言的语法和语义(如Python、C++、Java)。
- 设计模式——对软件设计中给定上下文中常见问题的一般可重用解决方案
- 软件部件
平台结合了电脑的硬件和操作系统。平台变得越来越强大和廉价的同时,操作和工具被更广泛地使用。
- 操作系统(OS):操作系统是管理电脑硬件和软件资源的核心软件。关键概念包括进程管理、内存管理、文件系统和并发性。
- 电脑网络:该领域涵盖使电脑能够相互通信的原则和协议。核心主题包括TCP/IP模型、路由和互联网架构。
- 数据库:该领域专注于高效可靠地存储、组织和检索海量数据的原则。其中包括关系模型、SQL等查询语言以及新兴的NoSQL系统等概念。
- 人工智慧(AI)与机器学习(ML):一个致力于创建能够执行需要人类智慧任务的系统的广泛领域。机器学习作为人工智慧的子领域,专注于开发能够从数据中学习模式并进行预测的算法。
- 电脑图形学:研究利用电脑创建和处理视觉图像的学科,涵盖从渲染2D/3D图像到动画和模拟的各个方面。
- 密码学与安全:该领域致力于保障资讯和系统的安全。密码学提供安全通信的技术,而更广泛的安全领域则涵盖防御系统免受攻击和漏洞的影响。
- 排序算法——算法,按照一定的顺序列表的元素
- 编译器理论
离散数学(Discrete mathematics)是软件工程学的重要基石。
其他
社群主题
参考文献
外部链接
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads