3.4 技能的反面为什么是解决问题?

GreyZeng 2023-07-16 15:34:29

巴克斯顿说技能的反面是 “Problem Solving” — “ 解决问题” , 这个听起来有点绕, 我们看看 IT 人士熟悉的一个例子吧。 一个 IT 专业的大学生来面试, 简历上写“技能: 精通 Visual Studio C# 编程” : 于是面试官请他用 Visual Studio IDE 写一段程序。 一个 “不精通” 的面试者的编程过程实际上就是一个 “解决问题” 的过程——

嗯, 怎么开始一个 C# 的命令行程序呢?
定义数组是怎么弄的? 是 “int [] arr"还是"int arr[]“还是"ArrayList”, 还是"Array”。 哦, 我平时都是上网査的。哦,我不知道还有 MSDN 网站。
嗯, 为什么编译没过呢, 哦, 这里少一个分号。
嗯, 怎么设断点? 怎么定义命令行参数? 额, 我要査一査…… (From Page 61)

如果有人问我"你为什么学这些东西?",我一定会毫不犹豫的回答“当然是为了解决问题了!” 不过,书中却说“技能的反面”是为了”解决问题“,这倒是让我有些摸不着头脑了。简书上有一篇博客讲了作者对于这部分的理解——“所谓的技能应该是可以在无意识中使用出来的东西”,初看豁然开朗,但细想却又陷入了迷惑——即使是一个可以熟练使用C#的程序员,C#的很多特性也无法完全掌握,因此他仍然需要不时的查看技术手册。但是他这种“有意识”解决问题的过程,是有方法、有条理的,你能说他没有掌握“C#程序设计”这一技能吗?相反,故事中的程序员解决问题的过程是手忙脚乱的,没有任何方法可言,自然谈不上技能。因此我认为,“技能的反面”应该更精确的描述为——“不能条理清晰、方法得当的解决问题”
————————————————
版权声明:本文为CSDN博主「_Hyggge_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42877529/article/details/129226907

...全文
82 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
GreyZeng 2023-07-16
  • 打赏
  • 举报
回复

经过一学期的开发和学习,我更加坚定了之前的看法——“技能的反面”应该更精确的描述为“不能条理清晰、方法得当的解决问题”,只不是仅仅的简单描述为“解决问题”。

就像我在《阅读与思考》这篇博客中写的:“即使是一个可以熟练使用C#的程序员,C#的很多特性也无法完全掌握,因此他仍然需要不时的查看技术手册。但是他这种“有意识”解决问题的过程,是有方法、有条理的,我们不能说他没有掌握“C#程序设计”这一技能。相反,故事中的程序员解决问题的过程是手忙脚乱的,没有任何方法可言,自然谈不上技能”

在这学期的团队开发过程中,我们遇到了无数个前端技术上的问题。尽管这些问题都不是看一眼下意识就可以解决的,但是我们知道可以从哪里查到相关的资料、文档(MDN Web Docs、框架官网…),可以在哪些QA网站查到可能的答案(stackoverflow、csdn…),因此最终我们都能顺利的解决它们——这种解决问题的方式尽管不是“下意识”的,但是是有条例的、有方法论的,因此仍然可以说“我们掌握了技能”。
————————————————
版权声明:本文为CSDN博主「_Hyggge_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42877529/article/details/131269667

SoftwareTeacher 2023-07-20
  • 举报
回复
@GreyZeng 如何能达到 “条理清晰,方法得当” 的状态呢? 当你碰到一个技术问题而去搜索, 但是搜索返回 10 条略有差异的答案,你不能决定哪个是最优,你觉得你是掌握了这个技术么? 你可能掌握了 “搜索编程技术问题” 的技能, 但是未必掌握了 “某一门具体的编程技能”。
ActionScript 3 Cookbook 中文版 1 第一章. ActionScript 语言基础 3 1.0. ActionScript 3.0 Cookbook 概述 3 1.1. 新建一个 ActionScript 工程 3 1.2. 自定义应用程序属性 4 1.3. 在哪里写ActionScript 代码呢 5 1.4. 如何跟踪信息 8 1.5. 处理事件 9 1.6. 响应鼠标和键盘事件 10 1.7. 算术运算 12 1.8. 逻辑运算 13 1.9. 执行条件语句 15 1.10. 执行复杂的条件语句 17 1.11. 某段时间重复执行一种操作 19 1.12. 长时间执行一个任务 20 1.13. 创建可重用代码 22 1.14. 增强代码可重用能力 24 1.15. 从方法中退出 24 1.16. 获得方法的执行结果 25 1.17. 处理错误 26 第二章. 自定义类 29 2.0. 简介 29 2.1. 创建自定义类 30 2.2. 类的保存 32 2.3. 创建成员属性 33 2.4. 创建静态方法或属性 35 2.5. 创建子类 35 2.6. 覆盖父类方法 37 2.7. 创建常量 39 第三章. 运行时环境 39 3.0.简介 40 3.1.检测播放器版本 40 3.2.检测操作系统 40 3.3.检测播放器类型 41 3.4.检测系统语言 41 3.5.检测显示设置 43 3.6.缩放影片 44 3.7.改变对齐方式 44 3.8.隐藏Flash播放器的菜单项 45 3.9.检测设备音频 46 3.10.检测设备视频 47 3.11.提示用户改变播放器设置 47 3.12.处理系统安全 48 第四章.数字和数学 49 4.0. 简介 49 4.1.数字的不同表现形式 49 4.2.不同数字类型之间的转换 50 4.3.四舍五入 51 4.4.格式化输出 52 4.5.不使用掩码进行数字格式化 54 4.6.格式化货币数字 54 4.7.生成随机数 55 4.8.模拟硬币投掷 57 4.9.模拟骰子 60 4.10.产生唯一的随机数 62 4.11.转换角度计算 62 4.12.计算两点之间的距离 63 第五章.数组 64 5.0.简介 64 5.1.在数组首部和尾部添加元素 65 5.2.遍历数组成员 65 5.3.搜索匹配的数组元素 66 5.4.删除数组元素 69 5.5.在数组中间插入元素 71 5.6.转换字符串为数组 71 5.7.转换数组为字符串 72 5.8.创建数组的拷贝 73 5.9.存储多维数据 75 5.10.数组排序 77 5.11.实现自定义排序 80 5.12.数组元素的随机排序 82 5.13.取得数组元素的最大值和最小值 83 5.14.比较数组 83 5.15.创建联合数组 85 5.16.读取联合数组 86

606

社区成员

发帖
与我相关
我的任务
社区描述
程序员。写过:移山之道,编程之美,构建之法,智能之门。
软件工程软件构建团队开发 企业社区 北京·朝阳区
社区管理员
  • SoftwareTeacher
  • GreyZeng
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧