周末可以学习的8种基本技能

Whether you’re a beginner who’s finally comfortable developing projects in a particular language, or an experienced developer looking to expand their skillset, there is no shortage of new things to learn. From new techniques to new technologies, most will help you immensely in your web development career. The good thing about many of these skills is that they can each be grasped in a weekend. Here’s a basic list for you to tackle next time you have a couple of days free.

无论您是最终愿意使用特定语言开发项目的初学者,还是想要扩展技能的经验丰富的开发人员,都不乏需要学习的新知识。 从新技术到新技术,大多数都将在您的Web开发职业中极大地帮助您。 这些技能很多的好处是,每个技能都可以在周末掌握。 这是一个基本列表,供您下次有几天免费使用时解决。

1.版本控制的魔力 (1. The magic of version control)

If you haven’t used version control in the past, you’ve probably been in a situation where your code isn’t working and you’d give anything to get back to its earlier, functioning state. Or perhaps if you maintain backups yourself by adding a suffix to the file name, you have files such as index_17.html.

如果您过去从未使用过版本控制,则可能是因为您的代码无法正常工作,并且您想尽一切办法恢复到其较早的运行状态。 或者,如果您通过在文件名后添加后缀来自己维护备份,那么您将拥有诸如index_17.html文件。

Version control means you can go back to any version of your code — from hours to months in the past. If you’ve used Google Drive, you’ve probably have used the feature of going back to an old version of a file — that’s rudimentary revision control.

版本控制意味着您可以返回到任何版本的代码-从过去的数小时到数月。 如果您使用过Google云端硬盘,则可能已经使用了返回文件的旧版本的功能-这是基本的修订控制。

If you are which software you should learn, here’s an article outlining the status of version control software in 2014 — personally, I’d prefer a distributed VCS like Git or Mercurial , as I contribute to open source software. Here’s a guide to getting started with Git, and a guide to using Git in open-source projects.

如果您是应该学习的软件,这是一篇概述2014版本控制软件状态的文章-就我个人而言,我更喜欢像Git或Mercurial这样的分布式VCS,因为我致力于开源软件。 这是Git 入门指南 ,以及在开源项目中使用Git的指南

2.文本编辑器的秘密 (2. The secrets of a text editor)

A big chunk of a developer’s day is spent in front of the computer staring at a text editor. Depending on your needs and your development environment, you should master one text editor and thoroughly learn its tips and tricks to get certain stuff done quickly.

开发人员一天的大部分时间都花在电脑前,盯着文本编辑器。 根据您的需求和开发环境,您应该掌握一个文本编辑器,并彻底学习其提示和技巧,以快速完成某些工作。

If you prefer working on the terminal, you could try VIM or Emacs. If you like working with a native text editor, you could give Sublime Text a try. If you work on a Mac, you could try something like TextMate.

如果您更喜欢在终端上工作,可以尝试VIMEmacs 。 如果您喜欢使用本机文本编辑器,则可以尝试Sublime Text 。 如果您使用Mac,可以尝试使用TextMate之类的工具

Just working on a text editor is not enough — you should try and explore its fringes by installing plugins and extensions. Here’s a list of plugins for Sublime Text, aimed at a full stack developer.

仅使用文本编辑器是不够的–您应该尝试通过安装插件和扩展来探索其边缘。 这是Sublime Text的插件列表 ,针对的是全栈开发人员。

3. SQL的力量 (3. The power of SQL…)

SQL Exploits of a Mom

Source: XKCD

资料来源: XKCD

An application needs files or databases to store user data. As databases are faster to use, and provide an option to query data, web applications prefer using databases.

应用程序需要文件或数据库来存储用户数据。 由于数据库的使用速度更快,并且提供了查询数据的选项,因此Web应用程序更喜欢使用数据库。

SQL (Structured Query Language) is a language that helps us query data from databases. However, learning just the basics of SQL won’t be enough when you are making complex web applications that use multiple tables (if not multiple databases over different servers).

SQL(结构化查询语言)是一种可以帮助我们从数据库查询数据的语言。 但是,当您制作使用多个表的复杂Web应用程序(如果不在不同服务器上使用多个数据库)时,仅学习SQL的基础知识是不够的。

For learning SQL, I would suggest you go through the book Simply SQL by Rudy Limeback. If you are still stuck with some SQL query, post in the SitePoint forums and someone will be quick to get back to you!

为了学习SQL,建议您阅读Rudy Limeback的《 Simply SQL 》一书。 如果您仍然遇到一些SQL查询问题,请在SitePoint论坛中发帖,然后有人会很快与您联系!

4.…以及NoSQL的奥秘 (4. …and the mysteries of NoSQL)

NoSQL, or Not Only SQL are databases that structure data in forms other than the traditional tabular form in SQL databases. NoSQL databases are built with high availability and horizontal scaling in mind. They may also have a SQL like language to query data.

NoSQL或不只是SQL是数据库,其结构形式不同于SQL数据库中传统的表格形式。 NoSQL数据库的构建考虑了高可用性和水平扩展。 他们也可能有类似SQL的语言来查询数据。

NoSQL databases have different classifications depending on how they structure their data. Although big companies like Quora do not use NoSQL, NoSQL is the favorite for startups — especially if they handle large quantities of data. That makes NoSQL a must-have skill!

NoSQL数据库具有不同的分类,这取决于它们如何构造数据。 尽管像Quora 这样的大公司不使用NoSQL ,但NoSQL是创业公司的最爱-特别是在处理大量数据的情况下。 这使得NoSQL成为必备技能!

At an even higher level, when you have very high traffic, you might need to scale your databases by replication and sharding.

在更高的级别上,当流量很高时,可能需要通过复制和分片来扩展数据库

5.熟悉终端 (5. Get comfortable with the terminal)

There are certain tasks, which are faster when you work on the terminal as compared to using a GUI. For instance, you want to search thousands of files for the occurence of a string and replace it with something else — imagine doing it in only a few seconds (I will give a few hints on how to do that shortly). For a list of reasons why terminals are so powerful in unix based systems, I suggest you go through this thread.

有某些任务,与使用GUI相比,在终端上进行操作时速度更快。 例如,您要搜索成千上万的文件以查找字符串的出现并将其替换为其他内容-想象一下仅用几秒钟即可完成操作(我将很快给出一些提示)。 考虑到为什么终端在基于Unix的系统中如此强大的原因,我建议您使用此线程

If you work on remote servers, you would need expertise with the terminal. True you can use the GUI to login and work on a remote server, it’s always faster to use the terminal. What’s more? It uses up very little amount of bandwidth — after all, working on the terminal is just some exchange of text through the network!

如果您在远程服务器上工作,则需要终端方面的专业知识。 确实,您可以使用GUI登录并在远程服务器上工作,使用终端总是更快。 更重要的是? 它占用的带宽非常少-毕竟,在终端上进行的工作只是通过网络进行一些文本交换!

To start your journey, try navigating and performing regular tasks like copying files through the terminal. Over time, you would notice that certain things can be done faster through the terminal rather than a series of clicks in the GUI.

要开始您的旅程,请尝试浏览并执行常规任务,例如通过终端复制文件。 随着时间的流逝,您会注意到某些操作可以通过终端更快地完成,而不是在GUI中进行一系列的单击。

To use the full power of the terminal, you’ll need to learn about the different terminal commands and understand their usage. To name a few obvious ones, you should know that sed is used to replace texts in files, grep to search in files and awk takes you one step further in manipulation of structured files. Here are 25 commands for system administrators. You should also have a look at 15 little known unix commands.

要使用终端的全部功能,您需要了解各种终端命令并了解其用法。 仅举几个明显的例子,您应该知道sed用于替换文件中的文本, grep用于搜索文件,而awk使您在结构化文件的处理上更进一步。 这是系统管理员的25条命令 。 您还应该看看15个鲜为人知的unix命令

6.控制远程服务器 (6. Take control of a remote server)

Network Diagnostic Tool running on a Terminal

As a developer, you are probably not going to keep your code locally. If you have developed a product, you need to showcase it to the world. That’s when you need to log in to a remote server and configure it.

作为开发人员,您可能不会将代码保留在本地。 如果您开发了产品,则需要向世界展示。 那时,您需要登录到远程服务器并对其进行配置。

Now that you have been playing around with the terminal commands, you should test your skills on a remote server. If you have access to a Local Area Network, you could try remotely logging into one PC using the ssh command.

现在您已经在使用终端命令,现在应该在远程服务器上测试您的技能。 如果可以访问局域网,则可以尝试使用ssh命令远程登录到一台PC。

Otherwise, you could fire off an instance on the cloud. Amazon Web Services (AWS) provides a micro instance for a period of one year for free (you just need a valid credit card). Similar services are provided by Microsoft Azure too. Here is a detailed tutorial by Amazon on how to launch an instance, connect to it and manage volumes on your instance. Once you log into a server, you can use the terminal just like you use it in your local machine.

否则,您可以在云上启动实例。 Amazon Web Services(AWS)免费提供一个为期一年的微型实例(您只需要一张有效的信用卡即可)。 Microsoft Azure也提供类似的服务。 这是Amazon提供的有关如何启动实例,连接到实例以及管理实例上的卷的详细教程 。 登录服务器后,就可以像在本地计算机中使用终端一样使用终端了。

A word of caution though — Amazon saves your credit card information, so it can automatically deduct money if you cross the free tier benefits. Therefore, monitor your usage continuously and shut down unnecessary instances if you don’t want to lose money.

不过请注意-亚马逊会保存您的信用卡信息,因此如果您越过免费套餐,它会自动扣款。 因此,如果您不想亏本,请连续监视您的使用情况并关闭不必要的实例。

Once you log into a remote server, check if you can install a development environment. Also set up your web application on the server and run it your local machine with the help of the IP address of the server.

登录到远程服务器后,请检查是否可以安装开发环境。 还要在服务器上设置Web应用程序,并借助服务器的IP地址在本地计算机上运行它。

7.通过单元测试完善您的代码 (7. Perfect your code with Unit Testing)

Another important aspect of programming is unit testing. When you are working on a huge project, it’s not feasible to write all of the code at once and then check if it works. It’s advisable to split your code into parts and then write tests for those parts.

编程的另一个重要方面是单元测试。 当您在进行大型项目时,一次编写所有代码然后检查其是否可行是不可行的。 建议将代码分成多个部分,然后为这些部分编写测试。

The method depends on the programming language, but the basic idea is the same — write parts of the code and test them. Here’s a guide to getting started with Unit Testing, and a recent guide to Unit Testing with Guzzle

该方法取决于编程语言,但是基本思想是相同的–编写部分代码并进行测试。 这是单元测试 入门指南 ,以及最近的Guzzle单元测试指南

Unit testing may seem like a tedious task, but it’s very useful while solving bugs.

单元测试可能看起来很繁琐,但是在解决错误时非常有用。

8.了解如何使用Markdown进行书写 (8. Learn how to write using Markdown)

Markdown editing on StackEdit

I mention Markdown last as it does not affect the way you code. However, it’s a good skill to learn for anyone who works with and publishes on the web. One use case is writing README files, which get displayed on project pages on GitHub and BitBucket. Also, if you maintain a blog explaining your work, chances are that you will want to shift to writing your posts in the Markdown format sooner or later.

我最后提到Markdown,因为它不会影响您的编码方式。 但是,这是一项很好的技能,可供与之合作并在网络上发布的任何人学习。 一种用例是编写README文件,这些文件将显示在GitHub和BitBucket的项目页面上。 另外,如果您维护一个博客来解释您的工作,那么您很可能迟早会转向以Markdown格式撰写帖子。

Markdown is a text-to-HTML conversion tool, that is used by those who write for the web. It is a plain text formatting system that lets you concentrate on writing rather than the syntax.

Markdown是一种文本到HTML的转换工具,供那些为Web写作的人使用。 它是纯文本格式设置系统,可让您专注于编写而不是语法。

There are many online Markdown editors like Markable, or StackEdit, which has integration with Google Drive and Dropbox.

有许多在线Markdown编辑器,例如MarkableStackEdit ,它们与Google Drive和Dropbox集成在一起。

What are you waiting for? Head over to this link to learn the basics. You can get started within minutes!

你在等什么? 转至此链接以学习基础知识。 您可以在几分钟之内上手!

去吧 (Get to it)

Those are my picks for things that you can learn over a weekend. Did I miss something? Let me know in the comments below!

这些是我一个周末可以学到的东西的精选。 我错过了什么? 在下面的评论中让我知道!

翻译自: https://www.sitepoint.com/8-essential-skills-developers-can-learn-in-a-weekend/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值