热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

前端如何查看音频的长度_精通编程:自我挑战,解决一系列前端难题

全文共2457字,预计学习时长7分钟图源:unsplash你是否听过一万小时定律?它指的是,要想成为某方面的大师࿰

全文共2457字,预计学习时长7分钟

52ce32a0326b31b7443281e7f229f098.png

图源:unsplash

你是否听过一万小时定律?它指的是,要想成为某方面的大师,就必须要实践一万个小时。虽然并非适用于所有领域,但至少作为一名开发人员,最有效的成长方法之一就是投入尽可能多的时间。

从下面列表中选择一个项目并开始编码吧!使用哪种技术或工具并不重要,重要的是你亲手完成了一个项目。

Jira克隆

Jira是Atlassian开发的专利问题跟踪产品,提供bug跟踪和灵活的项目管理服务。产品名称源自Gojira,Gojira在日语中是哥斯拉的意思。

de553e927d651fdc8b103fc2beff853a.png

Jira | 图源:GitHub

构建Jira克隆,你将学到以下内容:

· 拖放(DND)API如何服务于浏览器:每个Jira板都有一个看板集合,在那里你可以根据任务的进度拖放任务。

· 如何安排用户角色和访问权限逻辑:每个看板都有相关的成员,成员可能具有不同的访问级别。例如,项目经理可能具有阅读、编写和编辑权限,而客户可能只有阅读权限。客户可以看到正在进行的工作和已经完成的工作,但是他们不能改变团队当前正在进行的工作。

· HTML和CSS:从语法层面构建应用设计风格是任何人都能拥有的实用技能。

使用Emoji的Discord聊天

当和朋友们一起外出或玩电子游戏时,Discord是一种有趣的联系方式,它专注于聊天频道中用户之间的文本、图像、视频和音频通信。每个Discord频道都有可供用户选择的表情符号,你的任务是构建包含表情符号的聊天部分。如果愿意,你可以建立整个Discord克隆。

c292327c9bae9a474eb9c243654c690b.png
19ef11e33ce05ff19d6b78e9b83050cb.png

构建Discord聊天克隆,你将学会:

· 如何将网络套接字应用于聊天。每个现代网络聊天应用程序都在以某种方式使用WebSockets。WebSocket是一种计算机通信协议,在一个TCP连接上提供全双工通信通道。简而言之,服务器和前端客户端是同步的。

· 如何使用Electron构建跨平台的桌面应用程序,当前版本的Discord就是通过Electron构建的。

Beatbox应用

Beatbox应用程序会根据你当前所按的键播放不同的声音,只用键盘就可以演奏一段曲子。

0c69558e8b98050d41df8669731fda2b.gif

图源:GitHub

构建Beatbox应用,你将学会:

· 为了激活声音,需要熟悉WebAudio API是如何工作的。

· 使用Javascript键盘。必须弄清楚按的是什么键,然后演奏正确的曲子。

Mozilla开发者文档:“Web Audio为控制Web上的音频提供了一个强大的多功能系统,允许开发人员选择音频源、向音频添加效果、创建音频可视化界面、应用空间效果(比如移动)等等。”

Spotify唱片区

你可以在Spotify上播放和上传歌曲。Spotify有一个版块,可以根据专辑浏览音乐和艺术家。下面是我最喜欢的专辑之一。

f66594618104d4f820ff0e13e51d96b8.png

金属乐队(1991)专辑

构建Spotify克隆,你将学会:

· 如何通过API获取数据,并为相关艺术家显示正确的专辑。幸运的是,Spotify有一个可以免费使用的API:https://developer.spotify.com/documentation/web-api/

· 可以将app构建为web或桌面应用程序。这两种应用程序都需要了解如何在页面上布局元素并对其进行适当的样式化处理。

亚马逊克隆

亚马逊刚成立的时候还只是一个卖书的小型电子商务网站,如今,它们已经是电子商务领域的巨人。

从零开始,慢慢来,为了学习要模仿它的每个特点。不要试图复制亚马逊的商业模式,而是以学习为目的尝试建立一个类似的网络体验。亚马逊的核心是一个大型数据库,在进行搜索时,它将从数据库中返回正确的条目。当然,亚马逊远不止这些,但这是一个非常简单的例子。

3185539f14adf61cca21278a42c622f5.png

亚马逊克隆:Github

构建亚马逊克隆,你将学会:

· 设置MySQL或者PostgreSQL,学会在数据库中存储条目。需要将条目存储在数据库中,然后再从中查询条目。

· 支持搜索功能。用户登录你的网站,搜索条目,你需要给出相应的内容。你要怎么做?

· HTML和CSS。每个网站都会使用的两种技术,不管是初学者的简单项目,还是非常复杂的网站比如Netflix或亚马逊,都会用到。

这是我在GitHub上找到的一个简单的亚马逊克隆:https://github.com/CleverProgrammers/react-challenge-amazon-clone?ref=HackerTabExtension

f9f8ae3e4cd0b8ed6ad8590e3d70caf9.png

Netflix克隆

Netflix是观看电视剧、电影和纪录片的热门选择,彻底改变了我们看电视的方式,能够在任何地方用任何设备观看。

a8b964168159139c7d51e2f86358e419.png

Netflix主页 | 图源:Netflix

构建Netflix克隆,你将学会:

· 使用HTML和CSS。

· 可选项:如何通过API搜索电影和电视剧。

· 音视频API:Netflix的核心是流媒体服务,每个流媒体服务在某种程度上都包含视频或音频。

推特克隆

推特是一个热门的讨论平台,从政治到音乐再到编程,上面有很多小众社区,许多人喜欢使用推特和粉丝互动。

d3224a394ba723607fc00f5a07ebe281.png

笔者的推特个人主页 | 图源:Twitter

构建推特克隆,你将学会:

· HTML和CSS用于与布局相关的部分。

· 在数据库中存储tweet:设置一个关系(MySQL)或一个非关系(MongoDB)数据库。

· 角色管理逻辑:每个用户都有一个档案,只有自己可以编辑,其他人可以查看。

希望你已经为下一个项目找到了灵感,开始行动吧!

92c0c839d400164c4f120504838befba.png

留言点赞关注

我们一起分享AI学习与发展的干货

如转载,请后台留言,遵守转载规范



推荐阅读
  • 深入探索Node.js新框架:Nest.js第六篇
    在本文中,我们将深入探讨Node.js的新框架Nest.js,并通过一个完整的示例来展示其强大功能。我们将使用多个装饰器创建一个基本控制器,该控制器提供了多种方法来访问和操作内部数据,涵盖了常见的CRUD操作。此外,我们还将详细介绍Nest.js的核心概念和最佳实践,帮助读者更好地理解和应用这一现代框架。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 知识图谱与图神经网络在金融科技中的应用探讨
    本文详细介绍了融慧金科AI Lab负责人张凯博士在2020爱分析·中国人工智能高峰论坛上的演讲,探讨了知识图谱与图神经网络模型如何在金融科技领域发挥重要作用。 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 深入理解Java SE 8新特性:Lambda表达式与函数式编程
    本文作为‘Java SE 8新特性概览’系列的一部分,将详细探讨Lambda表达式。通过多种示例,我们将展示Lambda表达式的不同应用场景,并解释编译器如何处理这些表达式。 ... [详细]
  • 流处理中的计数挑战与解决方案
    本文探讨了在流处理中进行计数的各种技术和挑战,并基于作者在2016年圣何塞举行的Hadoop World大会上的演讲进行了深入分析。文章不仅介绍了传统批处理和Lambda架构的局限性,还详细探讨了流处理架构的优势及其在现代大数据应用中的重要作用。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 小编给大家分享一下Vue3中如何提高开发效率,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获, ... [详细]
  • 实践指南:使用Express、Create React App与MongoDB搭建React开发环境
    本文详细介绍了如何利用Express、Create React App和MongoDB构建一个高效的React应用开发环境,旨在为开发者提供一套完整的解决方案,包括环境搭建、数据模拟及前后端交互。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 在CentOS 7上部署WebRTC网关Janus
    在CentOS 7上部署WebRTC网关Janus ... [详细]
author-avatar
mobiledu2502895753
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有