DAY 5

FUNCTIONS


Functions let us wrap up pieces of code so they can be used in lots of places. We can send data into functions to customize how they work, and get back data that tells us the result that was calculated.

Believe it or not, function calls used to be really slow. Steve Johnson, the author of many early coding tools for the Unix operating system, said this:

“Dennis Ritchie (the creator of the C programming language) encouraged modularity by telling all and sundry that function calls were really, really cheap in C. Everybody started writing small functions and modularizing. Years later we found out that function calls were still expensive, and our code was often spending 50% of its time just calling them. Dennis had lied to us! But it was too late; we were all hooked...”

Today you have 11 one-minute videos to watch, and you’ll meet things like variadic functions, throwing errors, and more. Once you’ve watched each video there’s a short test to help make sure you’ve understood what was taught.

  1. Writing functionstest
  2. Accepting parameterstest
  3. Returning valuestest
  4. Parameter labelstest
  5. Omitting parameter labelstest
  6. Default parameterstest
  7. Variadic functionstest
  8. Writing throwing functionstest
  9. Running throwing functionstest
  10. inout parameterstest
  11. Functions summarytest

Do you remember the two rules of this series? You’re already being awesome at the first one because you keep coming back for more (you rock!), but don’t forget the second: post your progress online, so you can benefit from all the encouragement.

Need help? Tweet me @twostraws!

100 DAYS OF SWIFT


The 100 Days of Swift is a free collection of videos, tutorials, tests, and more to help you learn Swift faster. Click here to learn more, or watch the video below.

Back to 100 Days of Swift

Click here to visit the Hacking with Swift store >>