写点什么

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

评论

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

通过Gitea实现内外网repo管理

吴脑的键客

git

拿来即用!Get计算机视觉核心知识,看这本书就够了!

博文视点Broadview

使用华为HECS云服务器打造Telegraf+Influxdb+Grafana 监控系统【华为云至简致远】

科技云未来

Grafana Influxdb 系统管理 开源监控系统 提高效率

TiFlash 计算层概览

TiDB 社区干货传送门

数据库 分布式数据库 TiDB

SpringBoot如何优雅地进行响应数据封装、异常处理?

程序员小毕

Java 源码 程序员 面试 spring-boot

大型连锁百货运维审计用什么软件好?有哪些功能?

行云管家

IT运维 运维审计 运维软件 百货

字节算法大神手写算法笔记,已连续多次霸榜 GitHub Trending 首页

冉然学Java

GitHub 算法 Java 分布式 字节

使用域名注册服务 Domains配置域名【华为云至简致远】

科技云未来

域名配置 端口映射

web前端面授培训课程

小谷哥

超多精美礼品等你来拿!2022年中国混沌工程调查启动

混沌工程实验室

混沌工程

Tinymce plugins [Tinymce扩展插件集合]

Five

插件开发 tinymce 富文本编辑器 8月月更

阿里巴巴2022最新Java架构师进阶宝典!助力程序员金九银十面试跳槽涨薪

程序员小毕

Java 程序员 架构 面试 算法

如何在 UE4 中制作一扇自动开启的大门

HelloWorld杰少

8月月更

java培训机构与自学的优缺点有什么

小谷哥

Python爬虫抢购某宝秒杀商品

弑着去忘记う

后端

树莓派 USB摄像头 实现网络监控( MJPG-Streamer)

Five

树莓派 网络监控 #web 8月月更

利用华为云ECS服务器搭建安防视频监控平台【华为云至简致远】

科技云未来

nginx securecrt RTMP SSH工具

leetcode 448. Find All Numbers Disappeared in an Array 找到所有数组中消失的数字(简单)

okokabcd

数组 LeetCode 数据结构与算法

什么是研发效能的「黄金三角」?如何助力企业提升效能?

万事ONES

源码阅读其实很简单!阿里业务架构师手写JDK源码笔记(2022版)真香

Java永远的神

Java 程序员 面试 程序人生 jdk源码

Mysql重启后innodb和myisam插入的主键id变化总结

知识浅谈

8月月更

tinymce 如何实现动态国际化

Five

插件开发 tinymce 富文本编辑器 8月月更

Android技术分享| 一对一音视频呼叫邀请开发流程(一)

anyRTC开发者

android 音视频 移动开发 视频通话 呼叫邀请

上海web前端培训课程

小谷哥

多图预警!华为 ECS 与 阿里云 ECS 对比实战【华为云至简致远】

科技云未来

华为云 虚拟私有云VPC ECS

浅谈程序员的职业操守

阿里技术

易观分析:2022年Q2中国网络零售B2C市场交易规模达23444.7亿元

易观分析

B2C 网络零售

安全狗《云原生安全威胁分析报告》首次提出双检测模型

极客天地

Webpack5新特性:使用 Assets Module 处理图片和字体资源

昆吾kw

前端 前端工程化 webpack

大数据培训学习开发技术费用

小谷哥

基于ModelArts的动漫头像自动生成丨【华为云至简致远】

科技云未来

华为云ModelArts

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