选择第二种语言:Swift To Python

为什么选择Python以及它的样子

Swift是开始工作的好方法。 我从来没有写过一行代码。 作为一个完整的编程初学者,花了13个月的时间进行设计,自学,编码,重新编码,然后启动我的第一个完整应用程序。 我为此感到无比自豪,这是人们每天都在玩的新颖游戏。 除了保持最新状态并推出新功能外,任务还很完整。

现在有这个东西。 一旦我变得根深蒂固地思考代码,就可以用这种技能来完成所有可能的事情。 在这种情况下,仅了解Swift的问题也变得显而易见。 尽管我喜欢Apple生态系统,但通过编写Swift代码,我只能覆盖50%的移动用户和不到4%的桌面用户。

我要编写的下一个软件是台式机软件。 这些是我主要为自己创建的程序,但是还有很多其他人可以从中受益。 如果用Swift编写它们,则只能覆盖4%的用户。 如果我用Python编写它们,几乎可以接触到所有人。

 为什么是Python? 
  • 我可以达到更大的用户群。
  • 有些工具在Python中可用,而在Swift中可能永远无法使用。 对我来说,那个库是Tensorflow。
  • 有大量的稳定框架可用。
  • 我可以为台式机,网络甚至移动设备编写Python。 不是说我会为手机编写它。 我可能不会,但是选项在那里。
  • 您几乎要问的每个问题都已经在StackOverflow上得到了解答。 SO上的Python标签:〜596k。 SO上的Swift标签:〜100k
 这需要多长时间? 
  • 比使用第一语言的时间要少得多。 几天之内,您就可以编写出基本的软件。
 语法如何比较? 
  • 非常相似。 点表示法,函数参数以及您编写的许多代码看起来都一样。
  • 空格是Python使一切保持秩序的方式。 您将不会使用方括号来打开和关闭函数或类。 这意味着,起初,一切都会看起来很杂乱。
 最大的挑战是什么? 
  • 命令行。 我对命令行并不感到陌生,但是Python需要一定水平。 带有它的学习曲线可能会令人沮丧,但没有什么不同。 您做得越多,就越容易。
  • Python文档不那么友好,它没有像Xcode这样的强大IDE。 大多数语言都没有。
  • 进行设置并习惯于新的IDE。 PyCharm是我的选择。 我设法从Xcode移植了大多数语法颜色设置和键绑定。 这是一个持续的过程。
  • 如果您过于依赖UI的故事板,那么使用新语言会困难得多。 故事板可能很棒,但我建议在没有代码的情况下进行所有UI操作时,请不要使用所有UI。 编程界就是这样做的。 签出此内容以使用没有情节提要的面板,并查看代码中的布局对齐方式。
  • 与其他IDE相比,Xcode中的自动完成和预测功能令人难以置信。 直到我开始为别人购物时,我才意识到自己有多依赖。 我输入的内容比使用Swift时要多。
 我是否已经停下来质疑这是否是一个好的决定? 
  • 是。 但是到目前为止,只有一个原因。 GUI功能与您在OSX和iOS中所使用的功能相去甚远。 这些框架不像您在AppKit或UIKit中获得的那样健壮。 您仍然可以获得出色的GUI,但要花一些点时间可以使它更加光滑。
 我考虑使用哪种其他语言选择? 
  • Java。 就是这样 您可以使用C ++或其他任何较低级别的语言来做很多事情,但是学习曲线要​​陡峭得多,所以我没有走这条路。

权衡是时间。 在您已经知道的情况下学习新语言诗句的机会成本是多少?

到目前为止,开关一直在嗡嗡作响。 除了通常的“为什么不起作用?!”这一刻,这个项目会一步一步地融合在一起。

如果您使用一种自己喜欢的一种语言或一种生态系统,那么不要害怕学习另一种语言。 第二次会变得容易得多。