编码和编码格式一样吗?_学习编码就像跳舞一样

编码和编码格式一样吗?

by Cynthia Lee

辛西娅·李(Cynthia Lee)

学习编码就像跳舞一样 (Learning to code is just like learning to dance)

Many moons ago, I was a dancer. A contemporary dancer, to be exact.

许多月前,我是一名舞蹈演员。 确切地说,是一位当代舞者。

And no, contemporary dance isn’t always a group of barefooted people pretending to be trees swaying in the wind. On one occasion, I danced the part of a ghost.

不,当代舞蹈并不总是一群赤脚假装成随风摇曳的树木。 有一次,我跳了一个鬼的部分。

Now that I’m more than six months into my coding journey, I am noticing the similarities between learning how to code, and learning how to dance.

现在我距离编码之旅已经超过六个月,我注意到学习编码和跳舞之间的相似之处。

1.注重基础 (1. Focus on the basics)

Learning correct technique is fundamental in dance, regardless of genre. Basic tendu and degagge combinations seem simple, and might not feel as exciting as leaping across the room in some So You Think You Can Dance-esque routine. However, focusing on basic skills will allow you to develop the right muscles and general body awareness that would help you advance technically.

无论类型如何,学习正确的技巧都是舞蹈的基础。 基本的肌腱和脱胶组合看起来很简单,可能不像在某些房间中跳跃那样令人兴奋,因此您认为自己可以像跳舞一样常规。 但是,专注于基本技能将使您发展正确的肌肉和全身意识,这将帮助您在技术上取得进步。

In the land of coding, it is easy for newbies to be overwhelmed by the staggering amount of languages / frameworks / tools out there. Which is the best language to learn? A lot of people end up jumping between languages like JavaScript, Ruby, Go, and Python in the beginning.

在编码领域,新手很容易被大量的语言/框架/工具所淹没。 哪一种语言是最好的学习语言? 最初,很多人最终会在JavaScript,Ruby,Go和Python等语言之间切换。

It’s true that most software developers are proficient in more than one language. In fact, some aim to learn one new language per year. For a beginner, however, I think it’s more beneficial if you focus on one language, and really try to master the fundamentals of programming.

的确,大多数软件开发人员精通一种以上的语言。 实际上,有些旨在每年学习一种新语言。 但是,对于初学者来说,如果您专注于一种语言,并且真正尝试掌握编程的基础知识,那么它会更有益。

These include:

这些包括:

  • Data structures (e.g. binary trees, linked lists)

    数据结构(例如,二叉树,链表)
  • Algorithms (and time complexity)

    算法(和时间复杂度)
  • Architectural design (e.g. Object oriented programming, functional programming)

    建筑设计(例如,面向对象的编程,函数式编程)

2.力求全面 (2. Strive to be well-rounded)

While my main focus was contemporary dance, I also dabbled in Bhratanatyam, lyrical jazz, and traditional Malay dance styles. I felt like it gave me more insight into what my body was capable of. I learned new techniques and movements, which opened my eyes to different possibilities in terms of choreography.

当我主要关注当代舞蹈时,我还涉猎Bhratanatyam,抒情爵士乐和传统的马来舞蹈风格。 我觉得这让我对自己的身体有更多的了解。 我学到了新的技术和动作,这使我对舞蹈的可能性有了新的认识。

I feel like the same concept applies to programming. Do you consider yourself a front-end developer? It wouldn’t hurt to understand some skills on on the other end of the stack. Learn how the internet works by reading up on Domain Name Servers (DNS) and how they work. Or learn the basics of Nginx, and set up a Node server.

我觉得同样的概念也适用于编程。 您是否认为自己是前端开发人员? 了解堆栈另一端的一些技能并没有什么坏处。 通过阅读域名服务器(DNS)了解互联网的工作原理以及它们的工作方式。 或学习Nginx的基础知识,并设置Node服务器。

If you’re a back-end developer, you could challenge yourself by creating a simple website from scratch using HTML, CSS, and JavaScript. Or maybe learn a framework like React or Vue.js, which your front-end colleagues keep going on about.

如果您是后端开发人员,则可以通过使用HTML,CSS和JavaScript从头创建一个简单的网站来挑战自己。 或者也许学习像React或Vue.js这样的框架,您的前端同事会继续这样做。

By gaining some knowledge in an area of the stack that you aren’t familiar with, you will become a better developer, because you’ll begin to understand the workflow and pain points on the other side.

通过获得一些您不熟悉的堆栈知识,您将成为一名更好的开发人员,因为您将开始了解另一方面的工作流程和难点。

3.合作对于改善至关重要 (3. Collaboration is crucial for improvement)

In between weekly technique classes, my dance troupe would get together to practice drills. We would observe and critique each other’s technique, and work on our identified weaknesses. For the most part, we managed to avoid getting yelled at by our dancer teacher in the subsequent lesson.

在每周的技术课之间,我的舞蹈团将聚在一起练习演习。 我们将观察和批评彼此的技术,并努力发现自己的弱点。 在大多数情况下,我们设法避免在随后的课程中被舞者老师大喊大叫。

Code reviews are similar, but instead of trying to spot weak technique, you try to find bugs, and improve the overall quality of the software. Code reviews are great for sharing knowledge, ensuring consistency in software design, and improving team cohesion.

代码审查是相似的,但是您没有发现缺陷的技术,而是试图发现错误并提高软件的整体质量。 代码审查非常适合共享知识,确保软件设计的一致性以及提高团队凝聚力。

Pair programming is another collaboration technique that is beneficial. A driver writes the code according to the navigator’s instructions. This is useful because the navigator will have to think about, and explain, why they have chosen a particular solution to a problem. There is also the advantage of checking for errors in real-time. In addition, it’s an effective way to pick up best practices and techniques from more advanced programmers.

结对编程是另一种有益的协作技术。 驾驶员根据导航员的指示编写代码。 这很有用,因为导航员将不得不考虑并解释为什么他们选择了特定的解决方案。 实时检查错误还有一个好处。 此外,这是从更高级的程序员那里学习最佳实践和技术的有效方法。

4.退后一步,看看全局 (4. Step back and look at the Big Picture)

Sometimes you’re just a tree in the dance production. Sometimes your code is a small part of the code base. And that is perfectly fine.

有时您只是舞蹈作品中的一棵树。 有时,您的代码只是代码库的一小部分。 那就很好。

If you’re a tree, aim to be a tree that adds value to the story that is being told. Embrace your moment on the stage. In the same vein, make sure you are pushing quality code that is robust and readable into the code base.

如果您是一棵树,则要成为一棵树,为被讲述的故事增添价值。 在舞台上拥抱您的时刻。 同样,请确保将可靠且易读的高质量代码推送到代码库中。

Thanks for reading my article, and clap if you liked it! Check out my other articles like How I built my Pomodoro Clock app, and the lessons I learned along the way, and Let’s demystify JavaScript’s ‘new’ keyword.

感谢您阅读我的文章,如果喜欢您也可以鼓掌! 查阅其他文章,例如“我如何构建Pomodoro Clock应用程序”,以及我在此过程中学到的课程 ,以及让我们揭开JavaScript的'new'关键字的神秘面纱

翻译自: https://www.freecodecamp.org/news/learning-to-code-is-just-like-learning-to-dance-3ccc6be7f62a/

编码和编码格式一样吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值