AICon 北京站 Keynote 亮点揭秘,想了解 Agent 智能体来就对了! 了解详情
写点什么

多设备企业环境下的 C++

  • 2013-04-16
  • 本文字数:2589 字

    阅读完需:约 8 分钟

无论是在谈话、社交网络还是和一些产业文章中,你一定听说过在企业内部支持多设备的需求。像 BYOD(自带设备)这样的词条已出现在多数文章和企业战略中。在现代企业中的计算并非只是 Microsoft Windows 的世界。企业组织需要支持大量类型的设备,以便使员工更有工作效率。现代企业同时要支持包括多层系统、云计算、REST 和 SOAP web services 等更多类型的软件架构。

企业中很大比例的桌面应用使用 C++ 编写,在此列表中的有 Microsoft Office、OpenOffice 和大多数 Web 浏览器。C++ 已用于企业内部关键业务应用和包括 SOAP、REST 和 CORBA 等的多层架构。大多数企业级操作平台也是用 C++ 构建的,大多数 SQL 数据库也由 C++ 编写。

随着 BYOD(Bring Your Own Device)自带设备在企业内部的增长,你将看到很多移动应用也是用 C++ 构建的,不再是只有 Windows 和 Intel 体系的世界。

Java 在当今企业计算中也很流行,但你知道 HotSpot Java 虚拟机是由 C++ 编写的么?当 Java 开发者需要调用操作系统底层和硬件时,他们使用 JNI(Java Native Interface,Java 本地接口)来调用本地的 C++ 代码。

如果你想要在多设备企业环境下编译、部署应用,你得决定在 Windows、Mac、Web 和移动应用环境下使用哪些工具、框架和 SDK。

面向多设备,选用多厂商多工具,还是一个工具链加基本代码

面向多设备的传统方式:Windows 开发团队和 Mac 开发团队使用不同的工具和语言变量。这种工具方式加倍了开发和测试团队的工作量,增加了开发成本,往往以投放市场慢,或者推迟发布 Mac 版而告终。

  • Windows/SDK 和 Windows/RT – C#或 C++ 使用.NET 或 MFC
  • OSX/SDK – C++ 或 Objective-C
  • iOS/SDK – C++ 或 Objective-C
  • Android/SDK - Java

C++Builder 方式,仅需一个开发团队、使用一款工具,可以一次创建应用,点击编译成 Window 环境,还可以用相同的项目点击编译成 Mac 环境,不需额外的开发成本。采用 C++ Builder 的方式使用可视化的开发方案,被证明可以减少将近 80% 的代码量。从而以更低的成本、更短的时间赢得 Win/Mac 市场.

传统的跨平台工具

你可以选择使用一款或多款 C++ 编译器外加像 Qt 或 WxWidgets 的公共框架,这种方式仍然需要为每种设备的规格和型号做单独的适配开发工作,这种方式不适宜大规模应用到其他平台、软件架构、服务和规格的设备中去。

HTML5**** 跨平台工具

企业多设备开发也可以选择 HTML5 跨平台方式,如使用 Embarcadero 公司的 HTML5 Buider、Adobe 的 PhoneGap、Sencha 和 Kendo 的产品。但你可能无法保证你的应用在更好的用户体验、性能和可预测的执行中协调,因为需要有一个虚拟机在你的应用和设备之间运行。

“平台本机”虚拟码工具

这种多设备方式使你在使用一种公共语言的同时,仍可使用一些不同平台的 SDK 来构建应用。

快速、本机码多设备企业开发

使用基于 C++ Builder 的组件,可视化开发并优化本机码 C++ 编译器,你能快速为 Intel 处理器的设备进行原型设计、构建、部署本机码应用,使用同样的项目基础码,今年晚些时候也可以支持 ARM 处理器设备(参见 RAD Studio Mobile Roadmap ). 使用 C++Builder 方式,你的应用能享有最优的性能、高可调性、最小的内存占用空间,并能提供低延迟的用户体验。

C++ Builder 直接支持全部主流数据库、SOAP 和 REST web services,Microsoft Azure 和 Amazon cloud services。此外还有完整的支持众多其他企业架构和服务的插件和工具的生态系统。

C++ 是多设备企业的选择

以下列出了若干业界选择 C++(和 C/C99) 作为本机码用于企业级多设备应用的理由:

  • SourceForge 上开源项目排名第二到第四的语言
  • 顶级的商业软件有 C++ 编写 - Microsoft Word, Adobe Photoshop, Google Chrome, Firefox, Mac OS X, iOS, Oracle database, Microsoft SQL Server, MySQL, 游戏。
  • 顶级的互联网公司使用 C++ – Facebook, PayPal, Amazon。

C++Builder XE3 提供企业需要的本机、多设备方案:

  • 面向本机多设备的架构
  • 已实现 Windows 和 Mac 系统,2013 年计划实现 iOS 和 Android 系统
  • C++98, C++TR1, 和 C++11 语言标准
  • ANSI C, ISO C, C99, 和 C11 语言标准
  • Dinkumware STL 和 Boost 1.5
  • 集成 CLANG - http://clang.llvm.org/
  • 敏捷 C++ 语言扩展

为什么 C++Builder XE3 完美适用于多设备企业应用开发? C++Builder XE3 提供:

  • 基于 C++11 标准的 C/C++ 语言
  • 敏捷、可视化开发
  • 高性能无缝集成数据库和 Web/Cloud Services 连接
  • SQL 数据库支持,涵盖:Oracle, DB2, MS SQL, InterBase, Firebird, PostgreSQL, MySQL, Sybase ASA, Sybase ASE, Informix, SQLite, MS Access, ODBC bridge, dbExpress bridge –使用 FireDAC 多设备数据访问 ( http://www.embarcadero.com/products/rad-studio/firedac ).

更多 C++Builder 信息

观看 / 下载 C++ Builder 64 位编译器预览视频

更多关于 64 位 C++Builder 编译器的详情详见预览视频。在 Youtube 上观看 C++ 64 位编译器预览视频: http://www.youtube.com/watch?v=PwwMpBUoR6Y . 也可以下载 MP4 视频文件在: http://cc.embarcadero.com/item/29197 . 预览视频约长 9 分钟。

试用 C++Builder 64 位编译器

C++Builder XE3 RAD Studio XE3 免费试用版已经包括了最新的 C++Builder 64 位编译器。试用下载地址: https://downloads.embarcadero.com/free/c_builder

查看英文原文: C++ in the Multi-Device Enterprise


感谢贾国清对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-04-16 06:112397

评论

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

一次好的聊天可以超过自己努力啃几周的书籍

良知犹存

程序人生

品质网络的迭变之路,以及运营商的未来之匙

脑极体

云图说 | 3分钟创建一个游戏类工作负载

华为云开发者联盟

Docker 容器 华为云 工作负载 2048游戏

多角度分析,通讯时序数据的预测与异常检测挑战

华为云开发者联盟

时序数据库 即时通讯 异常检测 网络智能体 时序预测

低代码平台会让程序员失业?测评了5个工具,谁能让效率提高N倍?

代码制造者

编程 编程语言 低代码 零代码 测评

【API进阶之路】帮公司省下20万调研费!如何巧用情感分析API实现用户偏好调研

华为云开发者联盟

反馈 API 华为云 API Explorer平台 用户调研

《Java并发编程的艺术》读书笔记1:说说并发编程

Jason

多线程 并发

Android 原生 SQLite 数据库的一次封装实践

vivo互联网技术

sqlite android 数据库

一款基于 Python 语言的 Linux 资源监视器!

JackTian

Python GitHub Linux bashtop bpytop

LeetCode题解:21. 合并两个有序链表,递归,JavaScript,详细注释

Lee Chen

大前端 LeetCode

“云”上教与学,让教育不止步于课堂

Geek_116789

内存总是不够?HBase&GeoMesa配置优化了解一下

华为云开发者联盟

内存模型 内存 HBase 大集群 GeoMesa

太赞了!程序员应该访问的最佳网站都在这里了!

JackTian

GitHub 学习 编程 程序员 网站平台

数据库外键

will

数据库 性能 外键

MySQL“被动”性能优化汇总!

王磊

MySQL

学生党学编程,有这个开源项目就够了!

JackTian

GitHub 学习 编程 程序员 学生党

趣文:那天我被拉入 C++ 亲友群

程序员生活志

c c++ 程序员

入职两周,怀疑自己进了假百度!跟传说中完全不一样!难道真有两家百度公司?

程序员生活志

百度 程序员

程序员陪娃系列——见你的第一面

孙苏勇

程序员 陪伴 随笔杂谈

使用 supervisor 配置 ngrok 内网穿透为守护进程

jerry.mei

Linux 操作系统 ngrok 守护进程 内网穿透

学了那么多技术,为何依然成不了架构师

菜根老谭

架构设计原则

边云协同!EM-BOX视频分析盒加速安全生产场景落地AI应用

百度大脑

人工智能 人脸识别 图像识别 百度大脑 人体识别

程序员陪娃系列——小娃的到来

孙苏勇

程序员 陪伴 随笔杂谈

程序员陪娃系列——育儿路上二三事续

孙苏勇

程序员 陪伴 随笔杂谈

构造、析构期间被调虚函数发生的惨案,长教训!

华为云开发者联盟

代码 组合模式 封装、继承、多态 bug 回调函数

移卡荣登2020「AI 最佳成长榜」,AI+金融科技赋能商业服务

DT极客

Linkerd 2.8 - 實現超級簡單又安全的多叢集(multicluster) Kubernetes 架構

Rammus

Kubernetes DevOps 运维 云原生 Service Mesh

程序员陪娃系列——小小免费按摩师

孙苏勇

程序员 陪伴 随笔杂谈

程序员陪娃系列——和孩子聊生死

孙苏勇

程序员 陪伴 随笔杂谈

程序员陪娃系列——育儿路上二三事

孙苏勇

程序员 陪伴 随笔杂谈

BIGO技术:实时计算平台建设

InfoQ_3597a20b53cc

互联网 BIGO

多设备企业环境下的C++_C++_David Intersimone_InfoQ精选文章