xcode悬崖

Swift操场是一个精彩的编程入门。它介绍了命令式逻辑、函数、方法、循环,以及许多可供iOS开发人员使用的奇妙API。...

Swift操场是一个精彩的编程入门。它介绍了命令式逻辑、函数、方法、循环,以及许多可供iOS开发人员使用的奇妙API。

但它被称为“游乐场”是有原因的:你不能用Swift Playgrounds**应用程序。你玩代码,你学习代码,你确实在编码。但是,如果你想构建一些有用的、可分发的东西,你需要去别处寻找。

一些流行的选项是Codea,它允许你在iPad上用Lua构建完整的应用程序;Pythonista,它提供了一个pythonide和许多常用的库;当然,云总是存在的。

但在苹果的生态系统中,这个“别处”被称为Xcode。这是一个巨大而复杂的应用程序,只在Mac电脑上运行,需要一个苹果开发者帐户来有效地分发您构建的软件。

我可能不会推荐一个孩子学习Swift作为他们的第一种编程语言,不是因为它不是一种伟大而有趣的语言,而是因为分发和创建有用软件的障碍太大了。Xcode悬崖是一个陡峭的悬崖。

例如,下面是在斯威夫特游乐场为ARKit写作的情景。大多数情况下,您需要处理一些预先编写的单行程序和高度符合人体工程学的API:

相比之下,以下是苹果为开发者介绍的在Xcode中**ARKit应用程序。它嵌套在苹果的整体应用框架中,处理SceneKit,并且不怕告诉你向量数学的存在。

这对你来说是不是既困难又复杂?这并不是因为苹果在ARKit上做得不好,而是因为大多数软件都很难和复杂。如果我必须给出一个大概的估计的话,涉及3D图形的软件是困难的3倍。

关于ARKit是什么样子的Swift Playgrounds幻想更接近于广告而不是教程。实际上,我已经直接使用苹果的ARKit和SceneKit API开发了一个应用程序。尽管我尽了最大努力进行调试,但当我对苹果声音播放系统的API调用无法工作时,我陷入了困境。用苹果的API编写软件是一个强大但困难的实践,而Swift Playgrounds对隐藏真实复杂性的偏好使得它很难推荐给那些不想“学习如何编写代码”,而是想构建一些东西的人。

苹果将为其学习者提供一个巨大的服务,在iPad上为他们提供一个Xcode等价物。这并不是因为**应用程序并在App Store上发布它们会突然变得容易,而是因为这会让iPad学习者有机会参与这一挑战,并及时成长为真正的应用程序开发者。

将这种情况与JavaScript进行比较。任何能够访问web浏览器的人都可以编写JavaScript,甚至可以编写有用的JavaScript,并将其分发给世界上的每个人。将JavaScript与HTML和CSS的少量知识结合起来,你就有了一个网站,它有点像一个“应用程序”,只是世界上几乎任何设备都可以访问它,你不需要苹果的许可就可以发布它。

像Facebook和Google这样的公司,以及无数的开源贡献者,提供免费的JavaScript库(在许多方面相当于苹果的平台API),以帮助扩展您的功能,而不仅仅是简单的“普通”JavaScript。最好的库往往因为优秀的文档而名列前茅,这些文档通常试图解释复杂性,而不是隐藏复杂性。

我不想在这里破坏应用程序或iPad。我爱应用程序,我爱我的iPad,我一直在使用iPad上的应用程序。如果让我在网站和应用程序之间做出选择,我通常会选择应用程序。

但应用程序会滋生依赖。

在应用程序的世界中,如果你有一个你想解决的问题,你可以在应用程序商店中搜索解决方案。程序员的方法类似于:我可以编写软件来解决这个问题。用户的方法更像是:我可以下载并使用解决这个问题的软件。显然,这两种方法都是有效和重要的——很少有程序员编写他们使用的所有软件。但是,如果完全依赖于用户方法,最终会受到限制。

我喜欢苹果在最近的iPad发布会上强**育。显然,苹果在与Chromebook竞争思想和学校市场份额方面具有商业利益。但除了粗俗的利润动机之外,学习是有趣的,它是美丽的,适合所有年龄段的人,苹果在使用iPad使学习沉浸式和多感官方面的独特视角是伟大和值得称赞的。

但你不仅仅是为了学习而学习。学习是为了做,至少在理论上是这样。我担心苹果对安全轨的偏爱,集中体现了但不限于Swift操场“学习”和Xcode“做”之间的差距,这似乎令人窒息。

这里有一个例子来帮助解释我所说的:我在高中时数学不错。我大体上理解了黑板上的概念。但我对细节的缺乏让我在考试中落后,当我的同龄人加速进入微积分和其他领域时,我陷入了高等代数概念。

但是数学在现代世界是如此的有用。想写一个电子游戏吗?大量的数学知识。想设计复杂的电子产品吗?你好,数学。想在电子表格中处理数字吗?图特数学。想了解高级编程语言理论吗?欢迎来到数学。

当我学习数学时,它只是学习,而不是做。我唯一的数学实际应用是在物理课上,而不是数学课上。但现在我每天都诅咒自己的无知。它阻碍了我对很多东西的理解和利用。

我担心的是,在没有“做”应用程序的情况下,“学习”的编码方**导致学生在学校的“编程”中获得高分,而不是成为生活中伟大的程序员。

也许这只是我这一代人的盲点:今天活着的大多数专业程序员显然是在Swift Playgrounds出现之前就开始工作的。他们小时候修补了Commodore 64,在学校里入侵了TI-83,用PHP建立了网站以赚取一些零用钱。也许我是在把学习的挣扎浪漫化,我应该更感激像斯威夫特操场这样圆滑的新学习体验。或许我是对的。很难说。

现在世界上最有影响力的程序员之一是Sebastian McKenzie。他在澳大利亚一个偏远小镇上读高中时开始了一个名为6to5的项目。后来更名为Babel的6to5将使用现代功能和现代语法编写的JavaScript翻译成可以在旧浏览器上运行的JavaScript。如今,几乎可以肯定的是,任**的JavaScript项目都会在某种程度上依赖Babel。数百万开发人员每天都在使用McKenzie的代码。

塞巴斯蒂安开始了这个项目,用他自己的话来说,就是“学习”更多关于JavaScript的知识。现在他在Facebook工作。这是他开始使用的一台计算机:

一、 首先,我很感激塞巴斯蒂安没有在iPad上“学习”。

  • 发表于 2021-08-23 09:46
  • 阅读 ( 60 )
  • 分类:互联网

你可能感兴趣的文章

xcode代码(xcode)和敏捷的(swift)的区别

关键区别–xcode与swift Xcode和Swift是两个通常与IOS和Mac软件开发相关的术语。本文讨论这两个术语之间的区别。Xcode是一个强大的开发环境,Swift是一种编程语言。Xcode和Swift的关键区别在于,Xcode是苹果公司开发的用于构建Mac的...

  • 发布于 2020-10-16 12:12
  • 阅读 ( 842 )

4个ios模拟器,用于测试iphone和ipad应用程序

... 1xcode 9模拟器(mac) ...

  • 发布于 2021-03-13 11:46
  • 阅读 ( 353 )

所以你想制作iphone应用程序?10个初学者项目

... 要开始使用,您需要一台带有最新版本Xcode和Swift的Mac。您还需要iOS SDK。除此之外,你所需要的只是一些耐心和学习的意愿! ...

  • 发布于 2021-03-16 13:41
  • 阅读 ( 272 )

如何在不越狱的情况下安装kodi for ios

...这个问题,这个过程在Windows上无法工作。 Xcode7——这个免费软件允许开发人员创建应用程序。 Kodi DEB文件--可直接从Kodi网站获得。 iOS应用程序签名者——将DEB文件更改为IPA文件的免费...

  • 发布于 2021-03-16 14:55
  • 阅读 ( 560 )

mac上安装的8个最有用的自制应用程序

... xcode命令行工具(clt) ...

  • 发布于 2021-03-21 19:54
  • 阅读 ( 205 )

如何使用自制软件在终端上安装mac应用程序

...更高版本。 命令行工具,或Mac应用商店的Xcode。 ...

  • 发布于 2021-03-22 08:04
  • 阅读 ( 327 )

四个macos服务器功能,现已内置到high sierra中

...个本地缓存来处理从iTunes下载到软件更新的所有内容。 xcode服务器现在是xcode的一部分 Xcode是苹果公司的开发环境,广泛用于**macOS和iOS软件。Xcode服务器允许多人同时处理同一个项目,直到最近创建Xcode服务器还需要macOS服务器。...

  • 发布于 2021-04-07 03:12
  • 阅读 ( 161 )

如何在mac上禁用spotlight中的开发者搜索结果

如果你在Mac OS X上安装过Xcode,Spotlight search会显示“开发者”类别的结果。如果您仍然安装了Xcode,有一个简单的复选框可以禁用它。但是,如果您卸载了Xcode,Spotlight只会不断显示开发人员的搜索结果,无法关闭它们。 这可能...

  • 发布于 2021-04-10 04:38
  • 阅读 ( 223 )

如何在不越狱的情况下将应用程序侧载到iphone或ipad上

... 相关:越狱解释:你需要知道什么越狱iPhone和iPad 这只是xcode7中的一个令人高兴的副作用。以前,你需要每年99美元的开发者许可证,才能在Xcode中构建一个应用程序,并将其放到你自己的iPhone或iPad上。据报道,这种侧载功能在i...

  • 发布于 2021-04-10 05:16
  • 阅读 ( 225 )

苹果在重大安全漏洞后删除受恶意软件感染的应用商店应用程序

...感染恶意软件的应用程序从应用商店中删除。这种被称为xcodegost的恶意软件,通过说服开发者使用Xcode的修改版本,进入了多个应用程序,Xcode是用来创建iOS和Mac软件的软件。
 苹果发言人克里斯蒂娜·莫纳汉告诉路...

  • 发布于 2021-05-01 10:34
  • 阅读 ( 124 )
l6f11ho6vr
l6f11ho6vr

0 篇文章

相关推荐