作为程序员,你可开发哪些有趣项目?
初次看到原文我是有一些震撼的,原来作为开发人员,闲暇时间还算可以做这么多有趣程序的开发。阅读时暂且抛弃你所使用的语言的限制,你是否也能够在“无聊”之时找到一个开发者的乐趣。
阅读以下内容时重点关注项目的创意性,并结合自己的独特经历进行拓展,你一定也能够找到编程的乐趣所在。很多项目都可以通过不同的技术栈来进行尝试。以下为原文内容:
正文
经过1000天的培训,你能够成为一位初学者。经过10000天的练习,你将成为一位大师。
这是出自Mas Oyama的话,对学习新事物做了很好的总结。成为出色的开发人员的秘诀在于肯下功夫。要想成为一名开发人员,你需要花大量的时间在键盘上,并且需要亲手实践。
下面有7个项目可以帮助你提高开发水平。选择自己的技术栈,随心所欲的写代码吧。
项目一:吃豆人
构建吃豆人是一个很好的可以从基础角度来了解游戏开发的途径。可以通过像React或Vue这样的JavaScript框架来实现。
通过该项目你可以学到:
- 实体的运动
- 检测按键是否被按下
- 碰撞检测
- 你可以通过给幽灵添加转向行来做更多的事情
GitHub示例地址:https://github.com/mbfassnacht/pacman-react
项目二:用户管理
开发一个基于用户管理的CRUD项目,可以教会你很多关于开发的基础知识。这对刚入门的开发人员特别有用。
通过该项目你可以学到:
- 路由(Routing)
- 处理表格和验证用户输入
- 与数据库交互-增删改查的操作
GitHub示例地址:https://github.com/indreklasn/laravel-5.4-crud-example
项目三:当地天气
如果你想开发APP应用程序,那么天气预报APP是一个完美的开始。该项目可以通过Swift来进行开发。
除了获得构建APP的经验外,还可以学习到:
- 应用程序与API的交互
- 使用地理位置
- 通过添加文本输入,用户可以输入位置以查看该位置的天气,从而可以动态交互。
可以通过OpenWeather API来获取天气数据。当然,根据具体的情况可使用其他API服务。
项目四:聊天框
建立聊天框是开始使用socket的理想方法。在选择技术栈时,可以有许多不同的选择。Node.js便是是其中之一。
该项目最大的收获是你可以学习socket如何工作以及如何实现它们。
项目五:GitLab CI
如果你不熟悉持续集成(CI),那么最好还是摆弄一下GitLab CI。设置多个环境,并尝试在管道中运行一些测试。这不是一个繁重的项目,但是相信你会学到很多东西。
如今,许多开发团队都在使用CI,是一个很好的工具。你会学到什么:
- 了解GitLab CI
- 配置一个.gitlab-ci.yml告诉GitLab运行程序该怎么做
- 部署到其他环境
项目六:网站分析器
制作一个用于分析网站语义并为它们创建排名的抓取工具。例如,你可以检查图像上是否缺少alt标签,检查页面上是否有SEO meta标签。你甚至可以在不创建UI的情况下实现抓取。
你将学到什么:
- 抓取的工作原理
- 创建DOM选择器
- 编写算法
- 通过创建UI、分析网站报告来增加额外的功能
项目七:挖掘社交媒体的情绪
挖掘社交媒体的情绪是学习机器学习的一种好方法。
你可以通过挖掘一个社交媒体平台开始,而Twitter是经典的切入点。
在机器学习方面经验丰富的开发人员可以尝试挖掘不同的社交媒体平台,而不是仅仅合并这些数据。
你将学到什么:
- 掌握机器学习
结论
这些项目应该可以使你忙上一阵子了。只需选择一个项目,然后做就可以了。期待看到你的项目成果,编码愉快!
---