创新和产品开发

使用应用程序加速器更快地构建

建立更快

几年前,微软(Microsoft)首席执行官萨蒂亚·纳德拉(Satya Nadella)表示:“现在每家公司都是软件公司。”您提供的产品和支持它的软件之间的界限已经变薄,在某些行业,软件是主要的竞争优势。雷竞技raybet提现不管你喜欢与否,软件都是你业务的关键部分。现在唯一的问题是“建造还是购买”?购买的方式有很多种,但它们都有一个严重的限制,那就是控制。如果你想完全控制你的竞争优势,那么你必须建立。

建筑

一旦你组建了合适的开发团队,“内部”构建就会具有成本效益,但说起来容易做起来难。组建和训练一支有效的团队可能需要数年时间。与信誉良好的咨询公司合作会让你更快地获得优秀的软件,但通常会付出更高的成本,最终,你会把它“内部”。这些权衡会让构建软件感觉像是一场双输游戏中的必要之恶。在Perficient,我们热爱构建软件,我们希望您也能爱上它。因此,我们从超过25年的自定义软件开发中吸取了经验教训,将其提炼为基本组件,消除了瓶颈,并开发了一个加速器,在开发过程的每一步都节省了资金并建立了团队纪律。但这不仅仅是你和我们订婚时省钱。我们的加速器不是一个框架或平台,旨在将您锁定并将您绑定到我们的服务上。就像优秀的管理者和优秀的父母一样,我们希望促进你的独立。我们的加速器是一套工具、模式、培训材料和纪律,当您的团队准备好完全拥有您的软件产品时,这些工具、模式、培训材料和纪律将与您一起使用。

加速建设……

我们的应用程序加速器是一个基于永恒和广泛适用的基础上设计的模块化工具包。在构建带有后端的分布式应用程序(如api或spa(单页应用程序))时,加速器提供了最大的价值。它不太适合像文字处理器或图形编辑工具这样的桌面应用程序,但现在我们没有多少合作伙伴要求只有桌面的解决方案。加速器支持企业级和分布式模式,如微服务。目前,前端的选择是React。不过,我们打算引入对Angular和其他现代UI框架的支持。后端选择是。net和c#,但我们也在探索其他选项。加速应用程序可以托管在本地或任何云平台上。该加速器通过自动化项目设置、消除样板代码、构建正确的模式、使用战略性自动化测试以及支持快速云部署来节省资金。使用加速器,一个企业级的“hello world”应用程序可以在不到一个小时的时间内生成并托管在云中。

快速项目设置

从头开始创建一个项目可能需要数周的时间。开发团队做出大量关于工具、模式、框架和编码标准的小增量决策。即使是最有经验的架构师也很难跟踪他们所有的“专用”技术和配置,然后还有不断发展的最新和最伟大的技术。我们的加速器将项目创建自动化,将25年的软件智慧整合到项目设置过程中,只需几分钟。我们的架构师精心策划新技术,将其纳入我们的加速器,保持项目既稳定又现代。下面是项目创建过程中产生的几个资产示例:

前端

  • React应用程序的交互性和吸引人的用户体验(更多的框架来…)
  • 提高稳定性和开发人员的效率。
  • VSCode项目的扩展和配置,提高开发人员的生产力。
  • 故事书集成以改进用户界面开发,并为开发人员和设计人员提供“活的”组件库。
  • 简单的基于钩子的通量状态管理。
  • 客户端SPA路由
  • 配置linter以执行编码标准。

后端

  • c# . net Core或。net 5(以后还会有更多的平台……)
  • 分层的企业就绪体系结构。
  • 现代国际化和本地化支持。
  • 简单的依赖项注册消除了基于组合的开发障碍。
  • 自定义代码分析器,以加强编码标准和模式。
  • 基础设施即代码,轻松部署到云。

样板

将项目启动时间缩短几周是一个很好的开始,但加速器并不止于此。它还消除了与创建新“页面”相关的全堆栈样板文件。这样可以节省每一页的时间。使用实时代码生成,加速器促进了前端和后端之间的通信;开发人员专注于构建内容,而不是“连接”应用程序。这一切都是通过灵活的工具完成的,而不是一个笨重的框架。所以,你没有被锁定,并有完全的控制权来定制你的加速项目的每个方面。我们仔细地混合了一次性和构建时代码生成策略,以在不影响灵活性或创建障碍的情况下提高生产力。加速器消除的一些每页样板文件包括:

  • 数据访问介质
  • 域逻辑处理器
  • 分布式应用程序适配器
  • 客户端代理和模型
  • 客户端和服务器路由
  • 表示组件
  • 通量的行为
  • 故事书的故事
  • 自动化测试

正确的模式

软件行业中有很多关于模式和方法的炒作,即使是有经验的工程师也会被新事物的前景所分散注意力。不幸的是,这种噪音通常会使软件开发变得比实际需要的更加困难。我们拥有丰富的从零开始建设新项目的经验,我们经历了比我们愿意承认的更多的“潮流”浪潮。但这一经验帮助我们克服了炒作,并选择了永恒的模式和架构纳入我们的加速器。从培训到工具,我们已经在加速器的结构中建立了正确的模式,使它很难出错。我们这样做没有限制开发者的创造力。事实上,通过将开发人员从适得其反的争论和流行模式中解放出来,他们可以更好地掌握重要的模式,并为实际业务问题开发创造性的解决方案。加速器采用的模式使团队能够更快地构建,具有更大的并行性和对导致技术锁定的时尚的弹性。

自动化测试

自动化测试是任何软件解决方案的关键组成部分:如果没有经过测试,它就无法工作。但测试可能是一个重大的痛点,如果管理不善,将使进展停滞。加速项目利用经过修改的BDD(行为驱动开发)方法进行自动化测试,使测试更容易理解,而且更容易维护。加速项目中使用的分层架构定义了引入测试的清晰“接缝”。这在不降低代码覆盖率的情况下减少了测试的总数。开发人员花费更少的时间来编写测试、运行测试和维护测试,同时保持高质量的业务需求。

部署

该加速器生成样板代码,允许使用基础设施即代码部署到流行的云提供商。基础设施即代码提供了可靠和可重复的部署,为开发人员节省了时间和压力。加速项目可以在几分钟内生成并托管在云提供商中,只需与CI/CD集成,您就拥有一个能够在创纪录的时间内为用户交付价值的敏捷团队。

培训

加速器充满了伟大的技术、节省时间的方法和智能模式。但它不能“强迫”高质量的软件。工程师在学校和工作中学到的许多模式和技术在企业规模上是适得其反的。打破坏习惯,团结具有不同个性、观点和经验的团队是成功与失败的关键。软件行业被大量的术语所淹没,这些术语可以在大型团队中进行有效的沟通。我们开发了培训材料,建立了一个共享的“心智模型”,这样来自不同背景的开发人员就可以“说同一种语言”。这种思维模式是我们加速训练的基础。加速项目总是由认证工程师组成,并且这种培训扩展到您的团队成员。

结论

我们的合作伙伴并没有要求我们建造加速器。我们开发它是因为我们热衷于更快地开发更好的软件。这并不容易,我们服务于广泛的行业,每个合作伙伴都带着独特的挑战来找我们。雷竞技raybet提现但通过多年的经验和热情的探索,我们找到了一条既省钱又能让我们的工程师多做他们喜欢的事情,少做他们不喜欢的事情的道路。是的,我们用我们的加速器帮你省钱。但更重要的是,我们将用它来教会你的团队如何构建优秀的软件,保护你的投资,让你的用户满意。

下一个步骤

要了解更多关于应用程序加速器的信息,请联系我们或每月查看这里;我正在撰写一系列博客文章,将对启用加速器的模式和技术进行技术上的深入回顾。我将链接到这些帖子,因为他们是可用的。

  • PADM,伟大软件的基础(即将到来…)

联系我们,了解更多关于加速下一次构建的信息:

作者简介

Nathan是一名高级解决方案架构师,拥有超过14年的自定义应用程序设计和构建经验。他学习工业设计,熟悉Illustrator,但他最有创意的工作是用IDE完成的。他拥有丰富的全栈经验,热爱. net,并不断探索新技术。

更多来自作者

留下回复

这个网站使用Akismet来减少垃圾邮件。了解如何处理您的评论数据

订阅每周博客文摘:

报名
关注我们
推特 Linkedin 脸谱网 Youtube Instagram