加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

三周内构建 JavaScript 全栈 web 应用

发布时间:2018-10-16 14:53:00 所属栏目:移动互联 来源:LCTT 原创编译
导读:【51CTO技能沙龙】10月27日,让我们配合试探AI场景化应用实现之道 编译自: https://medium.com/ladies-storm-hackathons/how-we-built-our-first-full-stack-javascript-web-app-in-three-weeks-8a4668dbd67c 作者: Sophia Ciocca 应用 Align 中,用户主
副问题[/!--empirenews.page--] 【51CTO技能沙龙】10月27日,让我们配合试探AI场景化应用实现之道

三周内构建 JavaScript 全栈 web 应用

编译自: https://medium.com/ladies-storm-hackathons/how-we-built-our-first-full-stack-javascript-web-app-in-three-weeks-8a4668dbd67c

作者: Sophia Ciocca

应用 Align 中,用户主页的节制面板

从构想到陈设应用措施的简朴分步指南

我在 Grace Hopper Program 为期三个月的编码实习营即将竣事,现实上这篇文章的问题有些马虎 —— 此刻我已经构建了 三个 全栈应用: 从零开始的电子市肆 、我小我私人的 私家黑客马拉松项目 ,尚有这个“三周的毕业项目”。这个项目是迄今为止强度最大的 —— 我和其它两名队友配合耗费三周的年华 —— 而它也是我在实习营中最引觉得豪的成绩。这是我今朝所构建和涉及的第一款不变且伟大的应用。

如大大都开拓者所知,纵然你“知道怎么编写代码”,但真正要建造第一款全栈的应用却长短常坚苦的。JavaScript 生态体系出奇的大:有包揽理器、模块、构建器材、转译器、数据库、库文件,还要对上述全部对象举办选择,难怪云云多的编程新手除了 Codecademy 的教程外,做不了任何对象。这就是为什么我想让你体验这个决定的漫衍教程,随着我们步队的脚迹,构建可用的应用。


起首,简朴的说两句。Align 是一个 web 应用,它行使直观的时刻线界面辅佐用户打点时刻、设定恒久方针。我们的技能栈有:用于后端处事的 Firebase 和用于前端的 React。我和我的队友在这个 短视频 中表明的更具体。

从第 1 天(我们组建团队的那天)开始,直到最终应用的完成,我们是怎样做的?这里是我们采纳的步调纲领:


第 1 步:构想

第一步是弄清晰我们到底要构建什么对象。已往我在 IBM 中当咨询师的时辰,我和相助组长一同教育着构想事变组。从那之后,我一向提议小组行使经典的脑子风暴计策,在集会会议中我们可以或许提出尽也许多的设法 —— 纵然是 “愚笨的设法” —— 这样每小我私人的大脑都在思索,没有人因记挂而不敢颁发意见。

三周内构建 JavaScript 全栈 web 应用

在发生了好几个关于应用的设法时,我们把这些设法分类记录下来,以便更好的领略我们各人都感乐趣的主题。在我们这个小组中,我们看到实现设法的清楚趋势,必要自我改造、设定方针、情怀,尚有小我私人成长。我们最后从中抉择了详细的设法:做一个用于配置和打点恒久方针的节制面板,有生涯影象的元素,可以按照时刻将数据可视化。

以后,我们创作出了一系列用户故事(从一个终端用户的视角,对我们想要拥有的成果举办描写),阐发我们到底想要应用实现什么成果。

第 2 步:UX/UI 表示图

接下来,在一块白板上,我们画出了想象中应用的根基视图。团结了用户故事,以便领略在应用根基框架中这些视图将会怎样事变。

三周内构建 JavaScript 全栈 web 应用 三周内构建 JavaScript 全栈 web 应用 三周内构建 JavaScript 全栈 web 应用

这些骨架确保我们意见同一,提供了可预见的蓝图,让我们向着打算的偏向全力。

第 3 步:选好数据布局和数据库范例

到了计划数据布局的时辰。基于我们的表示图和用户故事,我们在 Google doc 中建造了一个清单,它包括我们将会必要的模子和每个模子应该包括的属性。我们知道必要 “方针(goal)” 模子、“用户(user)”模子、“里程碑(milestone)”模子、“记录(checkin)”模子尚有最后的“资源(resource)”模子和“上传(upload)”模子,

三周内构建 JavaScript 全栈 web 应用

最初的数据模子布局

在正式确定好这些模子后,我们必要选择某种 范例 的数据库:“相关型的”照旧“非相关型的”(也就是“SQL”照旧“NoSQL”)。因为基于表的 SQL 数据库必要预界说的名目,而基于文档的 NoSQL 数据库却可以用动态名目描写非布局化数据。

对付我们这个环境,用 SQL 型照旧 No-SQL 型的数据库没多大影响,因为下列缘故起因,我们最终选择了 Google 的 NoSQL 云数据库 Firebase:

  1. 它可以或许把用户上传的图片生涯在云端并存储起来
  2. 它包括 WebSocket 成果,可以或许及时更新
  3. 它可以或许处理赏罚用户验证,而且提供简朴的 OAuth 成果。

我们确定了数据库后,就要领略数据模子之间的相关了。因为 Firebase 是 NoSQL 范例,我们无法建设连系表可能配置像 “记录 (Checkins)属于方针(Goals)” 的从属相关。因此我们必要弄清晰 JSON 树是什么样的,工具是奈何嵌套的(可能不是嵌套的相关)。最终,我们构建了像这样的模子:

三周内构建 JavaScript 全栈 web 应用

我们最终为方针(Goal)工具确定的 Firebase 数据名目。留意里程碑(Milestones)和记录(Checkins)工具嵌套在 Goals 中。

(留意: 出于机能思量,Firebase 更倾向于简朴、通例的数据布局, 但对付我们这种环境,必要在数据中举办嵌套,由于我们不会从数据库中获取方针(Goal)却不获取响应的子工具里程碑(Milestones)和记录(Checkins)。)

第 4 步:配置好 Github 和火速开拓事变流

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读