您现在的位置是:亿华云 > IT科技
从小开始学编程的小姐姐自述:我变成更好程序员的三点心得体会
亿华云2025-10-09 03:26:54【IT科技】5人已围观
简介本文经AI新媒体量子位公众号ID:QbitAI)授权转载,转载请联系出处。编者按:最近,国外一名小姐姐分享了自己的编程学习经验,引起了不少关注。她名为Keri Savoca,小时候就学了HTML并开发
本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,从小程的成更转载请联系出处。开始
编者按:最近,学编小姐序员心国外一名小姐姐分享了自己的姐自编程学习经验,引起了不少关注。述变她名为Keri Savoca,好程小时候就学了HTML并开发了网站。从小程的成更之后又学习了SQL语言以及JavaScript和Ruby等。开始在这个过程中,学编小姐序员心她也积累了不少感悟与经验,姐自并分享了出来。述变有人阅读了之后称,好程文章里面的从小程的成更确有比较扎实的干货。希望能够给你带来启发。开始

编程并不是学编小姐序员心要你告诉计算机做某事
很多人都以为,编程就是要告诉计算机去做某事,就只需要编写一个命令,就像 do X一样,问题就解决了。
这其实是一个很大的误解,编程需要的不是do X,而是网站模板:
Do X to Y Get X from Y Get X from Y, and put it in Z Create X in Y Create X in Y, and make it do Z等等。
只有开始写代码来解决实际问题,才能意识到这一点。
比如说,从BigQuery 中提取一组数据,并将其连接到Data Studio中做条形图。
一般情况下,可以通过点击按钮对X轴上的参数进行升序或降序排序,但你想要根据BigQuery中的维度进行自定义排序的手,就需要代码来解决这个问题了。
假设想要完成的X轴上的排序顺序是:A, D, E, B, C, F,排序顺序与其在“table001”中“location”维度有关系,可以这样解决:
ELECT *, CASE WHEN location = ‘A’ then 1 WHEN location = ‘D’ then 2 WHEN location = ‘E’ then 3 WHEN location = ‘B’ then 4 WHEN location = ‘C’ then 5 WHEN location = ‘F’ then 6 ELSE 0 END as SortOrder FROM table001现在可以根据 SortOrder 进行排序,这是自定义的,而不是升序或降序。
这就是所谓的do X,但编程远远没有结束。因为这些只存在于控制台中,而没有实际应用。
编程到这个阶段,才刚刚完成了一半。
这听起来像是香港云服务器一个常识,但对于刚开始编程的人来说,可能需要过一段时间才能够在概念上有所理解与体会。
写代码是为了解决问题,不要太依赖教程
但根据说明性教程学习编程的时候,却很难学到这一点。
因为你不是在真正解决一个问题,而是在遵循一系列的指令。
当你正确的遵循这些指令的时候,就会产生一个特定的结果。
但如果你要去解决一个尚未解决的问题时呢?就没有任何指令可以遵循了。
在学习编程的时候要注意到,学习到的技能应该是可以转换的。如果你不能把你练习的技能应用到不同的场景中,跟着教程学习就没有意义。
基于这方面考虑,上面的b2b信息网示例应该要加上because这个词:
Do X to Y because … Get X from Y because … Get X from Y, and put it in Z because … Create X in Y because … Create X in Y, and make it do Z because …当你学会了制作一个待办事项列表应用程序的时候,你应该学到的是,如何使用相同的概念来使应用程序以类似的方式运行。
多试试伪代码,可以提升算法思维
当写出来的代码没法运行的时候,你要怎么做?
很多人的方式是试错,尝试不同的方法来解决问题。
结果无非两种:要么终于起作用了,要么不起作用。
这并不是在于对编程语言缺乏理解,而是算法思维上的问题。
比如你想写一段代码,从Y那里得到X,然后放到Z里面。
却发现不知道从哪里得到了Z,然后试着把它放到了X中。
该怎么办?只是试错可能解决问题,但很难知道到底哪里错了。
一种英国学校学生经常玩的游戏“FizzBuzz问题”通常被用来当做编程面试中的题目,也可以作为练习“伪代码”的测试:
写一个程序打印1到100这些数字。但是遇到数字为3的倍数的时候,打印“Fizz”替代数字,5的倍数用“Buzz”代替,既是3的倍数又是5的倍数打印“FizzBuzz”。

技术博主闻波(webary)在过去的一篇博文中说,就这样的一个小问题,很多优秀程序员顺手就能写出来方式,但很多计算机专业的毕业生都不会做或者花费更多的时间去做。
背后的原因,就是忽略了如何想出解决问题的办法,而是一上来就想代码实现的问题。
而伪代码是一个比较好的方式,会引导你从算法开始思考。
这不需要你去考虑用什么语言来解决问题,而是先想出解决问题的办法。
原文链接:
https://medium.com/better-programming/the-3-realizations-that-made-me-a-better-programmer-af7d1bcab4d3简单却又复杂的FizzBuzz面试编程问题
https://www.cnblogs.com/webary/p/6507413.html很赞哦!(4)
相关文章
- (4) 使用何种形式的域名后缀对网页搜索影响不大,但域名后缀也需要考虑方便用户记忆
- 2020征文-手机零基础鸿蒙开发2第一个世界版Hello World
- 2020征文-手机零基础鸿蒙开发4如何播放一个全屏视频(JS版)
- 为什么我不建议你使用Java序列化
- a、变更前的公司证件扫描件(代码证或者营业执照)及联系人身份证复印件、变更后的公司证件扫描件(代码证或者营业执照)及新的联系人身份证复印件;身份证复印件需本人签名,公司证件复印件需加盖公章。
- Dropbox是如何将接入层从Nginx迁移到Envoy的
- 分享一些开源项目,可以接私活了
- 一篇文章带你了解SVG 图标
- 6、提示添加成功,点击确认进行最后的确定操作。一般10分钟就解析生效,可以用域名进行访问了。
- 前端开发中不可忽视的知识点汇总(一)
热门文章
站长推荐
顶级域名可以增加企业品牌的价值。随着经济的快速发展,域名已不再是企业在网络中的独立地位。顶级域名的服务范围、企业产品、综合形象体现等,对于企业单位来说,顶级域名的重要性不言而喻。
收下这款 Vue 项目模版,它将让你的开发效率在 2021 年提高 50%
学Python编程能做什么工作?从事什么岗位?
你了解Java中的几种编码方式?解决乱码问题可能并不麻烦
5、使用企业名称的英文名称作为域名也是国内许多企业选择域名的一种方式,特别适合一些与计算机、网络和通信相关的行业。
从您的本地机器开始学习Kubernetes
如何在 ASP.NET Core 中使用 NLog 的高级特性
用过Optional;那用过Try么?