另一个要练习的项目清单

“大师比新手犯更多的错误-尝试”

以前的培训项目列表获得5万个阅读量和600个最爱。 对于需要补充的人,这是另一个有趣的实践项目列表。

1.文字编辑器


图片

文本编辑器的目标是减少用户尝试将其格式转换为有效HTML标记的工作。 一个好的文本编辑器允许用户以不同的方式设置文本格式。

在某些时候,每个人都使用文本编辑器。 那么,为什么不自己创建它呢?

2.克隆Reddit


图片

Reddit是一个社交新闻聚合,Web内容排名和讨论站点。

Reddit-占用了我的大部分时间,但我继续坚持下去。 创建Reddit克隆是学习编程的有效方法(查看Reddit时)。

Reddit为您提供了非常丰富的API 。 不要错过任何功能或做错任何事情。 在有客户和客户的现实世界中,您将无法随意工作,否则您将很快失去工作。

精明的客户会立即认为工作做得不好,会找到其他人。

图片

Reddit API

3.发布开源NPM软件包


图片

如果您使用Javascript编写代码,则很可能正在使用程序包管理器。 包管理器允许您重用其他人编写和发布的现有代码。

了解完整的软件包开发周期将提供很好的经验。 发布代码时,您需要了解很多事情。 您需要考虑安全性,语义版本控制,可伸缩性,命名约定和维护。

包装可以是任何东西。 如果您不知道,请创建自己的Lodash并发布。

图片

Lodash: lodash.com

在互联网上做某事会使您比其他人高10%。 这是有关开源和软件包的一些有用资源

4.课程freeCodeCamp


图片

FCC课程

freeCodecamp 编写了非常全面的编程课程

freeCodeCamp是一个非营利组织。 它由一个交互式教育网络平台,一个在线社区论坛,聊天室,中型出版物和地方组织组成,旨在使所有人都能学习网络。

图片

如果您设法完成整个课程,那么您将胜任第一份工作。

5.从头开始创建HTTP服务器


HTTP协议是内容在Internet上传输的主要协议之一。 HTTP服务器用于提供静态内容,例如HTML,CSS和JS。

能够从头开始实现HTTP协议将扩展您对一切交互方式的了解。

例如,如果使用NodeJ,则知道Express提供了HTTP服务器。

作为参考,请查看是否可以:

  • 在不使用任何库的情况下配置服务器
  • 服务器必须提供HTML,CSS和JS内容。
  • 从头开始实现路由器
  • 跟踪更改并更新服务器

如果您不知道为什么,请使用Go lang并尝试从头开始创建Caddy HTTP服务器。

图片

6.桌面应用笔记


图片

我们都做笔记吧?

让我们创建一个笔记应用程序。 应用程序需要保存注释并将其与数据库同步。 使用Electron,Swift或其他您喜欢且适合您的系统的程序构建本机应用程序。

随意将其与第一个挑战(文本编辑器)结合起来。

另外,请尝试将桌面版本与网络版本同步。

7.播客(播客克隆)


图片

谁不听播客?

创建具有以下功能的Web应用程序:

  • 创建一个帐号
  • 播客搜索
  • 评价和订阅播客
  • 停止并播放,更改速度,向前和向后运行30秒。

尝试使用iTunes API作为起点。 如果您知道其他资源,请在评论中写。

图片

affiliate.itunes.apple.com/resources/documentation/itunes-store-web-service-search-api

8.屏幕截图


图片

你好 我现在要摘下屏幕!

创建一个桌面或Web应用程序,使您可以捕获屏幕并将剪辑另存为.gif

以下是有关如何实现此目标的一些建议



该翻译得到EDISON Software的支持, EDISON Software是一家专业为大型客户使用PHP开发应用程序和站点的公司,以及以Java开发云服务和移动应用程序的公司

Source: https://habr.com/ru/post/zh-CN430126/


All Articles