我没有编程背景,经常遇到编程范式、设计模式和应用程序架构等术语。虽然我认为我对这些术语的含义有一个模糊的理解,但如果有人能够澄清每个术语是什么、它们与其他术语有何不同以及这些概念如何应用于 Objective C,我将不胜感激。
编程范式:类似于“函数式编程 http://en.wikipedia.org/wiki/Functional_language", "过程式编程 http://en.wikipedia.org/wiki/Procedural_programming", and "面向对象编程 http://en.wikipedia.org/wiki/Object_oriented_programming“。编程范式和使用它们的语言决定了如何编写代码。例如,在面向对象编程中,代码被分为类(有时是语言功能,有时不是(例如 javascript)),并且通常支持继承以及某种类型的多态性。程序员创建类,然后创建类的实例(即对象)来执行程序的操作。在函数式语言中,计算机上的状态变化很大程度上由语言本身控制. 函数是第一类对象,尽管并非所有函数是第一类对象的语言都是函数式编程语言(这个话题是一个很好的争论)。用函数式语言编写的代码涉及大量嵌套函数,几乎程序的每一步都是新函数调用。对于过程式编程,C 程序和 bash 脚本是很好的例子,您只需说执行步骤 1、执行步骤 2 等,without创建类等等。
设计模式:设计模式是一种有用的抽象,可以用任何语言实现。它是一种做事的“模式”。就像如果您想要实现一堆步骤一样,您可以使用“复合”和“命令”模式,以便使您的实现更加通用。将模式视为以通用方式解决常见编码任务的既定模板。
应用程序架构:考虑如何构建系统来执行任务。因此,对于 Web 应用程序,架构可能涉及负载均衡器后面的 x 个网关,这些网关异步馈送队列。消息由 z 台机器上运行的 y 个进程获取,有 1 个主数据库和一个备份从数据库。应用程序架构涉及选择所使用的平台、语言和框架。这与软件架构不同,软件架构更多地说明如何在给定软件堆栈的情况下实际实现程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)