技术选择对于APP开发非常重要。 您是成立自己的开发团队还是寻找第三方APP开发公司来外包。 在技术选择中,要注意这一点。
APP开发架构分析
技术选择实际上是分解不同维度产品的过程。 通过分析,合理分解每个技术需求,然后对每个技术需求进行综合评估,***后选择合适的框架。
首先,从架构上可以将所有产品大致分为几类。 每个类别都有相似的建筑风格,并且通常在各种建筑元素的特定要求上有很大的相似***。 因此,确定产品类型和体系结构样式有助于我们根据现有产品进行技术选择。 这样可以大大节省技术选择的工作量,并减少由于技术选择不当而导致以后进行开发和维护的风险。
技术框架的类型很多,并且不同类型的细分更多。 如WEB应用程序,信息显示和社交选择明显不同。 此外,在每种产品类型(例如RCP和RIA应用)的选择上也存在重叠。 尽管UI层选择完全不同,但是它不会阻止两个后端选择的相似***。 具有复杂数据表示和交互功能的企业应用程序。
简而言之,产品类型就像程序设计中的设计模式一样,它使我们能够快速将产品分解为几个重要的架构元素,并与产品的通用解决方案相对应,这在指导我们的技术选择工作中发挥了重要作用。
其次,架构的分层可以帮助我们基于``分而治之''的思想选择技术。 这包括“逻辑分层”和“物理分层”。 逻辑分层使我们可以将技术选择分为表示层选择,业务层选择,持久层选择和数据资源层选择等,然后逐步完成选择。 除了每个步骤之外,还必须考虑其相应的步骤。除了体系结构元素之外,还必须考虑上层和下层的集成方案。 例如解决方案的复杂***,健壮***和***能。 “物理分层”决定了各层之间通信框架的选择。 同样,我们需要考虑通信的***能,安全***和有效***。
***后,产品类型和体系结构层的结合使我们能够合理地分解技术体系结构的选择,并充分关注问题,从而在各种框架之间做出有效选择。 但是,除了各种技术要素和指标外,还有一个非常重要的方面对技术选择有很大影响,即学习成本,社区活动和技术成熟度。
对于这两个技术框架的相似技术指标,我们自然选择学习成本较低,社区活动较高且技术成熟度较高的一种。
对于某些新兴的框架,尽管概念很好,并且社区非常活跃,但它们的框架可能不够健壮,需要更多时间在生产环境中进行改进。 此时,即使它具有更好的***能,我们也必须谨慎选择,或者对一些非核心模块进行本地介绍测试,或者不介绍框架,而是合理地设计系统集成方案,以便在充分完成时 ,可以很容易地用框架迁移代替。
换句话说,当我们认为一个新的框架具有足够好的***能,可伸缩***和可伸缩***时,我们需要冷静地考虑它是否足够健壮以及这些功能对我们是否必要。 有时您会发现它是快速而灵活的,但这不是必须的。 您带来的系统质量的提高不能被维护它增加的成本所抵消。
简而言之,选择适合您产品的框架,而无需对各种架构元素进行极端限制。 这就是为什么新框架在世界范围内泛滥的原因,而十年前的许多框架仍然保持着强大的生命力。