<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ 全栈 - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ freeCodeCamp 是一个免费学习编程的开发者社区，涵盖 Python、HTML、CSS、React、Vue、BootStrap、JSON 教程等，还有活跃的技术论坛和丰富的社区活动，在你学习编程和找工作时为你提供建议和帮助。 ]]>
        </description>
        <link>https://www.freecodecamp.org/chinese/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ 全栈 - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/chinese/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Sun, 31 May 2026 09:18:51 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/chinese/news/tag/full-stack/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ 全栈工程师职业发展指南 ]]>
                </title>
                <description>
                    <![CDATA[ 全栈工程师在过去十年中越来越受欢迎，是科技就业市场上最受欢迎的职位之一。 但究竟什么是全栈工程师？他们每天都在做什么？你如何才能成为一名全栈工程师呢？ 在这篇文章中，我将介绍全栈的定义，并涵盖全栈工程师所从事的一些工作。我还会提到一些你成为一名全栈工程师需要学习的技能。 什么是全栈工程师 现代 web 应用由两层组成：前端和后端。 前端，也被称为客户端，由内容、内容的展示和布局以及互动性元素组成。它包括用户在屏幕上看到的并可以与之互动的所有可见部分。 后端，也被称为服务器端，包括一个运行代码的服务器，它有必要的逻辑来接收、处理以及加工请求，还有一个用于安全地存储用户数据的数据库。它包括用户不直接知道的所有幕后过程。 栈是技术的集合，指的是软件、工具、编程语言、框架和数据存储技术的组合，它们共同构建和运行 web 应用。 有许多技术栈。最流行的 JavaScript 语言的栈之一是 MERN，它代表 MongoDB、Express、React 和 NodeJs。 MongoDB 是一个文档数据库，Express 是 Node.js 的后端 web 应用框架，React 是 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/full-stack-engineer-career-guide/</link>
                <guid isPermaLink="false">64701b7a30ac2607039ca7df</guid>
                
                    <category>
                        <![CDATA[ 全栈 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Chengjun.L ]]>
                </dc:creator>
                <pubDate>Tue, 08 Aug 2023 07:05:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2023/05/nubelson-fernandes-UcYBL5V0xWQ-unsplash.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文：</strong> <a href="https://www.freecodecamp.org/news/full-stack-engineer-career-guide/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Full Stack Engineer –&nbsp;Career&nbsp;Guide</a>
      </p><p>全栈工程师在过去十年中越来越受欢迎，是科技就业市场上最受欢迎的职位之一。</p><p>但究竟什么是全栈工程师？他们每天都在做什么？你如何才能成为一名全栈工程师呢？</p><p>在这篇文章中，我将介绍全栈的定义，并涵盖全栈工程师所从事的一些工作。我还会提到一些你成为一名全栈工程师需要学习的技能。</p><h2 id="-">什么是全栈工程师</h2><p>现代 web 应用由两层组成：前端和后端。</p><p>前端，也被称为客户端，由内容、内容的展示和布局以及互动性元素组成。它包括用户在屏幕上看到的并可以与之互动的所有可见部分。</p><p>后端，也被称为服务器端，包括一个运行代码的服务器，它有必要的逻辑来接收、处理以及加工请求，还有一个用于安全地存储用户数据的数据库。它包括用户不直接知道的所有幕后过程。</p><p>栈是技术的集合，指的是软件、工具、编程语言、框架和数据存储技术的组合，它们共同构建和运行 web 应用。</p><p>有许多技术栈。最流行的 JavaScript 语言的栈之一是 MERN，它代表 MongoDB、Express、React 和 NodeJs。</p><p>MongoDB 是一个文档数据库，Express 是 Node.js 的后端 web 应用框架，React 是一个前端 JavaScript 库，NodeJS 是一个后端 JavaScript 运行环境。</p><p>全栈工程师是指知道如何从头到尾构建一个 web 应用的工程师，包括前端部分、后端部分和它所处的基础设施。他们处理整个技术栈，了解其中的每一部分。</p><h3 id="--1">全栈工程师的任务和职责</h3><p>全栈工程师致力于解决一系列广泛的问题，通常对项目有端到端的所有权——从概念化到部署。</p><p>一些日常职责可能包括：</p><ul><li>通过与客户和利益相关者的沟通来收集项目需求，了解软件产品的愿景。</li><li>集思广益，与设计团队合作，在将设计原型编码成产品之前审查设计原型。</li><li>解决应用程序面向客户端的 HTML、CSS 和 JavaScript 问题，并处理应用程序内使用的前端框架。</li><li>确保 web 应用对终端用户的响应，应用能在大多数设备上运行。</li><li>遵循可访问性的最佳实践。</li><li>管理和维护数据库和服务器，以确保客户端高效和优化地工作。</li><li>确保应用程序的安全性、维护、性能、正常运行时间和可扩展性。</li><li>监控软件并编写测试，以确保代码按预期运行。寻找并修复代码中的错误，以优化软件。</li><li>编写干净的、设计良好的、高效的代码，遵守行业最佳实践。</li><li>跟进新的技术进展，以改善业务需求。</li><li>创建一个最小可行产品，向利益相关者展示并与决策者沟通。</li><li>在收集反馈意见后实施新功能。</li><li>审查其他工程师编写的代码，并提供建设性的反馈。</li><li>阅读和编写概述软件开发过程的文档。</li></ul><p>任务和责任将取决于公司的规模。</p><p>例如，一个小公司可能只有一个处理整个应用程序的全栈开发人员。一个较大的公司可能有前端和后端开发人员，他们在自己的领域和专业知识范围内从事具体的工作。</p><h3 id="--2">全栈工程师的平均薪资是多少</h3><p>软件工程师，包括全栈工程师，一般都有不错的薪水。</p><p>根据<a href="https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm">美国劳工统计局</a>的数据，软件工程师的年薪中位数为 109,020 美元。</p><p>具体到全栈工程师，<a href="https://www.glassdoor.com/Salaries/full-stack-engineer-salary-SRCH_KO0,19.htm">Glassdoor</a> 列出的平均工资约为每年 120,300 美元。</p><p><a href="https://www.indeed.com/career/full-stack-developer/salaries">Indeed</a> 列出的平均工资为 120,749 美元。而 <a href="https://survey.stackoverflow.co/2022/#salary-united-states">Stack Overflow 的开发者调查</a>显示，全栈开发者的平均工资为 14 万美元。</p><p>请注意，这些数据是面向在美国的全栈工程师统计的。报酬是多少将取决于你的位置和经验年限。</p><p>搜索一下你所在地区与你有相同经验的软件工程师的平均工资，以帮助你更好地了解。</p><h2 id="--3">如何成为一名全栈工程师——全栈工程师所需的技能</h2><p>在下面的章节中，我将介绍成为全栈工程师所需学习的一些技术。</p><p>成为全栈工程师需要时间，你不可能成为所有工具和技术的专家——更多的是要对技术有全面的了解，并充分理解使用代码解决问题。</p><h3 id="-web-">学习互联网和 web 基础知识</h3><p>作为一名全栈工程师，了解互联网的工作原理并熟悉一些网络术语，如 DNS 和 IP 地址，会让你受益匪浅。</p><p>要了解更多关于 DNS、IP 地址以及互联网如何运行的信息，请查看以下资源：</p><ul><li><a href="https://www.freecodecamp.org/news/how-the-web-works-a-primer-for-newcomers-to-web-development-or-anyone-really-b4584e63585c/">网络是如何运作的：web 开发新手入门手册</a></li><li><a href="https://www.freecodecamp.org/news/how-the-web-works-part-ii-client-server-model-the-structure-of-a-web-application-735b4b6d76e3/">网络是如何工作第二部分：客户端-服务器模型和 web 应用程序的结构</a></li><li><a href="https://www.freecodecamp.org/news/what-is-dns/">什么是 DNS？域名系统、DNS 服务器和 IP 地址的概念解释</a></li></ul><p>你还需要知道 HTTP（超文本传输协议），这是万维网的基础，因为它管理着客户（如 web 浏览器）和服务器之间的通信。</p><p>具体而言，你需要了解 HTTP 请求方法（如 GET、POST、PUT、PATCH 和 DELETE）和 HTTP 响应代码（如 200、404 和 500）。</p><p>要了解更多关于 HTTP 的信息，请查看以下资源：</p><ul><li><a href="https://www.freecodecamp.org/news/what-is-http/">什么是 HTTP？入门协议概述</a></li><li><a href="https://www.freecodecamp.org/news/how-the-internet-works/">HTTP 是如何工作的，为什么它很重要</a></li><li><a href="https://www.freecodecamp.org/news/http-networking-protocol-course/">掌握 HTTP 网络协议</a></li><li><a href="https://www.freecodecamp.org/chinese/news/http-request-methods-explained/">HTTP 请求方法——用代码实例解释 Get、Put 和 Post</a></li></ul><h3 id="-web--1">学习前端 web 开发基础知识</h3><p>只有三种前端 web 语言在所有现代网络浏览器中运行： HTML、CSS 和 JavaScript。</p><p>HTML（超文本标记语言的简称）定义了网页的结构和内容，如文本、链接、表单、图像、视频等。</p><p>要学习 HTML，请查看<a href="https://www.freecodecamp.org/news/learn-html-beginners-course/">这个课程</a>。</p><p>CSS（层叠样式表的简称）对 HTML 内容设计样式，并使其具有美感——它决定了网页的外观和感觉。</p><p>CSS 负责确定页面上元素的大小、显示、布局和呈现。CSS 还负责使网页在所有屏幕尺寸上都能使用。</p><p>要了解更多关于 CSS 的信息，请查看<a href="https://www.freecodecamp.org/news/learn-css-in-this-free-6-hour-video-course/">这个课程</a>，其中包括 Flexbox 和 Grid——两个重要的 CSS 主题。当你了解了基础知识，你可以学习一个 CSS 框架，如 <a href="https://www.freecodecamp.org/news/learn-tailwind-css/">Tailwind CSS</a>。</p><p>JavaScript 是一种动态脚本编程语言，用于在浏览器中运行。</p><p>它是唯一可以用于前端 web 开发的编程语言，是 web 开发的重要组成部分。它与 HTML 和 CSS 一起被用来创建交互式网页。</p><p>要了解更多关于 JavaScript 的信息，请查看<a href="https://www.freecodecamp.org/news/full-javascript-course-for-beginners/">这个课程</a>。</p><h3 id="-git-github">学习 Git 和 GitHub</h3><p>Git 和 GitHub 是开发工作流程的核心部分，是每个软件开发工作中使用的工具。</p><p>Git 是一个分布式的版本控制系统，它提供了一种方法来对你的项目进行修改、备份这些修改、跟踪它们，甚至在需要时回溯到它们。它还可以让你在同一时间与其他团队成员协作。</p><p>GitHub 是一个在线托管服务，让你更容易使用 Git，是你和你的团队上传和审查代码的地方。</p><p>要了解更多关于 Git 和 GitHub 的信息，请查看<a href="https://www.freecodecamp.org/news/git-and-github-crash-course/">这个课程</a>。</p><h3 id="--4">学习一个前端库和框架</h3><p>当你理解了 JavaScript 的核心概念，你就可以继续学习 JavaScript 的前端库和框架之一。</p><p>前端库是预先写好的可重复使用的代码，包含各种函数、方法或对象，你可以在你的 JavaScript 项目中使用，以执行任务和实现特定功能。而 web 框架是一种工具，可以使创建 web 应用更容易、更快速。</p><p>根据 <a href="https://survey.stackoverflow.co/2022/#technology-most-popular-technologies">2022 年 Stack Overflow 调查</a>，最受欢迎和最常用的 JavaScript 库是 ReactJS。</p><p>要了解更多关于 ReactJS 的信息，请查看<a href="https://www.freecodecamp.org/news/free-react-course-2022/">这个课程</a>。</p><p>还有其他框架你可以使用和考虑学习，如 <a href="https://www.freecodecamp.org/news/vue-3-full-course/">Vue</a>、<a href="https://www.freecodecamp.org/news/learn-angular-full-course/">Angular</a> 和 <a href="https://www.freecodecamp.org/news/learn-svelte-complete-course/">Svelte</a>。每个框架都有其组织和编写代码的方式，以及其自身的优势和局限性。</p><p>在学习这些工具之前，请确保你有一个坚实的 JavaScript 基础。</p><h3 id="-web--2">学习后端 web 开发</h3><p>作为全栈 web 开发人员，你需要了解前端技术和后端工具，所以你还需要能够使用服务器端的脚本编程语言。</p><p>有很多可供选择的语言，如 Python、Ruby 和 Java，仅举几例。</p><p>尽管 JavaScript 被广泛用于前端开发，近年来，因为 NodeJS，它也被用于后端网络开发。</p><p>NodeJS 是一个提供后端功能的 JavaScript 运行时，旨在建立动态可扩展的 web 应用。</p><p>首先，<a href="https://www.freecodecamp.org/chinese/news/what-is-npm-a-node-package-manager-tutorial-for-beginners/">学习如何使用 NPM</a>，这是一个 Node 包管理器，用于安装和管理 JavaScript 包的本地依赖。它是专门为与 NodeJS 一起使用而设计的。</p><p>要学习 NodeJS 的基础知识，请查看<a href="https://www.freecodecamp.org/news/nodejs-course/">这个课程</a>。</p><p>你可以将 NodeJS 与 ExpressJS 服务器端 web 框架结合，创建全栈 web 应用。要学习使用 NodeJS 和 ExpressJS 的后端开发，请查看<a href="https://www.freecodecamp.org/news/free-8-hour-node-express-course/">这个课程</a>。</p><h3 id="-sql">学习数据库管理系统和 SQL</h3><p>作为一名全栈工程师，你将与数据库打交道，因为你所开发的大多数 web 应用都有一个数据库。你将花很多时间编写数据库查询，以获取你需要的数据。</p><p>数据库是一个存储容器——一个存储项目中所有数据的地方，如用户数据。</p><p>有两种主要的数据库类型：</p><ul><li>SQL 或关系型数据库，也被称为 SQL 数据库，它以结构化的、有组织的、表格的形式存储数据。</li><li>非关系型或 NoSQL 数据库，它们不以表格形式存储数据。</li></ul><p>一个数据库有一个叫作数据库管理系统（DBMS）的程序，它作为数据库之间的接口，允许用户或程序来检索、更新和管理数据。</p><p>要了解关系型数据库，请查看 <a href="https://www.freecodecamp.org/chinese/learn/relational-database">freeCodeCamp 的关系数据库课程</a>。</p><p>为了与关系型数据库通信并操作存储的数据，你要使用查询语言，如 SQL（结构化查询语言的简称）来查询它们。要了解更多关于 SQL 的信息，请查看<a href="https://www.freecodecamp.org/news/learn-sql-in-10-minutes/">这个资源</a>。</p><p>如果你想开始使用 NoSQL 数据库管理系统，MongoDB 是一个不错的开始。要开始使用 MongoDB，请查看<a href="https://learn.mongodb.com/">这些课程</a>。</p><h2 id="--5">总结</h2><p>希望这篇文章能帮助你更好地了解全栈工程师的工作。</p><p>在这篇文章中，我们介绍了全栈工程的定义，并涵盖了全栈工程师所从事的一些工作。</p><p>我们还介绍了一些你成为全栈工程师需要知道的工具和语言。</p><p>感谢你阅读本文！</p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Ep. 3 陈志成：极客，老师，佛子 ]]>
                </title>
                <description>
                    <![CDATA[ 今天我们邀请了全栈工程师陈志成。他从小在父母的影响下，对编程和教育感兴趣，小学时开始接触电脑，初中时和父亲一起用 Visual Basic 为学校开发教学成绩管理系统。在大学阶段，他未能就读自己喜欢的专业，但持续自学编程，给学校做项目，并和老师一起搭建在线问答平台，解答同学们的各种问题。 陈志成志成在大三时停止学业，成为一名全职的后端开发者。在几年 996 工作和短暂的辞职流浪之后，他理解了生活的意义，重返职场，在一个月之内学完 freeCodeCamp 的全部认证课程，系统地学习前端和 NodeJS，并参与开源贡献，成为 freeCodeCamp Top Contributor，而这段经历也让他在面试时受到雇主的青睐。 志成曾经加入初创公司，也曾在全球化的企业中参与过用户过亿的产品的开发。现在，他在一家做企业管理产品的创业公司担任技术负责人。 他将分享自己的学习经历、职业发展历程、对前端和后端开发的思考，以及对于人生使命的探索。 如果你喜欢我们的节目，请记得给我们好评，并把节目分享给朋友们。 欢迎在 https://chinese.freecodecamp.org/ 查看更 ]]>
                </description>
                <link>https://www.freecodecamp.org/chinese/news/interview-chen-zhi-cheng-mission-and-front-end-vs-back-end-development/</link>
                <guid isPermaLink="false">64c8e970b05f0606c70fb728</guid>
                
                    <category>
                        <![CDATA[ 播客 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 后端开发 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 职业发展 ]]>
                    </category>
                
                    <category>
                        <![CDATA[ 全栈 ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Miya Liu ]]>
                </dc:creator>
                <pubDate>Thu, 03 Aug 2023 04:10:00 +0000</pubDate>
                <media:content url="https://chinese.freecodecamp.org/news/content/images/2023/08/----_--.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>今天我们邀请了全栈工程师陈志成。他从小在父母的影响下，对编程和教育感兴趣，小学时开始接触电脑，初中时和父亲一起用 Visual Basic 为学校开发教学成绩管理系统。在大学阶段，他未能就读自己喜欢的专业，但持续自学编程，给学校做项目，并和老师一起搭建在线问答平台，解答同学们的各种问题。</p><!--kg-card-begin: html--><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://chinese.freecodecamp.org/news/content/images/2023/08/WechatIMG43-1.png" class="kg-image" alt="Chen Zhicheng" width="1110" height="1292" loading="lazy"><figcaption>陈志成</figcaption></figure><!--kg-card-end: html--><!--kg-card-begin: html--><iframe width="100%" height="180" frameborder="no" scrolling="no" seamless="" src="https://share.transistor.fm/e/6436a1ad" title="嵌入内容" loading="lazy"></iframe><!--kg-card-end: html--><p>志成在大三时停止学业，成为一名全职的后端开发者。在几年 996 工作和短暂的辞职流浪之后，他理解了生活的意义，重返职场，在一个月之内学完 freeCodeCamp 的全部认证课程，系统地学习前端和 NodeJS，并参与开源贡献，成为 freeCodeCamp Top Contributor，而这段经历也让他在面试时受到雇主的青睐。</p><p>志成曾经加入初创公司，也曾在全球化的企业中参与过用户过亿的产品的开发。现在，他在一家做企业管理产品的创业公司担任技术负责人。</p><p>他将分享自己的学习经历、职业发展历程、对前端和后端开发的思考，以及对于人生使命的探索。</p><p>如果你喜欢我们的节目，请记得给我们好评，并把节目分享给朋友们。</p><p>欢迎在 <a href="https://chinese.freecodecamp.org/">https://chinese.freecodecamp.org/</a> 查看更多免费的编程学习资源。</p><h2 id="-"><strong>更多关于嘉宾的信息</strong></h2><ul><li><a href="https://github.com/ZhichengChen">GitHub 主页</a></li></ul><h2 id="--1"><strong>主要话题</strong></h2><ul><li>02:58 初中时开发教学成绩管理系统帮助学校提升效率</li><li>05:00 在父母的影响下萌发对编程和教育的热爱</li><li>07:25 大学时自学编程，将 96 年开始的电话热线构建为在线帮助平台</li><li>08:33 辞掉 996 的后端开发工作，成为“流浪的程序员”</li><li>11:17 在云南过泼水节，明白生活的意义</li><li>12:15 加入创业公司，在 freeCodeCamp 自学前端</li><li>13:55 开源贡献经历助力自己进入大厂</li><li>17:05 五级工程师模型</li><li>17:46 把算法中的分治思想应用于工作</li><li>20:10 前端开发 .vs. 后端开发</li><li>22:29 如何学习框架</li><li>23:09 工程师掌握哪些知识可以加分</li><li>25:53 技术团队如何协作</li><li>29:08 REST API</li><li>30:44 如何不断提升自己</li><li>32:18 成长为合格的软件工程师需要几年</li><li>34:33 通过禅修找到人生使命</li></ul><h2 id="--2"><strong>提到的资源</strong></h2><ul><li><a href="https://www.wikiwand.com/en/Visual_Basic">Visual Basic</a></li><li><a href="https://cloud.tencent.com/developer/article/1140927">五级工程师模型</a></li><li><a href="https://www.wikiwand.com/zh/%E5%88%86%E6%B2%BB%E6%B3%95">分治算法</a></li><li><a href="https://www.freecodecamp.org/chinese/news/frontend-vs-backend-whats-the-difference/">前端 .vs. 后端</a></li><li><a href="https://www.freecodecamp.org/chinese/news/search?query=rest%20api">REST API</a></li><li>《一个瑜伽行者的自传》</li><li>《世界上最快乐的人》</li><li>《从哈佛到阿弥陀佛》</li><li>《佛子行》</li><li>《高效能人士的七个习惯》</li></ul> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
