Language
日本語
English

Caution

JavaScript is disabled in your browser.
This site uses JavaScript for features such as search.
For the best experience, please enable JavaScript before browsing this site.

  1. Home
  2. SwiftBeginner - What is Swift?

What is Swift? - Images: Japanese

Hey there, everyone!

If this is your first time here, welcome! And if we've crossed paths in another article, great to see you again.

Welcome to the Swift Beginner's Course. Here we'll be walking through Swift from the ground up, aimed at beginners.

The overall scope covers most of the syntax you'd need to build a basic iPhone app or similar. So while this is labeled "beginner," there's quite a bit to cover.

Let's start by taking a look at what Swift is all about.

'Swift' is a language developed by Apple — the company behind the iPhone and Mac — and as of the time of writing (2016), it's used primarily to build applications for iPhone and macOS.

iOS development originally required Objective-C exclusively, but with the arrival of Swift, developers now have a second option.

Swift has a very short history — it was publicly released in 2014. As of when this article was written in 2016, that's only about two years ago. Even so, it's arguably the most talked-about programming language right now. (Based on the author's own observations.)

The reason: Swift was built by incorporating the best ideas from various existing languages, resulting in a very well-designed language from the start. On top of that, it went open source, meaning it can be adopted across different operating systems and devices — and many people expect Swift to become usable for all sorts of development going forward.

Open source refers to software, languages, and other works that are publicly released under terms allowing anyone — even without holding the copyright — to freely modify and work with them.

This means the software can be used across a wide variety of devices, and many people can contribute to its development, which tends to drive rapid evolution in a short period of time.

That's why open source projects tend to have a bright future ahead of them.

In practice, building a single service or piece of content usually requires working with multiple languages. The ability to "cover a wide range of areas with one language" is a real advantage — it reduces management overhead and lowers the learning cost.

For example, this site is a fairly straightforward website that publishes programming tutorials and related information. Even so, it uses HTML, CSS, JavaScript, C++, PHP, Ruby, MySQL, shell script, and more. Quite a lineup.

That said, the site has been built with various systems to keep management as streamlined as possible. The minimum number of languages strictly required to build it is considerably fewer than what's listed above — just for reference.

Going forward, Mac-side development is expected to shift away from 'Objective-C' and center around 'Swift' — which is another big reason it's drawing so much attention.

Right now, many large companies are in the middle of converting Objective-C codebases over to Swifta tremendously tedious process that occasionally makes you question the meaning of existence.

In terms of language characteristics, Swift incorporates the best parts of many languages while enforcing strict typing and syntax rules — which makes it well-suited for large-team development.

With more freewheeling languages like C (C++), JavaScript, PHP, or Ruby, individual programmers' coding habits tend to bleed through in team projects, leading to messy and inconsistent codebases. Swift's strict constraints make that much less likely to happen.

That said, Swift can have a bit of a steep learning curve for beginners.

The type system in particular is far stricter than something like C — genuinely rigid — so without prior programming experience, it's easy to end up stuck wondering "why won't this run?" on a regular basis. There's also quite a lot you need to learn before you can write even basic working code.

And because Swift is still relatively young, there's not a huge amount of information available online. That's likely to be another wall for beginners.

At the moment, English-language forums have significantly more Swift resources than Japanese ones, so searching in English will generally get you further. If English isn't your strong suit, just push through with determination.

After all, the two most important things in life are motivation and willpower.

This site aims to write articles that even beginners can work through comfortably, and every effort has been made to keep explanations clear — but there will likely be some readers who still find Swift genuinely difficult.

If you don't have a clear goal like "King of the PiratesI'm going to build an iPhone app, no matter what!" then it might be worth learning another language first, getting to a point where you can write it reasonably well, and then picking up Swift. In contrast to the 1990s, there are plenty of programming language options available today, so there's no need to fixate on Swift.

Languages like HTML, CSS, JavaScript, PHP, Ruby, and Python tend to be quite freewheeling, which is part of why they're more beginner-friendly with a lower barrier to entry. Worth considering if you're looking for a starting point.

That covers the overview. In the next article, we'll get into setting up the environment. See you there!

This article was written by Sakurama.

Author's beloved small mammal

桜舞 春人 Sakurama Haruto

A Tokyo-based programmer who has been creating various content since the ISDN era, with a bit of concern about his hair. A true long sleeper who generally feels unwell without at least 10 hours of sleep. His dream is to live a life where he can sleep as much as he wants. Loves games, sports, and music. Please share some hair with him.

If you find any errors or copyright issues, please .