借助开源项目，学习软件开发