QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

要突破技术瓶颈?80% 的人忽略了这个因素

  • 2019-02-20
  • 本文字数:1561 字

    阅读完需:约 5 分钟

要突破技术瓶颈?80%的人忽略了这个因素

大学时候学的软件工程有用吗?这是很多人经常问我的问题。大多数人觉得这门课很虚,似乎都是一些条条框框的知识点。比如说书中提到的软件过程、敏捷方法、需求分析等等内容,读起来有些道理,但细想又觉得是正确的废话。


当我们结束学生时代,开始投入软件开发工作,回过头来想想,是不是经常遇到这样的场景:


  • 你接到一个开发任务,想开发出需求的功能,你是不是先要做需求分析;

  • 你接手一个复杂的、大的功能模块,是不是先要做设计,才能把复杂的拆成简单的,才能和大家一起分工去开发;

  • 你完成一个功能模块,如果要保证质量,是不是需要写一些测试代码,还要做一些功能测试;

  • 还有日常用的那些工具,像源代码管理、Bug 跟踪;


可以确定的说,不管你用什么开发语言,不管是前端和后端,现代软件项目开发,都离不开软件工程知识的应用。


既然工作中在用,为什么很多人会觉得大学时候学的软件工程很“虚”,却又能作为国家教育体系中的一门必修学科呢?


那是因为大学期间的“软件工程”更侧重理论,缺少问题导向意识,理解起来枯燥乏味,很难学以致用,但众所周知“程序 = 数据结构 + 算法”,而“软件 = 程序 + 软件工程”,跟数据结构、算法一样,软件工程也是技术人的“基本功”。


从当下考虑,学好了软件工程,你的工作可以按时完成,你的软件质量有保证,你做开发的时间和成本都可控。


经常有人说程序员是吃“青春饭的”,“中年危机、码农、搬砖”,这些程序员的日常焦虑,究其根本,是计算机技术更新迭代太快,大家总在追赶潮流,担心被淘汰。


更长远的去想,在软件开发领域,有哪些知识是 10 年前很重要,现在仍然重要,未来可能同样重要的?哪些知识会决定你发展的高度?


相信大家心里是有答案的,无外乎就是数据结构与算法、操作系统、计算机网络、编译原理,以及软件工程这些“基本功”。


技术更新迭代速度再快,软件开发背后的逻辑和知识体系却万变不离其宗,这些过去在用,现在在用,未来还会用的知识,就是经典的价值,就是行业最为本质的东西。


2019 年 1 月,任正非还发表了一封刷屏朋友圈的公开信《全面提升软件工程能力与实践,打造可信的高质量产品》,相信大家都不陌生。越是优秀的技术公司就越强调软件工程的应用,Google、Facebook、百度、阿里巴巴、华为、微软这些公司的方法论和软件开发流程里处处渗透着软件工程的影子。


我经常会跟身边的朋友“安利”软件工程的重要性,绝大部分人对这门学科的印象是枯燥、难学。2015 年,我到美国攻读计算机的硕士学位,学校经常会聘请企业的专家作为兼职讲师,他们总能把一些知识点和鲜活的案例结合起来,和学生一起探讨这些知识点背后的历史和逻辑。


受此启发,经过数月打磨,我在极客时间的专栏《软件工程之美》上线了,与学校常规的软件工程学科不同的是,希望它既有趣又有用,我将结合国内外前沿的、典型的项目案例进行讲解,教你如何将软件工程运用在实际项目开发中,真正地解决程序员在软件开发全流程中的疑难杂症。

我是谁?

我是宝玉,硕士毕业于美国德保罗大学,现在是团购鼻祖网站 Groupon 的资深开发工程师,出国前是上海众游的技术总监,曾深度参与过中国移动飞信项目的核心研发,也是微软最有价值技术专家。我的个人从业经历比较独特,做过普通程序员,也做过技术总监,参与过大大小小很多的项目,这些丰富的经历,让我更好地理解了软件工程的价值,也知道如何应用它可以发挥最大的功效。我希望将我这些年的思考,系统分享给你。

如何学习拿来即用的软件工程?

我会从道、术、器三个维度来讲解软件工程的知识内容。


  • “器”就是软件工程中的各种工具。

  • “术”就是软件工程中的各种方法。

  • “道”就是软件工程知识的核心思想、本质规律。


我做了张软件工程的思维导图,把各个关键知识点展示出来,结合专栏学习中的日常工作真实场景,及谷歌、微软等公司的最佳实践案例,帮你系统化的学习,真正做到即学即用。



2019-02-20 16:374977

评论

发布
暂无评论
发现更多内容

5年Java经验字节社招:半月3次面试,Java资料

欢喜学安卓

Java 程序员 后端

Java8-Stream:2万字20个实例,价值2000元的Java学习资源泄露

JVM调优资料

Java 程序员 后端

看懂这个故事,轻松实现从技术到管理的华丽转身!

博文视点Broadview

1年半经验,21条MySQL性能调优经验

欢喜学安卓

Java 程序员 后端

2021 Java开发 最全笔记 建议收藏!

欢喜学安卓

Java 程序员 后端

Java中高级核心知识全面解析(3),Java编程入门到精通

JVM调优资料

Java 程序员 后端

Java反射之Method的invoke方法实现,全栈系统化的学习路线

Java 程序员 后端

从保证业务不中断,看网关的“前世今生”

华为云开发者联盟

负载均衡 网关 API网关 客户端 API Gateway

安卓对RISC-V支持的操作实战

Roy夹馍

安卓 risc-v 嵌入式开发

Java中高级核心知识全面解析(1),Java开发实战

JVM调优资料

Java 程序员 后端

golang--GC(Garbage Collector)垃圾回收

en

GC Go 语言

平头哥玄铁处理器Linux新版本,5大亮点速览

Roy夹馍

Linux IoT risc-v 嵌入式开发

NFT盲盒玩法详解,盲盒系统开发

合肥艾数199四②43⑧797

java-注解,最新Java笔试题分享

JVM调优资料

Java 程序员 后端

Java中高级核心知识全面解析(2),腾讯Java面试

JVM调优资料

Java 程序员 后端

uni-app技术分享|开源demo视频呼叫arcall uni-app端技术实现

anyRTC开发者

uni-app 音视频 WebRTC 移动开发 视频通话

安卓支持RISC-V架构的技术剖析

Roy夹馍

IoT 安卓 risc-v 嵌入式开发

FunTester框架Redis压测预备

FunTester

redis 性能测试 测试框架 FunTester 测试发开

Java内存区域总结(堆

Java 程序员

华为云PB级数据库GaussDB(for Redis)揭秘第一期:Redis与存算分离

华为云数据库小助手

redis GaussDB GaussDB ( for Redis ) 华为云数据库

2021-07-26 日期时间类,万字总结

欢喜学安卓

Java 程序员 后端

Java 小记 — RabbitMQ 的实践与思考,Redis灵魂14问

JVM调优资料

Java 程序员 后端

Java 线程池原理分析,一举拿下腾讯美团滴滴offer

JVM调优资料

Java 程序员 后端

CMake

Changing Lin

9月日更

为移动通信争一先:Massive MIMO的进化三部曲

脑极体

低代码与专业代码有什么区别?

低代码小观

程序员 开发者 低代码 开发工具 低代码开发平台

Java中高级核心知识全面解析,Java入门教程免费视频

JVM调优资料

Java 程序员 后端

“眼界大开 声临其境”网易首届音视频技术大会圆满落幕

网易云信

互联网 音视频 网易 网易云信

一,二,三,基层治理数字化「三步走」

云计算

# 技术栈知识点巩固,开发多年HashMap原理不知道

欢喜学安卓

Java 程序员 后端

2021最新38道Spring大厂面试题,你碰到过哪道,电商秒杀Java面试题

欢喜学安卓

Java 程序员 后端

要突破技术瓶颈?80%的人忽略了这个因素_技术管理_宝玉_InfoQ精选文章