软件开发的能力体系及锻炼

简介: (摘自《learn-with-open-source》,网址:http://www.teamhost.org/projects/learn-with-open-source/wiki/Start)  软件开发的能力体系是怎样的?  在很多领域,我们都可以用一个金字塔模型,来描述该领域的能力体系,在软件开发领域,同样如此。高 创造能力 中 逻辑能力 理解能力 低 基础知识

(摘自《learn-with-open-source》,网址:http://www.teamhost.org/projects/learn-with-open-source/wiki/Start

  软件开发的能力体系是怎样的?
  在很多领域,我们都可以用一个金字塔模型,来描述该领域的能力体系,在软件开发领域,同样如此。

  • 高 
    • 创造能力 
  • 中 
    • 逻辑能力 
    • 理解能力 
  • 低 
    • 基础知识 
    • 编程技能 
    • 领域知识 
  简单解释一下:
  低的三项,属于知识类。基础知识包括计算机、数学、算法、逻辑等等知识,这些知识,通过认真的学习书本教材,基本能够掌握。编程技能,往往是跟具体的语言相关的,当然,多学几门不同的语言,对于快速掌握一门新的语言,大有帮助。领域知识,则是与工作的具体方向有关,比如针对多媒体领域的编程,自然要熟悉图形、图形、声音等等的相关领域知识。针对企业级应用的开发,对于管理制度、财务、成本、仓储的东西,总得搞清楚才行。
  中与高的两项,属于超越编程局限的通用能力,不仅仅是软件开发上用得到,在各方面都非常需要这三类能力。逻辑能力,可以通过训练提高;理解能力,可以通过经验积累;而创造能力,的确比较难,有天赋的成分在其中。

  有哪些途径,可以锻炼这些能力?
  • 阅读与习题:找到一堆的经典教科书,狠狠的读,认真的把书里的习题都给做了,这样对于打下扎实的基础,将会有极大的帮助。 
  • 视频教程/ScreenCast:每次讲解一个主题,学习一下总会有收获,只是效率不高。 
  • PPT/Slide/PDF:这种属于某次技术会议上的演讲稿,如果能够配合视频看,效果还好些,否则通常会不知所与。 
  • Wiki:针对某个词条,某个特定的问题,会有相当清晰的解释,不过要看运气,有些词条的解释就非常粗略,甚至过时。 
  • Blog:在分享知识与经验的过程中,blog是很不错的载体,如果你能够找到的话。 
  • BBS:曾经是最主要的学习方式,很多人通过泡论坛来提高自己,不过说实话,效率很低,而且容易跑题。 
  • 问答社区(StackOverFlow/Quora):新兴的交流社区,在面临特定问题时,可以尝试搜索或提问。平时泡泡,努力回答别人的问题,也有助于自己的提高。 
  • 工作中的项目:当然,老板给你发工资,肯定希望你尽快完成,在压力之下,通常进步都会很快。只是这种进步也许是你无法选择的。 
  • QQ群:真的有人借助QQ群来学习吗? 
  • 开源项目/开源社区:当然,这个是最重要的,咱们下节详细说。 


目录
相关文章
|
11月前
|
设计模式 消息中间件 缓存
【工作学习方法论 一】成体系的学习方法论
【工作学习方法论 一】成体系的学习方法论
265 0
|
5天前
|
监控
构建高效能团队的敏捷方法论
【5月更文挑战第10天】敏捷方法论助力构建高效能团队,强调个体协作、迭代开发、客户参与和灵活应变。通过选择合适的敏捷框架,建立协作文化,制定明确流程,持续改进,团队能迅速响应市场变化,保证产品竞争力和创新力,促进企业成功和持续发展。
|
5天前
|
开发者
拥抱不确定性:在软件开发中实践敏捷思维
【4月更文挑战第27天】 在不断变化的技术领域,不确定性是一种常态。本文探讨了如何在软件开发过程中采用敏捷思维来应对和利用这种不确定性。通过分析敏捷方法论的核心原则,我们将了解如何通过迭代开发、持续反馈和适应性规划来增强项目的灵活性和响应性。文章将提供实用的策略和实例,帮助读者在技术项目中实施敏捷思维,从而更有效地管理复杂性和变化。
24 2
|
5天前
|
敏捷开发 安全 测试技术
拥抱不确定性:软件开发中的敏捷思维与实践
【4月更文挑战第17天】 在快速变化的技术世界中,不确定性已成为常态。本文探讨了如何在软件开发过程中应用敏捷思维来应对和利用这种不确定性。通过分析敏捷方法论的核心原则,我们揭示了它们如何帮助团队更灵活地响应变化,提高产品质量,并最终实现持续交付。文章还将分享一些实用的敏捷实践技巧,以及如何在团队中培养这种思维方式。
|
9月前
|
运维 监控 Devops
怎样利用DevOps文化提高软件开发的效率和质量
DevOps文化的兴起为软件开发带来了新的思维和方法,通过自动化、持续交付、协作等实践,提高了软件开发的效率和质量。在不断变化的技术环境下,利用DevOps的理念和实践,软件开发团队能够更加灵活、高效地应对挑战,将创新快速落地。同时,随着新概念的涌现,我们也看到了DevSecOps和AIOps等的前景,为软件开发领域带来更多的可能性。
184 1
怎样利用DevOps文化提高软件开发的效率和质量
|
监控 数据可视化 IDE
技术扫盲:关于低代码编程的可持续性交付设计和分析
一、前言 二、什么是低代码 三、如何落地实现 四、总结
319 0
技术扫盲:关于低代码编程的可持续性交付设计和分析
|
敏捷开发 云计算
敏捷应变-“在线”的理念与实践
童继龙,明源云高级副总裁,阿里云 MVP(最有价值专家),香港大学 ISBT硕士研究生,广州市房协 副会长&专家委员,SaaS营销学院讲师(企业战略、客户成功、组织发展 )童继龙为大家带来敏捷应变-在线的理念与实践的介绍。内容包括四个部分:1、企业面对外部环境不确定性时,快速应变的意识与能力;2、快速应变企业的意识构建、洞察力与运营力、组织配置(敏捷专家小组);3、使用《设计冲刺》方法构建快速应变的方法论,5天将创意到产品实现“到0到1”;4、基于设计冲刺方法的快速应变实战案例(地产掌上售楼处,15天覆盖1000+房企,10000个项目)。
992 0
敏捷应变-“在线”的理念与实践
|
Devops
阿里敏捷教练何勉:论精益思想及精益产品开发实践体系
精益求精是工匠精神实现的最佳方法,通过引入实践精益思想的原则和方法进行精益产品开发,打造对客户最好的产品进行交付,其次通过精益思想的理念降低企业的运营成本,提高企业的运营效率。阿里资深解决方案架构师、畅销书《精益产品开发:原则、方法与实施》作者何勉,全面分享精益思想的来龙去脉和应用及精益产品开发的实践体系。
6249 0