AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

多设备企业环境下的 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:112265

评论

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

华为阅读全新上线高品质男声,带来身临其境般听书体验

叶落便知秋

内存耗尽后Redis干了什么

CTO技术共享

十分钟读懂火山引擎DataLeap数据治理实践

字节跳动数据平台

大数据 数据研发 企业号 3 月 PK 榜

从5分钟到60秒,袋鼠云数栈在热重启技术上的提效探索之路

袋鼠云数栈

热重启

寻找 Milvus 的第 N+1 种可能

Zilliz

Milvus Meet Up

FDF循环互助游戏开发说明丨FDF循环互助游戏系统开发详细及案例源码

系统开发咨询1357O98O718

DAPP众筹互助游戏开发详细丨DAPP众筹互助游戏系统开发(开发逻辑及案例)

系统开发咨询1357O98O718

查询性能: TDengine 最高达到了 InfluxDB 的 37 倍、 TimescaleDB 的 28.6 倍

TDengine

大数据 tdengine 性能测试 时序数据库

如何召开成功高效的项目会议?

PMO实践

项目管理 PMO

用友BIP接入百度文心一言 持续使能企业数智商业创新

用友BIP

国贸股份 x 袋鼠云:推进全链业务深度数字化,为产业综合服务插上数字化翅膀

袋鼠云数栈

数字化转型

IoT物联网平台运行监控最佳实践——设备管理运维类

阿里云AIoT

监控 物联网

等保测评机构资质申请条件是什么?个人可以申请吗?

行云管家

等级保护 等保测评 等保测评机构

SpringBoot整合ElasticSearch

Geek_7ubdnf

Java elasticsearch

OpenCloudOS 轻量级虚拟化引擎 LiKeX 介绍

OpenCloudOS

Linux 容器 rust

一文解码:如何在人工智能热潮下实现产业“智”变

加入高科技仿生人

人工智能 AI 低代码 智能化

马蹄链智能合约开发方案丨马蹄链智能合约系统开发(开发说明))

系统开发咨询1357O98O718

MetaForce佛萨奇2.0开发规则丨MetaForce佛萨奇2.0系统开发说明及案例

系统开发咨询1357O98O718

一文上手图数据备份恢复工具 NebulaGraph BR

NebulaGraph

数据库 容灾备份

软件测试/测试开发丨基于 Spring Boot 的 RESTful API 设计与实现

测试人

Spring Boot 软件测试 测试发开 RESTful API

DAPP马蹄链智能合约系统丨DAPP马蹄链智能合约系统开发(开发规则))

系统开发咨询1357O98O718

一图读懂工业数据要素高水平应用

Openlab_cosmoplat

工业数据

3 问 6 步,极狐GitLab 帮助企业构建高效、安全、合规的 DevSecOps 文化

极狐GitLab

DevOps DevSecOps 安全测试 极狐GitLab 安全左移

图片动画化应用中的动作分解方法

百度Geek说

深度学习 算法 计算机视觉 企业号 3 月 PK 榜

微信小程序自动化测试方案实践过程

Openlab_cosmoplat

开源社区 微信小程序测试

云原生+新技术,会碰撞出怎样的火花?

墨天轮

数据库 阿里云 Serverless 云原生 华为云

用友与百度强强联合,以AI深化冶金行业数智化应用场景

用友BIP

DTALK直播预约 | 深度解析大资管行业数字化转型

袋鼠云数栈

数字化转型

【知识科普】晶振究竟是如何起振的?

元器件秋姐

科普 晶振 元器件 电子

分享一个 hive on spark 模式下使用 HikariCP 数据库连接池造成的资源泄露问题

明哥的IT随笔

大数据 hive

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