Dropbox使用C ++将代码更改为跨平台

几天前 Dropbox开发人员发帖 在应用程序的官方博客中 在移动开发方面明确了他们打算遵循的路线 您的跨平台应用程序,团队已决定创建统一的代码库,用于各种目的或平台。

该方法对于技能不高的小型团队可能很有用,但需要尽快进行生产。 自2013年以来,Dropbox团队一直依靠这一策略。 至通过C ++内置的独特代码库向Android和iOS平台提示。 帖子解释了为什么该公司现在更喜欢在Swift和Kotlin上进行本机开发。

“通过以非标准的方式组装我们的代码库,我们继承了成本,如果我们将自己与第三方大规模使用的默认武器保持一致,我们将不必担心。”最后,它涉及的更多他说:“这比编写代码要贵两次。”

突然, Dropbox工程师的反馈表明选择跨平台开发方法 引入了与部署自定义库和框架有关的其他开发成本。

更不用说那些与定制工作工具的实施相关的知识,或者与培训或招募能够适应高度定制软件堆栈的第三方有关的需求。

事实上, 强调为Android和iOS跨平台开发选择C ++可能会导致开发人员面临困难 他们本来不会有的。

他说,例如,在C ++跨平台开发管道中必须建立一个框架来管理在后台运行的任务。

与此相反, 另一位工程师解释说,Dropbox工程师本身不是问题。

它甚至声称Dropbox团队在此过程中必须为C ++ 11建立一个JSON库,以及为处理NULL指针而建立的另一个库。

该公司的工程师甚至进一步强调,他正在转向一种理论,即人们可以为多个平台构建一个单一的代码库。

他坚称,实际上,每个平台的特殊性都是无法避免的因素。

他说:“应用程序在后台运行的方式是特定于平台的,您必须从一开始就对其进行研究。”

除了影响代码的考虑因素之外,还有一些与工作工具有关的因素。 从这个意义上讲,该公司的工程师在两个方面进行开发:调试和自定义工具配置。

他写道:“通过目标平台的默认IDE,其本机调试经验通常优于C ++,”他补充说:“除了不得不离开可用工具之外,我们还必须动员开发人员来开发C#。其他能够支持C ++中跨平台方法的工具。 «

最后,就培训和招聘方面而言,Eyal Guthmann指出,跨平台冒险是围绕具有C ++扎实背景的工程师的核心而建立的。

随着后者离开其他团队或公司,该公司发现填补C ++代码库的技术空白变得越来越困难。 在内部和外部,该公司在此轴上的培训和招聘都遇到了麻烦,因为似乎很少有移动开发人员对C ++感兴趣。

通过适用于Android和iOS的Kotlin和Swift将团队从Dropbox迁移到本机将带来很多好处。

实际上,C ++语言以及您不再引用的C都是解决此类问题的共同点。

不难想象,最初的工程师团队将其集成在一起以管理后端的某些关键方面。 仅可以提出关于目标平台的C ++接口质量的问题。

数据来源: https://blogs.dropbox.com/


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。