4

这是一个有点笼统的计算机问题。我一直能够遵循编程的逻辑,但是当我编写代码时,我总是发现我不知道某种方法来完成我需要完成的事情。当我看到它时,我总是想,“当然!”。

您如何为您的编程需求找到“内置”的相关方法?我不喜欢重新发明轮子,但我发现很难找到我需要做的事情来做我想做的事情。

4

8 回答 8

6

首先尝试谷歌:

您可以使用谷歌搜索您需要的方法。例如,如果我想,search a value in array in PHP我会去谷歌并输入“在 PHP 中的数组中搜索值”。我找到了我需要的功能

然后尝试标准文档:

尝试使用标准文档来搜索您需要的方法。例如,如果我的问题与 PHP 中的字符串有关,那么我会转到字符串函数文档并找到所需的函数。

最后尝试 Stackoverflow:

否则,您可以在 Stackoverflow 上询问您所需的方法和库。你总会得到一条最短的路。

于 2010-11-08T06:16:29.407 回答
4

您在这里要求的是进行研究的最佳方法。嗯,这是很难解释的技能,更不用说教了。

不过这里有一些提示:

  1. 去一个搜索引擎。从像 MSDN 这样的地方开始是没有意义的,因为它的所有内容无论如何都会被搜索引擎索引。用几种不同的方式表达你的问题。
  2. 随着您对该问题的了解更多,您将学习有关它的新词汇。使用新词汇进行更多搜索。
  3. 如果搜索结果为空,请切换到浏览官方文档中您认为与您正在做的事情最相关的特定部分。如果不出意外,它将扩大您对该问题的视野,并为您提供更多词汇来进行更多搜索。
  4. 最后,如果所有其他方法都失败了,请在 StackOverflow 上提问,尽可能清楚地解释您想要做什么。

请注意,如果有一个简单的 API 可以满足您的需求,那么您很少会到达第 4 步。

于 2010-11-08T06:46:08.947 回答
3

你说:

在中途突然发现一个“简单”按钮是非常令人沮丧的。

尝试以不同的方式看待它。将这些时刻视为祝福。你刚刚学到了一些东西。你投入了很多努力——与其认为这些努力是浪费的,不如将其视为正确学习的关键。你 - 比刚刚遇到魔法方法的人更好 - 真正了解它的用途以及它的工作原理。你真的,真的,明白你为什么需要它,你正确地欣赏它的价值。你永远不会忘记那个方法。

所以这是昂贵的,但你学到了一些重要的东西。庆祝,然后继续前进。

于 2010-11-22T19:08:43.817 回答
2

它通常包含在某种形式的文档中。大多数 IDE 支持文档格式并为您提供自动完成功能。

于 2010-11-08T06:13:09.733 回答
2

在 API 文档中搜索。但是(我发现)最好的方法是在互联网上搜索多种解决方案,然后选择您认为最好的一个。尽可能缩小搜索范围。例如你想实现随机数生成功能,然后像这样搜索,“如何在Java中生成随机数?”。

于 2010-11-08T06:15:33.630 回答
1

除了上面的这个这个答案之外,谷歌的基本高级搜索技巧证明非常有用。

除了上述之外,更改搜索条件中关键字的顺序也会使列表以不同的顺序排序。

从本质上讲,我相信搜索仍然是一门艺术而不是一门科学,并且最好学习 - 引用 David Reis 上面的回答:“2。当你对这个问题了解更多时,你会学到关于它的新词汇。使用新词汇做更多的搜索。”

于 2010-11-08T09:52:58.597 回答
1

如果您使用的是 MVS,那么MSDN非常适合它

于 2010-11-08T06:09:29.610 回答
0

命名空间、命名约定、自动完成/智能

我假设您正在尝试找到某种 Object-Oriented-apis 。我在我的示例中使用 .net。

首先尝试找到一个可能对您正在寻找的方法负责的类。

示例:如果您想“在文件系统中创建新目录”,您必须知道(或了解)(在 dotnet 中)这些类位于命名空间 System.IO 中:

此命名空间包含子命名空间(如 Compresseion)和类(如文件、路径、目录、...

其次,您应该知道 NamingConventions。Get、Set、Insert、Create 等方法有常见的命名前缀。在类目录的文档中,您将找到一个 CreateDirectory 方法。

如果您有一个了解您的编程语言以及类和命名空间的智能编辑器,那么学习会容易得多。在 dotnet 世界中,此功能称为自动完成/智能

于 2010-12-24T09:11:01.387 回答