• 管理-高级软件需求分析和管理实践

    课程时长:18课时

    课程介绍:
    查看开课计划
  • 代码整洁之道-软件高质量代码体系

    课程时长:5天

    课程介绍:一、 为什么需要该课程 软件质量,不但依赖于架构,设计以及项目管理,而且与代码质量紧密相关.这一点,无论你使用什么开发技术,都不得不承认. 代码是程序员沟通最直接的手段,代码是技术交流的手段,代码是需求交流的途径。重视代码,回归本源,曾经我们远离代码,谈架构设计,谈UML,谈开发流程。如今我们落地,找回软件的本源,彻彻底底看清代码、深入思考代码。那些良好的研发中心非常重视代码,Facebook就有经典的Code wins arguments(代码赢得争论)。在Facebook 做 code review时间大约占50%,管理者对代码质量负有一定责任 。甚至代码质量高于一切:Facebook Code review是重点KPI考核的对象,实行连坐制,如果因为代码质量问题,那么产生的KPI责任包括领导30%、程序员50%、审核人员20%。 但是我们的管理者经常听到开发人员这样抱怨:“不能再增加功能了!我们得停下来重写代码。软件代码一团糟,就像纸糊的老虎,根本应付不了持续增加的用户需求。我们实在维护不下去了!最好推倒重写吧” 这一幕在很多公司上演过,现在依然在不断重演。一旦公司陷入这种困境,以前版本的开发者往往沦为替罪羊。新的开发者一般就会骂前人怎么写这么烂的代码。他们准备推倒重来,准备重写系统。在重写代码的过程中,用户无法看到产品的任何改进。你可能认为重写代码至多也就几个月,但是实际花费的时间无一例外要多得多。你只能坐在一旁,眼睁睁看着用户投奔竞争对手,而这个时候,竞争对手恰恰在不断地改进产品。 我们研发中心有一个理念”代码是债务而不是资产”。最开始,团队会编写代码,做出产品,并用它来赚钱,但是,之后团队应该尽可能地寻找减少代码的方法和使代码尽量整洁,从而降低成本。软件界有一个真理,你拥有的代码越多,维护代码所要付出的成本就越高。如果你的代码结构越好,你做了越多的单元测试,你的代码质量越好、越小、耦合越松,那么添加新代码所需要付出的成本就越少。因此大师 Craig Larman说: “最好维护的代码就是没有代码,好的程序员的代码产量是负的,因为他通过减少代码来增加功能”。对比现实中,很多人以为,LOC(line of code)越多的feature越大,写LOC越多的程序员越牛。这其实是极其错误的观念. 因此我们必须有全面的管理制度让我们保持代码少而整洁。所以Michael Feathers认为"未来属于知道如何有策略地删除代码的公司”。持有代码的成本要比我们想象的大。意识到这一点的公司更具有竞争优势。 为了切实帮助软件企业降低企业项目开发成本,大面积提高软件工程师编程能力和代码质量管理能力,我们特别推出实战训练营. 分享多家大型研发中心代码管理经验给大家. 该课程适应于各个阶段的技术人员.初级工程师能够透过大师的眼睛来看待编程,了解编程的价值观和原则;具有丰富经验的设计师和架构师可以通过实现模式进行反思,探究成功实践背后的意义.把价值观,原则和开发实践结合;管理者通过学习业界著名研发中心的管理经验和失败的教训,来制定自己公司的代码管理策略.质量管理相关人员学习如何定制代码质量指标,通过哪些工具进行监控,怎样管理代码质量。 二、 谁已经选择了我们的咨询和培训? 我们已经为几十家企业提供了多次培训和咨询服务,以下企业已经选择了我们的内训课程 互联网研发企业,比如百度研发中心4次 ,阿里巴巴6次,电信研发企业,比如思科研发中心5次,阿尔卡特-朗讯研发中心11次,华为研发中心13次,摩托罗拉研发中心 1次,大唐电信研发 1次,广州从兴电子,亿阳通信 1次, 爱立信研发中心8次,鼎桥通信技术5次, 艾默生深圳研发中心 4次,广电行业:广州诚毅科技研发中心,企业软件研发企业,比如Adobe中国研发中心,北京久其研发中心,博古中国研发中心,金蝶深圳研发中心嵌入式软件企业,比如阿尔卑斯中国研发中心,德国M&M Software,西门子研发中心, Sony研发中心,金立智能研究院,南车研发中心,德塞西威,霍尼韦尔研发中心, 东芝中国研发中心外包类企业,联盟计算机服务(天津)有限公司ACS 3次。金融行业:恒生电子,华腾,中国人民银行研发中心,工商行研发中心,平安科技研发中心,建行研发中心,深圳登记结算研发中心,花旗银行中国研发中心 我们已经为几十期公开课,已经有100多家企业已经选择了我们的公开课程 腾讯(深圳)有限公司, EMC中国研发中心,华为终端有限公司、 斯伦贝谢技术,通用电气医疗系统(中国)有限公司,华为技术有限公司,广州从兴电子开发有限公司、福建星网锐捷股份有限公司,广州菲特网络科技有限公司,盛立金融(杭州)软件公司 ,索尼中国研发中心, 爱德万,上海金慧软件有限公司,珠海世纪鼎利通信科技股份,兰吉尔仪表系统有限公司,珠海飞企软件有限公司,广东佳和通信技术有限公司,珠海一多监测科技有限公司,远光软件股份有限公司 三、 你可以参加吗? 各类软件企业和研发中心的程序员、软件设计师、架构师, 项目经理,质量部门员工。 如果你不重视代码质量, 请不要参加. 本课程面向重视代码质量的管理者 如果你不认为写好代码是一件重要,困难并且有趣的事情,请你不要参加. 本课程面向追求卓越的程序员,我们认为编程是一种态度. 如果你已经多年不写代码,最好不要参加,本课程面向一线还在编程的程序员/设计师/架构师 四、 你的角色和收获 课程根据著名编程大师的理论: 编程是一种态度,编程是一种技艺,编程是一种习惯。 面向以下不同的人群,有不同收获。
    查看开课计划
  • 软件设计-.NET 软件构架设计

    课程时长:30课时

    课程介绍:

    本课程极少企业应用架构与设计的流程和核心概念,讲解应用架构中常用的设计模式和设计原则,以及常用的几种设计方法;重点介绍架构与设计的方法和最佳实践,包括了架构分层的相关知识和业务层、服务层、数据访问层、数据存储层、显示层的原理和设计

    查看开课计划
  • 架构-UML业务建模与需求分析培训计划

    课程时长:12课时

    课程介绍:

    本课程介绍如何利用UML技术进行业务建模,如何利用业务模型来明确业务支持软件的正确需求,如何构造业务模型,以及模型应当包含什么等。同时讲解多种业务模式,用实际案例的方式说明如何从不同角度进行业务建模,从而了解如何利用业务模型提供的信息和知识来确定相应软件系统的正确需求,并了解在软件模型中如何重用这些信息和知识

    查看开课计划
  • R语言数据分析和挖掘

    课程时长:30课时

    课程介绍:本课程介绍大数据分析工具R语言。讲解R语言软件和R语言数据分析,处理技术。从R语言基本概念开始,介绍计算机向量计算和R语言向量化函数。了解R语言的数据提取和R语言的数据处理,以及R语言在大数据分析统计中的实践。包括将数据转化为可视化图表,数据报表制作技术。
    查看开课计划
  • Docker原理深入解析与实践之道

    课程时长:12课时(2天)

    课程介绍:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包括系统。
    查看开课计划
  • Memcached 应用

    课程时长:18课时

    课程介绍:Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric 为首开发的一款软件,是一个高性能的分布式内存对象缓存系统,可以用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。
    查看开课计划
  • JAVA开发技术

    课程时长:90课时

    课程介绍:本课程是Java开发的基础课程,从基础开始讲解Java编程语言的语法和结构,以及基本的面向对象的设计和编程技术,学习Java开发环境的使用和调试。
    查看开课计划
  • 微软.NET开发技术-HTML5编程

    课程时长:18课时3天

    课程介绍:


    HTML5是HTML最新的修订版本,其设计目的是为了在移动设备上支持多媒体, 还引进了新的功能,可以真正改变用户与文档的交互方式
    HTML5赋予网页更好的意义和结构。更加丰富的标签将随着对RDFa的,微数据与微格式等方面的支持,构建对程序、对用户都更有价值的数据驱动的Web。基于HTML5开发的网页APP拥有更短的启动时间,更快的联网速度, 为网页应用开发者们提供了更多功能上的优化选择,带来了更多体验功能的优势.另外,和HTML5结合使用的 CSS3中提供了更多的风格和更强的效果。较之以前的Web排版,Web的开放字体格式(WOFF)也提供了更高的灵活性和控制性.
    通过学习本课程,可以对HTML5+CSS3的整体功能和新增特性有所了解,并能够使用前端界面中的常用框架,和对后台进行发送请求和接受响应

    查看开课计划
  • 微软.NET开发技术-windows应用程序开发

    课程时长:30课时

    课程介绍:在本课程中,学生将学习基本的编程技巧和开发 Windows 商店应用程序所需的技术。这包括编码、设计和发布Windows 商店应用,同时掌握 Visual Studio 和 Expression Blend 工具的使用。
    查看开课计划
  • 微软.NET开发技术-ASP.NET Web 应用程序开发

    课程时长:36课时

    课程介绍:在本课程中,重点学习Web 应用程序的增强的性能和可扩展性。将学习Web站点创建技术,使学员知道何时应该可以使用ASP.NET 或者Web窗体。
    查看开课计划
  • 微软.NET开发技术-C# 编程语言

    课程时长:30课时

    课程介绍:学习本课程将掌握.NET Framework框架组成
    掌握C#编程语言语法、面向对象开发技术
    掌握.NET组件开发技术
    了解.NET托管运行机制和原理
    掌握.NET中的数据类型及数据类型操作
    具备基于C#的.NET Framework程序设计基础
    学习C#多线程和异步编程技术
    了解C#事件与委托开发技术
    查看开课计划
  • HTML5编程技术

    课程时长:18课时

    课程介绍:本课程主要讲授掌握使用HTML5,CSS3和JavaScript语言语法知识,掌握HTML5页面开发技术;掌握Visual Studio 2013中建立和调试、发布HTML5页面
    查看开课计划
  • Windows应用程序开发

    课程时长:36课时

    课程介绍:本课程中,学生将学习基本的编程技巧和开发 Windows 商店应用程序所需的技术。这包括编码、设计和发布Windows 商店应用,同时掌握 Visual Studio 和 Expression Blend 工具的使用。
    查看开课计划
  • Asp.net Web 应用程序开发

    课程时长:36课时

    课程介绍:在本课程中,重点学习Web 应用程序的增强的性能和可扩展性。将学习Web站点创建技术,使学员知道何时应该可以使用ASP.NET 或者Web窗体。
    查看开课计划
  • Python编程语言

    课程时长:5天,30课时

    课程介绍:本课程从零基础开始介绍Python编程知识。本课程介绍如何使用python语言开发高可用,易维护的Web程序。主要内容包括Python语言基础,Python模块的构建以及Python面向对象设计与编程知识。学习使用Django框架,Flask框架常用Python Web服务端框架的使用
    查看开课计划
  • Python网络爬虫程序开发

    课程时长:5天,30课时

    课程介绍:本课程从基本的爬虫原理开始讲解,介绍使用Python语言实现最基础的网络爬虫应用程序开发,包括单机搜索,动态网站搜索和分布式爬虫开发。每个知识点都基于实践项目学习
    查看开课计划
  • Python数据挖掘和分析

    课程时长:10天,60课时

    课程介绍:本课程介绍了数据挖掘的基本原理,从数据挖掘基础知识开始,讲解数据挖掘建模工具和使用Python语言进使用工具;学习数据挖掘的建模过程,包括数据探索、数据预处理及挖掘建模的常用算法与原理。
    查看开课计划
  • Java编程语言开发基础

    课程时长: 60课时(8天)

    课程介绍:      本课程面向从来没有学习或者从事过软件编程方面的工作的学员,从最基本的计算机程序原理讲起,了解程序的组成。动手搭建Java开发环境,学习java 语言的语法,数据类型和流程控制等。同时,在课程中加入大量面向对象的设计和开发的内容,学员除了学习到Java这个编程语言外,还可以学会用面向对象的设计和分析,以及Java中各种面向对象的设计模式等。最终可以达到能够独立编写一般的Java可执行程序。
    查看开课计划
  • 基于MVC模式Java Web开发技术部分

    课程时长:60课时(8天)

    课程介绍:        Java技术由于其跨平台和性能方面的优势,被大量的应用到移动互联和网站开发中。本课程在学员已经有了基础的Java编程知识后,介绍使用Java来开发Web程序。既涉及到Web前端,又有Web服务端开发的内容。重点介绍Web服务端开发的知识。本课程通过开发一个B2C类型的电子商务网站的实战案例,课程覆盖了一个Web网站和手机应用的服务端程序的所有内容。学员完成本课程后,在课堂上就完成了一个完整的电子商务网站的开发过程。同时也学会了Java Web开发的所有内容。
    查看开课计划
  • Java EE企业级框架应用程序开发

    课程时长:30课时(4天)

    课程介绍:

            大多数软件公司和开发团队,为了提高开发效率和实现通用化模块化开发,往往会使用现有的通用框架。框架是一种具有通用性的软件半成品,一个好的框架,往往可以成倍提高开发效率。本课程介绍在企业级项目中使用框架的意义和基本要素。通过一个完整的企业级项目案例,介绍各个框架的开发和使用,优化的过程。



    查看开课计划
  • R语言入门

    课程时长:30 课时(4天)

    课程介绍:      在数据分析尤其是大数据分析领域,除了能对大数据进行存储和管理外,如何有效的对已经持有的数据进行分析是最为重要的一个过程。在这个方面,R语言具有得天独厚的优势。本课程从R语言基础开始,结合大数据分析的原理和思路,逐步讲解R语言的使用过程,学习R语言的基本语法和常用函数的使用,并且学习各类统计图形的创建


    查看开课计划
  • R语言数据分析

    课程时长:30课时(4天)

    课程介绍:本课程建立在R语言基础课程之上。本课程重在实践,将以多个案例的形式,介绍完整的数据分析的流程,从数据模型建立到数据清洗到可视化的过程。学员在这个课程中,将学习如何使用原始数据建立分析模型,根据不同的目标使用不同的数据分析方法,并通过绘图的方式,最终实现数据的可视化。
    查看开课计划
  • 使用Python实现自动化运维

    课程时长:24课时

    课程介绍:

    本课程介绍使用Python脚本语言实现管理任务的自动化。本课程介绍首先学习Python语言的使用和基本语法、框架。接下来介绍Python运维框架的开发。然后详细介绍使用python脚本与操作系统的交互,实现对系统和网络的监控功能。学习使用Ngios、Ansible、Saltstack和paramiko ,pexpect这些批量运维管理框架的使用。

    查看开课计划
  • 人工智能

    课程时长:1天,6小时

    课程介绍:人工智能时代已经开启,其中物联网技术的运用就是最新尝试。智能化金融应用发展是传统金融产生新的生产力跃升,是真正实现商业银行对金融新常态的引领为数不多的机会。智能化金融成为在未来一段时间内“新一代互联网+金融”的最前沿应用领域。
    查看开课计划
  • aboutVR-虚拟更胜现实

    课程时长:1天,6小时

    课程介绍:

    虚拟现实技术是仿真技术的一个重要方向,是仿真技术与计算机图形学人机接口技术多媒体技术传感技术网络技术等多种技术的集合,是一门富有挑战性的交叉技术前沿学科和研究领域。虚拟现实技术(VR)主要包括模拟环境、感知、自然技能和传感设备等方面。模拟环境是由计算机生成的、实时动态的三维立体逼真图像。感知是指理想的VR应该具有一切人所具有的感知。除计算机图形技术所生成的视觉感知外,还有听觉、触觉、力觉、运动等感知,甚至还包括嗅觉和味觉等,也称为多感知。自然技能是指人的头部转动,眼睛、手势、或其他人体行为动作,由计算机来处理与参与者的动作相适应的数据,并对用户的输入作出实时响应,并分别反馈到用户的五官。传感设备是指三维交互设备。

    查看开课计划
  • aboutAI

    课程时长:2天,12小时

    课程介绍:人工智能(Artificial Intelligence),英文缩写为AI。作为计算机科学的一个分支,它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。近年来,随着互联网和深度学习模式的迅速崛起,人工智能迎来了一波辉煌的发展,并向各领域快速扩散,同时也带来了机器智能是否会带来人类失业,超越人类甚至毁灭人类的全球性恐慌与大讨论。
    本课程通过讲师讲解、案例分析、小组讨论、学员练习等授课方式,从几部影视作品开始,带着你展开AI之旅,了解AI的前世今生来龙去脉,给你带来全面的对人工智能的思考和解读,让你在领略机器和算法之美的同时,避免无谓的恐慌并逐渐学会与人工智能共舞,让人工智能成为人类的助力,并通过率先应用人工智能获得企业的竞争优势。
    主课程分为“道篇”(全面把握AI战略的心法)与“德篇”(关键领域应用的技法),通过理论和案例分析的结合,力图做到对AI知识体系的完整把握,和对实际应用的知行合一
    查看开课计划
  • 敏捷编程三剑客

    课程时长:2天,12小时

    课程介绍:在敏捷开发实践过程中总有一些棘手的问题,让敏捷开发的过程磕磕绊绊,下面列举了一些常见的问题:
    (1)不愿意使用Unit Test与TDD,原因增加工作负担
    (2)改变我以前的工作习惯,习惯于头脑中构思,不愿意编写出来
    (3)不懂测试技术,无法设计测试用例
    (4)整个软件中的函数都需要完成TDD吗?
    (5)如何结合UML与TDD?
    (6)如何结合持续集成构建与TDD?
    (7)User story描述简洁,如何展开User Story各种场景?
    (8)如何从验证角度完善User Story?
    (9)Unit Test与TDD的粒度?
    (10)有些工具支撑BDD?
    这些问题引发了互联网上得一些论战,不同实践者,依据自己的实践理解给出了一些有价值的经验,这些经验就像盲人摸象,只能解决其中的一部分问题,如何打通敏捷编程的五经六脉呢?讲师通过多年的实践与咨询,发现能够实现高质量与高效率编程的一套实践方法,有效结合UML、MDA、ATDD、BDD与TDD的方法,其中最为关键的事ATDD、BDD与TDD,故称之为编程三剑客。
    查看开课计划
  • 敏捷设计

    课程时长:3天,18小时

    课程介绍:敏捷开发可以解决软件的不断变化,使得本来不可控的软件变得可以控制。软件开发过程中是否需要进行设计,设计成败的关键因素是什么?如何保证软件质量的条件下,提升软件设计效率?
    敏捷设计思路源自多年实践总结过的软件工程思想,真正的敏捷设计必然与开发绑在一起,对产品团队来说,应该不断利用等待空闲调整规划,用任务分解、故事板等专业手法出文档优化结构。敏捷设计关键不在技术有多高深莫测,而是动作要跟得上节奏,前后衔接得当,才可能把时间一点点抠出来。不墨守陈规,把专业方法打散使用,融会贯通于每个思考点。
    不要错误的认为设计就是一组和代码分离的UML图,一组UML图也许描绘了设计的一些部分,但是它不是设计的全部!软件的设计是一个抽象的概念,它和程序的概括形状、结构、以及每一个模块、类和方法的详细形状和结构有关,可以使用很多不同的元素去描述它,即:源代码就是设计!
    像设计模式这样的东西你要知道什么时候该用什么模式,还要知道什么时候不该用什么模式,因为事物都具有两面性。另外不必要的复杂性的存在有时候是一种心理因数。复杂性必然带来有的人可以维护这些代码,有的人不能维护这些代码,这样有的人才变得很牛。  
    敏捷设计是不需要设计文档吗?敏捷设计的过程是什么?会有不同敏捷流程吗?目前流行的敏捷设计方案的对比,FDD,ICONIX,TDD等等设计方法论如何选择,他们的本质是什么?软件的代码质量保证的方法在哪里?设计代码结构的经验可以传递吗?如何获取代码编写的经验。
    打造有中国特色的敏捷开发,让敏捷真正走入千家万户的软件企业,在不牺牲软件质量的条件下,做到卓越的敏捷实践,让敏捷助力企业开发成功!
    查看开课计划
  • 敏捷需求分析

    课程时长:3天,18小时

    课程介绍: 敏捷过程是一种结合管理理念与工程方法的最佳实践,它关注人的价值,倡导客户合作与响应变化,是中小企业持续过程改进的最有效途径之一。需求工程应用敏捷过程方法,以关注商业价值、快速响应、持续迭代的特征来应对变化和难测的未来,是尝试提高组织敏捷能力的核心。敏捷需求分析将在需求时机与过程、文档要求、变更、参与者角色等方面展现其不同传统的特性。
    敏捷使用产品Backlog来管理需求,产品Backlog是一个需求的清单,按照需求的商业价值排序,高优先级的需求在Backlog的最上层。在产品Backlog中,需求的主要表现形式是用户故事。用户故事是从用户的角度对需求的简短描述。用户故事是将团队的焦点从描述、编写功能需求转移到讨论需求的最佳方式。
    查看开课计划