سويفت (لغة برمجة)

عودة للموسوعة

سويفت (لغة برمجة)

Swift
Paradigm نمط برمجة متعدد (كائني التوجه, وظيفي، أمري، block structured)
Designed by كريس لاتنر وأپل
Developer أپل
First appeared 2014
الإصدار المستقر
1.1
Typing discipline ساكن، قوي، استدلالي
OS iOS, OS X
License برمجيات احتكارية
Filename extensions .swift
Website developer.apple.com/swift
Influenced by
Objective-C, رست، هاسكل، روبي، پايثون، سكالا، سي#، كلو،دي
Influenced
رست

سويفت Swift، هو نمط برمجة تم تجميعه في لغة البرمجة التي أنشأتها ابل لتطوير أنظمة آي أوإس وأوإس إكس . عرضت في مؤتمر للمطورين في جميع أنحاء العالم 2014, تم تصميم سويفت للعمل مع أبل كاكاووكوكوا اللمس الأطر ومجموعة كبيرة من الموجودة سي-الكائنية متاحة كتابة لمنتجات أبل. والمقصود حتى تكون سويفت أكثر مرونة بالنسبة للرمز الخاطئ أى ("أكثر أمانا") من سي-الكائنية ، وأيضا أكثر إيجازا (نفس الفكرة يمكن التعبير عنها بأقل كمية من التعليمات البرمجية). يتم بناؤها مع مترجم إل إل في إم المدرج في إكس كود (6)، ويستخدم وقت التشغيل سي-الكائنية، مما يسمح ل سى وسي-الكائنية، سى ++ ورمز سويفت لتعمل ضمن برنامج واحد.


التاريخ

بدأت تطوير سويفت في 2010 بواسطة كريس لاتنر، وفي الأنهاية بالتعاون مع الكثير من المبرمجين الآخرين. أخذت سويفت أفكار اللغة "من سى الكائنية رست هاسكل ، روبي ، بايثون وسي# . ، CLU لغة برمجة، وعدد كبير جدا من قائمة بآخرين ". في 2 يونيو, عام 2014، أصبح التطبيق الأول في WWDC هوالتطبيق الذى تم إصداره علنا قد خط بلغة سويفت. تم إصدار نسخة بيتا من اللغة إلى مطوري أبل المسجلين في ذلك الوقت، ولكن أبل لم نعد بأن تكون النسخة النهائية من سويفت ستكون متوافق مع مع نسخة المصدر التي تم إصدارها. آبل تخطط لجعل محولات كود المصدر متاح إذا لزم الأمر من أجل الإفراج الكامل.


المميزات

ترتيبات لغات البرمجة في 2015. قفزت سويفت في ترتيب اقبال المبرمجين عليها من 68، لدى مولدها في صيف 2014، إلى 22 في يناير 2015.

الأنواع، المتغيرات والخيارات

المخطات، وقت التشغيل والتطوير

ادارة الذاكرة

التسليم وعناصر أخرى

أوجه الشبه بلغة البرمجة سي

أوجه الاختلاف عن لغة البرمجة سي

أمثلة الرمز

// this is a single line comment using two slashes.

/* this is also a comment,
   but written over multiple lines */

/* multiline comments
   /* can be nested! */
   so that you can block out code containing multiline comments
*/

// Swift variables are declared with "var" followed by a name, a type, and a value
var explicitDouble: Double = 70

// if the type is omitted, Swift will infer it from the variable's initial value
var implicitInteger = 70
var implicitDouble = 70.0
var  = "美国"

// Swift constants are declared with "let" followed by a name, a type, and a value
let numberOfBananas: Int = 10

// if the type is omitted, Swift will infer it from the constant's value
let numberOfApples = 3
let numberOfOranges = 5

// values of variables and constants can be interpolated in strings as follows
let appleSummary = "I have \(numberOfApples) apples."
let fruitSummary = "I have \(numberOfApples + numberOfOranges) pieces of fruit."

// in playgrounds, code can be placed in the global scope
println("Hello, world")

// define an array
var fruits = ["mango", "kiwi", "avocado"]

// example of if statement; .isEmpty, .count
if fruits.isEmpty {
    println("No fruits in my array.")
  else {
    println("There are \(fruits.count) items in my array")
 

// define a dictionary with four items, each with a person's name and age
let people = ["Anna": 67, "Beto": 8, "Jack": 33, "Sam": 25]

// now we use Swift's flexible enumerator system to extract both values in a single loop 
for (name, age) in people {
    println("\(name) is \(age) years old.")
 

// functions and methods are declared with the "func" syntax
// the return type is specified with ->
func sayHello(personName: String) -> String {
    let greeting = "Hello, " + personName + "!"
    return greeting
 

// prints "Hello, Jane!"
println(sayHello("Jane"))

// parameter names can be made external and required for calling
// the external name can be the same as the parameter name by
// prefixing with an octothorpe (#)
// or can be defined separately.
func sayAge(#personName: String, personAge Age: Int) -> String {
    let result = "\(personName) is \(Age) years old."
    return result
 

// we can also specify the name of the parameter
println(sayAge(personName: "Jane", personAge: 42))

انظر أيضاً

  • مقارنة لغات البرمجة

المصادر

  1. ^ Lattner, Chris (June 11, 2014). "Re: [LLVMdev] [cfe-dev] [ADVERTISEMENT] open positions in Apple's Swift compiler team". Retrieved June 12, 2014. You can imagine that many of us want it to be open source and part of llvm, but the discussion hasn't happened yet, and won't for some time.
  2. ^ Lattner, Chris (June 3, 2014). "Chris Lattner's Homepage". Chris Lattner. Retrieved June 3, 2014. I started work on the Swift Programming Language in July of 2010. I implemented much of the basic language structure, with only a few people knowing of its existence. A few other (amazing) people started contributing in earnest late in 2011, and it became a major focus for the Apple Developer Tools group in July 2013 [...] drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.
  3. ^ "Building assert() in Swift, Part 2: __FILE__ and __LINE__ - Swift Blog -". Apple Developer. Retrieved September 26, 2014. Swift borrows a clever feature from the D language: these identifiers expand to the location of the caller when evaluated in a default argument list.
  4. ^ "RFC for `if let` expression". Retrieved December 4, 2014. The `if let` construct is based on the precedent set by Swift, which introduced its own `if let` statement.
  5. ^ Williams, Owen (June 2, 2014). "Apple announces Swift, a new programming language for iOS". The Next Web. Retrieved June 2, 2014.
  6. ^ Timmer, John. A fast look at Swift, Apple’s new programming language "A fast look at Swift, Apple's new programming language" Check |url= value (help). Ars Technica. Retrieved June 6, 2014.
  7. ^ Platforms State of the Union, Session 102, Apple Worldwide Developers Conference, June 2, 2014
  8. ^ "Apple's New Programming Language Is Growing Like Mad". wired.com. 2015-01-15. Retrieved 2015-01-15.

وصلات خارجية

  • Swift – official site at Apple
  • نطقب:Official blog – official news and information on Swift, from Apple
  • Swift Pre-Release documentation at Apple iOS Developer Library
تاريخ النشر: 2020-06-04 15:20:57
التصنيفات: Pages with URL errors, Pages using deprecated image syntax, Official website not in Wikidata, لغات برمجة, لغات برمجة كائنية التوجه, أپل, أطروحات 2014, برمجيات احتكارية, لغات برمجة تأسست في عقد 2010

مقالات أخرى من الموسوعة

سحابة الكلمات المفتاحية، مما يبحث عنه الزوار في كشاف:

آخر الأخبار حول العالم

رئيس الوزراء الكندي يلتقي الأنبا بولس والأنبا أرشيليدس

المصدر: وطنى - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:21:58
مستوى الصحة: 52% الأهمية: 60%

بدء الفصل الدراسى الثانى لطلاب المدارس بطابور الصباح وتحية العلم

المصدر: اليوم السابع - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:28
مستوى الصحة: 39% الأهمية: 50%

غدًا.. الرئيس السيسي يفتتح الدورة السادسة من معرض «إيجبس»

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:43
مستوى الصحة: 48% الأهمية: 61%

إيران ..المراوغة .. التوسع على طاولة المنتدى الثقافى المصرى.. الليلة

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:52
مستوى الصحة: 53% الأهمية: 56%

اليوم.. «النقض» تنظر طعن فتاة «تيك توك» موكا حجازي على حكم حبسها سنة

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:19
مستوى الصحة: 48% الأهمية: 64%

بالفيديو.. استخراج تركي بعد 100 ساعة تحت الأنقاض وهو يردد القرآن

المصدر: المصريون - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:06
مستوى الصحة: 60% الأهمية: 63%

شمس الكويتية تسخر من أحلام بعد تغريدة التبرع لضحايا الزلزال

المصدر: المصريون - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:12
مستوى الصحة: 45% الأهمية: 58%

تركيا تعلن ارتفاع ضحايا الزلزال إلى 20665 شخصًا

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:36
مستوى الصحة: 49% الأهمية: 51%

سعر الذهب اليوم السبت 11 فبراير 2023 فى مصر بدون مصنعية

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:45
مستوى الصحة: 54% الأهمية: 56%

انطلاق الفصل الدراسى الثانى بالجامعات ويستمر حتى 1 يونيو

المصدر: اليوم السابع - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:32
مستوى الصحة: 30% الأهمية: 36%

صباح الخير يا مصر..

المصدر: وطنى - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:21:59
مستوى الصحة: 56% الأهمية: 55%

ارتفاع عدد ضحايا زلزال تركيا لـ20 ألفا و665 قتيلا و80 ألفا و88 مصابا

المصدر: اليوم السابع - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:27
مستوى الصحة: 38% الأهمية: 41%

دياكونيون جدد بإيبارشية طما

المصدر: وطنى - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:00
مستوى الصحة: 45% الأهمية: 51%

اليوم.. نظر دعوى عدم دستورية شروط القيد لمزاولة مهن الكيمياء الطبية

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:19
مستوى الصحة: 46% الأهمية: 61%

اليوم.. استكمال نظر دعوى عدم الاعتداد بدستور الكنيسة الأسقفية

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:20
مستوى الصحة: 55% الأهمية: 57%

فيريرا وأسامة نبيه.. فيديو يكشف سبب هزيمة الزمالك من شباب بلوزداد

المصدر: المصريون - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:10
مستوى الصحة: 54% الأهمية: 67%

بيرو تعلن مصرع 18 وفقدان 20 في حوادث انزلاق التربة

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:36
مستوى الصحة: 53% الأهمية: 63%

اليوم.. الرئيس السيسى يستقبل رؤساء البرلمانات العربية

المصدر: اليوم السابع - مصر التصنيف: غير مصنف
تاريخ الخبر: 2023-02-11 09:22:24
مستوى الصحة: 45% الأهمية: 36%

تباين أسعار العملات الرقمية اليوم السبت 11 فبراير 2023

المصدر: موقع الدستور - مصر التصنيف: سياسة
تاريخ الخبر: 2023-02-11 09:21:35
مستوى الصحة: 49% الأهمية: 67%

تحميل تطبيق المنصة العربية