gpt4 book ai didi

search - 部分研究框架/库的有效策略

转载 作者:行者123 更新时间:2023-12-04 14:21:27 25 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。




9年前关闭。




我记得研究新框架的旧有效方法。 MFC 说,这始终是阅读一本关于该主题的好书的最佳方式。当我试图跳过大量 Material 以加快编码速度时,后来发现先阅读整本书会更快。没有好的方法来研究一个小部分的框架。或者至少我当时没有看到他们。

过去几年发生了很多新事物:谷歌搜索结果的改进、博客编程、更多人参与互联网讨论、大量开源框架。

现在,当我们编写软件时,我们经常依赖第三方(通常是开源)框架/库。很多时候,我们只需要知道它们的一小部分功能就可以使用它们。它只是找到使用库的一小部分的最简单方法,而无需不必要的悲观。

您如何尽可能少地研究框架并仍然有效地使用它?

例如,假设您需要用 Lucene 索引一组文档。 .而且您需要突出显示搜索片段。如果您深入研究 Lucene,您不会关心词干分析器、将索引存储在一个文件中而不是多个文件、模糊查询和许多其他会占据您大脑的东西。

那么你有什么策略、方法和技巧来节省你的时间呢?

我会列举我会做什么,虽然我觉得我的过程可以改进。

  • 搜索“lucene教程”、“lucene高亮示例”等。尝试根据发布日期、评论数量和评论语气来估计非官方文章(博客文章)的信任度。如果没有明确的答案 - 收集目标上的新搜索关键字和链接。
  • 在官网搜索真正的快速教程/新手指南
  • 估计 javadocs 对新手的值(value)。 (阅读 Lucene highlight package summary)
  • 搜索库附带的与您需要的相关的简单示例。 (学习“src/demo/org/apache/lucene/demo”)
  • 在 Lucene 邮件列表中询问“简单的 Lucene 搜索突出显示示例”。如果你问了一个愚蠢的问题,你可能得不到答案,甚至会受到坏名声。而且往往你不知道你的提问是不是很傻,因为你没有深入研究过框架。
  • 在 Stackoverflow 或其他 QA 服务上询问它“你能给我一个在 Lucene 中突出显示搜索关键字的工作示例”。然而,这个问题非常具体,可能得不到答案或得分不好。
  • 估计如果框架代码是开源的,那么从框架代码中获得答案的难易程度。

  • 你的学习/搜索路线是什么?如果可能,请按优先顺序编写它们。

    最佳答案

    我使用三阶段技术来评估 API。

    1) 发现——在这个阶段,我使用尽可能多的不同搜索短语组合搜索 StackOverflow、CodeProject、Google 和新闻组,并将可能适合我需要的所有内容添加到一个巨大的列表中。

    2) 过滤/排序——对于我在收集阶段找到的每个项目,我都会尝试找出它是否适合我的需要。为此,我直接进入 API 文档并确保它具有我需要的所有功能。其结果进入加权列表,最佳解决方案位于顶部,所有杂项都被过滤掉。

    3) 原型(prototype)——我选择了前几个竞争者,并尝试做一个小的实现来触及所有重要的特性。最适合这里的项目的就是赢。如果由于某种原因,在实现过程中出现了最佳选择,则可以求助于其他实现。

    当然,为项目选择最佳 API 有很多因素。一些重要的:

  • 这将增加我的分布规模多少?
  • API 与我现有代码风格的契合度如何?
  • 它是否有高质量/任何文档?
  • 是不是很多人都在用?
  • 社区有多活跃?
  • 开发团队有多活跃?
  • 开发团队对错误补丁请求的响应速度如何?
  • 开发团队会接受我的补丁吗?
  • 我可以扩展它以满足我的需要吗?
  • 整体实现的成本有多高?

  • ...当然还有更多。这一切都非常依赖于项目。

    至于节省时间,我想说在这里试图节省太多只会回来咬你。选择一个好的库所花费的时间至少与实现它所花费的时间一样重要。另外,考虑一下,在六个月后,您是愿意愉快地编码还是宁愿与仇外的开发团队争论 :)。现在多花几天时间对你的选择进行全面评估,以后可以省去很多痛苦。

    关于search - 部分研究框架/库的有效策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/683550/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com