2019-08-19 17:56:03 weixin_38742571 阅读数 2333
  • 软件工程--实践者的研究方法

    软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,该课程使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析、软件设计、软件测试、软件维护等工作所必需的基础知识、基本方法和基本技能。

    3640 人正在学习 去看看 刘安战

如今,人工智能技术已经成为国家战略,无人超市、人脸识别、自动驾驶、智能家居等“黑科技”正逐渐成为现实。

像云计算、大数据、深度学习、算法、语音识别、技术机器人技术等作为人工智能的技术储备,都离不开Python、Java、C++等编程语言的支撑。

而当下热门的Python被认为是现阶段人工智能技术的首选编程语言。因此想入门人工智能领域,需要从Python入手(下图来自拉勾网2019年8月8日数据)
在这里插入图片描述
Python工程师月薪高达15K以上,那Python工程师主要做什么?Python工程师未来前景如何?
请看下方视频,来听听知名技术作家李刚老师怎么说

Python编程 行业分析与课程简介

李刚老师出版的《疯狂Java》系列图书曾得到市场的广泛认可,经过多次再版,已被多家高校选作教材。上方视频来自于李刚老师的在线视频课程《21天通关Python》第一章第一节 Python行业分析。

大家都有学习Python的困惑,今天就给大家推荐一本巨有影响力的Python实战书,上线时间仅2个月,就超越了众多实力派,成京东和当当网上的长期畅销图书,并且收获了3.4W的五星好评。

这本书可谓是笔者独家私藏图书之一了,对我学习Python有着莫大的帮助,在京东上也常常"断货",这次拿出来给大家分享一下,希望能帮到大家。

《21天通关Python》视频课程以畅销图书为教材,由图书作者李刚亲自操刀讲解;上手门槛低,可作为0基础掌握Python教材;书籍+线上复合型学习场景特别适合Python小白学习!

点击查看课程:https://edu.csdn.net/bundled/detail/49?utm_source=jiansuopy1_10
(含图书邮寄+视频教程+社群答疑+导师带队)

笔者跟大家分享一个福利!下单时输入优惠码csdn66,立减20元,券后仅需99元!

扫码入Python技术交流群,可免费听技术讲座+领学习资料+视频课免费看
在这里插入图片描述

2016-10-04 16:03:34 gxx_977 阅读数 1193
  • 软件工程--实践者的研究方法

    软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,该课程使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析、软件设计、软件测试、软件维护等工作所必需的基础知识、基本方法和基本技能。

    3640 人正在学习 去看看 刘安战

软件工程专业


16340111
中大数计院



简介

软件工程是将工程应用于软件的设计、开发、实施、测试和维护的一种系统化方法。
软件工程的典型形式定义是:
1.研究、设计、开发和测试操作系统级软件、编译器和网络分发软件,用于医疗、工业、军事、通信、航空航天、商业、科学和通用计算应用。
2.科学和技术知识、方法和经验的系统应用,设计、实施、测试和文档软件。
3.系统、纪律、可量化的方法在软件开发、运行和维护中的应用”。
4.一个涉及软件生产的各个方面的工程学科。
5.建立和使用合理的工程原则,以经济上获得的软件是可靠的,有效地在真正的机器上工作。
—— [ 维基百科 ]


二级学科

083501软件工程理论与方法:在计算机科学和数学等基本原理的基础上,研究大型复杂软件开发、运行和维护的理论和方法,以及形式化方法在软件工程中的应用,主要包括软件语言、形式化方法、软件自动生成与演化、软件建模与分析、软件智能化理论与方法等内容。
083502软件工程技术:研究大型复杂软件开发、运行与维护的原则、方法、技术及相应的支撑工具、平台与环境,主要包括软件需求工程、软件设计方法、软件体系结构、模型驱动开发、软件分析与测试、软件维护与演化、软件工程管理以及软件工程支撑工具、平台与环境等内容。
083503软件服务工程:研究软件服务工程原理、方法和技术,构建支持软件服务系统的基础设施和平台,主要包括软件服务系统体系结构、软件服务业务过程、软件服务工程方法、软件服务运行支撑等内容。
083504领域软件工程:研究软件工程在具体领域中的应用,并在此基础之上形成面向领域的软件工程理论、方法与技术,主要包括领域分析、领域设计、领域实现、应用工程等内容。


所含课程

  主干学科:马克思主义理论、大学外语、高等数学、大学物理、物理实验、线性代数、概率论与数理统计、程序设计语言、数据结构、离散数学、操作系统、编译技术、软件工程概论、统一建模语言、软件体系结构、软件需求、软件项目管理。
  系统学习:离散数学、数据结构、算法分析、面向对象程序设计、现代操作系统、数据库原理与实现技术、编译原理、软件工程、软件项目管理、计算机安全。
  实践环节:毕业实习、课程设计、计算机工程实践、生产实习、毕业设计(论文)。
根据学生的兴趣还可以选修一些其它选修课。


就业

岗位

1、软件工程师
2、项目经理
3、软件开发工程师
4、java软件工程师
5、高级软件工程师
6、嵌入式软件工程师
7、软件测试工程师
8、java开发工程师
9、.net软件工程师
10、java软件开发工程师
11、android开发工程师
12、java高级软件工程师

行业分布与地区分布

这里写图片描述

企业用人要求统计

这里写图片描述

薪酬统计

1111
总之,

=5500+1250x,x9580008000x,x>9(x=)

2018-02-20 19:58:56 algzjh 阅读数 175
  • 软件工程--实践者的研究方法

    软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,该课程使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析、软件设计、软件测试、软件维护等工作所必需的基础知识、基本方法和基本技能。

    3640 人正在学习 去看看 刘安战

1、软件工程包括软件开发技术、软件工程环境、软件工程经济学、软件心理学、软件项目管理等许多方面的知识。

2、软件是与计算机系统的操作有关的计算机程序、规程及可能的相关文档的完整集合。
其中,计算机程序(Program)是计算机指令和数据定义的组合,使得计算机硬件能够执行计算或控制功能;
规程(Procedure)是为执行给定任务而应采取的一系列动作的描述;
文档(Document)是与程序开发、维护和使用有关的图文材料。

3、软件工程定义:应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度,实现满足用户要求的软件产品的定义、开发、发布和维护的工程或进行研究的学科。

4、目前使用最广泛的软件工程方法是面向过程方法、面向对象方法和形式化方法。

2019-01-19 21:00:41 budding0828 阅读数 148
  • 软件工程--实践者的研究方法

    软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,该课程使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析、软件设计、软件测试、软件维护等工作所必需的基础知识、基本方法和基本技能。

    3640 人正在学习 去看看 刘安战

第四章:类图中一些复杂的概念

抽象类
  • 定义:
  1. 抽象类是指那些不具有任何对象的类,其作用是为其他的类描述它们的公共属性和行为。
  2. 通常,抽象类具有一组抽象操作。一个拥有至少一个抽象操作的类必定是一个抽象类。
  • 编写原因:
  1. 在我们编写一个类的时候,可能会对一些类的方法进行定义,但是并不具体实现。而是交给该类的子类根据自己的具体情况去实现,这样可以增强类设计的灵活性。
  • 区别没有实现方法和空方法:
public int methodA();是没有实现的方法
public int methodA() { }是空方法体的方法。
接口
  • 定义:接口是一组没有实现的操作的集合。接口只提供操作的声明,不提供任何相应的功能代码。具体的功能代码由使用该接口的类实现,这叫作实现关系。

  • 特性:

  1. 接口中只包含普通函数,不包含构造函数和析构函数
  2. 接口中只能提供方法的格式声明,而不能包含方法的实现。
  3. 接口中的所有函数都被视为公有,不需要添加可见性
  4. 接口只包含操作而不包含属性,并且操作都是公有的(public),不允许使用可见性限定符。
  • 特殊接口
  1. 常量接口:接口一般用来表示一组行为,但有时候也会用来表示静态数据,称为常量接口。
  2. 标识接口:没有任何方法和属性的接口。标识接口不对实现它的类有任何语义上的要求,仅表明实现它的类有一个特定的类型。
接口VS抽象类
  1. 抽象类中可以有自己的数据成员,也可以有非abstarct的成员方法。抽象类允许增加一些方法的实现,但接口必须推迟定义所有的方法。
  2. 从语义层面上:抽象类是一种类是对一组具有相同属性和方法的逻辑上有关系的事物的一种抽象。而接口则是对一组具有相同属性和方法的逻辑上不相关的事物的一种抽象。
  3. 抽象类表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。
其他的各种关联
  • 限定关联:限定关联是一对多或多对多关联的另一种表示,它通过添加限定符来标识在这个关联的一方出现的多个对象中的每一个对象。注意:限定符是关联线的一个附加信息,而不是类的。
    例如,紧贴关联目录类一端的小矩形是一个限定符,它限定目录对象使用文件名来标识属于它的每一个文件。
    在这里插入图片描述
  • 关联类:使用关联类时,在任何两个相关的对象之间只能存在关联类的一个实例。
    在这里插入图片描述

关联类就像一个标准的类,可以用属性,操作以及与其他关联。其作用是为一个链接添加一些附加信息。

  • 反射关联:当一个类关联到它本身时,这并不意味着类的实例与它本身相关,而是类的一个实例与类的另一个实例相关。
    在这里插入图片描述
2014-11-30 22:27:48 Lister_lee 阅读数 482
  • 软件工程--实践者的研究方法

    软件工程专业以计算机科学与技术学科为基础,强调软件开发的工程性,该课程使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析、软件设计、软件测试、软件维护等工作所必需的基础知识、基本方法和基本技能。

    3640 人正在学习 去看看 刘安战

软件工程

I want become project manager!

 

软件工程是什么:

定义:将系统化的、严格约束、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件。

目标:在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品(项目)。

 

项目是什么:

a. 项目:为了创造一件独特的产品、一项服务或者一种结果而进行的临时性努力。

b. 项目四维约束:

a) 范围:需要完成哪些工作?客户需要得带哪些成果?

b) 时间:需要多长时间完成项目?

c) 成本:完成项目都需要花费什么?

d) 质量:客户对已完成项目的认可度。

 

团队建设与职能分配:

项目经理职责:

需求管理,负责带领团队完成需求分析、概要设计与详细设计

协调、组织、解决团队问题

制定项目开发计划、召集会议

控制进度,获取并调配资源(分配任务)

做出决策

风险控制,解决危机

考核团队成员

项目计划:

制定项目计划的三个步骤

1.划分任务点

a) 11:50~12:50 吃午饭

b) 11:30~13:30 去理发

……

2.分配资源

3.获得项目人员的承诺

有效追踪原则(任务点划分)

对任务进行有效分解

粒度适中(一般控制在1~3个人日)

共同参与原则

不是PM一个人的事

……

了解软件生命周期与过程模型:

软件项目生命周期(SDL C-Software Day Light Cycle)

同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为软件生命周期。

 

《软件工程国家标准-计算机软件开发规范》(GB8566—88)中将软件生命周期划分为8个阶段:

可行性研究与计划->需求分析->概要设计->详细设计->实现(包括单元测试)->组织测试(集成测试)->确定测试->使用和维护。

 

了解UML及用例图设计:

UML(Unified Modeling Language)

软件界第一个统一的建模语言,它是一种标准化图形建模的表示,已成为国际软件界广泛承认的标准。

UML是一种基于面向对象的可视化的通用(General)建模语言。为不同领域的用户提供了统一的交流标准。

 

概要设计:

概要设计目标

概要设计过程

系统架构设计

分解子系统:根据系统业务需求,将系统分解成诸多具有独立任务的子系统。

确定外部接口(重点):分析子系统之间的通信,确定子系统的外部接口。

约定系统环境:分析系统的应用特点、技术特点以及项目资金情况。

部署与优化

软件结构设计

确定构造子系统

公共数据结构设计

系统环境约定

概要设计文档

 

详细设计:

面向对象程序设计方法

详细设计说明书

软件的业务逻辑

数据处理过程

模块间的数据接口

各模块的实现算法、数据结构

对核心算法、核心功能的实现进行描述

 

详细设计主要方法有哪些?

结构化设计方法

流程图

N-S图

PAD图

面向对象设计方法

UML建模方法

面向对象设计建模


01_软件工程概述

阅读数 24

没有更多推荐了,返回首页