全栈开发都包含哪些技术

 我来答
沉稳又淡泊丶小猫v
2018-12-27 · TA获得超过3564个赞
知道小有建树答主
回答量:1367
采纳率:80%
帮助的人:124万
展开全部

关键开发技能(硬实力):

Git / GitHub —— 你必须掌握如何使用Git来管理和分享你的代码。把Git作为关键技能的第一条,是因为它不仅仅是一个代码管理工具,更是一种推荐的工作方式。它使你能在任何地方进行开发,高效地管理任何大小的项目,通过Git你还能与其他团队成员进行分布式协作,大大提升工作效率。通过GitHub,还能将你与世界所有的开发者联系在一起。

至少一门编程语言 —— 你需要精通至少一门编程语言,Java 、PHP、C#、Python、Ruby、Perl 等,因为你的大多数核心业务处理都需要用这门语言来写。你既要掌握这门语言的语法,又需要非常熟悉如何基于这门语言进行项目的架构、设计、实现以及测试。如果你选择的是Java,那么你就需要掌握面向对象的设计和开发,设计模式的应用,基于J2EE各个组件的开发等等。

运用开发框架和第三方库 —— 流行的开发语言,一般都伴有出色的开发框架,比如Java的Spring、MyBatis、Hibernate,Python的Django,PHP的 thinkphp、yin,nodeJs的 express 等等。这些开发框架往往都遵循软件开发领域的一些最佳实践,并由非常优秀的开发人员创建。熟练使用这些开发框架或第三方库能够避免重复发明轮子,使你的工作事半功倍。更重要的是这些优秀框架或第三方库的一般都得到持续的维护,是对你的产品或项目在质量与安全方便的最有效的保障。

前端技术 —— 之所以将前端技术独立出来,作为一项关键技术,是因为它在今天的项目和产品的研发过程中正变得越来越重要。一个产品除了实现所需的功能之外,是否好用(用户体验)也正在成为评判一个产品是否成功的重要标准。而这都依赖于前端技术的实现,你至少需要掌握 HTML5、CSS3、JavaScript 等基本前端技术,同时进一步学习 JQuery、LESS、SASS、AngularJS或REACT等前端框架或第三方库。

数据库与缓存 —— 任何产品或项目都需要一个数据库来存储数据。作为全栈工程师,你也需要至少掌握一到两个数据库,并知道怎样与数据库进行交互。目前流行的数据库主要有MySQL、MongoDB、Redis、Oracle、SQLServer等。MongoDB作为文档型数据库,在互联网产品中正被越来越多地使用,对于规模稍大一些的项目,我仍推荐使用MySQL或商用的Oracle作为后端数据库。而Redis这样的内存数据库则可以用于缓存,以提升系统的性能。

基本设计能力 —— 大部分关于全栈工程师的文章或讨论中,都不会将设计能力做为全栈工程师的关键技能,但我却认为这项技能非常重要。我曾被邀请评估一些软件工程师自己开发的产品,这些产品都有不错的创意,功能实现也很到位,但一看就不是一个好的产品,用户根本没有使用欲望,原因是这些产品的设计太差了,而往往那些开发者完全没有意识到问题的存在,比如色彩的不一致,排版的凌乱,不恰当的图标 等等。我所建议的基本设计能力,并不要求你像专业设计师那样能够P出神图、制作奇妙的视觉效果等,但你需要掌握最基本的UI设计原则,如 色彩的搭配,基本的排版,并具备良好的审美能力,和一些基本UI设计能力,这样你做的产品就不会太差了。

在掌握了这些核心技能之后,你可以根据自己的兴趣与发展方向,学习其他方面的技术。比如,如果你对数据处理感兴趣,那么你可以学习大数据方面的技术。如果你对移动互联网更感兴趣,那么你可以学习Swift,开发iOS应用。知识总是相通的,在有了良好的技术基础后,学习其他知识将会变得非常容易。

享知信息
2023-10-16 广告
上海享知信息科技有限公司的敏捷开发需求管理工具旨在提高项目效率。该工具采用易于理解的简明语言,允许团队成员轻松共享、讨论和管理需求。它支持灵活的需求变更,可帮助团队实时响应并跟踪项目进展。同时,工具的分层结构使得需求与设计、代码相关联,为整... 点击进入详情页
本回答由享知信息提供
匿名用户
2017-07-25
展开全部
1.服务器、网络和服务器环境

知道哪里可能崩了和为什么会崩,没有什么是理所当然的。

适当的使用文件系统,云存储、网络资源,必须具备数据冗余和可用性的概念。

知道应用的伸缩性对硬件的需求。

什么是多线程和竞争条件?想想看,在开发机上你可能看不到这些,但是现实环境中它们就是会发生。

全栈coder还要能与运维并肩作战。提供有价值的错误信息和日志。确保它们是可靠的,因为运维会在你之前看到这些东西。(原文为DevOps)

2.数据建模

如果数据模型有缺陷,业务逻辑和上层逻辑就要用奇怪的代码(很丑)来弥补数据模型的缺陷。

全栈开发者要能够建立合理的、标准的关系模型,包括外键、索引、视图、查找表等。

全栈开发者要熟悉非关系型数据存储(应该指的不止是NoSQL),并且知道它们相对关系型存储优势所在。

3,业务逻辑

应用提供的核心价值。

可靠的面向对象技能。

可能会用到的框架。

4,API层、Action 层、MVC

理解外部对数据模型和业务逻辑的操作。

该层会有很多框架应用。

全栈开发者要具备编写清晰、一致和易用的接口。过高的复杂度让人厌恶。

5,UI

全栈coder:a)知道如何创建可读的页面布局;b)或者明白自己需要帮助设计师。A或B,关键是要能有好的视觉设计。

掌握HTML5和CSS。

JS正在逐步成为语言新锐,Javascript的世界里已经完成了很多激动人心的工作(node, backbone, knockout...)。

6.用户体验

全栈coder要知道用户需要的就是It works!

一个好的系统不会废了用户的手腕和眼睛。一个全栈coder会发现和审视需要8次点击、3步操作的流程,并最终把它一键搞定。

提供有价值的错误信息。如果崩溃了,就要向用户致歉。有时候程序员会写出让用户自我感觉很二的错误信息。

7.知道用户和业务到底要什么
现在我们模糊了架构的界限,但却可能远离了实际需求。

全栈coder要明确知道用户使用软件时的场景,而且要领会业务。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幸运的啄木鸟好
2017-07-25 · TA获得超过219个赞
知道小有建树答主
回答量:302
采纳率:0%
帮助的人:292万
展开全部
前端,后端,移动端开发都需要学的,慕课网有相关的课程。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lu...5@sohu.com
2017-07-25 · TA获得超过131个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:43.6万
展开全部
全栈工程师 更多图片(1张) 全栈工程师,也叫全端工程师,英文Full Stack developer。是指掌握多种技能,并能利用多种技能独立完成产品的人。 中文名:全栈工程师 外文名:Full Stack Developer 价值 全局性思维 现代项目的开发,需要掌握多种技...
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式