Swift vapor3 - 为什么选择vapor开发Swift服务器应用

使用Swift和Vapor进行服务器端应用程序开发是一种独特的体验。 与许多传统的服务器端语言相比 - 例如PHP,JavaScript,Ruby - Swift是一种强壮和静态类型的语言。 此特性大大减少了iOS应用程序中的运行时崩溃次数,您的服务器端应用程序也将享受此优势。

服务器端Swift的另一个潜在好处是提高了性能。 因为Swift是一种编译型语言,所以使用Swift编写的应用程序可能比使用解释型语言(例如Python)编写的应用程序执行得更好。

但是,编写服务器端Swift应用程序的最大原因是你可以使用Swif语言! Swift语言是增长最快,最受喜爱的语言之一,其现代语法和功能结合了多种语言的精华。 如果您目前正在为iOS开发,那么您可能已经熟悉了该语言。 这意味着您可以开始在服务器端应用程序和iOS应用程序之间共享核心业务逻辑代码。

选择Swift还意味着您可以使用Xcode来开发您的服务器应用程序!因为Linux及iOS和macOS其都是基于Unix诞生的,所以您可以在Xcode中完成大部分开发。这使您能够使用IDE中强大的调试功能,这是大多数服务器端语言所没有的功能。

vapor的优势

Vapor不是唯一可用的服务器端Swift框架,为什么选择Vapor呢?

选择Vapor有很多充分的理由,这里简要说明几个:

  • Vapor是最早在整个API中使用Codable协议的服务器端框架。 这允许您可以编写非常少的代码来保存数据库中的模型并将它们作为JSON返回。 它还允许您接受数据并将其转换为单行代码中类型安全的struct。 与之前版本的框架相比,Vapor 3使用Codable协议大大减少了您需要编写的代码量。

  • Vapor还采用完全无阻塞架构(non-blocking)。 如您所知,当服务器应用程序收到HTTP请求时,它必须返回HTTP响应。 在阻塞体系结构中,您的应用程序可能需要很长时间来处理请求 - 例如,等待数据库查询返回 - 那么应用程序无法响应该线程上的进一步请求。 如果产生多个线程并在它们之间切换也将会带来额外的开销。 在非阻塞体系结构中,遇到耗时操作会切换请求并处理其他请求,直到耗时的原始请求结果准备就绪后才返回此结果。 因此,非阻塞框架的性能明显优于阻塞框架。 Vapor在每个级别都是非阻塞的,包括数据库驱动程序。

  • 最后,Vapor的最佳特色是它的社区。 Vapor拥有最活跃和最具活力的社区,这是其日益普及的一个主要因素!

你可能感兴趣的:(Swift vapor3 - 为什么选择vapor开发Swift服务器应用)