精华内容
下载资源
问答
  • Java系列技术之JavaWeb入门

    万人学习 2018-09-18 19:34:36
    JavaWeb里的基础核心技术
  • Linux C/C++ 学习路线

    万次阅读 多人点赞 2019-07-04 20:41:56
    、秋招 Linux C/C++ offer 情况 二、Linux C/C++ 方向的一些思考 三、计算机基础知识的梳理 四、C++ 方向的深入学习路线 五、项目 + 亮点 + 面试的一些思考 六、总结 前言 Linux C/C++ 从零基础到大神的学习路线,...

    一、秋招 Linux C/C++ offer 情况

    二、Linux C/C++ 方向的一些思考

    三、计算机基础知识的梳理

    四、C++ 方向的深入学习路线

    五、项目 + 亮点 + 面试的一些思考

    六、总结

    前言

    Linux C/C++ 从零基础到大神的学习路线,自己的真实学习路线,干货很多,建议收藏,认真阅读。
    
    在校期间,我一直走的都是 Linux C/C++ 学习路线,历经暑期实习、秋招决战、校招期间投的大部
    分岗位都是 Linux C/C++ 后台方向,对于这个方向,有着自己的理解。
    
    从接触 C++ 到我现在正式工作,大概有 2 年多的时间,对于这个方向的学习路线、以及学习编程的
    方法摸索出来了一些,看完本文,希望对于正在走 Linux C/C++ 路上的同学能有所帮助。
    

    一、秋招 Linux C/C++ offer 情况

    本人就读于双非院校、非科班本科学生,专业是偏硬件的(学校课程只有一门 C 语言与编程相关,
    其余的课程跟编程一点点的关系都没有),在校期间也没拿过什么大的奖项。
    
    计算机基础为零,大二上学期接触 C 语言,大二一年学了 C 语言和数据结构,大三在学校的实验
    室开始学习计算机基础和学习 C++ 方向,一路自学编程,始终相信自己,也是拿到了大厂 offer。
    

    秋招 offer 情况:

    腾讯 后台开发工程师(实习转正)
    百度 手百 feeds 流,软件研发工程师
    美团 后台开发 (C++ 方向面试)
    作业帮 后台开发工程师
    好未来 后台开发工程师
    迅雷 后台开发工程师
    盛大游戏 C++ 开发工程师
    
    2017 年暑期实习腾讯,2018 年初实习百度,校招拿了十几个 Linux C/C++ 方向的 offer,
    最终的选择也很玄学,去了自己想去的公司,从事自己喜欢的岗位,现在在编程的路上越
    走越远。
    

    二、Linux C/C++ 方向的一些思考

    1、

    对于方向的抉择,很多人都选择了 Java 或者 Python 方向,Java 或者 Python 方向确实学的人多,
    岗位需求很多,入门能比 Linux C/C++ 方向容易一些,但是往深了学,各有各的难度,先敲定了方
    向,再深入学习。
    
    Linux C/C++ 方向,国内真正掌握的人,其实是极少数,这个方向的学习人数也是相对比较少的,入
    门一般首选 C 语言或者 Python,C、C++ 在编程排行榜也是经久不衰的,排名靠前,如果喜欢,有兴
    趣,走这个方向是可以的。
    
    Linux C/C++ 方向,国内很多大公司都有招聘这个方向的岗位,BAT 都有,尤其腾讯,底层架构都是 
    C++ 写的,百度核心搜索很多模块也是 C++ 写的,阿里云也在招聘 C++ 方向的工程师,这个方向,
    学的不错的,根本不用担心找工作的问题,如果学的一般的,其实哪种语言就都比较难找了,毕竟都
    知道it行业是技术竞争,优胜劣汰。
    
    Linux C/C++ 的效率是比 Java、Python 快一些的,更偏向于底层,能直接操作内存,对于编程思维、
    逻辑能力的提升是有帮助的;其实学习这个方向,是有一点枯燥的,不像 Python 爬虫、Java、前端能
    做出一些有趣的东西,小程序开发出一些产品,都能很快用于实战,获得编程的乐趣,进一步刺激自己
    学习。
    
    C++ 方向没有那么多有趣的东西可以做,在很长的一段时间内,要靠自己的兴趣去坚持学习。
    

    2、

    我在大三的时候,用 C++ 写过五子棋、内存监控工具、压缩工具、以及实现一些比较复杂的数据结构,
    实现网络编程的并发模型;当你学习 Linux C/C++ 方向到一定程度的时候,你会找到这个方向的乐趣,
    跟其他方向完全不一样的乐趣。
    
    不过,前期真的很难,有一段时间极其痛苦,是要经过很长一段时间的学习,才能有一定的效果,如果对
    这个方向,真的没有啥兴趣,最好选择走前端、Java、Python 等是最好的选择。但是如果你已经是从业L-
    inux c/c++开发几年了,那就继续吧,技术提升没你想的那么难!
    
    Linux C/C++ 方向,入门稍微难一点,一旦选择了要走 C++ 方向的,在心态上面,要做好准备,一定不能
    有畏难心里,做好接触底层、复杂逻辑的分析、以及具备面向过程 + 面向对象的思想;就是退一步讲,我
    学习了 Linux C/C++ 方向,具备了编程思维和熟悉了 C++ 语言,以后去公司上班了,也能很快的上手 Jav-
    a、Python 等方向(我说的上手指的是语言基础很快的学习,要想深入,还得花大把的时间),这也是c/c++
    的优势所在。
    
    按照目前身边人找工作的情况,普遍来说,Java、Python、前端、数据分析、测试方向都要比 C++ 好找一些
    ,更容易找到工作,虽然我是走的 Linux C/C++ 方向,但是对于对底层没有兴趣,对 C 语言没有兴趣的人,
    不建议走这个方向。
    

    3、

    我一路走过来,真的很痛苦,在校期间都想过放弃这个方向,曾经想学个 Java 可能会好一些(身边学习
     Java 的人还是挺多的),每当快放弃的时候,又想到都学了这么长时间了,再坚持坚持,就这样一路走
     过来了;我是觉得自己真的挺幸运的,有时候,真的不一定非要头铁 C++ 方向,要看整个市场行情,顺
     势而为,选择好方向,在深入!
    
    对于 Java 还是 C++ 方向的选择,没有哪个方向一定好找工作,没有哪个方向一定工资待遇高,互联网这
    行,尤其是靠技术说话的,这些都取决于你自身的技术能力。
    
    选择走 C++ 方向的,一定要走 Linux C/C++,面向网络编程,学会 Linux 至关重要!
    
    大厂特别喜欢考察计算机基础知识,对于基础掌握的如何,在很大程度上将决定你是否能进入大厂,一定
    要重视基础知识的学习;秋招准备:基础 + 算法 + 项目,加上自己的方向(C++、Java、Python、前端等
    ),其中每个环节都得准备到位,才能最大程度上拿到大厂 offer,意识很重要,有了意识,再看具体的学
    习路线。
    

    三、计算机基础知识的梳理

    计算机基础:数据结构 + 算法、操作系统 + 计算机网络、数据库 + Linux、C 语言
    
    工作必备工具:Linux + Git + Sql
    
    不管你是学习什么方向的,Java、Python、前端、测试、运维等等,这些基础都不
    能忽视,有时间的话,一定要打扎实了,有了扎实的功底,在这行才能走的更远更快!
    

    1、常用数据结构与算法:

    平衡二叉树
    红黑树
    B-树
    KMP算法
    栈/队列
    布隆过滤器
    靠前的数据结构一定要非常的熟练,对于树、图复杂的数据结构,最起码的掌握定义、原理、部分实现,我就记得:
    我在面试的时候,手写过红黑树的旋转算法,对于图的一些最短路径算法也是当面手写过,头条的面试基本上就是全
    程算法,难度不低。
    
    冒泡
    插入
    选择
    快排
    希尔
    堆排
    归并
    桶排
    基数
    计数
    字符串常见算法
    数组常见算法
    递归算法
    
    一定要保证掌握基础算法 + 常见算法。
    
    在算法方面的要求上,C++ 方向对于算法的要求明显更高,算法功底一定要扎实!
    
    2、操作系统:很常问的一些技术点,堆和栈、内存分区、虚拟内存 + 物理内存、
    进程 + 线程 + 协程、死锁、分片机制、五大组件、中断和系统调用 、同步和异步
    等等问题。
    
    对于操作系统的理解,对于这些基础的计算机知识的掌握是必须深入学习,要花很
    大的功夫去理解清楚这些,工作中,对于真实线上系统的稳定性、对于底层技术的
    理解是有帮助的,操作系统是面试中常见问题之一。
    
    3、计算机网络:OSI 七层模型和 TCP/IP 四层体系结构,TCP 三次握手与四次挥手、
    常见的网络协议(网桥、ARP、IP、ICMP、TCP、UDP、DNS、DHCP)、TCP 粘包、
    流量控制 + 拥塞控制、数字签名原理、http + https,http 的状态码,https 的安全机制,
    网络安全、输入 www.baidu.com 背后发生了什么等等问题。
    
    其实工作中,有时就会出现,网络抖动、网络延迟,网络拥塞的情况,此时就需要具备一
    定的网络知识,及时的解决问题,计算机网络是面试中常见问题之一。
    
    4、数据库:数据库作为存储数据的地方,其不同的数据结构、与应用的场景不一样,采取
    不同的数据库,对于 mysql 基本操作、写 sql 的优化、表的设计、索引优化、如何更快的查
    询、底层数据结构的设计原理等等问题。
    
    常见的设计模式、主要是学习设计模式的思想、单例模式是必须写代码实现的,其他设计模
    式理解思想,作为了解内容,后台开发工程师与 mysql 打交道挺多的,也是面试常见问题之一。
    
    5、Linux系统
    
    Linux是所有学c/c++同学都绕不开的坎,我整理了Linux方面需要掌握的技术点,不知道怎么学习的同学可以借鉴一下。
    
    系统命令工具
    
    进程间通信设施状态 ipcs
    虚拟内存统计工具 vmstat
    Linux系统运行时长 uptime
    CPU平均负载和磁盘活动 iostat
    监控,收集和汇报系统活动 sar
    监控多处理器使用情况 mpstat
    监控进程的内存使用情况 pmap
    进程监控工具 atop
    控制台的流量监控工具 vnstat
    系统进程状态 ps
    详细网络流量分析 tcpdump
    内存使用状态 free
    系统管理员调优和基准测量工具 nmon
    密切关注Linux系统 glances
    查看系统调用 strace
    网络参数工具
    
    Linux网络统计监控工具 netstat
    显示和修改网络接口控制器 ethtool
    网络数据包分析利刃 tcpdump
    监控并帮助你调试网络 bmon
    获取实时网络统计信息 iptraf
    显示主机上网络接口带宽使用情况 iftop
    网络流量和 ip 流量分布 ntopng
    
    日志监控工具
    
    实时网络日志分析器 GoAccess
    
    多窗口之下日志监控 MultiTail
    日志分析系统 LogWatch/Swatch
    参数监控工具
    
    监控apache网络服务器整体性能 apachetop
    ftp 服务器基本信息 ftptop
    IO监控 iotop
    电量消耗和电源管理 powertop
    监控 mysql 的线程和性能 mytop
    系统运行参数分析 htop/top/atop
    工作基本上离不开 Linux,也是面试常见问题之一。
    

    6、C 语言

    C 语言是我学习编程的第一门语言,是面向过程的语言,对于 C 语言中的数组、函数、指针、
    内存对其模式、大小端问题、野指针、内存泄露、static、register、define、typedef、struct、
    union 等一些关键字的考察。
    
    我一直把 C 语言当做基础,不是方向,在 C 语言这里学到了很多编程的思想,对于 Linux C/
    C++ 方向,C 语言是基本功,也是必定考察的地方,当初我也是因为特别喜欢 C,走上了 C++
     的道路。所以c语言其实对于所有语言的编程者来说都是值得学习和借鉴的。
    
    C 语言可以学,C 语言是基础,不是方向,但是选择走 C++ 就是要选择的方向了,要谨慎选择!
    
    对于上面的每一个模块,其实都能单拿出来,写的更为具体一些,但是个人比较懒,就写出大纲
    来给大家借鉴一些吧。
    

    四、C/C++ Linux方向的深入学习路线

    1、C++ 基础
    
    C++ 是面向对象的语言,一定要理解清楚面向对象的思想,先把 C++ 的基础知识点打牢,刚从面向过程中转变过来,一定一定要适应面向对象的写法。
    
    在学习面向对象的时候,也要考虑如何用面向过程去实现面向对象(其实也就是结构体中有一个成员是函数指针),对于 C++ 的基础知识,我简单罗列如下:
    
    1、const的用法
    
    2、引用的用法
    
    3、#define用法
    
    4、构造函数
    
    5、析构函数
    
    6、拷贝构造
    
    7、new、delete 和 malloc、free 的区别
    
    8、访问限定符 public、private、protected
    
    9、深拷贝和浅拷贝
    
    10、友元函数
    
    11、static
    
    12、内联函数
    
    13、继承、虚继承
    
    14、钻石继承问题
    
    15、同名覆盖问题
    
    16、虚函数表
    
    17、虚指针
    
    18、虚函数、纯虚函数
    
    19、接口
    
    20、多态
    
    21、重写
    
    22、重载
    
    23、函数重载
    
    24、运算符重载
    
    25、流类库和文件
    
    2、C++ 进阶
    
    函数模板、类模板,C++ 中对于异常的处理,对于继承和多态底层的理解,对于 virtual 底层的理解等。
    
    对于 C++ 中 boost 库八大智能指针的掌握与理解,其核心是理解并且剖析过相应的源码, <scoped_ptr/shared_ptr/weak_ptr>
     这三个是最核心的智能指针,理解清楚智能指针的本质是,内存的申请与释放全部交给了对象管理,以避免人为疏忽,造成内
     存泄露。
    
    何为c/c++Linux方向的深入学习,就是在掌握上述前提技术基础之上的进阶学习。
    
    如果对上述技术觉得自己还有所不足的同学,推荐大家一个免费学习课程
    
    链接:https://ke.qq.com/course/417774?flowToken=1010788
    
    主要讲的就是c/cLinux方向的技术分享
    
    针对上面,从基础到 C++,我列出来的都是非常重要的知识点,当然了,也不可能全部列到,有很多技术问题,很多细节,
    我可能没有考虑到,没有写到,这个还需要在学习的时候,认真看看视频、看看书,把相应的知识都学到位,基础打扎实一些。
    

    五、项目 + 亮点 + 面试的一些思考

    1、
    
    项目:对于暑期找实习,或者秋招找工作,除了基础跟方向,接下来就是项目的准备了,对于 C++ 方向,很多人不
    知道要准备什么项目?其实项目不在于有多大、有多难,在于项目是否是自己真正做的,自己是否完全消化了,项目
    中是否有什么亮点?
    
    C++ 方面的实战项目,以数据结构 + 网络编程 + 实用工具为主;数据结构方面:可以实现红黑树、B+ 树,又或者用
    图解决什么实际问题,这些复杂的数据结构实现可以作为项目的。
    
    1.对于项目这块,面试的常见问题有:
    
    a、做这个项目的背景是什么?
    
    b、项目中具体有哪些模块,都是怎么实现的?
    
    c、项目中你的技术亮点有哪些?
    
    d、项目中有什么难点,你是怎么解决的?
    
    e、要是重新做这个项目,你这个项目有什么不足,你会进行哪些改进?
    
    2.亮点:找实习或者找工作,必须的有自己的亮点,我觉得在那么多基础知识中,数据结构 + C 语言就是我的亮点之一,
    只要问到关于这 2 个方面的问题,尽量回答全面清楚一些,还有就是自己对于 Linux 内核数据结构的剖析也是亮点之一,
    总之,一定要找到自己的亮点,与别人不一样的地方,这个就是面试的加分项。
    
    搜索引擎的底层原理、通讯的底层原理,对于这些底层的实现,有兴趣的可以了解看看,其实也没那么难,要是在面试
    的时候,能回答出对这些技术的了解,以及自己的一些思考,那就是加分项了。
    
    3、
    
    面试:春招实习、秋招决战,我不知道投了多少家公司,也不知道面试了多少场,基本上都是海投的,有了面试机会,
    就要抓住每一次,面试完多做总结、归纳、反思;其实面试很玄学,有自身实力的原因,也有运气的成分,相信自己,
    好好表现就好。
    
    对于面试,才开始我也是比较紧张的,但是当你面的多了,慢慢的就会调整过来,就会好很多,我现在把面试当做是
    ,这是一次近距离和优秀的人交流的机会,是一次学习进步的机会,有了这种心态,其实就好的多了。
    
    对于面试我也自我总结了一些面试题及回答经验,分析出题人出题的思路在哪里,毕竟我们不是要去死记面试题,重要
    是面试官考题的技术点在哪里?把技术点吃透,之后再问到类似的问题就不会慌了。
    

    六、总结

    推荐一些好的视频网站:b 站、牛客网、极客时间、51cto、腾讯课堂,网易云课程,基本上你所需要的视频资料都可以去找,实在不行上淘宝看看,我在b站也会日常更新,但是目前还不是很多。
    
    https://space.bilibili.com/437693511
    
    有兴趣的朋友可以看看
    
    我走的是 Linux C/C++ 路线,秋招投递这个岗位也很多,对于简历,面试方面觉得不好不足可以联系我,给你一定的指导吧,这个看时间。
    
    对于想走 Linux C/C++ 方向的同学,基本上按照上面的路线走,多实战操作。
    
    展开全文
  • 、瀑布模型 1.1什么是瀑布模型 1.2特点 1.3优缺点 1.4客户需求 二、快速原型模型 2.1什么是快速原型模型 2.2优缺点 2.3快速原型模型的思想产生、原理及运用方式 2.4类型 2.5开发步骤 三、增量模型 3.1...

    目录

    一、瀑布模型

    1.1什么是瀑布模型

    1.2特点

    1.3优缺点

    1.4客户需求

    二、快速原型模型

    2.1什么是快速原型模型

    2.2优缺点

    2.3快速原型模型的思想产生、原理及运用方式

    2.4类型

    2.5开发步骤

    三、增量模型

    3.1什么是增量模型

    3.2特点

    3.3优缺点

    3.4作用

    四、螺旋模型

    4.1什么是螺旋模型

    4.2特点

    4.3优缺点

    4.4限制条件


    一、瀑布模型

    1.1什么是瀑布模型

    1970年温斯顿.罗伊斯提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被广泛采用的软件开发模型

    瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落

    瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动

    从本质来讲,它是一个软件开发架构,开发过程是通过一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好 “返回”上一个阶段并进行适当的修改,开发进程从一个阶段“流动”到下一个阶段,这也是瀑布开发名称的由来

    对于经常变化的项目而言,瀑布模型毫无价值

    1.2特点

    1、阶段间具有顺序性和依赖性

    该阶段具有两重含义

    1. 必须等前一阶段的工作完成后,才能开始后一阶段的工作
    2. 前一阶段的输出文档就是后一阶段的输入文档,因此只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果

    2、推迟实现的观点

    对于规模较大的软件项目来说,往往编码开始的越早,最终完成开发所需时间越长。因为前面阶段的工作没做或做的不扎实,过早地考虑进行程序实现,往往导致大量返工,有时甚至发生无法弥补的问题

    瀑布模型在编码之前设置了系统分析与系统设计的各个阶段,分析与设计阶段的基本任务规定,在这两个阶段主要考虑目标系统的逻辑模型,不涉及软件的物理实现

    清楚的区分逻辑设计与物理设计,尽可能推迟程序的物理实现,是按照瀑布模型开发软件的一条重要的指导思想

    3、质量保证的观点

    为了保证所开发的软件的质量,在瀑布模型的每一个阶段都应坚持两个重要做法

    1. 每个阶段都必须完成规定的文档,没有交出合格的文档就是没有完成该阶段的任务
    2. 每个阶段结束前都要对所完成的文档进行评审,以便尽早发现问题,改正错误

    传统的瀑布模型过于理想化,实际的瀑布模型是带"反馈环"的。如图所示(图中实线箭头表示开发过程,虚线箭头表示维护过程),当在后面阶段发现前面阶段的错误时,需要沿图中左侧的反馈线返回前面的阶段,修正前面阶段的产品后再回来继续完成后面阶段的任务

    瀑布模型是文档驱动的模型,遵守这个约束可使软件维护变得比较容易一些,从而显著降低软件预算

    1.3优缺点

    优点:

    • 项目提供了按阶段划分的检查点
    • 当前一阶段完成后,您只需要去关注后续阶段
    • 可在迭代模型中应用瀑布模型

    缺点:

    • 不适合需求模糊或需求经常变动的系统
    • 由于开销的逐步升级问题,它不希望存在早期阶段的反馈
    • 在一个系统完成以前,它无法预测一个新系统引入一个机构的影响
    • 用户可能需要较长等待时间来获得一个可供使用的系统,也许会给用户的信任程度带来影响和打击
    • 最终产品往往反映用户的初始需求而不是最终需求

    1.4客户需求

    对项目而言,是否使用这一模型主要取决于是否能理解客户的需求以及在项目的进程中这些需求的变化程度;对于经常变化的项目而言,瀑布模型毫无价值,可以考虑其他的架构来进行项目管理,比如螺旋模型

    瀑布模型强调文档的作用,并要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主要问题在于:

    1. 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量
    2. 由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险
    3. 早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果

    按照瀑布模型的阶段划分,软件测试可以分为单元测试集成测试系统测试

     

    二、快速原型模型

    2.1什么是快速原型模型

    快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集

    快速原型模型是增量模型的另一种形式,在开发真实系统之前,迅速建造一个可以运行的软件原型 ,以便理解和澄清问题,在该原型的基础上,逐渐完成整个系统的开发工作

    它允许在需求分析阶段对软件的需求进行初步而非完全的分析和定义,快速设计开发出软件系统的原型,该原型向用户展示待开发软件的全部或部分功能和性能;用户对该原型进行测试评定,给出具体改进意见以丰富细化软件需求;开发人员据此对软件进行修改完善,直至用户满意认可之后,进行软件的完整实现及测试、维护

    2.2优缺点

    优点

    • 克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险
    • 适合预先不能确切定义需求的软件系统的开发

    缺点

    • 所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能会导致产品质量低下
    • 使用前提是要有一个展示性的产品原型,一定程度上可能会限制开发人员的创新

    2.3快速原型模型的思想产生、原理及运用方式

    1、思想产生

    在需求分析阶段得到完全、一致、准确、合理的需求说明十分困难

    获得一组基本需求说明后,就快速地使其“实现”,通过原型反馈,加深对系统的理解满足用户基本要求,使用户在试用后对需求说明进行补充和精确化,从而获得合理完整、现实可行的需求说明

    再把快速原型思想用到软件开发的其他阶段,向软件开发的全过程扩展

    先用相对少的成本,较短的周期开发一个简单的、但可以运行的系统原型向用户演示或让用户试用,以便及早澄清并检验一些主要设计策略,在此基础上再开发实际的软件系统

    2、原理

    利用原型辅助软件开发

    经过简单快速分析快速实现一个原型,用户与开发者在试用原型过程中加强通信与反馈,通过反复评价和改进原型,减少误解,弥补漏洞,最终提高软件质量

    3、运用方式

    由于运用原型的目的和方式不同,在使用原型时也采取不同的策略

    • 抛弃策略:将原型用于开发过程的某个阶段,促使该阶段的开发结果更加完整、准确、一致、可靠,该阶段结束后,原型随之作废。探索型和实验型就是采用此策略的
    • 附加策略:将原型用于开发的全过程,原型由最基本的核心开始,逐步增加新的功能和新的需求,反复修改反复扩充,最后发展为用户满意的最终系统,演化型快速原型就是采用此策略

    采用何种形式、何种策略运用快速原型主要取决于软件项目的特点、可供支持的原型开发工具和技术等,根据实际情况的特点决定

    2.4类型

    在软件开发中,原型是软件的一个早期可运行的版本,它反映最终系统的部分重要特性

    探索型

    这种原型目的是要弄清对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性

    实验型

    这种原型用于大规模开发和实现之前,考核方案是否合适,规格说明是否可靠

    进化型

    这种原型的目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统

    2.5开发步骤

    1、快速分析

    在分析人员与用户密切配合下,迅速确定系统的基本需求,根据原型需要体现的特征描述基本需求以满足开发原型的需要

    2、构造原型

    在快速分析的基础上,根据基本需求说明尽快实现一个可行的系统

    要求具有强有力的软件工具的支持,并忽略最终系统在某些细节上的要求,主要考虑原型系统能够充分反映所要评价的特性

    3、运行原型

    发现问题,消除误解,开发者与用户充分协调

    4、评价原型

    在运行的基础上,考核评价原型的特性,分析运行效果是否满足用户的愿望,纠正过去交互中的误解与分析中的错误,增添新的要求,并满足因环境变化或用户的新想法引起的系统要求变动,提出全面的修改意见

    5、修改

    根据评价原型的活动结果进行修改

    若原型未满足需求说明的要求,说明对需求说明存在不一致的理解或实现方案不够合理,根据明确的要求迅速修改原型

    快速原型模型不带反馈环,软件产品的开发基本上是线性顺序进行的

    快速原型的本质是"快速"。开发人员应尽可能地建造出原型系统,以加速软件开发过程,节约软件开发成本

    原型的用途是获知用户的真正需求,一旦需求确定了,原型将被抛弃

     

    三、增量模型

    3.1什么是增量模型

    增量模型也称渐增模型。使用增量模型开发软件时,把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并且能够完成特定的功能

    使用增量模型时,第一个增量构件往往实现软件的基本需求,提供最核心的功能

    把软件产品分解成增量构件时,唯一必须遵守的约束条件是,当把新构件集成到现有构件中时,所形成的产品必须是可测试的

    瀑布模型或快速原型模型目标是一次就把一个满足所有需求的产品提交给用户

    增量模型把整个软件产品分解成许多个增量构件,分批地逐步向用户提交产品

    3.2特点

    把瀑布模型的顺序特征与快速原型法的迭代特征相结合

    将软件看作一系列相互联系的增量,在开发过程的各次迭代中,每次完成其中的一个增量

    风险更大的增量模型

    确定用户需求后就着手拟定第一个构件的规格说明文档,完成后规格说明组转向第二个构件的规格说明文档,同时设计组开始涉及第一个构件

    使用该方法将不同的构件并行构建,可能加快工程进度,但将冒构建无法集成到一起的风险

    3.3优缺点

    优点

    1. 能在较短的时间内向用户提交可完成部分工作的产品
    2. 将待开发的软件系统模块化,可以分批次地提交软件产品,使用户可以及时了解软件项目的进展
    3. 以组件为单位进行开发降低了软件开发的风险。一个开发周期内的错误不会影响到整个软件系统
    4. 开发顺序灵活。开发人员可以对组件的实现顺序进行优先级排序,先完成需求稳定的核心组件。当组件的优先级发生变化时,还能及时地对实现顺序进行调整

    缺点

    1. 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构
    2. 在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性
    3. 如果增量包之间存在相交的情况且未很好处理,则必须做全盘系统分析,这种模型将功能细化后分别开发的方法较适应于需求经常改变的软件开发过程

    3.4作用

    1、开发初期的需求定义只是用来确定软件的基本结构,使得开发初期用户只需要对软件需求进行大概的描述;而对于需求的细节性描述,则可以延迟到增量构件开发时进行,以增量构件为单位逐个地进行需求补充。这种方式能够有效适应用户需求的变更

    2、软件系统可以按照增量构件的功能安排开发的优先顺序,并逐个实现和交付使用。不仅有利于用户尽早用上系统,能够更好地适应新的软件环境,而且在以增量方式使用系统的过程中,还能获得对软件系统后续构件的需求经验

    3、软件系统是逐渐扩展的,因此开发者可以通过对诸多构件的开发,逐步积累开发经验。实际上,增量式开发还有利于技术复用,前面构件中设计的算法、采用的技术策略、编写的源码等,都可以应用到后面将要创建的增量构件中去

    4、增量式开发有利于从总体上降低软件项目的技术风险。个别的构件或许不能使用,但一般不会影响到整个系统的正常工作

    5、实际上,在采用增量模型时,具有最高优先权的核心增量构件将会被最先交付,而随着后续构件不断被集成进系统,这个核心构件将会受到最多次数的测试。这意味着软件系统最重要的心脏部分将具有最高的可靠性,这将使得整个软件系统更具健壮性

     

    四、螺旋模型

    4.1什么是螺旋模型

    螺旋模型是一种演化软件开发过程模型,它兼顾了快速原型的迭代特征以及瀑布模型的系统化与严格监控。螺旋模型最大的特点在于引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减小损失。同时,在每个迭代阶段构建原型是螺旋模型用以减小风险的途径

    螺旋模型是快速原型模型以进化的开发方式为中心,在每个项目阶段使用瀑布模型法。该模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每迭代一次,软件开发又前进一个层次。用螺旋模型的软件过程如下

    简化的螺旋模型

    完整的数据模型

     

    图中带箭头的点划线的长度代表当前累计的开发费用,螺旋线的角度值代表开发进度,螺旋线的每个周期对应于一个开发阶段

    图中的四个象限代表了以下活动

    1. 制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件
    2. 风险分析:分析评估所选方案,考虑如何识别和消除风险
    3. 实施工程:实施软件开发和验证
    4. 客户评估:评价开发工作,提出修正建议,制定下一步计划

    4.2特点

    螺旋模型在“瀑布模型”的每一个开发阶段前引入一个非常严格的风险识别、风险分析和风险控制,它把软件项目分解成一个个小项目。每个小项目都标识一个或多个主要风险,直到所有的主要风险因素都被确定

    螺旋模型强调风险分析,使得开发人员和用户对每个演化层出现的风险有所了解,继而做出应有的反应,因此特别适用于庞大、复杂并具有高风险的系统

    4.3优缺点

    优点

    1. 对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标
    2. 减少了过多测试(浪费资金)或测试不足(产品故障多)所带来的风险
    3. 在螺旋模型中维护只是模型的另一个周期,在维护和开发之间并没有本质区别

    缺点

    1. 采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失
    2. 过多的迭代次数会增加开发成本,延迟提交时间

    4.4限制条件

    1. 螺旋模型强调风险分析,但要求许多客户接受和相信这种分析,并做出相关反应是不容易的,因此,这种模型往往适应于内部的大规模软件开发
    2. 如果执行风险分析将大大影响项目的利润,那么进行风险分析毫无意义,因此,螺旋模型只适合于大规模软件项目
    3. 软件开发人员应该擅长寻找可能的风险,准确地分析风险,否则将会带来更大的风险

    一个阶段首先是确定该阶段的目标,完成这些目标的选择方案及其约束条件,然后从风险角度分析方案的开发策略,努力排除各种潜在的风险,有时需要通过建造原型来完成。如果某些风险不能排除,该方案立即终止,否则启动下一个开发步骤。最后,评价该阶段的结果,并设计下一个阶段

    展开全文
  • MQTT协议,终于有人讲清楚

    万次阅读 多人点赞 2021-07-06 01:00:22
    大家好,我是小麦,最近做了一个物联网的项目,顺便总结一下MQTT协议。大家都知道,MQTT协议在物联网中很常用,如果你对此还不是很了解,相信这篇文章可以带你入门。mqtt协议1 MQTT协...

    6步!教你写一个mqtt调试助手_GREYWALL-CSDN博客点击上方“小麦大叔”,选择“置顶/星标公众号”福利干货,第一时间送达大家好,我是小麦,之前写过一篇MQTT的文章,里面用来测试的mqtt client程序是自己编译的。可以参考上一篇文章《...https://great.blog.csdn.net/article/details/120898177

    加入千人技术交流群icon-default.png?t=LA92https://t.1yb.co/FOLA

    大家好,我是小麦,最近做了一个物联网的项目,顺便总结一下MQTT协议。大家都知道,MQTT协议在物联网中很常用,如果你对此还不是很了解,相信这篇文章可以带你入门。

    • mqtt协议

    • 1 MQTT协议特点

      • 发布和订阅

      • QoS(Quality of Service levels)

    • 2 MQTT 数据包结构

      • 2.1 MQTT固定头

      • 2.2 MQTT可变头 / Variable header

      • 2.3 Payload消息体

    • 3 环境搭建

      • 3.1 MQTT服务器搭建

      • 3.2 MQTT Client

    • 4 总结

    mqtt协议

    MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。

    MQTT最大优点在于,用极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务

    作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。

    1 MQTT协议特点

    MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。

    MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。

    其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。

    MQTT协议当前版本为,2014年发布的MQTT v3.1.1。除标准版外,还有一个简化版MQTT-SN,该协议主要针对嵌入式设备,这些设备一般工作于TCP/IP网络,如:ZigBee。

    MQTT 与 HTTP 一样,MQTT 运行在传输控制协议/互联网协议 (TCP/IP) 堆栈之上。

    MQTT OSI

    发布和订阅

    MQTT使用的发布/订阅消息模式,它提供了一对多的消息分发机制,从而实现与应用程序的解耦。

    这是一种消息传递模式,消息不是直接从发送器发送到接收器(即点对点),而是由MQTT server(或称为 MQTT Broker)分发的。

    MQTT 服务器是发布-订阅架构的核心

    它可以非常简单地在Raspberry Pi或NAS等单板计算机上实现,当然也可以在大型机或 Internet 服务器上实现。

    服务器分发消息,因此必须是发布者,但绝不是订阅者!

    客户端可以发布消息(发送方)、订阅消息(接收方)或两者兼而有之。

    客户端(也称为节点)是一种智能设备,如微控制器或具有 TCP/IP 堆栈和实现 MQTT 协议的软件的计算机。

    消息在允许过滤的主题下发布。主题是分层划分的 UTF-8 字符串。不同的主题级别用斜杠/作为分隔符号。

    我们来看看下面的设置。

    • 光伏发电站是发布者(Publisher)。

    • 主要主题(Topic)级别是"PV",这个工厂发布两个子级别"sunshine""data"

    • "PV/sunshine"是一个布尔值(true/false,也可以是 1/0),充电站需要它来知道是否应该装载电动汽车(仅在阳光普照时 :))。

    • 充电站(EVSE)是订阅者,订阅"PV/sunshine"从服务器获取信息。

    • "PV/data" 另一方面,以 kW 为单位传输工厂产生的瞬时功率,并且该主题可以例如通过计算机或平板电脑订阅,以生成一天内传输功率的图表。

    这就是一个简单的MQTT的应用场景,具体如下图所示;

    MQTT 发布和订阅

    QoS(Quality of Service levels)

    服务质量是 MQTT 的一个重要特性。当我们使用 TCP/IP 时,连接已经在一定程度上受到保护。但是在无线网络中,中断和干扰很频繁,MQTT 在这里帮助避免信息丢失及其服务质量水平。这些级别在发布时使用。如果客户端发布到 MQTT 服务器,则客户端将是发送者,MQTT 服务器将是接收者。当MQTT服务器向客户端发布消息时,服务器是发送者,客户端是接收者。

    QoS  0

    这一级别会发生消息丢失或重复,消息发布依赖于底层TCP/IP网络。即:<=1

    QoS  1

    QoS 1 承诺消息将至少传送一次给订阅者。

    QoS  2

    使用 QoS 2,我们保证消息仅传送到目的地一次。为此,带有唯一消息 ID 的消息会存储两次,首先来自发送者,然后是接收者。QoS 级别 2 在网络中具有最高的开销,因为在发送方和接收方之间需要两个流。

    2 MQTT 数据包结构

    • 固定头(Fixed header),存在于所有MQTT数据包中,表示数据包类型及数据包的分组类标识;

    • 可变头(Variable header),存在于部分MQTT数据包中,数据包类型决定了可变头是否存在及其具体内容;

    • 消息体(Payload),存在于部分MQTT数据包中,表示客户端收到的具体内容;

    整体MQTT的消息格式如下图所示;

    2.1 MQTT固定头

    固定头存在于所有MQTT数据包中,其结构如下:

    下面简单分析一下固定头的消息格式;

    MQTT消息类型 / message type

    **位置:**byte 1, bits 7-4。

    4位的无符号值,类型如下:

    名称流方向描述
    Reserved0不可用保留位
    CONNECT1客户端到服务器客户端请求连接到服务器
    CONNACK2服务器到客户端连接确认
    PUBLISH3双向发布消息
    PUBACK4双向发布确认
    PUBREC5双向发布收到(保证第1部分到达)
    PUBREL6双向发布释放(保证第2部分到达)
    PUBCOMP7双向发布完成(保证第3部分到达)
    SUBSCRIBE8客户端到服务器客户端请求订阅
    SUBACK9服务器到客户端订阅确认
    UNSUBSCRIBE10客户端到服务器请求取消订阅
    UNSUBACK11服务器到客户端取消订阅确认
    PINGREQ12客户端到服务器PING请求
    PINGRESP13服务器到客户端PING应答
    DISCONNECT14客户端到服务器中断连接
    Reserved15不可用保留位

    标识位 / DUP

    **位置:**byte 1, bits 3-0。

    在不使用标识位的消息类型中,标识位被作为保留位。如果收到无效的标志时,接收端必须关闭网络连接:

    数据包标识位Bit 3Bit 2Bit 1Bit 0
    CONNECT保留位0000
    CONNACK保留位0000
    PUBLISHMQTT 3.1.1使用DUP1QoS2QoS2RETAIN3
    PUBACK保留位0000
    PUBREC保留位0000
    PUBREL保留位0000
    PUBCOMP保留位0000
    SUBSCRIBE保留位0000
    SUBACK保留位0000
    UNSUBSCRIBE保留位0000
    UNSUBACK保留位0000
    PINGREQ保留位0000
    PINGRESP保留位0000
    DISCONNECT保留位0000

    • DUP:发布消息的副本。用来在保证消息的可靠传输,如果设置为 1,则在下面的变长中增加MessageId,并且需要回复确认,以保证消息传输完成,但不能用于检测消息重复发送。

    • QoS发布消息的服务质量(前面已经做过介绍),即:保证消息传递的次数

      • 00:最多一次,即:<=1

      • 01:至少一次,即:>=1

      • 10:一次,即:=1

      • 11:预留

    • RETAIN:发布保留标识,表示服务器要保留这次推送的信息,如果有新的订阅者出现,就把这消息推送给它,如果设有那么推送至当前订阅者后释放。

    剩余长度(Remaining Length)

    位置:byte 1。

    固定头的第二字节用来保存变长头部和消息体的总大小的,但不是直接保存的。这一字节是可以扩展,其保存机制,前7位用于保存长度,后一部用做标识。当最后一位为 1时,表示长度不足,需要使用二个字节继续保存。例如:计算出后面的大小为0

    2.2 MQTT可变头 / Variable header

    MQTT数据包中包含一个可变头,它驻位于固定的头和负载之间。可变头的内容因数据包类型而不同,较常的应用是做为包的标识:

    Bit7  — 0
    byte 1包标签符(MSB)
    byte 2…包标签符(LSB)

    很多类型数据包中都包括一个2字节的数据包标识字段,这些类型的包有:

    PUBLISH (QoS > 0)、PUBACK、PUBREC、PUBREL、PUBCOMP、

    SUBSCRIBE、SUBACK、UNSUBSCRIBE、UNSUBACK

    2.3 Payload消息体

    Payload消息体是MQTT数据包的第三部分,CONNECT、SUBSCRIBE、SUBACK、UNSUBSCRIBE四种类型的消息 有消息体:

    • CONNECT,消息体内容主要是:客户端的ClientID、订阅的Topic、Message以及用户名和密码

    • SUBSCRIBE,消息体内容是一系列的要订阅的主题以及QoS

    • SUBACK,消息体内容是服务器对于SUBSCRIBE所申请的主题及QoS进行确认和回复。

    • UNSUBSCRIBE,消息体内容是要订阅的主题。

    3 环境搭建

    介绍完基础理论部分,下面在Windows平台上搭建一个简单的MQTT应用,进行简单的应用,整体架构如下图所示;

    3.1 MQTT服务器搭建

    目前MQTT代理的主流平台有下面几个:

    • Mosquitto:https://mosquitto.org/

    • VerneMQ:https://vernemq.com/

    • EMQTT:http://emqtt.io/

    本文将使用 Mosquitoo 进行测试,进入到安装页面,下载自己电脑的系统所适配的程序;

    下载页面

    安装成功之后,进入到安装路径下,找到mosquitto.exe

    按住Shift,右键鼠标点击空白处,然后打开Powershell,正常打开一个终端软件即可;

    • 输入./mosquitto.exe -h 可以查看相应的帮助;

    • 输入./mosquitto.exe -p 10086,就开启了MQTT服务,监听的地址是127.0.0.1,端口是10086

    具体如下图所示;

    3.2 MQTT Client

    服务器搭建好了,下面就是开启客户端,进行发布和订阅,这样就可以传输相应的消息。

    这里我使用的是自己编译了一个QT mqtt client 程序,是基于Qt的官方库进行编译的,下面打开这个软件,下一期简单介绍一下如何完成这个客户端,并设置好相应参数:

    • 地址:127.0.0.1

    • 端口:10086

    然后订阅主题,就可以互相发送数据了,具体如下图所示;

    结合前面的图片来看,整体的架构如下所示;

    4 总结

    本文简单介绍了MQTT协议的工作原理,以及相应的协议格式,简单介绍了协议的一些细节,具体举出了相应的应用场景,作者水平和能力有限,文中难免存在错误和纰漏,请大佬不吝赐教。

    本期就到此结束了,我是小麦,我们下期再见。

    —— The End ——

    推荐好文  

    RingBuff在多核通讯之间的妙用

    STM32使用DMA发送串口数据

    BLDC驱动入门最简教程

    Sourcetail 一款代码编辑神器,让看源码如丝般顺滑

    原创不易,欢迎转发、留言、点赞、分享给你的朋友,感谢您的支持!

    长按识别二维码关注我

    你点的每个好看,我都认真当成了喜欢

    展开全文
  • 中信银行总行信息科技部今年在...、 校招时间线 网申(11月初截止)+ 行测 宣讲会+提前批面试 10月14日 笔试(11月7日) 邮件通知实习(11月28日),正式批的同学大概也是这两天发的面试通知。 实习(2019年12月...

    已offer
    中信银行总行信息科技部今年在成都设立研发中心,而且今年总部也在扩招,听说一共招1000+(宣讲会说的),其中成都这边招400+,目前来看,估计今年比较好进
    ·········································分割线···············································
    2020.01.17更新:
    看群里HR说的,估计真的会招1000个人,因为第一批北京+成都实习的,HR说一共发了500封左右的签约邮件。后面还有几批实习签约的,估计没有一千也有七八百?
    2020.04.15更新:(以下内容全部来自脉脉查询)
    关于薪资,在脉脉上看了一下,总包应该会给到,年终奖会发12个月及以上。
    关于职级,校招统一定级T1(社招也是T1,但是校招和社招是两条线,没可比性),半年试用期+2年锁定期,再过半年开始第一次晋升期(第一次晋升基本都能从T1升到T2,也就是说校招最快三年可以升级到T2),之后每半年一次晋升的机会,听说T6属于高级职位,一般来讲T6之前升级都比较好升

    一、 校招时间线

    1. 网申(10月25截止)+ 行测
    2. 宣讲会+提前批面试 10月14日
    3. 笔试(11月7日)
    4. 邮件通知实习(11月28日),正式批的同学大概也是这两天发的面试通知。
    5. 实习(2019年12月2日-12月5日(原计划3天,改成了4天)),成都场第一批实习,实习会刷人,实习过程中和实习导师进行了一个简单的面谈,最后一天有一个4对1的专业面试,后面还会有一个现场的HR面谈。
    6. 发二次面谈邮件(12月6日),需要的资料是真的多,,,,
    7. 二次面谈(12月7日)
    8. 体检:12月20日 发52人体检邮件,共500人左右会收到体检通知,分批发送(不知道是不是按照实习的批次发送的),可能持续两周之久,本人体检(12月23日已通知)
    9. 背调(12月23日已通知)
    10. 签约,可以签两方:2020年1月9日邮件通知签约时间,北京10号签约会,成都11号签约会。

    附:2019校招时间线
    10月18日 笔试,
    两周后发面试邮件,
    11月21日 现场面试,
    11月22日 发体检背调邮件,
    12月14日 发邮件offer,
    12月19日 签约会
    实习(持续两到三周)

    注:去年和今年的流程有些不同,今年增加了提前批预面试(宣讲会面试),没有参加宣讲会面试的同学则是按照正常笔试面试实习的流程进行(流程会慢一些),并且今年实习日期也减少到了3天,可能是因为扩招,人太多的原因。并且今年是先实习再签约,而邮件中也说了,实习可能会刷人。(也有一种说法是,去年有两种流程,一种是笔试成绩高,直接签约,签约后再实习,另一种是笔试成绩不高,所以先实习,实习通过再签约)

    二、 笔试

    11月7日,线上笔试形式,题型:英语,行测,计算机知识(就是银行信息科技岗笔试常见题型),据说笔试会刷人,想来中信的,手里没offer的,还是刷刷题,认真准备一下。

    三、 面试

    1. 10月14日,电子科技大学,宣讲会后现场面试(因为四川场只有电子科技大学和四川大学,所以面试的时候有成电的,交大的,西华的等等),将近200号人(根据宣讲会签到的先后顺序领取面试号码),面试分为两部分,一面技术面,二面HR面。可能因为人数太多的原因,面试很水,一面和二面基本都是三分钟,自我介绍30秒左右,超过了会被打断,一面面试官按照简历问,因为我是做算法的,项目也写的是算法的项目,然而面试官没有问,打断我的自我介绍直接问SQL,数据结构与算法(我简历里简单写了一下),根据现场询问其他小伙伴,数据结构与算法必问,其他的还是按照简历来问(开发相关的)。一面会进行打分(1,2,3,4,5),低于3分的不能进入二面,我被打了3分(没有开发项目,而且问的问题回答的一般),侥幸进入二面,马上就去另一个教室门口等二面,二面也是进去大概30秒自我介绍,然后被打断,问我四六级成绩,想去北京还是成都,为什么想留成都(我不是四川人),奖学金情况,成绩排名情况,问我专业问题(我是非科班的),看我是做算法的,问我会不会java,说这边是要做开发的。然后结束。听说二面也有一个打分,但是我没看到,不知道是不是确实有。最后面试官问我有没有网申,测评有没有做,让我等着参加笔试。
    2. 没有进行宣讲会预面试的则是顺延到了正式批,所以实习的日期应该也会更慢一些。

    四、 实习

    实习是在下周,目前还没有开始,北京第一批实习的同学们在28日已经开始了第一天的工作(人数太多,实习每批次进行,通知邮件也是分批次的,)。实习的大概内容就是第一天HR会把这一批实习的人分到不同的部门(这个部门大概率就是你以后入职的部门),然后拉入不同的微信群,有些部门划分了5个人,有些则划分了20个人,期间如果觉得自己不适合这个部门,可以申请调换。
    实习内容的话,应该是做一些简单的工作,然后做汇报。
    实习要求自备笔记本电脑,据说实习的最后一天还会有一次面试。
    目前**中信银行总行信息科技部有两个研发中心,一个北京,一个成都,**目前两个地点的第一批实习通知应该已经发送完毕,看样子是按照就近原则,北京的发了北京高校的学生,成都的发了成都高校的学生。路费,住宿费都要自己掏腰包,不管饭。。。(北京那边管饭)。北京那边有两个实习地点,成都这边则是在中信银行四川分行,成都研发中心地点在兴隆湖,可能还没有建好。
    今年的实习可能一直会持续到12月下旬(估计每次实习人数也就100人左右?)
    后续实习情况等实习完毕再更新。。。。。。。
    ·········································分割线···············································
    12.02更新:
    今天实习第一天,地点在中信银行四川分行,第一批成都实习一共180人左右,被分为了8个小组,每组十几个人(应该有一些人放弃了实习,实际来了125人,中午还走了一些人,估计今晚还会有一些人放弃,,,一群人在一个会议室敲代码,讨论项目,感觉很闷热,没有wifi,需要自己手机开热点,讲道理,实习体验有点点差)。一个老师带两组成员,每组的题目都是一样的,每组合作完成这个题目。和北京那边有些不同,这边没有分科室,就是分了几组人员,老师是北京那边调过来的。
    实习的同学去了之后没有工位,大家都挤在一个会议室里,HR看人太多了,后面分成了三个会议室,实习时间由3天改为4天(这4天都要在这个会议室度过。)
    实习日期: 12.02——12.05,上午9点到12点,下午1点到5点半。最后一天需要小组答辩展示成果,这个实习就类似于软件工程实验课吧。。。
    在这里插入图片描述
    在这里插入图片描述

    上午: 主要是分了一下组,简单的介绍了一下实习,题目:某银行自营或代销某产品,半开放式题目,具体题目自拟,做出一套系统。可加入一些自己的特色内容。目的是考察大家的合作能力,项目能力,以及了解一下银行在这方面的业务知识。分组后小组讨论题目。

    中午: 实习地点在高新区,出门就是奥克斯商场,负一楼有很多吃的,但是人也很多,需要排队。

    下午: 导师补充说明:因为这次实习大部分小组都使用的java+sql,对于不会这两种语言的同学来说,不必担心,可以写一些文档类或者资料搜集类的工作,答辩的时候我们看的是综合能力,以及小组整体的完成度,不是只看代码能力。我们中信银行不只有开发岗,也有一些其他的岗位,看各位的岗位匹配度。
    导师介绍成都研发中心的情况:地点在兴隆湖,2019年12月23日开始运营,组织了一些社招人员,并且从某地调来了一些中信的员工(没听清是哪里调来的),今年第一批校招,往年招的很少,对于大家来说可能是一次机遇。

    小记: 导师上午说的是原计划5天的实习内容,后来听说邮件通知的是3天,所以说时间会比较紧,任务之前安排的是5天的,后面他们又商量了一下,改为了4天,第四天下午答辩。在周五或者周末会有HR进行一次两三分钟的面谈(类似于一次HR面吧,估计是聊聊这次实习的收获)。在我看来,这次成都的实习,其实就相当于一个软件工程实验课,只是周期由一学期改成了4天,小组成员由几位变成了十几位。类似于那种马拉松编程大赛,24小时编程大赛之类的,个人感觉目的是让实习整个系统开发流程,了解银行理财购买系统的相关知识,团结合作能力,创新能力等,4天时间,应该不会主要考察代码能力,大家应该都是在现有开源代码中进行修改加以利用。

    ·········································分割线···············································
    12.3更新:
    上午: 每组出两位成员去进行一个简单的答辩,讲一下自己的项目思路,设计思路,技术使用等。由导师指导一下,看看是否偏题,是否能按期完成等。
    课余活动: 12.3日午休时间,搜集资料,任务:宣传自己的队伍,设计logo,队名,口号,做PPT,介绍每一位成员和各自特点等。12.4日中午午休时间答辩
    其他没什么说的了。

    ·········································分割线···············································
    12.4更新:
    上午: 早上签到后去导师那补充信息:本科学校,本科专业,代码量,学没学过计算机基础课等。
    明天答辩形式: 每组半小时,PPT的形式,组内生成的各种代码,需求文档,设计文档,测试文档等所有文件统一发送给老师。
    中午: 13:30的时候有一个小组宣传活动的答辩,一共8个组,每个组以PPT的形式进行展示,前两组太过牛批,当然了,只是展示了一下,老师们也没说什么,就结束了。
    下午: 每个人找导师面谈几分钟,问你在这次实习中负责哪部分,然后问一个相关部分的很基础的问题;对996的看法愿不愿意做开发,问了手中offer的情况,简单介绍中信在成都新成立的研发中心的情况(据老师说,今年招聘可能较去年严格一些,可能会考察代码能力)。下午快下班的时候,有一位老师拿着一张打印的名单叫人去面试(每组人员中,在这份表单上的人,随便去4个)。去的同学回来后表示,这是一次多对1的技术面,没有自我介绍,上来就是问技术问题(数据库,java,数据结构与算法相关)。因为名单上也就几十个人,猜测是统计了非计算机专业的人员, 然后组织一个简单的面试,问问计算机基础情况。明天其他人应该陆陆续续会去面试。
    晚上: 群里老师通知带一份简历,实习这几天自己做的东西以及成果写成一段话上交。(估计明天又要面试了,,)
    注: 据老师讲,成都新成立的研发中心是北京研发中心那边的某一两个处+其他处的一些员工,搬迁到成都这边,又组织了一批社招人员。 成都这边预计会拆分成五个处/科室,做分行的一些业务,还有其他的任务,后续根据总部的安排进行扩充,目前成都这边只有开发岗,没有其他岗位,后续可能会招聘(所以会问愿不愿意做开发,可能有些同学想做算法,有些想做产品之类的)。

    ·········································分割线···············································
    12.5更新:
    上午: 导师陆续叫名单上的人去面试(4对1,专业面试),名单上大概有四五十人?,原以为是统计了非计算机专业的同学,后面得知,有些计算机专业的同学也进行了面试,而导师在实习结束后说只是随机抽取了几十位同学进行了面试。而面试的内容大概就是问问你学过什么计算机专业课,然后问计算机专业课的一些基础知识,导师的意思是找到优秀的同学,同时剔除完全没有代码能力的人。(其实跟宣讲会那个面试差不多,也就是常规的银行面试套路,喜欢问计算机专业基础课)
    下午: 抽出了一两位导师继续面试,剩下的导师参与实习答辩,下午两点开始,一直持续到下午六点,共8组,预计每组30分钟(20分钟PPT讲解+项目展示,10分钟提问),最终参与实习答辩的导师应该是6位。答辩重点: 需求分析,银行业务了解,业务逻辑,前端页面展示,没有看具体代码。后续导师针对展示的页面与系统进行简单的提问。下午6点,导师宣布实习结束,在下周末之前会有一次现场HR面谈
    小记: 通过网上的了解,结合此次实习的体验,基本可以验证两个点,第一,中信内部会有加班时长排名,第二,每个月会有代码量的要求作为绩效考核的一项标准,第三,没有加班费,加班长短看科室,但是995我觉得没跑,甚至996。

    五、 二次面谈

    5号下午6点实习结束,6号晚上发了二次面谈邮件,7号现场面谈,需要准备的资料非常多,像是一次背调。去了现场之后按照签到顺序叫号依次面谈,面谈形式1对1,旁边有一位工作人员进行信息录入。面试官应该是HR,问的问题基本和宣讲会之后的二面一样:自我介绍,想留哪个地区,为什么想留这个地区,能不能接受996,为什么想来中信,拿了哪些offer,还有三方吗等等,就是基本问题,照实回答就可以。然后就结束了。最后说了一句:回去等通知吧。

    小记:此次实习应该是刷了一些人(有些人没有被通知过来二次面谈),但是应该刷的人应该很少, 银行面试不同于互联网纯看技术,有很多不确定性因素,可能你的表现力,你的态度,也是一个考核的点。另外二次面谈不知道刷不刷人,接着等通知吧。

    六、 建议

    1. 简历与自我介绍:

    简单说一下,给明年准备签银行的小伙伴们一些建议,银行还是比较看重学校和专业的,相比之下,更看重专业,也就是计算机专业的,如果你不是计算机专业的,但是你所在的学院和计算机专业有相关点,那么在你的简历中一定要标清楚你的学院;如果你研究生的研究方向也是计算机相关的,那么你也要在简历中突出;另外如果本科课程中有学过计算机相关基础课的,也要在简历中标明。

    除了上面要在简历中标明的东西外,自我介绍中也要重点体现,可能你那些和银行不匹配的项目,在面试官那里还不如计算机基础课入耳。如果专业和计算机无关,那么建议提前一两个月学一学(去银行信科岗,,起码要会一点SQL,数据结构,一门语言吧,这些提前学一学,写到简历中,自我介绍时重点说一下)。

    还有就是四六级和奖学金,这是HR比较看重的点

    2. 技术积累:

    银行最看重的技术是java和SQL。其次是数据结构
    刷一下银行信科的笔试题。

    3. 宝洁八大问:

    类似这种问题,自己想想怎么回答,不需要背别人的答案,根据自己的性格和特点,自己总结一下。
    还有就是必问问题:
    为什么想来银行?
    为什么想来我们银行?
    我们银行和XX银行的区别?
    你怎样看待私企与国企?

    七、 签约

    可以两方入职
    北京户口的话中信肯定不稳,今年又扩招,更不稳了。当然我报的成都岗,不需要户口。。。
    ·········································分割线···············································
    12.14更新:
    实习群内工作人员说目前成都第一批实习通过的签报名单已经于12月12日递交给总部了,各位同学的资料审核通过并且领导签批通过后会邮件通知后续的签约和体检。个人估计12月底或者下月初。(不知道是先体检还是先签约,工作人员没说,反正这个时间节点肯定会有结果,体检or签约,收到后续邮件之后,后面应该就不会刷人了)。
    另外,工作人员说这次面谈的人员中,可能还会刷人。

    ·········································分割线···············································
    12.20更新:
    实习群内人资说体检已经发了52个人,分批发送,一共500人左右,有可能持续两周之久。

    ·········································分割线···············································
    12.23更新:
    收到背调邮件+短信,群内人资说今天和明天大概会发400封体检和背调的邮件,目前收到了背调邮件,等待明天的体检邮件。
    随后收到了体检短信,免费体检,自行预约时间。

    ·········································分割线···············································
    2020.01.09更新:
    2020年1月9日邮件通知签约时间,北京10号签约会,成都11号签约会。

    ·········································分割线···············································
    2020.01.11更新:
    成都地区现场签约会:
    以下内容均为HR所说,括号中内容为博主补充。

    1. 可签两方走改派入职;
    2. 六险三金:企业年金,补充医疗保险,终身重疾险,(说以后生大病基本不用花钱了)
    3. 公积金: 第一年正常缴纳,以后按照上一年的总收入(总月薪+年终)*12%的比例来缴纳
    4. 试用期六个月,理论上无年终奖
    5. 第一次签约4年,第二次3年,第三次签3年或者签“终身”合同。(或者是第四次签“终身”合同)
    6. **两年锁定期:**实习期结束后,还有两年的锁定期,这两年不会晋升
    7. 快速成长期:锁定期结束后,每年两次晋升的机会。(看脉脉上说每次晋升可以涨4,5W的年薪)
    8. 定级T1,硕士研究生好像都是一样的,HR说本科和硕士薪资差不多;社招一般定级也是T1,但是社招和校招是两条不同的线
    9. 996:HR说封顶996,说目前经济不景气,而且公司正在转型,加班是必然。HR自称已经一年没有过过周六了。周六的话一般九点十点来上班,下午三四点就下班了。
    10. 上班时间早晨8点半,11点半下班,下午1点半上班,5点半下班。(网上很多人说每周124八点半下班,周356正常下班,其中周三是健身日,周五是家庭日。)
    11. 上班地点,兴隆湖这边的一个科创中心租了几层,未来两三年要搬到附近其他的楼(说要自己买一栋楼)
    12. 与总行签约,总行编制
    13. 福利部分: 饭补(据说每个月1400),交通补,话费补(据说交通补和话费补已经没了),过节费(估计几千块),高温费(HR说只有北京有,成都没有);还有一些隐形福利,包括购物卡,电影票等非现金;没有房补,国家不允许发房补了
    14. 薪资: 试用期税前7000-8000,转正后,年终占年薪将近50%,具体薪资,HR说是机密,不能说,打了个比方:去中南大学/东南大学校招的某石油企业,给本科开10W,硕士15W,博士20W,去非洲的话25W,然后说在中信的薪资是肯定比这个企业开出最高档的薪资要高的。(不知道加没加福利补贴,我猜肯定是加了的);年终奖一般人都能拿到将近年薪的50%,也就是将近12个月的月薪(这句话是HR说的,不知道是不是画饼)
    15. 违约金:2W
    16. 理论上是3月1号之前都可以签约,因为三月份就要开始启动春招了。但是后面的情况说不准,最好是尽快签约。
    17. 有两周的入职培训
    18. 专业培训:入职后有很多培训可以参加和学习
    19. 优选计划:(具体名字记不清了),从校招生里选出大概10%的优秀应届生,去省分行或其他机构进行学习之类的。

    博主补充说明:
    20. 1月10号是北京的签约会,不管是交流群里还是牛客还是offershow,都有人说了薪资,说北京签约会,透露出的薪资是本科26W起,不包含福利补贴,硕士比本科要高一点; 成都薪资是北京的85折(按照这个说法的话,成都就是22W起)
    21. 如果真如HR所说的,一般人都能拿到12个月的年终的话,这个成都22W的年薪感觉还是比较可靠的,但是福利补贴肯定是缩水了的,听说有些福利已经没了,也有人说以其他形式进行补发了的。
    22. 毕竟两万块钱的违约金,签了肯定就是要去的,所以博主也还没签,趁着这个周末,好好思考一下,还是蛮心动的。

    ·········································分割线···············································
    2020.01.12更新:
    因为我是成都地区的,北京那边的签约会不太了解,成都这边HR简单说了一下关于去北京的问题,主要就是户口。
    中信这边每年的户口指标不是很多,而且今年又扩招,所以只能给一部分人京户:
    第一,签三方的,两方同学应该是没戏;HR说大概每年四月份左右会出来今年的户口指标,到时候拿着各位的 三方协议 去给各位办理北京户口(听说必须拿三方协议才能办户口,而不是中信要求的),然后HR的意思是,在这之前只要和我们签三方的同学都有可能拿到京户
    第二,排名靠前的,实习的时候听说有个打分,然后出一个排名。

    八、 加班与薪资情况(道听途说)

    offershow和脉脉上可查,
    北京那边校招税前20W+5W福利补贴,平时与年终各一半(绩效A应该可以拿更多) 。 (我觉得薪资依然是个谜,北京25W是网上查到比较可靠的,也有说其他的,并且说今年要降薪,,搞不懂,如果有了解的,欢迎留言补充)。如果成都也是这个薪资的话,那么在成都这边的银行中,还是很有竞争力的。
    中信据说有代码量考核,每个月要完成多少行的代码量,作为绩效考评。
    听说北京那边社招的有申请转到成都的,然后降薪了,北京的员工转到成都,薪资打85折(5W的福利不打折,但是福利不清楚都有什么,竟然有5W,,,不知道包不包含企业缴纳的五险一金),所以不清楚,校招的话成都这边会不会打折。。如果打折的话感觉性价比不高了。
    据说995 996是日常,忙的时候可能9106,项目上线的时候可能要通宵?每周124,早晨8点半上班,晚上8点半下班。周35一般正常点下班。(都是道听途说,无法考证)
    成都这边工作地点应该就是兴隆湖,属于天府新区,成都市重点发展区域,但是。。。那边现在很荒凉,而且很远,,从兴隆湖到春熙路/天府广场的话坐地铁估计要一个小时吧。

    九、 个人感受

    在校招开始前打算去银行,所以有过还算深入的了解,银行软开的话,只看这些比较大型的银行中的总行信息科技部,中信银行可能是加班最多也是工资最高的,银行软开这边基本就是加班多的钱就多,加班少的钱就少。面试的话,有了解过去年的,也是相对比较简单,今年面试也是如此(不知道实习难不难),而且今年又扩招,所以从发展上来讲,也不能有一个确定的感受,不清楚这次扩招是不是一个机遇。

    十、 相关截图

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 如何吃透一个Java项目?(附学习实践)

    万次阅读 多人点赞 2021-03-24 00:24:03
    先说一下自己的情况:就是对着视频敲Java项目,其中遇到的BUG还能解决,但就是每次敲完一个项目,就感觉很空虚,项目里面的知识点感觉懂了但又好像没懂,我应该怎样才能掌握一个项目所用的知识点...
  • 拿到一个vue+webpack项目,该如何去看

    千次阅读 2018-08-29 14:28:21
    这也是我目前自己这么理解的,可能每个人看代码的过程也不一样,我这里也是拿到一个项目之后不知道如何开始,所以自己在慢慢摸索,然后记录下来,希望自己能不断超越自己。这里我不能把公司项目亮出来,所以。。。...
  • 测试开发需要学习的知识结构

    万次阅读 多人点赞 2018-04-12 10:40:58
    努力成为一个优秀的测试开发从业者,加油!!! 一些视频链接:我这有一些软件测试的视频,你可以点开看看。转行互联网测试需要哪些技能? - 假装在测试的回答 - 知乎作为一名软件测试人员,有哪些网站是你应该多多...
  • 浦发银行 信息科技岗 大数据方向 面经

    万次阅读 多人点赞 2018-08-09 23:00:31
    、综合面 二、机试 三、专业面试 浦发面经 即兴演讲 上机测试 结构化面试 浦发银行大数据创新岗上海打卡 第部分 综合面试 第二部分 专业面试 第三部分 上机考试(只有开发和测试岗需要,别的岗可选) 浦发...
  • 软件测试简历,这一点你是否漏掉

    万次阅读 多人点赞 2017-11-29 21:04:11
    几乎所有的测试简历都在长篇大论谈如何做测试,参加过多少项目的测试,测试过程是怎么样的,测试如何管理,会黑盒、白盒、灰盒、彩盒.....、会写方案、测试用例。从这些内容中我无法看出你会什么,技术上哪些是你的...
  • 新人如何快速熟悉一个项目

    千次阅读 多人点赞 2019-06-13 11:22:43
    很多新人进入一家新公司后,最头疼的就是如何快速...如果你碰到一个特别热心的老员工,事无巨细地给你,随时在你身边答疑解惑, 那简直是天大的好运气, 现实是大家都很忙,没人给你讲解。 很快就要深入项目做...
  • 如何做一个软件项目经理?----写给公司所有的开发人员
  • 一个合格的项目经理都需要做哪些事情?

    万次阅读 多人点赞 2018-08-16 18:23:22
    之前在公司一直主要负责app研发这块工作,后来公司实行项目责任制,正好谈下来一个比较大的项目(北京新机场新机场安全管控平台),这个平台简单来就是集团承包安全部用的一个安全管控平台,因为总包下面有100多家...
  • 程序员被公司辞退12天,前领导要求回公司讲清楚代码,...在职场论坛上看到这样一个帖子:程序员被公司辞退都12天了,前领导要求回公司讲清楚代码,员工回复:一次一万,结果蒙了!这是怎么回事呢?原来这个程序员...
  • 如何给别人介绍一个你做过的项目

    万次阅读 2018-04-18 09:17:33
    很多时候别人会问你在做什么项目,聊天的时候,面试的时候等等,如何能够有条理的介绍呢?我觉得可以从如下几方面入手: 项目的目的 项目的意义是什么,为什么很重要,具体的目的是要完成哪些东西,达到什么样...
  • 一个成功的企业,在产品开发流程上突出表现有三点:高效率、严要求、严格遵循项目管理法则。 有些项目经理以为管理能力等同于使用微软Project软件的能力,他们没有领悟到项目管理的真谛。我们平常讨论的项目管理...
  • 3. 将明显是同一个产品范围、同一组产品功能的模块放在同一层级,得到一个基础的产品框架。 明确架构分层 一个具备前后台关系的产品架构图至少分为三层:用户感知层(在何种场景下通过何种方式触达用户)、功能模块...
  • 基于Java的毕业设计管理系统

    万次阅读 多人点赞 2016-08-27 10:09:11
    项目总结 1、项目开发背景: 目前,国内外毕业论文选题一般采用两种...但存在一个更致命的缺点:学生可以随意的查看、更改和删除其他同学的毕业设计,造成大量如抄袭毕业设计、恶意删除或修改其他同学毕业设计的事
  • 篇文章讲清楚Gradle与Gradle Wrapper的区别

    万次阅读 多人点赞 2018-07-17 17:51:18
    Gradle:android用来构建项目的编程框架。这个玩意对于使用AS开发的,大家都清楚,用这个来构建项目变得无比轻松和高可定制性,比如引入第三方依赖,发布到...反而,没找到gradle,却总是能看见一个叫gradle wrapper...
  • 如何快速成为一个运维工程师

    万次阅读 多人点赞 2018-05-24 16:08:49
    ,我犯贱时候发明的:我们的机器全部是RAID1,于是我安装一台raid1的机器,系统全部安装好,然后拔掉一个硬盘,插上一个新硬盘自动恢复镜像,基本10来分钟恢复好一个硬盘,插到机器上去。这样,还是比装系统来的快。...
  • 在面试中把GBDT讲清楚

    千次阅读 2019-07-21 15:16:19
    对于很多同学,其实对GBDT很熟悉,但是很难系统性的把它讲清楚,讲完之后自己都觉得很凌乱,面试官也觉得不够满意。 本文主要参考了好友Freeman_zxp的博客文章,并结合了一些自己的思考和理解。...
  • 一个Vue项目的开发历程

    万次阅读 多人点赞 2017-01-26 15:54:19
    项目地址 https://github.com/hongchh/timeline-x、成品展示二、项目需求 添加每天的时间记录,修改某天的时间记录(因为可能记错或者忘了记某项活动) 每天的记录可以有多项活动,每项活动有对应的时间 每项...
  • 如果你没有什么项目经验,那么一定要在网上找一个中等大小的项目,然后代码看透,逻辑理清楚,然后写到自己的简历上,至少让面试官觉得你做这个项目肯定没有问题,你能干活,所以很可能就会通过面试!本篇文章就为...
  • 如何编写一个项目开发文档

    万次阅读 多人点赞 2018-09-29 21:51:31
    项目开发过程中为了增加程序的可读性和程序的健壮性, 方便后期程序的调试和维护,所以需要在开发过程中统一技术规范,一般会在项目初期确定好相关文档作为这统一的规范。不同公司会对文档做不同要求,划不同的...
  • JAVA面试技巧之项目介绍

    万次阅读 多人点赞 2019-01-08 11:11:35
    【如何介绍简历中的项目项目经验与工作经验是相辅相成的,但较之于工作经验,项目经验更侧重于表现求职者在某个...我们在跟面试官讲解的时候,讲解项目一定要围绕着以下几方面: 1、项目名称 2、开发时间(这...
  • 如何参与一个 GitHub 开源项目

    万次阅读 多人点赞 2014-04-12 20:46:13
    对于个人来,你把自己的项目托管到Github上并不表示你参与了Github开源项目,只能说你开源了自己的项目,可以任别人自由下载。那么该如何参与Github的开源项目呢?相信很多人都有这方面的疑问,网上也有一些...
  • 浅论定点DSP与浮点DSP的区别

    万次阅读 2018-04-02 20:43:54
    最近在研究的一个项目中必须要用到DSP处理器。可是在选型时遇到了一个问题,该选择定点型的DSP,还是选浮点型的DSP?这两者有什么区别呢?于是专门查找并总结了一些资料,如下: 一般来说,定点DSP处理器具有速度快...
  • [转]项目管理心得:一个项目经理的个人体会、经验总结 本文转自:http://kb.cnblogs.com/page/157087/ 本人做项目经理工作多年,感到做这个工作最要紧的就是要明白什么是因地制宜、因势利导,只有最合适的,...
  • 机器学习项目入门篇:一个完整的机器学习项目

    万次阅读 多人点赞 2019-01-16 10:23:12
    本部分,我们会作为被一家地产公司雇佣的数据科学家,完整地学习一个项目。下面是主要步骤: 项目概述。 获取数据。 发现并可视化数据,发现规律。 为机器学习算法准备数据。 选择模型,进行训练。 微调模型。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 201,959
精华内容 80,783
关键字:

如何讲清楚一个项目