免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2588 | 回复: 2
打印 上一主题 下一主题

Linux/UNIX、C++、Boost、ACE、Shell [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-20 14:28 |只看该作者 |倒序浏览
本帖最后由 dxrgr 于 2012-03-09 11:33 编辑

Linux/UNIX C++软件工程师培训
      昆山轩辕高端IT培训,专注Linux/UNIX服务器端的软件开发(后台开发),
  课程涉及服务器端软件开发的方方面面:Linux/UNIX、C++、Boost、ACE、Shell编程、Oracle/MySQL、数据库建模、UML建模、项目实践、开发模式等等。     
http://www.xuanyuan-soft.cn

课程大纲
一、Linux操作系统

    * 系统环境:Ubuntu GNU/Linux、RedHat Linux AS5、FreeBSD
    * 课程要求:熟练使用常用的Linux/UNIX命令。
    * 时间:1周。

二、Linux C++开发环境搭建、开发工具的使用

    * 涉及内容:vi、GCC、GDB、Make、CVS、Subversion、Eclipse CDT
    * 课程要求:
          o 熟练使用vi文本编辑器;
          o 熟练使用GCC工具链进行编译、调试、构建可执行文件或共享库/静态库;
          o 熟练编写Makefile;
          o 熟练配置、使用CVS和Subversion两种版本控制工具;
          o 熟练配置、使用Eclipse CDT开发工具。
    * 时间:1周

三、C++语言

        C++是一门多范型编程语言,相对于C、Java、C#等C系语言,复杂度高,但一旦领悟C++的精髓,则能发挥C++语言的强大威力,为了让学员掌握C++语言编程技术,我们将这部分的课程分为五个部分:

    * 面向过程编程: Core C++
          o 涉及技术:C++基础:类型和声明、指针与数组、表达式与语句、函数、名字空间、异常、代码文件的组织
          o 课程要求:掌握扎实的C++基础知识。
          o 时间:1.5周。
    * 面向对象编程: 封装、继承与多态(encapsulation、inherit & Polymorphism)
          o 涉及技术:类设计、运算符重载、继承与多态。
          o 课程要求:正确理解面向对象的概念,用面向对象的思维和方法构建软件,正确地设计和使用类以及继承体系。
          o 时间:1.5周。
    * 泛型编程: C++模板(Template)
          o 涉及技术:类模板、函数模板、函数对象(Function object)。
          o 课程要求:C++模板是C++强大威力的技术支撑,是构建C++标准库、Boost类库、ACE框架等的基础,必须熟练掌握C++模板技术。
          o 时间:1.5周。
    * 数据结构与算法
          o 涉及内容:常用数据结构(顺序容器、链表、树)和算法(排序与搜索)的C++实现。
          o 课程要求:能实现常规的数据结构(容器如vector、list、statck、queue等),排序和搜索算法。
          o 时间:1.5周。
    * C++标准库应用
          o 涉及技术:标准容器(STL容器):vector、list、map、set等等;迭代器、算法库、IO流、C语言数学库等
          o 课程要求:对常用的部分如容器、迭代器、常用的算法、IO流,必须牢固掌握、熟练使用,对其它部分必须有认识,以免日后工作中频繁的编写标准库中存在的内容,重复制造轮子。
          o 时间:2周。

四、C++ Boost模板库

        Boost是由C++标准委员会成员发起、众多C++界高手参与设计并实现的一个涉及面广、质量高且业已广泛使用的C++标准后备库,其中TR1已经被纳入C++0x标准库。这部分的课程将涉及其中一些常用的类库。

    * 涉及技术:Aiso、Thread、Interprocess、System、File System、Date Time、Format、Array、Lambda、Signals、TR1中的部分(Regex、Tuple、Smart Point、Hash Map、Hash Set等)。
    * 课程要求:必须掌握的类库有:Aiso、Thread、Date Time以及TR1中部分内容。
    * 时间:2周。

五、ACE框架

        ACE是一个被广泛使用、设计优雅、高性能的C++通信框架(不仅仅是通信框架),其设计及实现被众多开源框架所借鉴。是构建稳定、高性能、高吞吐量、跨平台的服务器端程序的优秀框架。

    * 涉及技术:ACE Reactor框架、ACE Proactor框架、MultiThread支撑、Timer(Scheduler)、ACE Service Configurator。
    * 课程要求:以上列举的部分是服务器端编程必不可少的部分,均需熟练使用。
    * 时间:2周。

六、数据库开发

        专注Oracle 10g、MySQL5.0+。这部分的课程分为以下三大块:

    * SQL语言:
          o 涉及技术:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。
          o 课程要求:熟练使用SQL语言。
          o 时间:1周。
    * Oracle和MySQL存储过程、函数、触发器
          o 涉及技术:PL/SQL。
          o 课程要求:熟练编写Oracle和MySQL存储过程、函数、触发器。
          o 时间:1周。
    * C++数据库开发
          o 涉及技术:OTL或DTL(两个高性能、易用的C++模板类,针对各大主流数据库如:Oracle、DB2、SqlServer、MySQL等)。
          o 课程要求:熟练使用OTL和DTL进行数据库编程。
          o 时间:0.5周。

七、软件工程

        一个优秀的软件工程师不仅具备优秀的编码能力,更应该拥有优秀的软件设计思维和方法,以下课程也是轩辕学员必修的内容。

    * 涉及技术:数据库建模、软件建模、GOF设计模式、文档编写
    * 课程要求:掌握数据库建模、软件建模的思想和方法,熟练使用建模工具,尝试用设计模式来思考软件的架构。至少学会编写《详细设计说明书》、《概要设计说明书》、《数据库设计说明书》。
    * 时间:1.5周。

八、项目实战

        轩辕提供多个企业级实战项目供学员选择,如:电信级IM Server、电信级Billing Server等基于UNIX或Linux下的高负荷、大压力的C++ Server端项目,同时提供Client端程序以便联调及测试。

    * 涉及技术:本项目将涉及学习阶段所有内容。
    * 项目要求:学员按分组,分工、协作,共同完成项目,最终评估两个方面:软件架构设计、软件代码实现质量。
    * 时间:4周。

Linux C++软件开发工程师训练营
Linux C++软件工程师训练营
Q Q: 570508473
主 页:http://www.xuanyuan-soft.cn

论坛徽章:
0
2 [报告]
发表于 2010-02-01 15:45 |只看该作者

C++ ACE

本帖最后由 dxrgr 于 2012-03-09 11:29 编辑

C++ ACE强化课程

       C++ ACE强化班课程,通过对ACE几个主要的框架的学习,掌握高吞吐量、低延迟的服务器端应用开发的有效知识,且通过最终项目的历练,学员将对高性能服务器端应用开发有一个清晰的认识,并能熟练使用ACE相关的框架来开发服务器端应用。

上课方式、课程费用

       远程视频学习、建议经过2~3月的学习、费用:RMB 5,000.00元。(如有优惠活动,学费以优惠价格为准,请注意查看目前有无优惠活动:请点这里 )

课程模块

       C++ ACE强化课程由以下部分组成:

Module06 - C++ ACE

       ACE是一个被广泛使用、设计优雅、高性能的C++通信框架(不仅仅是通信框架),其设计及实现被众多开源框架所借鉴。是构建稳定、高性能、高吞吐量、跨平台的服务器端程序的优秀框架。本模块的课程包含以下几个方面:

ACE基础网络I/O相关对象
详细介绍ACE_SOCK、ACE_SOCK_Acceptor、ACE_SOCK_Connector、ACE_INET_Addr等class的使用。
Reactor框架
ACE Reactor框架简化事件驱动程序的开发,而事件驱动是很多网络化应用的基本特征,这些应用常见的事件源包括I/O事件、Posix信号或 Windows句柄激发以及定时器到期等。
本单元介绍ACE_Event_Handler、Timer、ACE_Reactor等类的使用,并使用该框架构建一个简易的多人聊天室应用。
Service Configuration框架
Service Configuration框架允许应用在运行期重新配置其服务(包括静态服务和动态服务),而不必修改、重新编译或重新连接程序自身,或是关闭和重启应用等。
Task框架
ACE Task框架提供了强大而可扩展的面向对象并发能力,如在基于对象的上下文(context)中派生线程,以及在执行不同线程中的对象之间传递消息和对消息进行排队。
Acceptor-Connector框架
ACE Acceptor-Connector框架实现了Acceptor-Connector模式,这种模式通过解除:1,网络化应用中相互协作的对等服务的连接和初始化所需的活动、2,以及它们一旦连接和初始化后所执行的处理的耦合,增强了软件复用和可扩展性。
Proactor框架
Proactor框架引入异步I/O机制,既保留了Reactor框架的事件多路分离,避免多线程的开销,同时还缓和了反应式的同步I/O的瓶颈效应。
Module08 - 项目实战

       项目实战可选以下项目之一:

项目1:X-Messenger Servers
IM(即时通信)服务器群,类似于MSN、QQ等IM的服务器。可以基于Boost.asio或ACE实现。
项目2:X-Messenger Client
IM(即时通信)客户端软件,类似于MSN、QQ等IM的工具。实现Contacts管理、P2P文件传输、P2P一对一文本聊天、群聊等现代IM客户端功能,可以基于Boost.asio或ACE实现。
项目3:X-DB
一个小型的关系型数据库系统,包括服务器和客户端实现,建议基于Boost相关组件实现。
项目4:X-Crawler
一个网络爬虫,即搜索引擎的前端,负责收集网络上的数据(网页内容、解析URL)供搜索引擎使用。
其他项目,可由学员自行定义。
课程资源

       可获取的课程资源见:教学资源。
Q   Q : 570508473
Home : http://www.xuanyuan-soft.cn
E-mail: athzhang@gmail.com
Tel   : 18,912,671,348

论坛徽章:
0
3 [报告]
发表于 2012-03-09 11:31 |只看该作者
C++ Boost强化课程

       C++ Boost强化班课程,通过对Boost几个实用组件的学习,掌握高吞吐量、低延迟的服务器端应用开发的有效知识,且通过最终项目的历练,学员将对高性能服务器端应用开发有一个清晰的认识,并能熟练使用Boost相关的类库来开发服务器端应用。

上课方式、课程费用

       远程视频学习、建议经过2~3月的学习、费用:RMB 5,000.00元。(如有优惠活动,学费以优惠价格为准,请注意查看目前有无优惠活动:请点这里 )

课程模块

        C++ Boost强化班课程由以下模块组成:

Module04 - C++ Boost

       Boost是由C++标准委员会成员发起、众多C++业界高人参与设计并实现的一个涉及面广、质量高且业已广泛使用的C++标准后备库,其中 TR1已经被纳入C++0x标准库。不论从风格和内容组织上讲,都可以认为Boost项目是C++标准库的延伸。截止到boost 1.43版本,boost项目拥有大约100个用途广泛的实用库。这部分课程将介绍服务器端开发所需要的几个组件:

容器与数据结构
介绍boost.any, boost.tuple, boost.array, boost.unordered(基于hash table,即hash_map和hash_set)等组件。
字符串算法和文字处理
介绍boost.lexical_cast, boost.format, boost.string_algo等组件。
正则表达式
正则表达式语法(perl正则表达式语法)的讲解,boost.regex库的使用。
智能指针
详细介绍shared_ptr、scoped_ptr、weak_ptr等智能指针的使用。
函数对象相关
详细介绍boost.bind, boost.mem_fn, boost.function, boost.ref, boost.lambda等组件。
Boost.Signals2 - 实现回调机制
Boost Signal2:线程安全的Signal-Slot机制 (Publishers → Signals/Subscribers → Slots),即Observer模式的实现;
序列化
通过实例熟悉boost.serialization库的用法。
日期与时间
boost.date_time库的详细介绍。
多线程
作为服务器端开发必不可少的内容之一:多线程支持,boost提供了一个跨平台的线程库:boost.thread。
本单元的课程详细介绍boost.thread。
网络编程
boost.asio库,通过对各类操作系统原生的socket API以及事件多路分离、异步I/O API的封装,构成了一个性能优秀、便于编程的网络编程框架,使复杂的网络编程任务变得简单、安全、并且高效。
本单元的课程通过一系列的示例来展示:通过asio来构建TCP同步/异步服务器和客户端、UDP同步/异步服务器和客户端应用,从而熟悉asio的接口和编程套路。
Module08 - 项目实战

       项目实战可选以下项目之一:

项目1:X-Messenger Servers
IM(即时通信)服务器群,类似于MSN、QQ等IM的服务器。可以基于Boost.asio或ACE实现。
项目2:X-Messenger Client
IM(即时通信)客户端软件,类似于MSN、QQ等IM的工具。实现Contacts管理、P2P文件传输、P2P一对一文本聊天、群聊等现代IM客户端功能,可以基于Boost.asio或ACE实现。
项目3:X-DB
一个小型的关系型数据库系统,包括服务器和客户端实现,建议基于Boost相关组件实现。
项目4:X-Crawler
一个网络爬虫,即搜索引擎的前端,负责收集网络上的数据(网页内容、解析URL)供搜索引擎使用。
其他项目,可由学员自行定义。
课程资源

       可获取的课程资源见:教学资源。
http://xuanyuan-soft.cn/
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP