• #16 楼 @swordray Swift 语法太年轻还不完善,用来写正式产品代码还是不够稳定。RubyMotion 对比 Swift 的优势就是开发维护团队本来就是苹果内部的 MacRuby 团队,框架已经存在了许久。只是 apple 没把他们扶正,所以一群人出来干 RubyMotion。对比 Swift 要好一些。而且我们觉得,没有最好的语言,只有自己最熟悉的语言,才能写出最好的产品。

  • #5 楼 @chairy11

    贴一段代码吧。说简单点基本就是把 OC 的语法改成 Ruby,iOS 库不变。虽然这并不算什么亮点,但对我们一群做 Ruby 的人来说,OC 真心不喜欢,swift 不稳定,H5 不想搞且不适合我们的复杂度要求,于是就用了 RubyMotion。更何况,Ruby 本身的一大堆库基本都支持,OC 的组件也可以轻松使用,等等。一大堆优点很难列举完。

    话说回来,我们还是相对保持了一定的怀疑态度。我们没有选择 RubyMotion 社区里推荐的包,万一未来这些包没人更新,或者 RubyMotion 死了,所有代码还可以直接翻译回 OC。当然,我们还是很乐观的,看好 RubyMotion。

    def tableView(tableView, numberOfRowsInSection: section)
      1
    end
    
    def tableView(tableView, heightForRowAtIndexPath: indexPath)
      80
    end
    
    def tableView(tableView, cellForRowAtIndexPath: indexPath)
      @customCellIdentifier ||= "customCellIdentifier"
      cell = begin
        tableView.dequeueReusableCellWithIdentifier(@customCellIdentifier) ||
        CustomItemCell.alloc.initWithStyle(UITableViewCellStyleValue1, reuseIdentifier:@customCellIdentifier)
      end
      cell.data = @customData[indexPath.row]
      cell
    end
    
  • #6 楼 @jasonliu 只求喜欢唱新喜欢折腾喜欢琢磨的。

  • #5 楼 @chairy11 恩。RubyMotion 就是 LLVM 原生的。感觉更像 OC 的简化版,主要是还有一大堆 Ruby 库可以使用,去掉了麻烦的 OC,NB 的很啊。强烈建议试一试。

  • #2 楼 @blacktulip 去掉岂不是没性格了……