2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
स्काला एकः आधुनिकः प्रोग्रामिंगभाषा अस्ति या वस्तु-उन्मुखस्य प्रोग्रामिंग् इत्यस्य विशेषतानां संयोजनेन कार्यात्मक-प्रोग्रामिंगस्य च संक्षिप्तं, स्केल-करणीयं, कुशलं च कोडं लिखितुं सम्भवं करोति
Scala (Scalable Language) इति वस्तु-उन्मुखं कार्यात्मकं च प्रोग्रामिंग-भाषा । इदं JVM (Java Virtual Machine) इत्यत्र चाल्यते, जावा इत्यनेन सह अत्यन्तं संगतम् अस्ति, जावा कोडेन सह च निर्विघ्नतया अन्तरक्रियां कर्तुं शक्नोति । आधुनिकप्रोग्रामिंगभाषायाः प्रकारानुमानं, प्रतिरूपमेलनं च इत्यादीनां विशेषतानां परिचयं कुर्वन् जावा इत्यस्य किञ्चित् वाक्पटुतां सम्बोधयितुं स्काला इत्यस्य डिजाइनं कृतम् आसीत् ।
Scala इत्यस्य उपयोगं आरभ्य भवद्भिः Scala compiler तथा sbt (Scala Build Tool) संस्थापनीयम् । भवान् तान् आधिकारिकस्कलादस्तावेजात् डाउनलोड् कृत्वा संस्थापयितुं शक्नोति ।
वयं सरलेन "नमस्ते, विश्वम्!"
object HelloScala {
def main(args: Array[String]): Unit = {
println("Hello, Scala!")
}
}
अस्मिन् उदाहरणे वयं singleton object परिभाषयामःHelloScala
, यस्मिन् कmain
विधिः, जावाभाषायां यथा भवतिmain
प्रक्रिया।println
कन्सोल् मध्ये स्ट्रिंग् मुद्रयितुं उपयुज्यते ।
स्काला इत्यस्मिन् चराः द्वौ प्रकारौ स्तः : १.var
(चर) तथाval
(नियत)।
val name: String = "Scala" // 常量
var age: Int = 10 // 变量
val country = "中国"
var year = 2024
val
घोषितचराः अपरिवर्तनीयाः (जावायां सदृशाः) भवन्तिfinal
),तथाvar
घोषितचराः परिवर्तनशीलाः भवन्ति ।
स्काला इत्यस्मिन् कार्यपरिभाषा अतीव संक्षिप्ताः सन्ति ।
def add(a: Int, b: Int): Int = {
a b
}
println(add(3, 5)) // 输出: 8
s
अत्र वयं नामकं सञ्चिकां परिभाषयामःadd
एकं फंक्शन् यत् द्वौ पूर्णाङ्कस्य तर्कौ स्वीकृत्य तेषां योगं प्रत्यागच्छति ।
स्काला पूर्णतया वस्तु-उन्मुख-प्रोग्रामिंग् (OOP) समर्थयति ।
सरलं वर्गं वस्तु च परिभाषयन्तु।
class Person(val name: String, var age: Int) {
def greet(): Unit = {
println(s"Hello, 我的名字: $name ,我的年龄是 $age。")
}
}
val person = new Person("Alice", 25)
person.greet()
अस्मिन् उदाहरणे वयं क इति परिभाषयामःPerson
class, द्वौ गुणौ युक्तौname
तथाage
, एकः विधिः चgreet
。
स्काला इत्यस्मिन् उत्तराधिकारः जावा इत्यस्य सदृशः अस्ति ।
class Employee(name: String, age: Int, val company: String) extends Person(name, age) {
override def greet(): Unit = {
println(s"Hello, my name is $name, I work at $company, and I am $age years old.")
}
}
val employee = new Employee("Bob", 30, "Google")
employee.greet() // 输出: Hello, my name is Bob, I work at Google, and I am 30 years old.
वयं कEmployee
वर्गः, वंशजःPerson
वर्गः अधिलिखितः चgreet
प्रक्रिया।
स्काला अनेकानि कार्यात्मकप्रोग्रामिंगविशेषतानि समर्थयति, यथा उच्चक्रमस्य कार्याणि, प्रतिरूपमेलनं च ।
उच्चक्रमस्य कार्याणि तानि कार्याणि सन्ति ये अन्यकार्यं पैरामीटर् अथवा रिटर्न् फंक्शन् रूपेण स्वीकुर्वन्ति ।
def applyOperation(a: Int, b: Int, operation: (Int, Int) =