值得关注的开源软件推荐

作者/分享人:龙辉
向 Ta 提问
我是Allen,灰狐创始人,连续创业者。爱好广泛,喜欢自由开放、电音电竞、书籍电影等。接触开源已有17年的时间,协作开发了10多个开源项目,在工作中也大量使用开源软件,一直学习研究开源项目,并把它们整理到灰狐百科 https://github.com/huihoo/wiki 灰狐,一个开放式组织,提供开源软件解决方案和咨询服务,微信号:huihoo 欢迎添加。

本场 Chat 我们来一起了解、学习一些常见的开源软件。

在这里我们把你可能用到的开源软件分成 4 大类 15 个小类 45 个软件去有层次的了解和学习。这些被选的开源软件都经过广泛应用、有用户群和稳定的更新频率,它们可能不是最流行的,但具有一定的代表性,提供给大家学习参考。

  • 应用类:框架、企业应用、编辑器
  • 数据类:数据科学、大数据、机器学习、汽车机器人
  • 服务类:云计算、数据库、消息队列、服务器
  • 系统类:操作系统、编译器、虚拟机、编程语言

我们知道在众多开源软件中选择本身就极具挑战,因为涉及广泛的比较和排除,也因为不同场景不同应用对开源软件的需求是不一样的。这里的简单分类只是一个参考,希望它能起到一个抛砖引玉和触类旁通的作用,大家可在这个基础上进行修正和延展。若有不妥和错误,还请指正和谅解。

实录提要:

  • 小企业的架构受限于技术人员已掌握了什么,怎么选一个容易兼容扩展的框架?
  • 有哪些能提高开发效率的软件,如何通过开源软件提高开发效率?
  • 学习开源软件的时候,什么时候应该阅读源码?阅读源码的方法是什么?
  • 如何根据自身需要快速辨别一个开源软件是否适合自己?
  • 开源软件有很多,需要对每个开源软件都要了解吗?了解到什么程度?
  • 怎么开启开源软件源码学习,在没有文档的情况下,又怎么了解开源软件架构?
  • 对于大的开源项目,如何学习和参与?
已有749人预订
预订达标
文章出炉
交流日期
     
17.10.29
17.11.08
17.11.14 20:30
查看文章评论/提问
剁椒芋头
不错
谢工
感谢作者的精彩分享!
林玲
看了好久,内容很详细。已经收藏了,可以随时拿出来参考!
陈钧桐
刚毕业的新手一枚,想从向开源提 PR 贡献开始,通过改进,最终衍生出自己的版本(协议授权的情况下),从实用的角度看,请问哪些项目比较容易入手改进,又从什么方向去改进好呢?最理想的状况是比如修 bug ,一些源代码里面有得参考,或者加新功能,能从类似的项目得到启发,应该怎样去寻找这样的方向呢?
龙辉: 这个问题在Chat交流多个问题中有涉及和回答,请阅读Chat实录,更多交流,我们在读者圈互动,谢谢。
楼上的爸爸
已看晕。。。希望在chat中请教下,小企业的架构受限于技术人员已掌握了什么,怎么选一个容易兼容扩展的框架。非常感谢。
张精神
很棒的内容,觉得自己就是井底之蛙。。。。谢谢作者!
武器大师一个挑俩
作者很实在,很详细,收藏了慢慢研究~
All is well~
我交了钱,进不了群,你们应该要看下吧?
天怡: 六点多的时候,公众号又发了进群通知,您按照那个操作也进不了群?
Alpha
开源软件有很多,您对每个开源软件都会了解吗?了解到什么程度,而且开源会跨语言,跨平台,请问您如何学习,解决,应对?
龙辉: 这个问题在Chat交流中已回答,请阅读Chat实录,谢谢。
开源软件遵循开放包容的理念,怎样在开源共享中保护自己的成果?老师怎样看待开源潮流?
龙辉: 开源已成主流,若是企业,在开源软件中可采用双许可证,也是我们常看到的开源软件以社区版和企业版发行的方式。另外许可证的选择也很重要,许可证基本考虑:Apache、MIT、BSD、GPL/LGPL等,这几个许可协议应用非常广泛,大家更容易接受和采纳。
秦人
您的range很广泛呐,向您致敬!受教了!
你可能还喜欢
使用 Mpvue 开发微信小程序的最佳实践
美团点评技术团队
Java 优化方案:设计模式
Array老师
普通程序员如何快速提升自己
王俊生
使用 Python 全栈打造淘宝客微信机器人
州的先生
Java 高级特性: Lambda 表达式
游客
大厂面试官亲述:0~3年移动研发工程师必备技能
richardcao
微信扫描登录