阅读更多

在推动技术变革上,开源运动发挥了非常显著的作用。而Linux成功地将开源转换成商务模式,给广大开源工作者带来了更大的信心和勇气。目前,开源已成为主流,在未来的几年内,它的足迹将会遍布前沿教育、航空航天(如无人驾驶飞机)等许多领域。

借鉴现有的开源项目或开源代码,对于初级开发者来说,不失为一种很好的编程手段,但千万不要单纯地“用”,更多地是理解与提升,这样才会进步。

下面为大家介绍6款源码搜索引擎,让你找到更适合你的源码。

1.Ohloh



 

Ohloh Code是最大且非常全面的源码搜索引擎,根据FOSS目录来看,其拥有超过10亿行代码且在不断更新,它不仅是免费的,而且还可以通过社区进行免费编辑。通过搜索可以索引到所有的文本文件,并且对43种编程语言都带有语法提示功能。此外,搜索语法非常灵活,可以为你查找到各种不同类型的类。搜索引擎目前不支持正则表达式。

2.Krugle 



 

Krugle是一个开源的搜索门户,基本上主流的开源代码都有收录,比如Apache、JavaDocs、SourceForge 等。你还可以搜索使用C++、Java、Perl、SQL、Ruby、XML、HTML等语言编写代码。Krugle还有一个非常高级的搜索功能,帮你快速定位到正确的API、库、示例代码或文档。在搜索结果页面,你可以直接浏览项目源码。

3.SearchCode 



 

SearchCode从Github、BitBucket、CodePlex、SourceForge、Fedora等代码仓库里筛选了近160亿行开源代码,代码和文档由一位单独的开发者维护。你可以使用文件扩展、特定代码库名字、URL、正则表达式、特殊字符等过滤器对源码进行过滤,以便搜到你想要的代码。具体示例和文档代码搜索支持,可以参照这个例子

4.NerdyData



 

NerdyData.com是一个可以搜索网页源代码中内容的搜索引擎,它已经拥有超过140万个Web代码索引,如果你是一名Web开发人员,你可以搜索到HTML标记、JavaScript代码或CSS样式代码段。NerdyData的目标不仅仅是做一个简单的源码搜索引擎,他们也在围绕Web开发流程来开发一系列功能

5.Symbol Hound



 

当涉及到搜索特殊符号时,谷歌和其他搜索引擎并不是最佳选择。例如谷歌,去掉了许多标点符号和特殊符号。如果你想搜索含有特殊字符的变量和错误代码,使用普通的搜索引擎可能不会返回你期望的结果。Symbol Hound的出现解决了这一问题。

6.Merobase



 

Merobase搜索引擎与其他不一样,它并不是用来搜索源码,而是帮你搜索和定位软件组件,可以搜索Java、C++、C#等语言编写的组件。Merobase还可以搜索基于查询的简单文本接口,你也可以搜索基于函数、面向对象、名称、测试驱动的查询,这也是它的一大亮点。

前人栽树,后人乘凉。看他人的代码并且学会使用也是一种很好的学习方法。随着开源事业的不断发展与壮大,你可以在这些搜索引擎上搜索到任何你想要的代码。(翻译:张红月/责编:王果)

via:makeuseof

  • 大小: 24.4 KB
  • 大小: 25.1 KB
  • 大小: 22.3 KB
  • 大小: 29.6 KB
  • 大小: 59.6 KB
  • 大小: 48.7 KB
来自: csdn
4
0
评论 共 4 条 请登录后发表评论
4 楼 agao1985 2013-08-14 10:33
我还以为是搜索引擎的源代码呢
3 楼 mozhenghua 2013-08-10 12:19
shichuyao 写道
居然没有github,你是在开玩笑吗?!

这个只是代码源,它属于上面几个搜索引擎的被搜索对象吧
2 楼 shichuyao 2013-08-08 16:05
居然没有github,你是在开玩笑吗?!
1 楼 xkorey 2013-08-08 14:10
google code 呢?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • SQL语句集锦

    --求工资最高的员工姓名 use pangu select e_name from employee where e_wage = (select max(e_wage)  from employee)   --STDEV() --STDEV()函数返回表达式中所有数据的标准差   --STDEVP() --STDEVP()...

  • 通用工资管理系统--SQL server课程设计(Java实现+SQL server)

    1.1开发环境数据库系统:Microsoft SQL Server 2019开发语言:JAVA数据库连接方式:JDBC连接...该系统支持并扩展了SQL语言标准,可以运用标准SQL语句对数据进行操作,也可以使用功能强大的GUI工具进行灵活的数据管理。

  • SQL语句练习题

    SQL语句强化练习题及答案 一、简单查询 1、列出全部学生的信息。 SELECT * FROM 学生 2、列出软件专业全部学生的学号及姓名。 SELECT 学号,姓名 FROM 学生 WHERE 专业="软件" 3、列出所有必修课的课号...

  • SQL语句大全

    SQL语句大全 --语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列-selectINSERT --向数据库表添加新数据行-insertDELETE --从数据库表中删除数据行-deleteUPDATE --更新数据库表...

  • SQL语句的强大综合集锦

    --求工资最高的员工姓名 use pangu select e_name from employee where e_wage = (select max(e_wage)  from employee)   --STDEV() --STDEV()函数返回表达式中所有数据的标准...

  • sql语句集锦

    SQL语句集锦 <br /> --语 句 功 能 --数据操作 SELECT  --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE  --从数据库表中删除数据行 ...

  • [分享]SQl语句学习专题

    SQL语句集锦--语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据--数据定义CREATE TABLE --创建一个...

  • SQl语句学习专题(转)

    晴天 发表于 2004-10-26 11:16:00 ...SQL语句集锦 --语 句功 能 --数据操作 SELECT--从数据库表中检索数据行和列 INSERT--向数据库表添加新数据行 DELETE--从数据库表中删除数据行 UPDATE...

  • [代码人生][分享]SQl语句学习专题

    SQL语句集锦 --语 句功 能--数据操作SELECT--从数据库表中检索数据行和列INSERT--向数据库表添加新数据行DELETE--从数据库表中删除数据行UPDATE--更新数据库表中的数据--数据定义CREATE TABLE--创建一个数据库表...

  • SQL试题

    1.一道SQL语句面试题,关于group by 表内容: 2005-05-09 胜 2005-05-09 胜 2005-05-09 负 2005-05-09 负 2005-05-10 胜 2005-05-10 负 2005-05-10 负 如果要生成下列结果, 该如何写sql语句?  胜 负 2005-05-09 2 2...

  • sql server

    sql server 作者:Sanle 来源:博客园 发布时间:2006-04-27 13:06 阅读:3402 次 原文链接 [收藏]  1.清空日志:DUMP TRANSACTION 库名 WITH NO_LOG  2.截断事务日志:BACKUP LOG 数据库名 WITH NO...

  • SQL语句集锦 [转]

    SQL语句集锦 --语 句功 能--数据操作SELECT--从数据库表中检索数据行和列INSERT--向数据库表添加新数据行DELETE--从数据库表中删除数据行UPDATE...

  • 面试中的SQL分析二

    1.用一条SQL语句 查询出每门课都大于80分的学生姓名 name kecheng fenshu 张三 语文 81 张三 数学 75 李四 语文 76 李四 数学 90 王五 语文 81 王五 数学 100 王五 英语 90 A: select distinct name from table ...

  • sql笔试

    1.用一条SQL语句查询出每门课都大于80分的学生姓名 name kecheng fenshu张三 语文 81张三 数学 75李四 语文 76李四 数学 90王五 语文 81王五 数学 100王五 英语 90 A: select distinct ...

  • 太阳能自动灌溉系统:基于SPWM技术的逆变正弦波设计与实现

    内容概要:本文详细介绍了太阳能自动灌溉系统的设计与实现,涵盖了多个关键技术点。首先,文章解释了太阳能自动灌溉系统的概念及其优势,如高效节水、环保等。接着,深入探讨了SPWM(正弦脉宽调制)技术,展示了如何通过调节脉冲宽度将直流电转换为正弦波形的交流电,这是逆变器工作的核心技术。随后,讨论了仿真的重要性,特别是使用MATLAB/Simulink进行系统行为和性能的模拟,确保设计方案的可行性。此外,还涉及了编程方面,通过Python和C语言实现了系统的控制逻辑,如根据土壤湿度控制灌溉。最后,介绍了DXP原理图在电路设计中的应用,强调了合理的电路布局和防护措施对于系统稳定性的关键作用。 适合人群:对太阳能技术和自动化控制系统感兴趣的工程师和技术爱好者,尤其是有一定电子电路和编程基础的人群。 使用场景及目标:适用于希望深入了解太阳能自动灌溉系统设计和实现的个人或团队,目标是掌握从能源获取、电力转换、系统模拟到代码控制以及电路设计的全流程,最终能够独立构建高效的太阳能自动灌溉系统。 其他说明:文中提供了大量实例代码和实践经验,帮助读者更好地理解和应用相关技术。同时,强调了实际操作中的注意事项,如

  • (源码)基于Vue.js的通用组件库.zip

    # 基于Vue.js的通用组件库 ## 项目简介 此项目是基于Vue.js构建的组件库,涵盖了Button、Form、FormItem、Input、Notice等多个可复用组件。它具备组件测试、文档生成、自定义主题、按需加载、组件数据通信等功能,并且通过Webpack完成打包,方便在各类Vue项目中使用。 ## 项目的主要特性和功能 1. 多种加载方式支持全局引入和按需加载,可根据项目需求灵活选择。 2. 文档生成利用VuePress工具生成组件文档,便于用户查看组件使用方法和样式。 3. 自定义主题能通过修改样式变量来自定义组件主题,满足不同项目的个性化需求。 4. 组件数据通信通过dispatch和broadcast方法实现组件间的数据通信,提升组件库的扩展性。 5. 独立打包样式文件和组件文件分别打包,可单独加载,减少代码量和加载时间。 ## 安装使用步骤 ### 准备工作 确保已经安装基本的Node.js和npm环境,以及Git。

  • (源码)基于Python的机器学习基础项目.zip

    # 基于Python的机器学习基础项目 ## 项目简介 本项目是一个基于Python的机器学习基础项目,涵盖了线性回归、逻辑回归、感知器算法(PLA)及其改进版(Pocket PLA)等机器学习算法的实现。项目通过不同算法处理不同数据集,并展示了这些算法在分类和回归问题上的应用。 ## 项目的主要特性和功能 线性回归实现了基于梯度下降法的线性回归算法,用于拟合数据并预测目标值。 逻辑回归提供了使用梯度下降法和随机梯度下降法的逻辑回归实现,用于分类任务。 感知器算法实现了基本的感知器学习算法(PLA)和Pocket PLA算法,用于线性分类问题。 数据加载与预处理提供了数据加载和预处理功能,支持不同格式的数据输入。 误差计算与性能评估提供了计算模型误差(误差率或准确率)的功能,用于评估模型性能。 ## 安装使用步骤 1. 环境准备确保已安装Python及其相关库(如NumPy、SciPy等)。

  • 幼儿园教师师德培训教学课件.pptx

    幼儿园教师师德培训教学课件

  • JavaWeb电商系统开发基础教程

    JavaWeb技术在当今的互联网开发中占据着重要的地位,尤其是在电商系统开发领域。通过JavaWeb,我们可以构建出功能强大、稳定可靠的电商网站。本教程将带你从零开始,逐步掌握JavaWeb电商系统开发的基础知识和技能。

  • LabVIEW开发的三支路测试设备软件与PLC程序:状态机架构与ModBUS通信设计

    内容概要:本文详细介绍了作者使用LabVIEW开发一台三支路并行测试设备的上位机软件及其PLC程序的经验。项目涉及多个关键技术点,如LabVIEW的图形化编程特性、状态机设计模式的应用、ModBUS TCP/IP通信协议的实现等。文中不仅解释了LabVIEW的基本操作和代码结构,还深入探讨了如何通过单状态机引擎和支路编号分流实现多支路独立控制的方法。此外,作者分享了一些实用的通信异常处理技巧和优化策略,如心跳包机制、数据采集与逻辑处理的交错执行等。 适合人群:具有一定LabVIEW基础的学习者和工程师,尤其是从事自动化测试设备开发的技术人员。 使用场景及目标:适用于需要开发复杂测试系统的工程师,帮助他们掌握如何在单线程环境中实现多支路独立控制,提高系统的稳定性和效率。目标是提供一种高效、可靠的开发思路和技术实现方法。 其他说明:文中提到的具体技术和实践经验对于中小型测试系统的开发具有较高的参考价值,特别是状态机设计和ModBUS通信部分的内容。

Global site tag (gtag.js) - Google Analytics