开发人员聚焦:布兰登·里德(Brandon Reid)

Cosmic JS开发人员聚焦系列的本期中,我们与Brandon Reid进行了交谈,Brandon Reid是一位位于德克萨斯州达拉斯的JavaScript开发人员,他目前是Simple Media的首席开发人员。 布兰登最近在Cosmic上为能源和航空客户Arnold Companies开辟了一个新的React / Node网站。 在LinkedInGitHub上关注Brandon ,并享受Q / A。

Cosmic JS:您开发软件已有多长时间了?
Brandon :我个人曾经为高中时玩过的PC游戏(称为Space Engineers)创建小型C#脚本(我知道!还能获得多少书呆子?)专业上,我没有开始构建生产级软件直到我在北德克萨斯大学获得学士学位的二年级。 那时是2015年,当时我是研究助理。现在已经三年了,我享受其中的每一分钟。

您首选的开发堆栈是什么?
我在使用JavaScript。 因此,我一直以来都是CERN堆栈。 Couchbase,Express,React和Node。 但是,由于使用了Cosmic JS,我将不得不切换我的后端首选项:Couchbase for Cosmic。 :wink:就UI框架而言,我一直以来都是Material UI设计。 它简单,优雅,并具有用于响应的庞大UI套件,可提供大量出色的组件。

您最为过去的哪些项目感到骄傲,为什么?
放下手,这是我在北得克萨斯大学担任研究助理时在Ram Ram Tutu博士的带领下开发的第一批生产应用程序之一。 他的研究实验室基于可穿戴技术构建了一个移动android应用程序,该应用程序可以监视在代码紧急情况下对患者执行的CPR的质量。 从本质上讲,护士会佩戴与android平板电脑同步的android smartwatch,该平板电脑将监视CPR的运动/质量。 该研究与弗里斯科的德克萨斯健康长老会合作。 我的工作是实现一个内部Web应用程序,该应用程序可以以图表/直方图的形式显示实时统计数据。 数据包括在CPR期间执行的泵的分钟率/分钟,泵/分钟数等。我必须在android设备和内部服务器之间实现后端同步网关,并使用完整的堆栈。 这个项目确实使我感到自己在医疗行业中发挥着重要作用并产生了影响。

进一步谈谈您构建应用程序的过程。
通常,在构建应用程序之前,我会尝试将一些高层图表放在一起,以列出该应用程序的重要功能,其中大多数是以交互/顺序图的形式。 然后,我将分析应用程序将具有哪种全局和可重用组件。 这有助于我更好地了解数据将如何在整个应用程序的组件树中流动以及需要实现哪种数据管理。 之后,我将实现某种类型的敏捷工作流,在开发冲刺中工作,并尝试将MVP发布给我的客户。 我希望与客户保持尽可能透明,并在每个步骤中将他们纳入敏捷过程。

您对今天正在使用的哪些技术感到兴奋,或者想了解更多信息?
哦,天哪,这是一个很大的清单。 我一直想了解很多很棒的东西。 使用某些提供3D渲染功能的JavaScript库(例如3D.js),我感到非常兴奋。 随着现代浏览器功能的日益强大,我觉得我们将会看到使用3D内容的网站有所增加。 我也为在聊天机器人和其他用例中使用AI感到很兴奋,我一直渴望获得一些时间在Digital Ocean上启动AI服务器并使用它。 也! 反应动画库。 有一些非常有才华的开发人员在那里创建了一些很棒的动画。 等不及要花一些时间与他们一起玩了。

您刚刚完成了TAC的构建,将它从WordPress安装升级到了现代的API优先堆栈-那是什么?
建造TAC令人震惊! 在Cosmic中构建超快速的API后端,再顺利不过了。 我能够使用Cosmic的React Starter套件,并使用一个包装了NextJS及其SSR功能的出色样板来开始运行。 我从未遇到过Cosmic的问题,也从未联系过支持人员。 对于开发人员而言,这就是平台上的简单,轻松和优雅。 我喜欢看到大公司的这种趋势,最终摆脱了笨拙的系统,如WordPress / Drupal,并转向了更现代的Web堆栈。 作为专门从事React / Node的Full Stack开发人员,我对Web开发的未来感到无比兴奋。

TAC的后端由Node,Next.js和Express提供支持。 Next.js用于SEO优化以及站点路由的服务器端呈现功能。 由于它们是内置的,因此Next.js还可轻松与babel和webpack集成。我使用Next.js路由API为具有相同设计布局的页面呈现页面模板。 TAC的前端由React.js和世界上最受欢迎的React UI框架Material UI提供支持。 为了将Material UI与SSR结合使用,我不得不将网站包装在JSSProvider中,并使用CSSBaseline。 为了进行开发,我将Eslint用作linter,以获得更简洁,更一致的代码库。 由于TAC使用ES6 javascript,因此我还必须实现少量的polyfill才能将ES6转换为ES5,以便该站点可以与IE11一起使用。 我使用的一些著名的节点模块是:用于整个站点图像库的React-Image-Gallery,用于新闻编辑室的React-Masonry-Component和用于API请求的Fetch。 对于电子邮件服务/ API,我使用了nodemailer和mailgun。

我开始使用Cosmic的React Starter Kit来构建站点,它帮助我立即开始起步。 建立TAC的开始是从实施站点的所有全局变量(页眉,页脚,Favicon等)开始。 因此,我快速创建了一些javascript请求函数,以使用Cosmic的Node API从cosmic存储桶中提取数据。 我将这些全局组件添加到站点的主要_app布局中,因此每个页面都将使用这些全局组件进行包装和呈现。 从那里,我分析了哪些页面在多个页面或站点中具有可重用的组件,并根据我的分析为这些页面创建了组件视图。 从那里,我能够高效地剔除页面设计,并在运行时在宇宙桶中实现对象类型。 当我们接近网站发布时,我注意到了IE11的兼容性问题,因此不得不提出解决方案。 刚开始,我将在代码中进行浏览器嗅探,以显示在IE上可以正常运行的内容。 相反,我实现了Babel和一些polyfills以解决任何兼容性问题。

Cosmic JS Spotlight系列致力于展示使用现代工具构建应用程序的开发人员。 要与我们保持联系,请在Twitter上关注我们,在Slack 加入对话

From: https://hackernoon.com/developer-spotlight-brandon-reid-197223f83ef0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值