devops开发模式流程图

There are many ways you can go about picking up the skills you need to become a developer.

您可以采用多种方法掌握成为开发人员所需的技能。

There are linear curriculums that teach you a bit of everything - like freeCodeCamp's full stack development curriculum.

有线性课程可以教给您很多知识,例如freeCodeCamp的全栈开发课程。

And then there are massive lists of skills - and sometimes lists of resources - you can use to "choose your own adventure" through the learning process.

然后是大量的技能列表,有时还有资源列表,您可以用来在学习过程中“选择自己的冒险”。

One of the best such list of skills is Kamran Ahmed's Developer Roadmap, which he regularly updates.

卡姆兰·艾哈迈德 ( Kamran Ahmed)的开发人员路线图是此类技能中最好的一种,他会定期进行更新。

This is no ordinary list of resources. Kamran has painstakingly mapped out all the skills he feels are essential to breaking into different fields of development.

这不是普通的资源列表。 卡姆兰(Kamran)精心设计了他认为对进入不同发展领域必不可少的所有技能。

I've written about his roadmap in the past. And to celebrate us all being half way into 2020, I'm going to share his entire roadmap here - all three of them.

我过去曾经写过关于他的路线图的文章。 为了庆祝我们进入2020年的一半,我将在这里分享他的整个路线图-所有这三个路线图。

That's right - he has lists of tools and resources that are required for the following paths:

没错-他提供了以下路径所需的工具和资源列表:

  • Front end web development前端网页开发
  • Back end web development后端网页开发
  • DevOps (also known as "site reliability" - this is sort of an evolution of the old System Administrator role)DevOps(也称为“站点可靠性”-这是对旧系统管理员角色的一种演变)

所有开发人员都需要的技能,无论他们的专业是什么 (The skills all developers need regardless of their specialization)

In addition to these paths, Kamran also recommends everyone who wants to work as a developer learn the following skills:

除了这些途径之外,Kamran还建议所有想成为开发人员的人学习以下技能:

Git-版本控制 (Git - Version Control)

Git is a powerful version control system that as of 2020 is used almost universally. If you don't know it - yes it's related to GitHub and GitLab, and you can learn how to use those tools, too.

Git是一个功能强大的版本控制系统,截至2020年几乎已普遍使用。 如果您不知道-是的,它与GitHub和GitLab有关,您也可以学习如何使用这些工具。

基本终端用法-Bash命令行,SSH和其他技能 (Basic Terminal Usage - The Bash Command Line, SSH, and other skills)

This could be the terminal on a Mac, a Windows DOS prompt, or Bash/ZSH. Note that regardless of which operating system you use, you should probably learn Linux. Even if you're not using it for your laptop/desktop environment, you'll almost certainly use it for servers.

这可能是Mac上的终端,Windows DOS提示符或Bash / ZSH。 请注意,无论使用哪种操作系统,都应该学习Linux。 即使您不在笔记本电脑/台式机环境中使用它,也几乎肯定会在服务器上使用它。

数据结构与算法 (Data Structures and Algorithms)

The freeCodeCamp curriculum covers these in-depth. You'll probably want to learn these by solving lots of algorithm problems on freeCodeCamp, CodeWars, Project Euler, or another drilling website. I personally recommend doing this in either JavaScript or Python but if you're up for a challenge and have lots of time on your hands, doing it in C wouldn't hurt.

freeCodeCamp课程涵盖了这些内容。 您可能想通过在freeCodeCamp,CodeWars,Project Euler或其他钻探网站上解决许多算法问题来学习这些知识。 我个人建议使用JavaScript或Python进行此操作,但是如果您面临挑战并且有很多时间在手,那么使用C进行操作不会有任何伤害。

了解网络的工作原理:HTTPS和API (An understanding of how the web works: HTTPS and APIs)

There are a lot of other concepts you can learn. I recommend working through a good entry-level computer science course to get started. Here's all of Harvard's CS50 course lectures ad-free on freeCodeCamp's YouTube channel.

您还可以学习很多其他概念。 我建议您完成一门入门的入门级计算机科学课程。 以下是所有在freeCodeCamp的YouTube频道上进行的无广告的CS50课程讲座 。

设计模式,YAGNI,KISS,SOLID (Design Patterns, YAGNI, KISS, SOLID)

I don't think beginners need a deep understanding of these, but it wouldn't hurt.

我认为初学者不需要对此有深入的了解,但这不会有任何伤害。

Design Patterns are basically time-tested ways to implement different types of software systems and coding structures. You can learn these gradually as you progress.

设计模式基本上是经过时间考验的方法,用于实现不同类型的软件系统和编码结构。 您可以随着学习的进行逐步学习。

As for the alphabet soup, here's what these stand for:

至于字母汤,这些代表:

  • YAGNI - Ya Ain't Gonna Need It - The philosophy that most of the code you think you'll need to write and the features you'll need to implement will actually turn out to be unnecessary

    YAGNI-不需要-您认为您需要编写的大多数代码以及需要实现的功能的哲学实际上是不必要的

  • KISS - Keep it simple, silly! - The simpler you keep your projects the easier your life will be when it comes to maintenance.

    吻-保持简单,愚蠢! -保持项目越简单,维护工作就越轻松。

  • SOLID - This is a mnemonic for "Single responsibility,‌‌Open–closed, Liskov substitution, Interface segregation, Dependency inversion". Yeah - not beginner's stuff, but look into this if you're curious.

    SOLID-这是“单职责,‌‌开闭,Liskov替换,接口隔离,依赖倒置” 的助记符 。 是的-不是初学者的东西,但是如果您好奇的话,请研究一下。

前端Web开发路线图 (Front End Web Development Roadmap)

Kamran's first roadmap focuses on front end web development.

Kamran的第一个路线图侧重于前端Web开发。

Here's his Front End Roadmap in its entirety:

这是他完整的前端路线图:

我对前端路线图的想法 (My thoughts on the Front End Roadmap)

This is a solid list of fundamental skills.

这是基本技能的可靠清单。

As a front end developer, you will definitely be working with HTML, CSS, and JavaScript - lots and lots of JavaScript.

作为前端开发人员,您一定会使用HTML,CSS和JavaScript-大量JavaScript。

The only things I think are unnecessary here:

我认为这里唯一没有必要的事情是:

  • CSS Preprocessors. These use to be necessary, but CSS itself has added many of the features that made these preprocessors so useful. freeCodeCamp currently teaches Sass, but we are in the process of phasing that out as well.

    CSS预处理器。 这些是必需的,但是CSS本身添加了许多功能,使这些预处理器变得非常有用。 freeCodeCamp当前正在教授Sass ,但是我们也在逐步淘汰它。

  • CSS Architecture: I don't think these are necessary unless you designing CSS systems is a big part of your day-to-day job.CSS体系结构:除非您设计CSS系统是您日常工作的重要组成部分,否则我认为这些不是必需的。
  • A bit of a nitpick: TypeScript is a promising way to reduce bugs and code with confidence. We're adding this to Version 7.0 of the freeCodeCamp core curriculum. I think this should be even more prominent on the roadmap, but it is on there.

    有点挑剔:TypeScript是一种有希望的减少错误和代码的信心十足的方法。 我们将其添加到freeCodeCamp核心课程的7.0版中 。 我认为这应该在路线图上更加突出,但是它就在那里。

  • Web Assembly is a nice-to-have in my opinion. Developers are starting to do exciting things with it, but it will be a while before this technology really becomes ubiquitous.在我看来,Web Assembly是一个不错的选择。 开发人员开始使用它进行令人兴奋的事情,但是要真正使这项技术普及还需要一段时间。

后端Web开发路线图 (Back End Web Development Roadmap)

Kamran's second roadmap focuses on back end web development. If you combine this with his front end map, you get a pretty good path to becoming a full stack developer.

Kamran的第二个路线图侧重于后端Web开发。 如果将此与他的前端图结合起来,您将成为成为全栈开发人员的绝妙途径。

Here's his entire Back End Roadmap:

这是他的整个后端路线图:

我对后端路线图的想法 (My thoughts on the Back End Roadmap)

I agree with everything here.

我同意这里的一切。

是的,您应该学习SQL和关系数据库 (Yes you should learn SQL and relational databases)

I want to strongly agree with his recommendation that you learn a relational database.

我非常同意他关于您学习关系数据库的建议。

Yes - databases like MongoDB and Neo4j can do a lot for you, and are better suited to certain types of applications than relational databases.

是的-MongoDB和Neo4j等数据库可以为您做很多事情,并且比关系数据库更适合某些类型的应用程序。

But you should still learn SQL and understand how relational databases work.

但是您仍然应该学习SQL并了解关系数据库如何工作。

I recommend PostgreSQL (which we use for several projects at freeCodeCamp), but other relational databases are pretty similar.

我建议使用PostgreSQL(我们在freeCodeCamp的几个项目中使用了PostgreSQL),但是其他关系数据库却非常相似。

Here's freeCodeCamp's free 4-hour course on SQL, which will teach you the basics.

这是freeCodeCamp 关于SQL的4小时免费课程 ,它将教您一些基础知识。

And if you want to dive even deeper, here's our free 8-hour course on relational database design.

如果您想更深入地学习,这是我们有关关系数据库设计的8小时免费课程 。

如何选择正确的后端开发编程语言 (How to choose the right back end development programming language)

I also want to add a note on choosing a language.

我还想添加关于选择语言的注释。

Even though there are many languages - and you can do essentially anything with any language - I strongly recommend learning either Node.js (JavaScript) or Python as your first language.

即使有许多种语言-而且您几乎可以用任何一种语言做任何事情-我还是强烈建议您学习Node.js(JavaScript)或Python作为您的第一语言。

Here is a detailed guide to which programming language should you learn first.

这是您应该首先学习哪种编程语言的详细指南。

DevOps路线图 (DevOps Roadmap)

Finally, Kamran covers how to become a DevOps, or Site Reliability Engineer. This involves working with a lot of cloud services and overseeing infrastructure.

最后,Kamran介绍了如何成为DevOps或站点可靠性工程师。 这涉及使用大量云服务和监督基础架构。

Here's his entire DevOps roadmap:

这是他的整个DevOps路线图:

我对DevOps路线图的看法 (My thoughts on the DevOps roadmap)

Linux, Linux, Linux.

Linux,Linux,Linux。

Also, I would recommend working as a developer first, then gradually coming to specialize in DevOps.

另外,我建议先作为开发人员工作,然后逐渐专注于DevOps。

Here's a quick 30-minute introduction to the field of DevOps that should give you a better idea of whether DevOps is something you're interested.

这里是对DevOps领域的30分钟快速介绍,它应该使您更好地了解DevOps是否是您感兴趣的东西。

That's all. What do you think? Did Kamran leave out any essential skills or technologies? Leave a comment and let's hash this out.

就这样。 你怎么看? Kamran是否遗漏了任何必不可少的技能或技术? 发表评论,让我们对其进行散列。

Also, if you have any resources that have worked really well for you learning these skills, share them below as a comment.

另外,如果您有任何资源对您学习这些技能非常有用,请在下面以评论的方式分享。

Happy coding!

编码愉快!

– Quincy

–昆西

翻译自: https://www.freecodecamp.org/news/web-developer-roadmap/

devops开发模式流程图

devops开发模式流程图_2020 Web开发人员路线图–成为前端,后端或DevOps开发人员的视觉指南相关推荐

  1. 项目开发——【流程图】软件工程程序流程图详解《如何正确绘制项目开发流程图》

    程序流程图详解 介绍:通过图形符号形象的表示解决问题的步骤和程序.好的流程图,不仅能对我们的程序设计起到作用:在帮助理解时,往往能起到"一张图胜过千言万语"的效果. 一.程序流程图 ...

  2. 如何选择Web APP与Native App原生开发模式的区别(转)

    APP开发模式通常分为Web APP与Native APP原生模式两种,这两种模式均各自有自己的优势,到底是采用Native App开发还是采用Web App开发一直是业界争论的焦点,但是随着HTML ...

  3. 如何选择Web APP与Native App原生开发模式的区别

    APP开发模式通常分为Web APP与Native APP原生模式两种,这两种模式均各自有自己的优势,到底是采用Native App开发还是采用Web App开发一直是业界争论的焦点,但是随着HTML ...

  4. web开发模式+三层架构与MVC

    一.MCV模式与三层架构 三层架构包括UI.BLL.DAL三层,MVC三层指的是model.view.controller,这两个是有区别的. 三层架构主要注重数据的处理流程,DAL中数据获取与存储, ...

  5. Flutter 核心原理与混合开发模式

    作者:airingdeng,腾讯QQ前端开发工程师 本文将从 Flutter 原理出发,详细介绍 Flutter 的绘制原理,借由此来对比三种跨端方案:之后再进入第三篇章 Flutter 混合开发模式 ...

  6. APP系统开发模式一共有哪几种?

    App的开发基于硬件设备所运行的操作系统,现在主流的移动操作系统有苹果的iOS.google 的Android和微软的Windows Phone 8 等,主要通过运行应用的硬件和设备的其他系统约束来区 ...

  7. 企业移动信息化应用开发模式选型指南

    随着移动互联网的逐步深入,移动应用已经从新闻.搜索.电商.游戏.视频等热门应用逐步向企业移动应用领域转移.而且市场规模逐年增长,据IDC发布的报告显示,2013年中国企业级移动应用市场规模为9.3亿美 ...

  8. Hybrid APP 混合开发模式的选择之路(三)

    原文出处:http://www.cnblogs.com/dailc/p/5930231.html 现在概念上的APP诞生是在Google推出Android,Apple推出iOS后,从这时候开始,就有了 ...

  9. 学习笔记 --- 工厂、单体、适配器、策略、观察者、MVC设计模式及ASP.NET MVC开发模式、关闭缓存的方法...

    关于工厂.单体.适配器.策略.观察者没啥好说的, 代码中有说明 //DesignPattern.cs View Code using System; using System.Collections. ...

最新文章

  1. java 日期的工具类_java 日期时间工具类
  2. select函数及fd_set介绍
  3. 对No Starch Press出版的《Python Playground》一书的书评及其作者访谈录
  4. Batch Normalization 反向传播(backpropagation )公式的推导
  5. 网站导航颜色停留_提高网站流量的方法有哪些?
  6. 韵达开放接口php代码,韵达快递订单运输状态查询接口
  7. 图书自助借阅功能分析
  8. 2021年互联网热梗盘点
  9. python图片搜索_用Python构建图片处理搜索引擎
  10. android中接口的作用是什么意思,详解Android接口Interface的使用和意义
  11. ElasticSearch常用插件整理
  12. 创意电子学小知识:电位器
  13. 自研还是采购BI系统?后悔知道得太晚!
  14. drawable-(hdpi,mdpi,ldpi)和WVGA,HVGA,QVGA的区别以及联系
  15. 贴现、贴现率、贴现值、现值、折现值、PV搞搞清楚
  16. 高考录取查询系统被植入挖矿代码;日本百亿亿次超算已完成 CPU 开发
  17. GitHub 2020 报告:全球开发者工作与生活平衡情况年度分析
  18. SolidCAM 2020 基础到五轴 车铣 编程视频教程 2021教程
  19. 企业在知乎上做问答推广的技巧分析,企业知乎推广营销方法步骤
  20. java 除 取模_除法运算和取模

热门文章

  1. 阿里P8成长路线!我的头条面试经历分享,吊打面试官系列!
  2. vue实现可编辑的文字_苹果还自带文字转语音,只要一键按下便可实现,今天分享给大家...
  3. tableau地图城市数据_Tableau 地图 | 无法识别的城市
  4. 华为照片在哪个文件夹_原来华为手机还能这样清理垃圾,怪不得你的手机可以多用5年...
  5. jQuery以JSONP的访问调用一个WCF REST服务
  6. 一道Js判断对象是否相等面试题引发的故事
  7. MySQL学习【第十二篇事务中的锁与隔离级别】
  8. 深入浅出:HTTP/2
  9. 微信JS-SDK选择相册或拍照并上传PHP实现
  10. 数据库笔记2:SQL运算符