软件应用程序就像冰山一样 。用户看到的只是应用程序的一部分——在大多数情况下——应用程序的最大部分是看不到的 。这就是令人难以捉摸又神秘的“后端” 。
在Web开发的篇章中,我们主要讨论Web开发,因为它涉及与最终用户的直接互动——我们可以称之为“前端Web开发” 。
在大多数应用中,非用户接口代码比用户接口代码多得多 。复杂系统是在后台发生的各种使其工作的逻辑 。
我们需要存储和检索数据,需要遵循业务逻辑和规则,并且需要对结果进行预测 。所有这一切都发生在幕后 。
后端开发人员是这样的开发人员 。
后端开发究竟是什么?
这篇文章的目的在于,我将会考虑后端开发是一种不涉及创建生成用户界面的开发 。这可能包括后端Web开发,可能也涉及编写API,创建库或和没有用户界面或甚至科学编程系统的系统组件一起工作 。
文章插图
在现实中,即使前端开发获得了大部分的荣耀,但是世界上存在的大多数代码(可以说是最有用的代码)是最终用户从来不会看到的后端代码 。
简单来说,后端开发就是开发人员编写的不能直接看到的代码 。
后端开发人员做什么?
根据正在处理的应用程序的大小和范围,后端开发人员要做的事情有很大的不同 。在我是一个后端开发人员时,我做了很多工作,工作于应用程序中的业务逻辑,以及从前端提取和检索数据 。
在Web开发世界中,大多数后端开发人员从事于构建他们正在工作的应用程序背后的实际逻辑 。
通常,前端开发人员构建用户界面,而后端开发人员编写代码,使其工作 。
例如,前端开发人员在应用程序中创建一个界面,上面有一个按钮,按下按钮来获取客户的数据 。
后端开发人员写可使得按钮工作的代码,通过指出从数据库中提取哪些数据并将其传回到前端(并最终显示在那里) 。
后端开发人员也可能会大量参与系统架构,决定如何组织系统的逻辑,以便能够正常维护和运行 。
他可能会参与构建框架或系统架构,以便于更容易编写程序 。后端开发人员比前端开发人员花费更多的时间在实现算法和解决问题上 。
我一直都很喜欢后端开发工作,因为它更像一个挑战 。
这并不是说前端开发人员不解决难题,但通常前端开发工作更多的是关于创建用户界面和与之相关的内容,而不是实现实际的业务逻辑,使应用程序工作 。
后端开发的主要技术和技能
前端开发人员需要知道一系列用于创建用户界面的工具,而后端开发人员通常使用的是一套完全不同的工具和技能,以便于高效地完成他们的工作 。
后端开发人员所需的一个重要技能与SQL和数据库有关 。大多数后端系统需要连接到存储应用程序数据的数据库 。
文章插图
后端开发人员通常的工作是从数据库或其他数据源写入、读取和处理数据,因此拥有SQL等技能会非常重要 。后端开发人员——至少对于Web开发——也需要擅长他们正在使用的技术栈的服务器端语言 。
例如,虽然前端Web开发人员更多地专注于HTML,CSS和JavaScript,而后端开发人员需要更多地了解PHP Web框架,Ruby on Rails,ASP.NET MVC或任何正用于构建应用程序的服务器端Web开发框架 。
最后,我想说,后端开发人员需要更多地了解应用程序架构,因为大多数情况下,后端开发人员需要去构建应用程序的体系结构和内部设计 。
一个好的后端开发人员得知道如何使用各种框架和库,如何将它们集成到应用程序中,以及如何构建代码和业务逻辑,用一种使系统更易于维护的方式 。
如果你喜欢设计应用程序的基础设施,实现算法和逻辑,以及工作于数据,那么你可能会喜欢成为一名后端开发人员 。
关于全栈开发人员?
我曾想为全栈开发人员另起一篇文章,但后来想到,既然已经涵盖了Web开发和后端开发,那么延伸开去谈论全栈开发更为理所当然,因为全栈开发刚好涉及了前端和后端开发 。
文章插图
实际上,全栈开发包括处理系统或软件开发堆栈的所有组件和层 。它甚至可能涉及了解服务器硬件和架构,或者被认为是DevOps 。
今天,越来越多的软件开发职位在寻找能够进行全栈开发的开发人员,因为对于软件开发人员来说能够工作于涉及的整个技术栈是很有价值的,而不是将前端开发与后端开发兵分两路 。
- 开发软件的基本流程是什么 零基础开发软件详细步骤
- 如何在我的安卓上打开或关闭开发者选项?
- 自己怎么制作app 个人开发app最简单方法
- 手机卡顿严重应该这样做 开发者模式打开好还是关闭好
- 全球IT企业排行榜公布 软件开发公司排行榜
- 智商开发到100的电影叫什么 十大智商电影
- java排名算法 java排名
- 信阳市在2023年开发 2023年信阳市十大工程
- 小程序如何开发商城 开发小程序商城需要什么手续
- 好用的前端开发工具框架 有哪些比较好的前端开发工具