开始使用视频共享网站

时间:2011-05-09 01:32:42

标签: video

我是CS学生,我在应用软件(java / c ++)方面有很多经验,但在网络开发方面却很少。所以,我决定建立一种视频共享网站(为了体验和乐趣)。

知道,你有建议学习的资源(网络文章,书籍......)吗?我知道标记的东西(html / css),但真的不知道很多php,javascript,(ruby / python / etc?)。另外,对于我正在尝试的任务,哪种语言最适合?我有兴趣自己开发视频播放器,除非这对任务来说太难了。谢谢!

3 个答案:

答案 0 :(得分:1)

你说你知道标记,而且你知道app dev,所以我对你想要学到的东西感到有些困惑。当你说视频播放器时,它的哪一部分意味着什么?自定义flash,html5,silverlight播放器?

我的建议

简化您的前端

为了您的目的,将您的要求简化为可消化的帆船。

对于初学者来说,暂时忘掉视频播放。首先建立一个只分享视频文件链接的网站。

通过这样做,您将必须构建一个支持多个用户的持久数据的后端,并构建一个datadriven的站点(即您的视频链接列表)。

核心逻辑或您的网站不需要知道它是一个网站

您之前已经编写了应用程序。因此,开始为您的网站编写类,以完成大部分繁重的工作或存储和检索视频文件。某些类的输入可能是视频文件内存流或字节数组,输出可能是物理文件路径。

你已经上课了,在它上面放下前端

这就是一个网站,一个前端。您的所有前端都会接受网址,使用核心类来执行网址要求的任何操作,然后返回一些HTML。就是这样。

什么语言/框架?

当你来自OO背景时,我建议使用.NET。那里有十亿资源,它是静态类型的(我个人喜欢),框架为你做了很多网页。

如果您不喜欢M $,可以尝试Mono,它是.NET的开源实现,否则当您完成Java时,我会寻找Java Web框架。

请记住,您的核心代码可以是常规Java库。您的Java Web框架代码只是使用您的库来重试数据,然后使用该数据将html推送回浏览。该框架将处理所有url web东西....所以基本上所有会发生的是一个url只会在你的控制器中调用某个方法。

MVC。学习它。

如果您不确定Controller的含义...查找并学习MVC模式。它不是Web上下文所独有的,但非常有用,更好的框架实现了模式。

实际的视频播放器

一旦你建立了你的网站并分享了实际视频文件的链接......那么这只是改变你的观点的一种情况(参见MVC模式)。请记住,播放器毕竟只是一个前端元素。

答案 1 :(得分:0)

你最熟悉哪种语言?这是发展方面最重要的因素,因为很难用新语言进行开发。我使用Python + PyQt4进行编码,但我甚至无法使用Qt4 + C++制作基本的“Hello World”

我提倡使用Python和众多Web框架之一(Flask,Django,Web.py等),因为语法非常易读且易于修改。

以下是我的图书馆管理网站的一大段代码示例,使用Flask作为Web框架和使用SQLAlchemy进行数据库集成的Python编写:

@app.route('/view/<book_id>')
def view_book(book_id):
  book = Book.query.filter_by(id = book_id).first()

  Book.query.filter_by(id = book_id).update({'views': book.views + 1})
  db.session.commit()

  return render_template('view.html', book = book)

但这只是我个人的偏好。我可以想象Ruby on Rails执行相同的任务,但PHP不在IMO中。它对于快速修改和快速开发来说太复杂和笨拙。

答案 2 :(得分:0)

如果你想走PHP路线并尽可能多地获得项目经验,那么你需要的只是php,一个数据存储引擎(任何支持的数据库客户端)和smarty。视频播放器是客户端脚本,或者您可以选择HTML 5 <video>标记。如果您想对视频执行某些操作或检查文件标题,我建议您使用ffmpeg