filmov
tv
Scala Tutorial: A scalable language
Показать описание
---
Welcome to Introduction to Scala. Scala is a programming language that is sophisticated AND concise. It powers some of the world's largest websites, applications, and data engineering infrastructures. Historically, Scala was hard to learn. Not anymore.
In this course, you'll master the basics of Scala by writing code for a real Scala program that plays Twenty-One, one of the most popular card games in the world. You'll answer the questions "What is Scala?" and the related "Why use Scala?" You'll answer "Who uses Scala?" by listing common applications of Scala in industry and academia. Starting from this course and proceeding to more advanced ones, you'll step-by-step ascend the stairway to Scala mastery in the world of data.
Fun fact: "Scala" means "staircase" in Italian and the logo was inspired by a spiral staircase in the building where the language was born!
Scala is a general-purpose programming language. Pause the video and read Wikipedia's answer to "What is Scala?" Some of that may not make sense, so let's go with an even shorter version for now: Scala is like a newer, improved Java. For context, Java was released in 1996, Scala in 2004.
The next sentence might not make much sense right now either, but it's important. In bold, Scala source code runs on a Java virtual machine. This means Scala runs wherever Java code runs and that means on a LOT of existing infrastructure since Java is so popular.
The first answer to "Why use Scala?" is in its name: Scala stands for scalable language. It is designed to grow with the demands of its users, from writing small scripts (which you'll do in this course) to building massive systems for data processing, distributed computing, and more (just like the engineers at these companies do).
An analogy borrowed from Eric Raymond's The Cathedral and the Bazaar book is apt. A cathedral is a building with rigid perfection. It takes a long time to build and rarely changes after being built. A bazaar, on the other hand, is flexible. It is adapted and extended often by the people working in it. Scala is like a bazaar as it is designed to be adapted and extended by the people programming in it. It's not a perfectly complete language. Instead, everything is customizable to your program's requirements, whether a small script or a massive system, which often need different programming constructs.
Yes, Scala the bazaar is flexible. In more advanced courses, you'll experience growing customized types, collections, and control structures that still feel native to the language. So yes, Scala's flexible, but it's also convenient. In this course, you'll use what's predefined in the Scala standard library, which cover the most popular use cases and are the foundations of the customized constructs you'll see later. Bottom line for now: your program won't outgrow Scala.
If you search "Scala" on job boards, the most common job titles you'll see are variants of software engineer, including software developer, backend engineer, and others, and then data engineer. You'll also see data scientist and machine learning engineer more frequently as companies in all industries realize the challenges of analyzing big data. These companies are adopting Scala alongside data processing tools like Apache Spark, which is written in Scala!
On DataCamp, we're focusing on the latter three roles in ALL industries.
These high-paying roles combined with exploding demand and a relative scarcity of talent means those who use Scala get paid. Well.
Let's reinforce what you now know about Scala with some conceptual exercises.
#DataCamp #ScalaTutorial #Scala #scalable #language