开源软件

Sourcegraph:开发者的福音

众所周知,开源代码库向来都是程序员们的金矿,但是如何从中选择出合适的代码并且学会使用它们可是非常需要技巧的。来自 Stanford 的两名毕业生 Quinn Slack  和 Beyang Liu 开发的 Sourcegraph 给广大的程序员们带来了福音。它是一款非常有创新性的代码搜索引擎和代码浏览器,能够帮助用户更快地构建软件。

 Sourcegraph  是一款能够根据语义来把Web上的开源代码编入索引的代码搜索浏览工具。你可以从代码仓库和安装包甚至是函数里搜索代码,同时也可以直接点击被完全创建了链接的代码来阅读文档、跳转到变量定义或者马上找到可用的Demo。总而言之,你可以在你的web浏览器上完成这一切,而不需要配置任何编辑器。


这里在Sourcegraph中搜索docker的源码:将鼠标放在函数名上点击一下就会出现代码框,点击Go to definition即可跳转到函数定义的地方。非常方便。

QQ截图20150425193745

 

Quinn Slack 和 Beyang Liu 开发 Sourcegraph 的初衷和很多程序员遇到的困难一样,他们发现大量的时间都被浪费在阅读了缺乏文档的代码上,于是决定开发这一款工具来帮助程序员更好的阅读和理解代码。

你是代码仓库的作者吗?

如果你是某个开源项目或者代码仓库的作者,你最好让你的代码仓库可以支持Sourcegraph。这样就意味着Sourcegraph能够分析你的代码并且为它们建立索引,项目的贡献者和使用者就可以在Soucegraph上使用和浏览你的代码了。这些特性可以帮助你的用户节省大量可能会被花费在寻找和理解代码上的时间。

根据语义搜索项目、函数或者安装包

 Sourcegraph 采用语义分级来对函数建立索引,这意味着它使用和编译器一样的方法来解析和理解代码。正因为这种索引方式,才能支撑语义搜索和搜寻可用Demo这些特性。Sourcegraph 目前已经支持 Go ,Java 和 Python,同时对 JavaScript、Ruby 和 Haskell 的支持也正在紧锣密鼓地测试中。所以你现在可以试着搜索一些比较火热的项目比如 Docker the AWS Java SDK,  Kubernetes, redis-py,或者你自己的项目等等。

可以互动的代码片段

你可以在 Sourcegraph 的UI界面上快速高效地浏览开源代码库,但有时候想将代码从网页上分享出去。比如说你可能想要将某个代码块嵌入到个人的博客当中或者回答一个论坛的问题,就可以点击出一个代码块,然后点击上图的 Embed 按钮就会生成一段脚本,支持直接贴在博客中。下面是预览效果:

33

 

开源的核心代码


Sourcegraph的核心分析库是开源的,而且使用起来非常方便。它被称为srclib(发音是“Source Lib”)。强大的srclib 支撑着所有你在sourcegraph上看到的和语义分析相关的特性,同时也支持能跳转到函数定义和语义感知功能的编辑器插件。

来尝试一下它的功能吧,当然最好能告诉我们你的建议。你可以通过电邮或者推特(@srcgraph)和我们联系。我们开发Soucegraph希望它能解决程序员们日常阅读代码的痛苦,希望它能帮助到你,我们也非常希望能听到你们的建议和看法。

下面是原文链接:https://opensource.com/business/15/4/better-software-with-sourcegraph
译文地址: http://www.linuxstory.org/sourcegraph/

对这篇文章感觉如何?

太棒了
0
不错
0
爱死了
0
不太好
0
感觉很糟
0
JAVA+LINUX+DATABASE+逗B战斗机+我的女友好高冷

    You may also like

    1 Comment

    1. 王垠

    回复 NullSpace 取消回复

    您的电子邮箱地址不会被公开。 必填项已用 * 标注

    此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

    More in:开源软件

    开源软件

    在 Linux 终端中管理您的密码

    在信息时代,我们的所使用的密码只会越来越多,你是否遇到过密码太多而经常遗忘?所以应该如何高效地管理这些密码?本篇文章主要讲述了在我们拥有大量的密码时,在Linux终端下,使用 Pass 管理系统高效地管理密码,并为我们提供了详细的操作步骤,使我们更加快速熟悉地掌握如何使用 Pass,减少我们自己在以后的使用中的可能遇到的烦恼。
    开源软件

    用 Scribus 来进行排版吧!

    想不想制作一些亲手设计的小册子呢?来使用专业级的开源软件 Scribus 快捷排版吧!这款应用可以让你轻松地把创意落地成可打印的文档,无论在家、办公室还是专业的印刷厂都可以使用。在过程中也不会用到任何剪刀、胶水,完美契合不善动手的人。
    开源软件

    使用 pdftk-java 来编辑 PDF 吧!

    在用命令行处理大量 PDF 文件时,手动操作通常不是一个好的选择。这时候可以选择使用 pdftk-java 工具,配合上对应批量操作的 Makefile 文件,能让你事半功倍。
    开源软件

    来点更高雅的!用 Linux Sampler 演奏数字管弦乐

    一直以来,音乐合成器都在尝试模拟真实的乐器。然而在技术的发展中,合成音乐家们发现如果想真正地捕获到乐器的美感,只能去录制他们的声音,再通过技术合成手段来获得想要的音乐。如果你想要为自己的游戏或者其他应用来配上一段优美的音乐,聘请管弦乐队显然是非常昂贵的。但通过 Linux Sampler 这个开源程序,或者再加上一个 MIDI 键盘,也是可以实现一段成功的演奏的。