[阮一峰]在软件开发中,一旦这些技术被取代,你的知识将变得毫无价值,因为它们大部分都是实施的细节。

alfredsun alfredsun     2023-01-12     477

关键词:

原文:http://www.ruanyifeng.com/blog/2018/10/weekly-issue-28.html

 

在软件开发中,技术变化如此之快,你花费了大量时间学习技术和工具,一旦这些技术被取代,你的知识将变得毫无价值,因为它们大部分都是实施的细节。

我最近总是在想这段话,软件开发算不算是真正的知识?

如果它是一种真正的知识,那么理论上,我们学到的东西大部分应该不会过时,就好像微积分不会过时一样。可是实际上,我们都知道,软件开发技能有时效性,十年前学习的编程知识,十年后几乎肯定不能用于生产。那样的话,软件开发就不能算真正的知识,只是一种实施的细节。

公司旁边有一家税务所,每天都有很多人排队交税。如果你是第一次来交税,肯定搞不清楚怎么交,交税是一门学问,必须有人教你,要带哪些证件,要填哪些表,去哪些窗口排队等等。

 

 

我现在认为,学习编程跟学习交税是一样的,都是学习实施的细节。一旦外部环境变了,原来的实施细节就没用了。当代编程由于层层的抽象和封装,我们已经不必接触底层真正具有通用性的知识了。大部分时候,所谓编程就是在写某个抽象层的配置。比如,网页样式就是在写 CSS 配置,你很难说这到底是真正的知识,还是像《办税指南》那样的实施细节。

实施细节并不是知识,而是操作步骤。如果技术栈发生变更,实施细节就会毫无用处。但是,你又不能不学习它,不知道实施细节,就没法做出项目。我觉得,程序员应该要警惕,不要落入实施细节的陷阱,不要把全部精力花在实施细节上面,然后以为自己学到了真正的知识。对待各种语言和工具,正确的态度应该是"进得去,出得来",既要了解足够的细节,也要能够站在宏观的角度看待它,探寻底层到底是怎么实现的。

阮一峰---开发者手册

http://www.ruanyifeng.com/blog/developer/ http://www.ruanyifeng.com/blog/archives.html 查看详情

promiseasyncawait在egret的简单应用

...retWing4.1.5 一、Promise、async、await相关知识Promise介绍阮一峰async函数阮一峰 具体和详细的说明用法可以查看以上资料。说实话,从as3转过来,用这些语法真的不习惯... 二、Egret中promise的用法Egret中原本使用监听回调的... 查看详情

阮一峰:jquery官方基础教程笔记

jQuery是目前使用最广泛的javascript函数库。  据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库。微软公司甚至把jQuery作为他们的官方库。  对于网页开发者来说,学会jQuery是必要的。因为它让你了解业界... 查看详情

es6(阮一峰)学习总结

在ES6之前,js只有全局作用域和函数作用域,ES6中let关键字为其引入了块级作用域。{vara=5;letb=6;}console.log(a);//5console.log(b);//bisundefinedlet声明的变量只能在其所在的代码块内才能访问,var声明的变量由于是全局变量,因此可以在代... 查看详情

2020年这些职业将逐渐被ai(人工智能)取代

耳熟能详的人工智能 深蓝DeepBlue是美国IBM公司生产的一台超级国际象棋电脑,重1270公斤,有32个大脑(微处理器),每秒钟可以计算2亿步。"深蓝”输入了一百多年来优秀棋手的对局两百多万局。 Siri是一款内建在苹果iOS... 查看详情

oauth2原理概览

...优秀的参考文章,想要快速了解OAuth2的朋友,可以参考阮一峰-OAuth2.0的一个简单解释。本文仅为个人理解,将OAuth的概念原理进行整理归纳,在查阅资料时,发现阮一峰老师的OAuth专题博文已将这一主题解析得相当透彻,因此下... 查看详情

关于阮一峰老师es6(第三版)中管道机制代码的理解浅析

最近正在学习阮一峰老师的es6(第三版)教材,在学到第七章《函数的扩展》中的箭头函数嵌套时,文中提到了一个关于“管道机制”的示例,文中源代码如下://es6(第三版)教材中的管道机制源代码:constpipeline=(...funcs)=>val=... 查看详情

理解oauth2.0-阮一峰的网络日志

原文:理解OAuth2.0-阮一峰的网络日志理解OAuth2.0作者:阮一峰日期:2014年5月12日 OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth2.0的设计思路和运行流程,做一个简... 查看详情

[转帖]阮一峰:哈希碰撞与生日攻击(代码片段)

哈希碰撞与生日攻击分享按钮作者: 阮一峰日期: 2018年9月5日一、哈希碰撞是什么?所谓哈希(hash),就是将不同的输入映射成独一无二的、固定长度的值(又称"哈希值")。它是最常见的软件运算之一。如果不同的输... 查看详情

好文种草根域名的知识-阮一峰的网络日志(代码片段)

域名是互联网的基础设施,只要上网就会用到。它还是一门利润丰厚的生意,所有域名每年都必须交注册费,这是很大的一笔钱。这些钱交到了哪里?到底谁控制域名的价格?为什么有的域名注册费很贵,... 查看详情

冰与火之歌:浏览器前缀

...组就被这些技术早期的、实验性的版本捆住手脚了,因为一旦这些技术有变动,那些已经在用这些技术的网站就挂了。显然,这完全否定了让开发 查看详情

阮一峰老师的es6入门:变量的解构赋值(代码片段)

变量的解构赋值数组的解构赋值对象的解构赋值字符串的解构赋值数值和布尔值的解构赋值函数参数的解构赋值圆括号问题用途数组的解构赋值基本用法ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为... 查看详情

2023.14容易被ai取代的职业

...、计算机程序员、软件工程师、数据分析师)。程序员、软件开发人员和数据分析师可能会被AI取代。虽然计算机编程是需求量很大的技能,但在不久的将来,ChatGPT等技术将大量填补空白。媒体工作(广告、内容创作、技术写作... 查看详情

闭包——读《阮一峰的日志》

【闭包】:就是能够读取其他函数内部变量的函数(声明这个函数为变量result,然后调用它就可读取内部参数的值了)。Javascript语言的特殊之处,就在于函数内部局部变量可以直接读取全局变量,但是反过来:外部全局变量不... 查看详情

阮一峰老师的javascript标准参考教程:object对象和object方法(代码片段)

Object对象1.概述1.1生成方法对象(object)是JavaScript语言的核心概念,也是最重要的数据类型。什么是对象?简单说,对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。varobj=foo:‘Hello‘,bar:‘World‘;... 查看详情

阮一峰:网页性能管理详解(转)(代码片段)

你遇到过性能很差的网页吗?  这种网页响应非常缓慢,占用大量的CPU和内存,浏览起来常常有卡顿,页面的动画效果也不流畅。  你会有什么反应?我猜想,大多数用户会关闭这个页面,改为访问其他网站。作为一个开发... 查看详情

flex布局阮一峰

Flex布局教程:实例篇http://www.ruanyifeng.com/blog/2015/07/flex-examples.htmlFlex布局教程:语法篇http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html 查看详情

编程如同长跑,推荐阮一峰的这篇文章

 推荐阮一峰的一篇文章:http://www.ruanyifeng.com/blog/2018/10/runner.html编程和长跑一样,拼的是耐力看谁跑的远。如果一开始拼命往前跑,后面到了关键时刻可能就没有了体力,如果前期慢慢蓄势待发,储备力量,到了关键时刻,... 查看详情