QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7862|回复: 62

开展一个linux编程开发的培训

[复制链接]
发表于 2005-1-5 14:36:22 | 显示全部楼层 |阅读模式
我与bamfox准备组织一次linux编程开发的培训,这是一次入门级的培训,详情请看
http://www.donews.net/chicken/

大家多提意见,热烈欢迎各位想进行linux开发的fans参加,大家一起学习,进步!
同时希望有linux编程开发经验的fans能给我们提供技术支持.
再一次的谢谢大家
:D
发表于 2005-1-5 15:13:51 | 显示全部楼层
Chicken Learning Plan (CLP)
[code:1]1. 背景
    大多数 Linux 爱好者并不是出身于计算机系专业,但是,都渴望自己能够自由的飞翔于 Linux 的世界里,而面对纷杂的源代码,却感到坐在金山上却找不到金子。问题出在那里呢?因为,大多数人可能需要如下的知识:C/C++ 程序设计、软件工程以及网络协同开发软件的经验。这些唯有坚持不懈的学习,从点点滴滴做起,努力积累才能达到。
   

2. 目的
    通过完成小鸡计划(CLP),达到掌握 Qt C++ 程序设计的目的,并初步的探索网络协同软件开发的模式。具体如下:
    #1. 初步掌握 kdevelop 开发环境的使用;
    #2. 初步掌握 PostgreSQL //为什么不用更流行的mysql
    #3. 熟悉 KDE/Qt C++ 编程;
    #4. 软件工程思想的初步训练;
    #5. 思考开源社区的协同软件开的运作模式;(可选)
    #6. 思考开源社区自身如何生存。(可选)

3. 内容

3.1 概要

    CLP 将主要完成一个 DVD 出租商店实例。DVD 的出租需要管理,该实例就是要开发一个 DVD 出租管理软件,运行于本地的 PC 机上。该软件暂时不涉及网络服务,但需要留下接口一便扩充。因此,主要涉及两个方面的知识:数据库的开发和用户界面的开发。参考数目为:《linux 高级编程》 机械工业出版社出版,叶小虎,龙浩等翻译。英文书名:《Professional Linux Programming》 作者:Neil Matthew 等。在线电子书本,请联系 tingxx <[email protected]>。
   
3.2 准备阶段

    #1. 完成必须的软件调试和安装,这里要求使用 MagicLinux-1.2 作为开发平台;
    #2. 阅读 The KDevelop Programming Handbook
        网址:http://docs.kde.org/en/HEAD/kdevelop/kde_app_devel/

    #3. 基础训练部分

    准备:
        1.  c,c++ 编程基础
        2.  了解 linux 下编程风格   
    步骤:
        1.linux 系统的学习
            目的:对 linux 系统有一个较全面的认识。比如如何从 /proc /sys 这些目录里的提取信息等
            参考书:《linux应用开发基础》
            掌握程度  了解
        
        2.gcc 与 Makefile
            目的:掌握 gcc 的基本用法,会写一些基本的 makefile
            参考书:《linux应用开发基础》
            掌握程度:了解
           
        3.qt 编程基础
            目的:掌握 qt 程序的结构
            参考书:《c++ GUI Programming with Qt3》 《Qt参考文档》
            网址:http://doc.trolltech.com/3.3/index.html
            
        5.了解 kde 的库
            目的:使用 kde 库来增强程序的功能
            网址:http://www.kdevelop.org:8080/HEAD/doc/api/html/
            
        6.kdevelop 基本使用
            目的:用 kdevelop 来开发和管理一个实用的程序
            参考书: kdevelop 的官方文档
            网址:http://docs.kde.org/en/HEAD/kdevelop/kdevelop/

        7.实例(必须完成)
            实例一:http://women.kde.org/articles/tutorials/kdevelop3/
            实例二:http://www.kdevelop.org/3.0/doc/tutorial_settings/
   
   
3.3 软件需求分析
    完成 DVD 软件需求分析,这里的需求分析为了降低难度,将采用简化的和理想化的形式给出。在保证进度的情况下,尽可能的接近实际情况。要求完成《需求说明书》。
   

3.4 软件设计
    这里柔和软件概要设计和详细设计两个模块,为了降低难度,我们以讨论的形式体验总体设计和详细设计两个阶段。以参考书为准,写出《软件概要设计说明书》、《软件详细设计说明书》和《软件测试计划说明书》。
   

3.5 编码阶段

3.5.1 DVD 商店数据库程序
    #1. 完成 PostgreSQL 数据库若干个实例;
    #2. 完成 DVD 商店数据库的设计、实现和测试。
    #3. 撰写文档
   
    参照参考书,完成数据库,可以照着抄写,但是需要自己看懂,并向同伴讲述内容。
   
3.5.2 DVD 用户界面程序
    #1. 利用 KDE 编写完成一个简单的文本编辑器;
    #2. 完成 DVD 商店用户界面的设计、实现和测试。
    #3. 撰写文档
   
    参照参考书,完成数据库,可以照着抄写,但是需要自己看懂,并向同伴讲述内容。

   
3.6 测试阶段
    这个阶段,必须功能测试,其余的测试看情况。
    撰写相应的《简易测试报告》,具体形式再讨论。

        
3.7 完成用户使用说明书
    这个阶段,只搭个架子,进行简单的说明。撰写《用户使用说明书》。

   
3.8 讨论(可选)
    思考国内开源社区的协同软件开的运作模式;(可选)
    思考国内开源社区自身如何生存。(可选)
   
    如果有兴趣,可以撰写心得体会。

        
4. 时间安排

    编号     子项名称            时间                         备注   
   
    1        准备阶段            2005-01-10~2005-01-20       完成机器调试和熟悉 kdevelop 开发环境
    2        软件需求分析        2005-01-20~2005-01-22       提交《需求分析说明书》
    3        软件设计            2005-01-23~2005-01-31       提交《软件概要设计说明书》、《软件详细设计说明书》和《软件测试计划说明书》                                                                                       
   
    4        编码阶段            2005-03-01~2005-03-15       提交数据库 PostgreSQL 代码,用户界面代码,以及相应的文档
    5        测试阶段            2005-03-16~2005-03-18       提交《测试报告》
    6.       完成用户使用说明书  2005-03-19~2005-03-22       提交《用户使用说明书》
   
    7        讨论(可选)        2005-03-23~2005-03-25       提交 CLP 总结

   
5. 说明

   #1. 参加人员要求
       只有一个要求,就是负责任。
   
   #2. 我们这是一个学习计划,虚心的接受大家的建议和意见,但是,决绝无理打击和讽刺。
   
   
                                                             CPL 发起人: tingxx 和 bamfox
                                                             2004-12-25[/code:1]
回复

使用道具 举报

发表于 2005-1-5 15:24:52 | 显示全部楼层
报名
[email protected]
问题:一定要用magiclinux吗?
回复

使用道具 举报

发表于 2005-1-5 15:51:50 | 显示全部楼层
如果安装 magiclinux 确实有困难,那么至少需要在 gcc 编译器和 Kdovelop 上与 magiclinux 1.2 保持一致。
回复

使用道具 举报

发表于 2005-1-5 19:13:26 | 显示全部楼层
同志,辛苦你啦,帮你顶一下罗~~~

顺便提一下一个建议吧,最好要加个培训qt类库结构的单元,对于初学者只有掌握类库,才能够编写出象样的程序。其实在这里初学者大部分都对c++语法比较熟悉了,缺乏的仅是对linux/unix下的qt类库的了解了。
回复

使用道具 举报

发表于 2005-1-5 19:31:26 | 显示全部楼层
kde虽然很好,但qt不是免费的,在win下要花钱的,我建议大家学习wxwidgets,至少它便宜并且免费,还能跨平台,同样都是用c++
回复

使用道具 举报

 楼主| 发表于 2005-1-5 21:33:40 | 显示全部楼层
顺便提一下一个建议吧,最好要加个培训qt类库结构的单元,对于初学者只有掌握类库,才能够编写出象样的程序。其实在这里初学者大部分都对c++语法比较熟悉了,缺乏的仅是对linux/unix下的qt类库的了解了。


我同意
回复

使用道具 举报

发表于 2005-1-5 22:03:43 | 显示全部楼层
我补充一下,我们的目的,一方面是通过 CLP 使得大家入门,也就是开发程序;更重要的是通过 CLP 体验网络上协作开发的过程。因为,学习程序设计是重要的,例如 qt 的学习,但是更重要的是 team work。

总之,希望大家不要对 qt 开发太在意。对当前的 CLP 而言,我们分配工作任务之后,无论你用何种方式,只要能完成程序设计,并且向合作伙伴表达清楚就行了。至于,是如何编出程序的,自己写,抄写别人或者书,均可。
回复

使用道具 举报

发表于 2005-1-6 00:20:03 | 显示全部楼层
怎么参加呢?
回复

使用道具 举报

发表于 2005-1-6 01:40:04 | 显示全部楼层
请站内信联系一下 tingxx ,谢谢。
回复

使用道具 举报

发表于 2005-1-6 11:08:24 | 显示全部楼层
不错
qt在非windows下free
就足够了
对qt培训有些兴趣
回复

使用道具 举报

 楼主| 发表于 2005-1-6 12:12:10 | 显示全部楼层
不知哪里可以申请新闻组
如果用新闻组来进行交流就好了
回复

使用道具 举报

发表于 2005-1-6 16:41:09 | 显示全部楼层
报名:   [email protected]
回复

使用道具 举报

发表于 2005-1-6 17:12:22 | 显示全部楼层
嗯,新闻组很不错 :-)
回复

使用道具 举报

发表于 2005-1-6 18:15:29 | 显示全部楼层
[quote:99cc00fd94="tingxx"]不知哪里可以申请新闻组
如果用新闻组来进行交流就好了 [/quote]

用你上次说的那个吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 23:31 , Processed in 0.071728 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表