热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

分享《架构真经:互联网技术架构的设计原则(原书第2版)》序言中的一段话

下面的一段话摘自《架构真经:互联网技术架构的设计原则(原书第2版)》序言,很有感触,拿出来分享一下:马尔科姆·格拉德威尔在《异类》一书中提出了著名的“一万小时定律”,也就是说

下面的一段话摘自《架构真经:互联网技术架构的设计原则(原书第2版)》序言,很有感触,拿出来分享一下:


马尔科姆·格拉德威尔在《异类》一书中提出了著名的“一万小时定律”,也就是说,任何凡人要成为某个领域的顶尖专家,都至少需要一万个小时的练习。其实中国古训也有“天道酬勤”的说法。但是勤奋是不是等于精进呢?显然,历史和现实的案例告诉我们,勤奋是优秀的必要条件,但不是充分条件。这就是为什么“刻意练习”(deliberate practice)这个概念现在变得如此之火。因为在一万个小时的背后,真正起作用的是有针对性的刻意练习。

       刻意练习是指在介于“舒适区”和“恐慌区”之间的“学习区”进行大量组块化的、专注的、有反馈的练习。真正的学习不是闲庭信步,不是读几个公众号或者翻几本书就足够的。刻意练习是非常枯燥的,它令人很不舒服,并且消磨人的耐心。真正从菜鸟到高手的道路,都是通过刻意练习的汗水铺就的。

       莫扎特是公认的音乐神童,但他纠正说,没有人比他对大师的作品研究得更加刻苦。高尔夫球星泰格·伍兹,通过从小刻苦的专业训练,实现了惊人的竞技成就。歌唱家、网球手、数学家、银行家,甚至政治家,都需要通过在自己的领域中刻意练习才能出类拔萃。“三百六十行,行行出状元”,这一个个状元,都是通过刻意练习达成的。

       优秀程序员的诞生也是一样。

       编程是一项基本功,也是程序员每日工作的基本内容。码农很多,但是真正跳出来思考代码之上的架构法则的则不多。这种思维方式不是写百万行代码就能够培养出来的。在程序员的竞技场上脱颖而出,同样需要刻意练习。首先要跳出舒适区,去思考代码为什么这么写,结构为什么这么设计。其次,要有师父带领,高手指导,才能把前人珍贵的经验法则传授给你。再次,要反复练习,在实践中不断训练前述经验法则,将它们内化为下意识的思维模式。最后,还要通过实效的反馈,不断修正自己的技术习惯,发现自己的技术盲点,提高自己的技术思维。通过这样有意识的训练,才有可能从程序员走向架构师,甚至CTO。

这段话,读后很有感触,优秀不是一蹴而就的,优秀在于积累和思考,共勉!



推荐阅读
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 非公版RTX 3080显卡的革新与亮点
    本文深入探讨了图形显卡的进化历程,重点介绍了非公版RTX 3080显卡的技术特点和创新设计。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 本文详细探讨了Netty中Future及其子类的设计与实现,包括其在并发编程中的作用和具体应用场景。我们将介绍Future的继承体系、关键方法的实现细节,并讨论如何通过监听器和回调机制来处理异步任务的结果。 ... [详细]
  • 利用存储过程构建年度日历表的详细指南
    本文将介绍如何使用SQL存储过程创建一个完整的年度日历表。通过实例演示,帮助读者掌握存储过程的应用技巧,并提供详细的代码解析和执行步骤。 ... [详细]
  • SQLite 动态创建多个表的需求在网络上有不少讨论,但很少有详细的解决方案。本文将介绍如何在 Qt 环境中使用 QString 类轻松实现 SQLite 表的动态创建,并提供详细的步骤和示例代码。 ... [详细]
  • 解决IIS无法访问映射网络驱动器的问题
    探讨IIS在尝试访问映射的网络驱动器时遇到的问题及其解决方案,包括配置和权限设置等方面的详细分析。 ... [详细]
  • 作为一名程序员,从大学步入职场后,常常感受到一种难以言喻的空虚感。这种感觉或许源于对生活的不满、职业发展的瓶颈,或是日常琐事带来的压力。本文将深入探讨这种复杂的情感,并尝试寻找解决之道。 ... [详细]
  • 5G至4G空闲态移动TAU流程解析
    本文详细解析了用户从5G网络移动到4G网络时,在空闲态下触发的跟踪区更新(TAU)流程。通过N26接口实现无缝迁移,确保用户体验不受影响。 ... [详细]
  • 通过与阿里云的合作,牛客网成功解决了跨国视频面试中的网络卡顿问题,为求职者和面试官提供了更加流畅的沟通体验。 ... [详细]
  • 深入解析:阿里实战 SpringCloud 微服务架构与应用
    本文将详细介绍 SpringCloud 在微服务架构中的应用,涵盖入门、实战和案例分析。通过丰富的代码示例和实际项目经验,帮助读者全面掌握 SpringCloud 的核心技术和最佳实践。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
author-avatar
苏静梅构_164
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有