Swift Kombat

Original link: http://afoo.me/posts/2023-08-02-swift-quick-get.html

profile.jpeg

Swift Speed ​​Fight-Wang Fuqiang’s Personal Blog: Thoughts and Precipitation of an Architect

Swift Kombat

Wang Fuqiang

2023-08-02


Let ChatGPT help to write some Swift code looks a bit strenuous, so, simply scan the syntax of Swift:

  • The protocol in swift is similar to scala’s trait or java’s interface
  • Extension can add new functions to existing types, which is a bit similar to the extension method of scala3.
  • throw Error (instead of throw Exceptions like java/scala)
  • do-catch (instead of try-catch like java/scala)
  • nil (corresponding to null in java/scala)
  • “Your name is (name)” (corresponding to string interpolation ${...} in scala, also called string interpolation in swift, but use \(...) , variable name or expression)
  • if and if let (and guard let) are not the same expressions, https://ift.tt/IObJvlM, if let is a bit The taste of option in Scala, the function is unwrap optional binding
  • The parameters of functions can specify two names, one for external calls and one for internal references, https://ift.tt/gImk08v
  • func countLettersInString(myString str: String)
  • struct , similar to scala case class, data container data structure, or kotlin data class
  • Mandatory type conversion , as? , such as let studioAlbum = album as? StudioAlbum (this will make studioAlbum have the data type StudioAlbum? , That is, an optional studio album), in fact, I have always hoped that Scala can make that smelly and long asInstanceOf or have a similar short form.
  • Trailing closures , the last parameter can use syntactic sugar (if the last parameters to a method are closures, you can eliminate those parameters and instead provide them as a block of code inside braces.), this is a bit similar to scala, only However, scala is placed in a separate parameter declaration.

On the planet “Crazy for AI”, Mr. Fuqiang is discussing interesting AI topics with his friends. Would you like to come together? ^-^
here

  1. Not only timely and fresh AI information and in-depth discussions
  2. Also share AI tools, product approaches and business opportunities
  3. There are more than 1,000 original paid content (nearly 500 minutes) waiting for you, join the planet (https://t.zsxq.com/0dI3ZA0sL) to get it for free!

Knowledge planet QR code



Subscribe to "Fu Bao Premium Subscription"


Twitter-logo.png
© Fuqiang Wang Personal Copyright, All Rights Reserved.
Copyright © Fuqiang Wang All rights reserved – Since 2004

Everything is homebrewed with pandoc and Markdown , little Scala also included.

This article is transferred from: http://afoo.me/posts/2023-08-02-swift-quick-get.html
This site is only for collection, and the copyright belongs to the original author.