全栈开发与敏捷

前言:

好久没有写博文了,一直在研究和实践敏捷也有三年多了,因此又有了一些感悟,希望和大家分享。

前天与一个朋友关于全栈开发与敏捷的关系,有了一点小小的争议,现在就把我的观点贴到博文里,希望看到的朋友给点建议和指教。

以下是我个人的观点:

全栈是一个理想,或者是说一个个人发展的极限挑战。能否有人做到样样精通?这是无需回答的。

敏捷强调一专多能,目的是为了平衡开发的负荷,减少开发中的瓶颈。比如,如果测试目前是瓶颈的话,那么开发人员应该放下手里的开发任务,主动去帮助测试人员。这里的帮助可能是去做测试,但也可能是帮助开发人员构建更好的自动测试环境(注意:不是那种高大上的测试平台)。只有这样,开发团队才能保持稳定的步伐前进。否则,明明测试已是瓶颈,而放置不理,仍去开发更多得不到测试的程序,将造成更大的堵塞。敏捷不是扼杀专家,而是扼杀那种“油瓶倒了也不扶”的专家。

开发是一个团队的活动,而非“团伙”的行为。它是一个整体,而非一个个单独的个体,就像是一个足球队。现代足球的发展与敏捷是如出一辙的,“全攻全守”就是一个例证。难度全攻全守就是既当守门员,又要负责进球?

另外,请暂时不要将全栈与敏捷联系起来。在我目前看到的不下十本的敏捷书籍中,还没有看到这个术语。虽然全栈一词是最近才出现的,但全栈开发人员却不是最近才出现的,恰恰相反,它在软件业刚刚开始就出现了,尤其是在中国很早就有了。在小公司呆过的人,都知道自己曾经当过全栈开发人员。我在二十年前就是一个全栈人员,而且跨度不止是开发,甚至包括售前、售后,以及销售。

全栈开发与敏捷

时间: 2024-08-25 07:27:30

全栈开发与敏捷的相关文章

未来物联网全栈开发 —— JavaScript OR Python?

物联网开发涉及面庞杂,开发周期长,所以我们必须寻找一种覆盖面广的编程语言和方法. JavaScript 支持 HTTP 和 JSON .支持函数式编程.可提供交互式环境等特点堪称适用于物联网全栈开发: Python 作为一种胶水语言,可在物联网及嵌入式系统中承担大量任务,并部分替代以上语言. ??物联网是新一代信息技术的重要组成部分,也是"信息化"时代的重要发展阶段,不太清楚的可以看上篇文章<IoT领域的故事.经历.技术实战>,正所谓语言无国度,无论是 Js 还是 Pyth

Python全栈开发【基础三】

Python全栈开发[基础三]  本节内容: 函数(全局与局部变量) 递归 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 1 def 函数名(参数): 2 3 ... 4 函数体 5 ... 6 返回值 函数的定义主要有如下要点: def:表示函数的关键字 函数名:函数的名称,日后根据函数名调用函数 函数体:函数中进行一系列的逻辑计算 参数:为函数体提供数据 返回值:当函数执行完毕后,可以给调用者返回数据. 总结使用函数的好处: 1.减少代码重用 2.保持一致性,易维护

Python全栈开发【第一篇】:初识Python

Python全栈开发[第一篇] 本节内容: Python 的种类 Python 的环境 Python 入门(解释器.编码.变量.input输入.if流程控制与缩进.while循环) if流程控制与while循环练习题 基本数据类型前引 Python 的种类 Cpython Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上. Jyhton Python的Java实现,Jython会将Pyth

Python全栈开发

Python全栈开发 一文让你彻底明白Python装饰器原理,从此面试工作再也不怕了. 一.装饰器 装饰器可以使函数执行前和执行后分别执行其他的附加功能,这种在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator),装饰器的功能非常强大,但是理解起来有些困难,因此我尽量用最简单的例子一步步的说明这个原理. 1.不带参数的装饰器 假设我定义了一个函数f,想要在不改变原来函数定义的情况下,在函数运行前打印出start,函数运行后打印出end,要实现这样一个功能该怎么实现?看下面如何用

Python全栈开发【基础二】

Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 编码与进制转换 Python 运算符 1.算术运算: 2.比较运算: 3.赋值运算: 4.逻辑运算:  5.成员运算: 基本数据类型 1.数字 int(整型) 1 class int(object): 2 """ 3 int(x=0) -> integer 4 int(x, base=10) -&g

发现自己就是个全栈开发工程师

回头看来,发现自己干过不少的事.不过目前专注于机器学习,深度学习方面,发现这才是自己的兴趣所在,如无意外,将长期专注于这方面. 机器学习,深度学习相关经历: 1 玩过基于HOG特征的行人检测,分别在JAVA,OPENCV,CUDA做个实验: 2 玩过TLD,研究过C++版本的源代码: 3 用C++实现过卷积神经网络的基础框架,含CPU版本和GPU版本(cuda实现): 4 研究过caffe卷积神经网络的源代码: 5 在coursera上过andrew ng的机器学习的课程: WEB开发经历: 1

PYTHON高级全栈开发工程师-老男孩教育

PYTHON高级全栈开发工程师 最近开班日期:2016年4月17号                               课程周期:4至4.5个月 学习方式:全脱产面授学习(周一至周五,早9:30-晚9:00) 课程收费:RMB15800 适用人群:应届专科.本科毕业生及其它对从事编程开发感兴趣的人群 学员年龄:18-30岁之间 平均就业工资:8-12K 课程咨询QQ:41117397  70271111  80042789  41117483      技术讨论群:         Py

MEAN 全栈开发 ——实现简单博客

最近在学习MEAN全栈开发的过程中,写了一个小程序就当练练手熟悉一下怎么去组合强大的功能. 废话不多说,直接上文件预览: 整体文件结构: 其中,public文件夹存放了img,js,css文件,其中的index.js文件用于配置前台路由,routes文件夹存放了后台路由的配置文件,views文件夹存放静态视图文件,app.js文件作为程序的入口,相当于main函数一样. 前台路由设置: public/javascripts/index.js /*前端路由处理*/ //创建服务 var blogS

JavaScript —— 下一代物联网全栈开发

作者简介:李知周,中国科学院微系统与信息技术研究所博士,物联网早期创业者,发起了开源物联网项目 Openfpgaduino,目前在国际知名投资银行从事基于大数据与机器学习的网络安全开发. 本文为<程序员>杂志原创文章,未经授权,请勿转载 关注公众号"CSDN 物联网开发"微信公众号,了解更多物联网资讯与干货 Jeff Atwood 曾提出"任何能够用 JavaScript 实现的应用,最终都必将用 JavaScript 实现"他对 JavaScript