阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

Perfect 将把 Swift 带到服务器端

  • 2016-01-19
  • 本文字数:1525 字

    阅读完需:约 5 分钟

按照加拿大创业公司 PerfectlySoft 的说法, Perfect 让使用苹果的 Swift 语言构建企业级 Web 应用程序成为可能。随着苹果最近将 Swift 开源,Perfect 承诺支持跨多种平台的跨平台开发,包括 OS X、Linux、Windows、iOS 和 Android。据PerfectlySoft 首席执行官Sean Stephens 介绍,把Swift 同时用于客户端和服务器端将使开发过程更高效,因为开发人员可以重用这个过程中的代码和逻辑,同时,借助Swift 的功能,还能确保高水平的安全、防护和性能。

Perfect 包含一个名为 PerfectLib 的 Swift 框架。该框架提供了一套既可以用于前端开发又可以用于后端开发的核心工具。在客户端,PerfectLib 主要是复制了苹果 SDK 已经提供的功能,比如支持 JSON 编码 / 解码和编组、字节流管理、cURL 支持、SQLite 访问。使用 PerfectLib 对那些功能的实现,客户端代码对苹果 SDK 的依赖减少,因为更容易在后端重用。在服务器端,PerfectLib 包含了额外的、对服务器端特别有意义的功能, 比如支持文件管理、进程管理和 IPC、 Mustache 模板解析、状态 / 会话管理和面向 MySQL、ProgreSQL、SQLite、MongoDB 等数据库的连接器。

为了了解更多有关 Perfect 的信息以及更好地了解它为开发者提供了什么,InfoQ 采访了 Sean Stephens。

您能解析下你们的项目同苹果开源 Swift 的关系吗?它会带来什么样的机会?

对于正在构建移动、Apple
TV 等应用的开发人员,Perfect 将使他们可以像在客户端那样使用 Swift 构建服务器端应用程序,另外还可以使用 Swift 构建网站和 Web 应用程序。这意味着,通过在整个应用程序生态系统中使用同一种语言,开发人员可以节省时间,缩短学习曲线,减少所需的代码。

另外,我们认为,其他的平台(Android 等)将很快使用编译器,留下一种原生语言,可以跨当前所有流行的平台、移动及其他场景使用。

目前,Perfect 只包含 PerfectLib 框架。您能描述下 PerfectLib 所扮演的角色吗?

Perfect 还包含一个基于 FastCGI 的 Apache 连接器(也提供了自带的服务器供用户选择),使它自己可以提供服务——这些事情是 Swift 和独立 SDK 无法完成的。此外,Perfect 还包含了一些关键的开发库(会话管理、JSON 连接等等),这些都不是 Swift 原生的。对于移动开发,这些库不是必须的,但对于 Web 和后端开发很关键。

你们有任何增加新框架的计划吗?或者对 PerfectLib 进行某种扩展,让它包含更多的特性和抽象,以简化服务器端软件的开发?

我们确实计划扩展 Perfect,增加更多的特性、功能和抽象。我们已经有多个项目处于测试阶段(例如 ORM),还有几个项目处于中期开发阶段。一旦重要特性和项目的整体规模达到平衡状态,我们将停止扩大特性集,而将精力投入到模块特性开发和整体性能上。如果开发人员有一些他们希望看到的关键特性,那么我们肯定会考虑。

在恰当的时候,我们还计划提供额外的配置和服务器管理工具,以简化开发人员的工作。

你们会为非苹果平台提供任何特定的工具或工具支持吗?

我们已经开始将其他 Linux 上的 IDE 用于我们自己的 Swift 开发,例如 Sublime 和 Eclipse。Swift 已经获得了流行工具很好的支持,而且将继续有机地发展——不过,我们也会很乐意参与这些项目,伴它们成熟。目前,Swift 是这个星球上增长最快、更多人爱的语言,我们会非常高兴同他们一起引领潮流。或者也许,我们是在跟随潮流?

感兴趣的读者可以查看 Perfect 的 GitHub 页面

查看英文原文: Perfect Aims to Bring Swift to the Server-side


给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2016-01-19 18:005000
用户头像

发布了 1008 篇内容, 共 374.3 次阅读, 收获喜欢 341 次。

关注

评论

发布
暂无评论
发现更多内容

Studio One 4永久许可证 含Studio One 4下载安装教程 【mac/win】

Rose

音乐制作 Studio One 许可证 Studio One 4破解版 Studio One下载安装

青否数字人直播方案永不被封,避免五大封号风险!

青否数字人

数字人

AI数字人互动大屏:如何改变我们的生活?

青否数字人

数字人

Docker从入门到精通:Docker镜像相关命令学习

霍格沃兹测试开发学社

如何在 Pytest 中添加日志记录

霍格沃兹测试开发学社

科技人才的养成之路

天津汇柏科技有限公司

科技

商业开源MES+源码+送可拖拽式数据大屏

万界星空科技

开源 源码 制造业 mes 开源mes

利用技术提升UI自动化测试的准确性

测吧(北京)科技有限公司

MATLAB R2023b mac安装密钥 含许可证文件 matlab r2023b详细图文安装教程

Rose

数学软件 MATLAB R2023b激活码 MATLAB安装秘钥

Autodesk AutoCAD 2022中文版下载 cad2022破解补丁及安装教程 mac/win

Rose

AutoCAD2022序列号 autocad2022秘钥 autocad2022破解版 cad2022下载

使用Python生成二维码

京东科技开发者

Docker从入门到精通:ubuntu系统安装docker

霍格沃兹测试开发学社

如何在mac上同时运行多个微信账号

影影绰绰一往直前

微信多开和防撤回工具 微信多开 mac微信多开

一种融合指代消解序列标注方法在中文人名识别上的应用(下)

京东科技开发者

Docker从入门到精通:Docker pull命令学习

霍格沃兹测试开发学社

All in One:Prometheus 多实例数据统一管理最佳实践

阿里巴巴云原生

阿里云 云原生 Prometheus

SecureCRT 最新安装和破解 资源「支持m1 m2」

影影绰绰一往直前

SecureCRT下载 SecureCRT激活 SecureCRT Mac破解版

主从延迟调优思路

GreatSQL

Monibuca v5 实现热重启

不卡科技

Go 流媒体开发

详解K8s 镜像缓存管理kube-fledged

华为云开发者联盟

Kubernetes 开发 华为云 华为云开发者联盟 企业号2024年4月PK榜

服务化UI页面结构树解析:优化UI自动化测试的实践探索

测吧(北京)科技有限公司

测试

Monibuca v5 中实现优雅内存分配器

不卡科技

Go 流媒体开发 内存池

✅MySQL执行大事务会存在什么问题?

派大星

MySQL 事务

智能写手GPT出击!生成测试报告技巧大公开!

测试人

人工智能 软件测试 自动化测试 测试开发 ChatGPT

数据闭环的建立:确保模型发展的可持续性

测吧(北京)科技有限公司

测试

【合合TextIn】智能文档处理系列—电子文档解析技术全格式解析

合合技术团队

OCR 格式转换 合合信息 文档转换 智能文档

Mac免费软件:不限速下载工具JDownloader

Rose

JDownloader下载 种子下载器 高速下载工具 JDownloader Mac版

利用taobao.item_search API接口,多样搜索类型满足你的购物需求

技术冰糖葫芦

api 货币化 API 测试 pinduoduo API

青否数字人直播源码产品功能?

青否数字人

数字人

华为云OBS助力物联网数据转发与存储

华为云开发者联盟

云计算 物联网 华为云 华为云开发者联盟 企业号2024年4月PK榜

Python黑科技揭秘:多窗口操作不再是难题,这些技巧让你轻松搞定

测吧(北京)科技有限公司

测试

Perfect将把Swift带到服务器端_Linux_Sergio De Simone_InfoQ精选文章