(原创)七夜在线音乐台开发 第二弹

上一篇我讲了一下七夜在线音乐平台的服务器与域名,也就是设施部分。今天我将大体上的设计思路,技术要点,和大家分享一下。

项目需求: 我的目标是设计一个在线音乐平台,大家可以随时点播自己喜欢的歌曲,支持多样化检索,并且根据个人喜好,进行推荐。同时用户可以自定义歌单,支持收藏等功能。提供移动端API接口,可以供app开发使用。

项目框架:我将通过一张图的形式,展示整体的设计方案。

整体框架基本上就是上图所示,接下来咱们根据图中的模块依次讲解所需要的技术要点。

UI界面模块,其实也就是咱们说的web前端开发,包括Html ,CSS,javaScript等技术,当然也是我最不喜欢做的一部分。

一个具有黑客情怀的人,只喜欢那黑黑的命令窗口。

由于咱们要做的是音乐平台,需要在网页上播放音乐,所以web前端无法缺少网页播放器,咱们这次选择的是jplayer播放器,为什么选择他呢?因为jplayer的兼容性是最佳的,连在IE6上都可以运行,大赞。。。。。。总体说来,要做好在线音乐平台的前端,html+CSS+javaScript+jplayer这些都是要会的,是不是已经有人感到头大了。。。

在之后的教程中,我会把这些都讲到的,大家放心。

移动端咱们之后再说,会用到android和IOS。本人只是玩过android。

接着说Web后台开发:

这次搭建web后台,使用的编程语言:python,运行环境:python 2.7.X,操作系统:Debian x64。

Web框架采用flask。采用flask有几点原因,1. 本人学过 2. 轻量级 3. 扩展插件丰富 4.容易为移动端提供api。

大家肯定想说这个框架没学过,你写完我能看得懂嘛???

当然 我会从零开始讲起如何使用flask 框架,然后一步一步的朝音乐平台搭建前进。但是前提你必须要有python基础,基础语法我是不会讲的,如果想学习python基础,百度一下廖雪峰教程。

再说一下数据库的事情,首先要明确一点歌曲本身是不能存在数据库的,因为数据太大,不方便提取,一般数据库存放的都是音乐的索引。这次使用的是mongodb数据库。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。为什么选择这个数据库呢? 1. 本人正在学习 2. 和python一起使用超强,我心中的最佳cp。 3.使用爬虫爬取数据时,存储起来最方便。

最后我要说一下音乐数据的问题:大家发现我没有把他加入框图中,我只是不想让大家把数据库中的数据和歌曲本身数据混淆了。首先说一下歌曲,我怎么获取? 上一篇我说过要使用网易的音乐源,但我不可能手动一首一首的下载,这样会累死,而且无法获取歌曲的详细信息。所以我要使用爬虫来下载歌曲和歌曲信息,并存储到数据库中。之前我写过一篇 爬取慕课网视频 的技术帖子,上面写了一个简单爬虫,大家可以学习一下。这次我使用成熟的爬虫框架 scrapy,方便扩展,方便开发。所以咱们还要讲解 scrapy框架。

说到这里,大家是不是感觉要疯了,我怎么要学这么多???要酷炫,就要付出。

说一下之后的规划,既然是从零开发在线音乐平台,那咱们就从零开始讲解所需的技术。web前端,flask框架,mongodb,scrapy,每一个都需要我们来蒸熟。。。。

由于本人参加了华为的比赛,虽然比赛已经开始1个多月,而我刚开始,还有10天结束。所以下次的分享可能会在10天之后,大家敬请期待。

今天的分享就到这里,如果大家觉得还可以呀,记得打赏呦,没钱租服务器了。

原文发布于微信公众号 - 七夜安全博客(qiye_safe)

原文发表时间:2016-04-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据和云计算技术

​大数据和云计算技术周报(第41期)

“大数据” 三个字其实是个marketing语言,从技术角度看,包含范围很广,计算、存储、网络都涉及,知识点广、学习难度高。

893
来自专栏ThoughtWorks

前端框架这么多,该何去何从?|洞见

作为一个软件开发者,最大的挑战就是在不断涌现的新技术中进行取舍,持续学习是从事这一行业的必备技能。在这个领域里,技术更新最快地又非前端莫属了。各种框架的出现、版...

3294
来自专栏程序员互动联盟

能够使用java开发出类似qq的聊天小程序达到了java学习的什么水平?

作为一个已经写了十几年代码的老司机,在写代码之余还会写点技术感受,或者分享一些编程心的,几年下来也积攒了几万粉丝,也有一些对于技术不是很懂的小伙伴,在交流过程中...

764
来自专栏PHP技术

PHP7的优缺点及从当前版本升级到PHP7都遇见了哪些坑

优点就是快,相比5.6有一倍的提升,也有很多方便的新特性,缺点是目前相关的扩展支持还不完善,很多扩展(非官方)坑不少,万一踩到由于内核变化,很多人调试起来可能不...

3856
来自专栏老九学堂

终极版全栈工程师学习路线图

全栈工程师因为丰厚的待遇与较好的发展前景,一直是互联网行业较为热捧的岗位,因此有很多做前端、后端的程序员想要向全栈工程师方向转! ? 如果小伙伴想成为一个全栈 ...

54810
来自专栏架构师之路

数据库软件架构设计些什么

缘起:受@萧田国 萧总邀请,上周五晚上在“高效运维1号群”内分享了《58同城数据库软件架构设计与实践》(这个topic今年在数据库大会上分享过),应组织方要求,...

34511
来自专栏不止思考

架构设计之「服务隔离」

那什么是「服务隔离」呢? 顾名思义,它是指将系统按照一定的原则划分为若干个服务模块,各个模块之间相对独立,无强依赖。当有故障发生时,能将问题和影响隔离在某个模块...

933
来自专栏JAVA高级架构

分布式架构--基本思想汇总

541
来自专栏phodal

我的职业是前端工程师【六】:前端程序员如何有效地提高自己

要成为一个优秀的前端工程师,需要什么技能和学习?答案:练习 在逛知乎、SegmentFault 又或者是相似的技术社区,我们总会看到类似的问题。新手总会关注于,...

1866
来自专栏存储

分布式架构—基本思想汇总

往期精选 在互联网大行其道的今天,各种分布式系统已经司空见惯。搜索引擎、电商网站、微博、微信、O2O平台。。凡是涉及到大规模用户、高并发访问的,无一不是分布式。...

19810

扫码关注云+社区