写点什么

我在 17 岁时学到的 7 个有用的编程经验

  • 2019-10-31
  • 本文字数:1533 字

    阅读完需:约 5 分钟

我在17岁时学到的7个有用的编程经验

我叫 Alec,今年 17 岁。我从 12 岁就开始学习 Web 开发。虽然我现在还算不上一名优秀的开发者,但我肯定已经学会如何成为一名合格的开发者。



我认为,以下几点是每一个开发者,特别是新手应该知道的。

1.没有人无所不知

没有人无所不知,你也没必要知道所有东西。


作为一名开发者,你有很多事情要做,而不仅仅是记住某些具体的技术细节,比如 PHP 5.6 里有多少种操作数组的方法。有些细节不懂没有关系,如果忘记了可以谷歌一下。


作为一名开发者,有很多重要的事情可以帮你提升自己,而不仅仅是记住那些不重要的技术细节:


  • 提升解决问题的技能;

  • 提升团队合作和沟通技能;

  • 学习编程语言和概念;

  • 通过创建项目来展示你的工作成果;

  • 编写简洁高效的代码。


作为一名开发者,你不需要知道所有东西,你只需要知道如何解决问题就可以了。

2.从 bug 中学习

如果你的代码里没有 bug,说明你学不到任何东西。


代码没有 bug 并不能说明你就是一名优秀的开发者,只能说明你对 bug 太过小心翼翼。你已经遇到过类似情况太多次了,所以知道如何避免写出有 bug 的代码。


通过修复 bug,你可以成为一名更好的开发者。在开发过程中会遇到无穷无尽的 bug,所以,你修复 bug 的速度越快,越是能成为一名更好的开发者。

3.正规教育并不是必需的

17 岁的我在思考这个问题:我需要去上大学拿个计算机科学学位吗?



我很难回答这个,不过,大多数人已经过了 17 岁的年纪,而且大多数已经在工作了。


如果你已经上过大学,当然没有必要再去拿个计算机科学学位,也不需要参加什么编程训练营。


在 GitHub 上放一些有趣的项目就足以说明一些事情了。如果你可以证明自己有编程能力,背景就不那么重要了。


问题的关键在于你的学习方式。


我是没得选择,我只能在周末学习编程,因为我不能翘课几个礼拜去参加训练营。


如果你想要回到大学拿一个计算机科学学位,或者参加训练营,那就去吧,但真的没有必要。

4.使用谷歌也是一个重要的技能

要想成为优秀的开发者,你需要不断提升使用谷歌的技能。因为谷歌是找到解决方案和代码的一种有效的方式。


开发者经常会用到谷歌,特别是在学习新技术时。


谷歌提供了一些技巧,有助于改进搜索结果的质量。



有时候,你需要找到一些解决方案来解决自己都不理解的问题。不过谢天谢地,谷歌可以帮你找到答案。

5.多思考,不要光顾着写代码

在写代码时你可以问自己:“这些代码怎么写最好”?


我通常是在写出不太好的解决方案之后才知道它不是最好的。第一个解决方案通常是首当其冲进入我脑海里的那个,但它们通常都不是最好的。


写代码不需要太多时间,迫不及待就把代码写完的人都太草率了。你需要做的是多花点时间想出更好的解决方案。


测试驱动开发虽然有点乏味,但可以帮你做到这一点,因为你要先想好需要怎样的功能,在想好这些东西之前是无法开始写代码的。


当然,凡事都有例外,我并不是说你在写每一行代码之前都要思考很久。


但不管怎样,在写代码前多思考可以帮你省下用于重构和修复 bug 的时间。

6.小心教程里的陷阱

在刚开始时可以通过教程来学习编程,但我认为除了这些教程,还有其他东西可以学。


你或许可以从教程里学到一点东西,但你可能并不知道自己在做什么以及为什么要那么做。


另外,教程会跳过代码里重要的部分,而你可能只是简单地拷贝粘贴教程里的代码,都不问问为什么代码要那么写。


学习编程最好的方式是创建一个自己想要完成的项目,然后开始写代码,写自己的代码,修复 bug,参考各种文章。

7.制表符比空格好

当你在阅读这篇文章时,你可能会认为我是那种“喜欢用空格键的家伙”。但其实不然,我认为每个人在写代码时都应该使用制表符。


制表符在不同的电脑上呈现的效果可能不一样,但敲击一次制表符键比敲击多次空格键要容易得多。


原文链接:


7 important lessons about programming that I’ve learned at 17


2019-10-31 14:083388

评论

发布
暂无评论
发现更多内容

YashanDB 开机自启配置全攻略:重启系统也不怕!

数据库砖家

数据库

从驾驶员到智能驾驶:汽车智能化进程中的控制与仿真技术

DevOps和数字孪生

qwen模型 MindIE PD分离部署问题定位

AI布道Mr.Jin

区块链DApp技术架构

北京木奇移动技术有限公司

区块链技术 软件外包公司 APP外包公司

微店商品列表API接口(附代码示例)

tbapi

微店商品详情接口 微店API 微店商品列表接口

YashanDB|C# 使用 ODBC 执行 SQL 报错:YAS-08008 的原因与应对

数据库砖家

数据库

VMware ESXi 8.0U3e macOS Unlocker & OEM BIOS Dell (戴尔) 定制版

sysin

esxi

假期结束!上上强度!

王中阳Go

go面试题

AI口语APP的技术架构

北京木奇移动技术有限公司

软件外包公司 APP开发公司 AI口语APP

区块链 App 的测试

北京木奇移动技术有限公司

区块链技术 软件外包公司 APP外包公司

如何挑选一款优质的舞台租赁LED显示屏?

Dylan

LED LED display LED显示屏 舞台表演 LED屏幕

YashanDB 权限管理进阶|三权分立机制详解与实操指南

数据库砖家

数据库

YashanDB|如何查看共享集群的共享盘挂载情况?

数据库砖家

数据库

老牌即时通讯应用Skype被关闭,卒年22岁!

JackJiang

即时通讯 即时通讯IM

区块链 App 的安全性

北京木奇移动技术有限公司

区块链技术 APP开发 软件外包公司

微店商品详情API接口(附代码示例)

tbapi

微店商品详情接口 微店API 微店数据采集 微店商品详情采集

中小企业选择云MES,实现数字化转型

万界星空科技

数字化转型 mes 云mes 低代码云MES 中小企业数字化转型

YashanDB|yasql 客户端字符编码设置指南

数据库砖家

数据库

立夏 | 立足当夏,向阳而生

中烟创新

Cherry Studio+魔搭MCP一键发笔记,日更30条还能准时下班

测试人

人工智能

PHP 查询 YashanDB 超过 256 字符的数据被截断?看这里快速搞定!

数据库砖家

数据库

AI 搜索开放平台 x Qwen3:智能搜索全栈解决方案新升级

阿里云大数据AI技术

人工智能 AI搜索 Qwen3

YashanDB|主备集群缩容后 YCM 无法托管?一招帮你解决

数据库砖家

数据库

库存怎么管?怎样才能做到有效的库存管理?

积木链小链

数字化转型 智能制造 中小企业 库存管理

如何打造一个高并发系统?

量贩潮汐·WholesaleTide

高并发

区块链 App 的开发

北京木奇移动技术有限公司

区块链技术 软件外包公司 APP开发公司

从工具到伙伴:轻帆云智能ITSM引领服务提供商(MSP)重构IT服务管理新范式

云智慧AIOps社区

ITSM ITSM软件 工单管理系统 工单管理

我在17岁时学到的7个有用的编程经验_文化 & 方法_Alec Jones_InfoQ精选文章