有项目经验的人进来指导一下。只要有一点就行了。

chaoplusplus 2012-05-05 09:47:24
先说一下我们的基本情况,我们都是大二的。只学了C和数据结构,无任何开发经验。
大家一致认为我是编程能力最强的(ps:我写的单个程序的代码从没超过一千行。最多的一次几百行),现在知道我们什么水平了吧。

然后我是技术队长,鸭梨好大。不知怎么下手了。

我们申请了一个国创项目,时间一年。提交的作品要在校园网内演示。

我们要做的东西,是一个C/S结构的东东。客户端采集视频,实时传输到服务器。
客户端可以是PC,智能手机等各种终端设备。摄像头一边录视频,压缩,加密-》服务器。

传到服务器后,以后还必须能让用户查看。

以后做好后还要加个B/S结构。(网页开发,概念都没有,鸭梨又大了)

大概就这么多。

估计就是视频的采集、压缩、传输麻烦点。。。因为带宽有限,必须有比较好的压缩算法。。。。。


现在我面临的问题是,不知道怎么组织我们三个没有基础的人做这件事。
我问他们写的单个程序的代码超过两百行没,他们想了一下说 学数据结构的时候有。。我晕数据结构的代码很多时类似的函数堆积在一个文件里,超过两百行也说明不了什么。。。

他们两写程序时,只用了IDE上3个按钮 :编译 运行 编译并运行
我多用了一个调试,也没搞懂怎么用。


我们要学哪些呢?

重要的是我要怎样组织我们三个菜鸟做这事。。。
我们要怎么沟通。。

说说你们接手一个项目后,你们成员之间是怎么沟通的呢?


还有一个问题。这个用C+windows sdk可以不?C++挺难的,我实在没信心在这一年内我们都学会C++并把它用到项目中去。

服务器端先不管了。
...全文
309 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
chaoplusplus 2012-05-07
  • 打赏
  • 举报
回复
谢谢大家的回答 明天 不今天(过半夜12点了)下午我们去老校区见导师 看导师怎么说
可能和导师沟通一下会好点

导师是教授哦
chaoplusplus 2012-05-07
  • 打赏
  • 举报
回复
一个国创项目只能有3个人啊!
[Quote=引用 18 楼 的回复:]
引用 12 楼 的回复:

良师,益友,明灯啊!就是需要这样的指点。。

另外说一下我们团队只有3个人。

另外软件配置系统、错误跟踪系统 ,这些主流的软件是免费的吗?
引用 11 楼 的回复:
一、技术要点:
说实话,这个项目的确不简单的,不要说你是学生,就是有多年经验的如果没有接触到类似的项目,也是需要费一番功夫。这个项目又以下几个技术要点:
1. 视频录制及编码压缩。这个……
[/Quote]
chaoplusplus 2012-05-07
  • 打赏
  • 举报
回复
谢谢大家回复,昨天和一个编程比较牛x的学长讨论了一下,决定先做端到端的。

然后我们今天去和老师讨论了一下。老师的意见是,不要先只做端到端。我们先要把所有实施方案都写好,然后去实现。然后分工。。
先把整个地图画出来。然后去实现。。。而学长和我们操作系统的老师的意见是我们先慢慢做,先不画出所有地图,因为我们还不知道怎么做所有的东西。
c_losed 2012-05-07
  • 打赏
  • 举报
回复

lz精神可嘉
支持一下
pj220 2012-05-07
  • 打赏
  • 举报
回复
花点钱在网上找人做吧,然后自己花几个月时间把代码看懂,我觉得这个方案最靠谱
jiamianyanshen 2012-05-07
  • 打赏
  • 举报
回复
好强啊
majia2011 2012-05-07
  • 打赏
  • 举报
回复
如果写个演示程序,都是理想状态,学生还是能做出来的。lz加油
quwei197874 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 的回复:]
引用 13 楼 的回复:

楼主什么大学的,楼主的水平在我们学校也就是大一的水准。。。


这位兄弟有点大言炎炎了吧?不管在世界上那所大学,3个人如果一年内能做好这个项目,都是相当不错的了。学校里面教的东西都是一些基础的、理论性的东西,楼主他们有这样的机会锻炼自己,强迫自己去搜集资料、学习一些课堂上学不到的东西,是非常难得的,应该鼓励才对。
[/Quote]++
sdh004 2012-05-07
  • 打赏
  • 举报
回复
支持在项目中学习编程,顶
cdsnfresh 2012-05-07
  • 打赏
  • 举报
回复
我记得我们学校的一个比赛的时候见到过这个项目,他们三个人,用android开发的手机采集视频然后传送到服务器,他们貌似也在几个月之内做出来的,哦,那些学长当时也大二,刚学完数据结构啊啥的
liuwons 2012-05-06
  • 打赏
  • 举报
回复
用C或C++的话,gnu工具集很不错的,再加上个cvs版本控制
modyaj 2012-05-06
  • 打赏
  • 举报
回复
各种开会各种讲解
lionmanong 2012-05-06
  • 打赏
  • 举报
回复
11楼的讲解很好
这个项目确实复杂,工作量大,建议先尽量简化需求,别把目标定得太大,比如支持Android的特定版本和手机,先砍掉B/S的部分,专心分析C/S该怎么架构,确定下来用什么语言,平台,工具去开发
包括楼主一共是三个人吗?感觉人手有可能不够
qq45000 2012-05-06
  • 打赏
  • 举报
回复
这些东西我们也是大一学的。。。
chaoplusplus 2012-05-06
  • 打赏
  • 举报
回复
你们大一就学完C和数据结构了?我们大二学的数据结构
[Quote=引用 13 楼 的回复:]
楼主什么大学的,楼主的水平在我们学校也就是大一的水准。。。
[/Quote]
「已注销」 2012-05-06
  • 打赏
  • 举报
回复
楼主什么大学的,楼主的水平在我们学校也就是大一的水准。。。
chaoplusplus 2012-05-06
  • 打赏
  • 举报
回复
良师,益友,明灯啊!就是需要这样的指点。。

另外说一下我们团队只有3个人。

另外软件配置系统、错误跟踪系统 ,这些主流的软件是免费的吗?
[Quote=引用 11 楼 的回复:]
一、技术要点:
说实话,这个项目的确不简单的,不要说你是学生,就是有多年经验的如果没有接触到类似的项目,也是需要费一番功夫。这个项目又以下几个技术要点:
1. 视频录制及编码压缩。这个可以使用ffmpeg这个库来处理,支持几乎所有流行的视频编码格式
2. 视频传输。这个可以使用rtp之类的协议来处理,也有开源的库,如jrtplib(用C++写的库,不是java库,别看它前面有个j)
3. ……
[/Quote]
pathuang68 2012-05-06
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

良师,益友,明灯啊!就是需要这样的指点。。

另外说一下我们团队只有3个人。

另外软件配置系统、错误跟踪系统 ,这些主流的软件是免费的吗?
引用 11 楼 的回复:
一、技术要点:
说实话,这个项目的确不简单的,不要说你是学生,就是有多年经验的如果没有接触到类似的项目,也是需要费一番功夫。这个项目又以下几个技术要点:
1. 视频录制及编码压缩。这个可以使用ffmpeg这个库……
[/Quote]

1. 在11楼讲的所有的东西都是开源的、免费的。
2. 3个人的确有点少,建议有6个人,分成3个组,每组两人,这样感觉会comfortable一点。
pathuang68 2012-05-06
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]

楼主什么大学的,楼主的水平在我们学校也就是大一的水准。。。
[/Quote]

这位兄弟有点大言炎炎了吧?不管在世界上那所大学,3个人如果一年内能做好这个项目,都是相当不错的了。学校里面教的东西都是一些基础的、理论性的东西,楼主他们有这样的机会锻炼自己,强迫自己去搜集资料、学习一些课堂上学不到的东西,是非常难得的,应该鼓励才对。
pathuang68 2012-05-06
  • 打赏
  • 举报
回复
一、技术要点:
说实话,这个项目的确不简单的,不要说你是学生,就是有多年经验的如果没有接触到类似的项目,也是需要费一番功夫。这个项目又以下几个技术要点:
1. 视频录制及编码压缩。这个可以使用ffmpeg这个库来处理,支持几乎所有流行的视频编码格式
2. 视频传输。这个可以使用rtp之类的协议来处理,也有开源的库,如jrtplib(用C++写的库,不是java库,别看它前面有个j)
3. 客户端支持,包括PC和智能手机。PC比较好说,你们仍然可以使用jrtplib接收视频,用ffmpeg解码;只能手机由于五花八门的操作系统,比如Windows phone, Android, iOS,BB...,这个工作量就相当大了,所以,建议你们在这个项目,只支持一种只能手机操作系统就OK了,比如最流行的Android,在Android上可以用ffmpeg的Java封装(xuggler,如果没有记错的话)进行解码,接收视频数据的话,可以自己用JNI封装一个java版本的jrtplib(现成的或许有,不过以前做类似的项目的时候,没有发现)
4. 网页支持。这个不是问题,只要你们完成了前面3项工作,这一步是小菜了。因为一般网络播放器都支持RTP之类的协议,所以这点根本用不着担心。
5. 系统架构建议:
客户端:视频采集终端,比如PC(数据产生客户端,如何实现见1,2)
视频接收终端,比如PC、智能手机等(数据消费客户端,如何实现见3)
服务器:视频的接收和转发。这个用jrtplib就可以实现了。

应该可以看到事情的确是不简单的,不知道你们team有多少人,一定要合理分配人马(分组),花3个月到6个月的时间攻下上面的1、2、3,有了这个基础,后面就是比较平坦的道路了,再花一些时间应该是可以完成任务的。

二、关于组员之间的沟通,你们现在做到下面三点就可以了:
1. 定时开会。比如周一晚上开会,沟通的内容包括但不限于:
系统需求分析、
技术路线的确定(比如开发语言、操作系统平台选择)和软件架构设计(模块划分...)、
开发环境建立、
各组的目标是什么,目前离目标的距离还有多远,有何障碍,如何克服...(任务分派和进度)
作为项目负责人,你必须非常清楚,这个项目的目标是啥,尤其是上面的前两项!
2. 事件驱动。在工作过程中,如果某组员碰到问题,可以邀请大家一起讨论解决,或给出解决方案。
3. 要学会庆祝。当有比较重大的突破的时候,大家要在一起庆祝一下,庆祝的方式不用教了吧:)。这是一种放松,同时也是凝聚团队很好的方式,让大家有荣誉感。

当然沟通方式还有很多,比如code review(peer review,就是组员之间相互看看别人的代码,这个估计你们会部分自动地会去做),比如建立软件配置系统(Software Configuration System)可以进行版本控制(可以用SVN),比如建立错误跟踪系统(可以用bugzilla之类的东东)...这些也部分地属于沟通的范畴。

总之,如果你们切实地做完了这个项目,一定会感到有很大的收获。

最后,哥祝你们顺利哈!
加载更多回复(8)

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧