问题标签 [procedural-programming]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
17 回答
147389 浏览

functional-programming - 过程式编程和函数式编程有什么区别?

我已经阅读了有关过程编程函数式编程的 Wikipedia 文章,但我仍然有些困惑。有人能把它归结为核心吗?

0 投票
6 回答
3442 浏览

c++ - Accelerated C++ Practical Programming by Example 中的概念今天仍然成立吗?

有人向我推荐了一本书,名为:

Andrew Koenig 和 Barbara E. Moo Addison-Wesley 通过示例加速 C++ 实用编程,2000 ISBN 0-201-70353-X

这本书的基础是面向对象编程在内存方面非常浪费,并且大多数源代码不应该这样编写,而应该使用所有内联函数调用和过程编程。

我的意思是我知道大多数编程书籍的保质期和牛奶差不多,但是如果您编写客户端/服务器应用程序(数据库、服务器和所有)(不是设备驱动程序或视频游戏)真的值得无法维护的代码只是为了提高速度?

或者仅仅让应用程序在客户真正的旧机器上运行是否值得?或者能够在单个机器上运行更多服务器?

0 投票
9 回答
5032 浏览

language-agnostic - 程序编程与 OOP 的开发成本?

我来自相当强大的 OO 背景,OOD 和 OOP 的好处是我的第二天性,但最近我发现自己在一家开发商店,与程序编程习惯有关。实现语言有一些 OOP 特性,它们没有以最佳方式使用。

更新:每个人似乎都对这个话题有意见,我也是,但问题是:

有没有比较好的比较研究来对比使用过程编程语言和面向对象语言的软件开发成本?

一些评论者指出了将苹果与橙子进行比较的可疑性质,我同意准确测量将非常困难,但也许并非完全不可能。

0 投票
23 回答
26605 浏览

oop - 过程编程比 OOP 有什么优势吗?

[编辑:] 早些时候,我问这个问题可能是一个框架不佳的问题,关于何时使用 OOP 与何时使用过程编程——一些回答暗示我在寻求帮助理解 OOP。相反,我经常使用 OOP,但想知道何时使用过程方法。从回复来看,我认为有一个相当强烈的共识,即 OOP 通常是一种更好的全方位方法,但如果 OOP 架构从长远来看不会提供任何重用优势,则应该使用过程语言。

然而,我作为 Java 程序员的经验却并非如此。我看到了一个庞大的 Java 程序,由 Perl 大师用我编写的代码的 1/10 重写,并且看起来和我的 OOP 完美模型一样健壮。我的架构看到了大量的重用,但更简洁的程序方法产生了一个更好的解决方案。

因此,冒着重复自己的风险,我想知道在什么情况下我应该选择程序而不是面向对象的方法。您将如何提前识别 OOP 架构可能过度使用的情况以及更简洁和高效的过程方法。

任何人都可以提出这些场景的例子吗?

有什么好方法可以提前确定一个项目可以更好地通过程序编程方法来服务?

0 投票
17 回答
53566 浏览

c++ - 过程程序和面向对象的程序有什么区别?

我对编程还很陌生,但我一直在阅读有关 StackOverflow 的一些关于各种编程方法的有趣讨论。我仍然不是 100% 清楚过程编程和面向对象编程之间的区别。听起来面向对象编程仍然使用过程(方法),但一切的组织方式都不同,因为对象是节目的主角。但在我看来,程序仍然允许你做所有相同的事情。就像在 C 中一样,您可以将所有类似的过程放入一个库中。所以你真的不能说 C 中的库类似于 C++ 中的对象吗?

0 投票
7 回答
196138 浏览

oop - OOP vs 函数式编程 vs 过程式

这些编程范式之间有什么区别,它们是否更适合特定问题,或者是否有任何用例偏爱其中一种?

架构示例赞赏!

0 投票
9 回答
3235 浏览

c - 与来自面向对象领域的 C 作斗争?

当我遇到编程问题时,我自然会开始在脑海中将它们分解为逻辑对象。谁有什么责任,谁拥有什么,谁从什么得到什么,等等。

我在 C 中苦苦挣扎。我只是不知道如何用程序语言做事。

有经验的 C 程序员能否帮助解释我在设计时应该如何考虑我的程序?

例如,我想编写自己的 Semaphore 类。我的程序自然需要一个队列数据结构,我也想自己编写。如果我需要在 Java 或 C# 中执行此操作,我可以简单地快速创建一个 Queue 类并在我的 Semaphore 类中创建它的一个新实例。

但是在 C 中,没有对象。那么我是否必须内联队列数据结构的所有行为?

有人可以帮我“得到它”吗?

相关在 c 中计划和组织应用程序开发的最佳方式是什么

0 投票
3 回答
178 浏览

oop - 我应该根据范式还是根据语言提供的工具来设计我的软件?

我将通过示例来解释这个问题:在 zend 框架中,当您想向视图类添加功能时,可以使用所谓的 Helper 类。
辅助类是具有一个方法(与类名相同)的类,该方法在每个视图中都可用(通过反射,辅助方法由视图方法包装)
它非常有条理和干净,但是,这意味着额外包括每个这样的助手和一些玩反射。这两件事对性能都有影响。

我的想法不是为每个要添加到视图中的方法开发一个 Helper(每个方法都在不同的文件中),而是编写一个带有 C 样式函数列表的助手(即不是类静态方法,实际函数),它可以是仅在 View 类中使用(因为 View 助手仅包含在 View 中)。

因此,这是将一些程序与 OO 混合,但性能优势是可见的,无论如何,帮助程序是通常不需要维护状态的单一方法......

有人会说:“所以用程序化,性能更好”,不,我很清楚 OO 的好处,除了这件小事,
那么,我应该坚持单一范式还是混合它们?

0 投票
10 回答
2131 浏览

c# - 寻找用不同语言编写的示例程序

作为了解 OOP 和过程语言之间差异的一种方式,我一直在寻找用 C 和 C++ 或 C# 或 Java 编写的示例程序。我只是想看看解决同一问题的不同方法,以帮助我了解真正的差异。有谁知道我在哪里可以找到这样的教程?

0 投票
13 回答
9189 浏览

functional-programming - 副作用是好事吗?

我觉得这个词有点贬义。因此,我对维基百科中的两句话感到震惊:

命令式编程以使用副作用来使程序运行而闻名。反过来,函数式编程以其最小化副作用而闻名。[1]

由于我有点偏向数学,后者听起来很棒。副作用的论据是什么?它们是意味着失去控制还是接受不确定性?它们是好事吗?