Swift (programozási nyelv)
Gyors |
---|
|
Nyelvóra |
több paradigma (protokollorientált, objektumorientált , funkcionális , kötelező ) |
Megjelent |
2014 |
Szerző |
Chris Lattner [d] |
Fejlesztő |
Chris Lattner [d] ésaz Apple |
Fájlkiterjesztés _ |
.swift |
Kiadás |
|
Főbb megvalósítások |
LLVM |
Befolyásolt |
Objective-C , C++ , Java [2] , Rust , Scala , Python , Ruby , Smalltalk , Groovy [3] , D nyelv [4] |
Engedély |
a 2.2-es verzió óta nyílt forráskódú ( Apache 2.0 futásidejű könyvtár kivételével [5] [6] ) |
Weboldal |
swift.org |
OS |
macOS , iOS , iPadOS , tvOS , watchOS , Linux ,
Microsoft Windows |
Médiafájlok a Wikimedia Commons oldalon |
A Swift egy nyílt forráskódú, több paradigmát tartalmazó , általános célú lefordított programozási nyelv , amelyet az Apple fejlesztett és karbantart . Az első verziót 2014-ben mutatták be.
A Swiftet leggyakrabban a macOS , iOS , iPadOS , watchOS és tvOS alkalmazások fejlesztésében használják, de a nyelv Windows és Linux rendszeren is elérhető . Az Apple platformokon a nyelv a Cocoa és Cocoa Touch keretrendszerrel működik, és kompatibilis az Apple korábbi Objective-C nyelven írt központi kódbázisával . A Swift könnyebben olvasható és programozói hibákkal szemben ellenállóbb nyelvnek készült: a problémák jelentős része, amelyek az Objective-C esetében csak a program végrehajtása során fordulnak elő, és a Swiftben elvileg összeomláshoz vezetnek. , nem engedi lefordítani a kódot [7] .
A Swift fordító az LLVM - en alapul , ami azt jelenti, hogy ugyanaz a kód lefordítható különböző platformokra: x86 , ARM , WASM és mások. Az Xcode 6 és magasabb verziójú integrált fejlesztői környezetbe egy sor eszközkészlet (toolchain) van beépítve a nyelvvel való munkához . A Swift használhatja az Objective-C futási környezetet , amely lehetővé teszi mindkét nyelv (valamint a C nyelv ) használatát ugyanazon a programon belül.
Történelem
Craig Federighi , az Apple szoftverfejlesztési alelnöke a termék bejelentésekor elmondta, hogy a Swift programozási nyelvet a NeXT platformon fektették le ( a NeXTSTEP OS 1989-1995 - ben jelent meg ), amely a modern macOS alapja lett. , majd iOS [8] .
A jelenlegi Swift nyelv fejlesztését Chris Lattner , az Apple szoftverfejlesztő eszközeinek vezetője és az LLVM egyik fő fejlesztője kezdte 2010 -ben. Swift ötleteket kölcsönzött az „Objective-C, Rust , Haskell , Ruby , Python , C# , CLU és még sok más nyelvből, amelyeket nehéz felsorolni” [9] . Az új nyelv eredeti neve Shiny [10] volt .
2014. június 2- án, a WWDC konferencián hivatalosan is bemutatták a Swiftet az iBook Store szolgáltatásban [11] elérhető ingyenes, 500 oldalas nyelvhasználati útmutatóval együtt .
2015. június 8- án az Apple bejelentette a Swift 2.0 új verziójának kiadását, amely nagyobb teljesítményt, új hibakezelési API-t, nyelvi szintaktikai fejlesztéseket és a Swift-funkciók elérhetőségének ellenőrzésére szolgáló funkciót kapott a cél operációs rendszerhez [12] .
2015. december 3- án megjelent a Swift 3.0 béta verziója, amely támogatja az OS X , iOS és Linux operációs rendszereket , és az Apache 2.0 nyílt licenc alatt, Runtime Library kivétellel [13] [14] . A 3.0-s verzió visszafelé nem kompatibilis a nyelv korábbi verzióival; az Xcode natív fejlesztői környezet 9-es verziójától kezdve a Swift-2 nyelvi verzióig és korábbi verzióktól kezdve nem támogatott.
2016. április elején a Google egy meg nem nevezett médiaforrása arról számolt be, hogy a vállalat fontolgatja a Swift nyelv „első osztályú” nyelvre való lefordítását az Android platform számára [15] . Az Androidra szánt Swift fordító prototípusait már bemutatták [16] [17] [18] .
2017. szeptember 19- én jelent meg a Swift 4.0.
2018 szeptemberében az iOS 12 új verziójával együtt megjelent a Swift 4.2 nyelv új stabil verziója, és megjelent a Swift 5.0 béta verziója. Az 5.0-s verzió végre bejelentette az ABI stabil működését szabványos könyvtárakkal (Swift Dynamic Library), reguláris kifejezések támogatásával és első osztályú megoldással az adatok párhuzamos feldolgozására aszinkron feldolgozási móddal async/await [19] .
2019. szeptember 20. A Swift 5.1 a Swift következő jelentős kiadása, és az a célja, hogy végre stabillá tegye az ABI-t.
A jelentős nyelvi frissítések, amelyek új funkciókat adnak hozzá vagy megváltoztatják a korábbi munkakörülményeket, félévente jelennek meg, általában márciusban és szeptemberben.
A nyelv jelenlegi verziója 2022 májusában a Swift 5.6.
Leírás
A Swift elég sokat kölcsönzött az Objective-C- ből , azonban ezt nem mutatók határozzák meg, hanem a fordító által kezelt változók típusa . Sok szkriptnyelv hasonló elven működik. Ugyanakkor számos olyan szolgáltatást biztosít a fejlesztőknek, amelyek korábban C++- ban és Java -ban is elérhetők voltak , mint például a meghatározható elnevezési konvenciók , általánosságok és az operátorok túlterhelése .
A nyelv egyes funkciói gyorsabbak, mint más programozási nyelvekben. Például az összetett objektumok rendezése 3,9-szer gyorsabb, mint a Python, és majdnem 1,5-szer gyorsabb, mint az Objective-C [20][21] .
A Swiftben írt kód együtt tud működni a C és Objective-C programozási nyelveken írt kóddal ugyanazon a projekten belül [2] .
Az Apple több nyitott adattárra osztotta a Swift kódot.
- Fordító és szabványos könyvtár:
- Swift: a fő Swift-tár, amely tartalmazza a Swift-fordító forráskódját, a szabványos könyvtárat és a SourceKit-et;
- Swift-Evolution: A Swift folyamatban lévő fejlesztésével kapcsolatos dokumentumok, beleértve a közelgő kiadásokra vonatkozó célokat, a Swift módosítására és bővítésére vonatkozó javaslatokat;
- Kernel könyvtárak:
- Swift corelibs-foundation: a Foundation forráskódja, amely minden alkalmazáshoz közös funkcionalitást biztosít;
- Swift corelibs-libdispatch: a libdispatch forráskódja, amely párhuzamossági primitíveket biztosít többmagos hardveren való futtatáshoz ;
- Swift corelibs-xctest: az XCTest forráskódja, amely alapvető tesztelési infrastruktúrát biztosít a Swift alkalmazások és könyvtárak számára;
- Csomagkezelő:
- Swift csomagkezelő: forráskód a Swift csomagkezelőhöz;
- Swift llbuild: az llbuild forráskódja, egy alacsony szintű rendszer, amely a Swift csomagkezelőjét használja;
- Klónozott adattárak:
- A Swift számos más nyílt forráskódú projektre támaszkodik, különösen az LLVM fordítóra.
- Swift llvm: LLVM forráskód, Swift-kiegészítések bitjeivel és darabjaival;
- Swift Clang: a Clang forráskódja, Swift kiegészítésekkel;
- Swift lldb: forráskód az LLDB Swift verziójához, a Swift programok hibakereséséhez;
Mintakód
// Változók
var implicitInteger = 70
var implicitDouble = 70,0
var explicitDouble : Double = 70
// A konstansok
lehetővé teszik a speedOfLight = 299 _792_458 értékét
legyen Almaszám = 345
legyen számOfOranges = 5
let appleSummary = "Van \(almaszám) almám."
let fruitSummary = "Van \(almaszám + narancsszám) gyümölcsdarabom."
print ( "Hello world" )
hagyd az embereket = [ "Anna" : 67 , "Beto" : 8 , "Jack" : 33 , "Sam" : 25 ]
( név , életkor ) emberekben { _ _
print ( "\(név) \(életkor) éves." )
}
Lásd még
Jegyzetek
- ↑ https://www.swift.org/blog/swift-5.7-released/
- ↑ 1 2 Az Apple bejelentette az új Swift programozási nyelvet . Sotovik.ru (2014. június 5.). Letöltve: 2014. június 5. Az eredetiből archiválva : 2016. április 17.. (Orosz)
- ↑ Laforge, Guillaume. Az Apple Swift programozási nyelve, amelyet Groovy ihletett ( 2014. június 2.). Letöltve: 2014. június 3. Az eredetiből archiválva : 2014. június 5.
- ↑ 1 2 Az assert() létrehozása a Swiftben, 2. rész: __FILE__ és __LINE__ - Swift Blog - . Apple fejlesztő. - "A Swift egy okos funkciót kölcsönzött a D nyelvből : ezek az azonosítók a hívó helyére bővülnek, ha egy alapértelmezett argumentumlistában értékelik őket." Letöltve: 2014. szeptember 26. Az eredetiből archiválva : 2015. november 21.. (határozatlan)
- ↑ swift/LICENSE.txt a fő alma/swift webhelyen . Letöltve: 2022. június 3. Az eredetiből archiválva : 2016. április 9.. (határozatlan)
- ↑ Apple (Oroszország) - Sajtóinformáció - Az Apple megnyitja a Swift nyelv forráskódját . Letöltve 2017. szeptember 29. Az eredetiből archiválva : 2016. augusztus 28.. (határozatlan)
- ↑ Az új Apple Swift programozási nyelv fő feladatai a gyorsaság és a könnyű fejlesztés . 3DNews (2014. június 3.). Letöltve: 2014. június 3. Az eredetiből archiválva : 2014. június 5. (Orosz)
- ↑ Az új Apple Swift programozási nyelv fő feladatai a gyorsaság és a könnyű fejlesztés . 3DNews (2014. június 3.). Letöltve: 2014. június 3. Az eredetiből archiválva : 2014. június 5. (Orosz)
- ↑ Chris Lattner honlapja (2014. június 3.). — „2010 júliusában kezdtem el dolgozni a Swift programozási nyelven. Az alapvető nyelvi struktúra nagy részét én implementáltam, csak kevesen tudtak a létezéséről. Néhány másik (csodálatos) ember komolyan hozzájárult 2011 végén, és 2013 júliusában az Apple Developer Tools csoport fő fókuszpontjává vált [...] ötleteket merítve az Objective-C, Rust, Haskell, Ruby, Python, C#, CLU és túl sok más a felsoroláshoz." Letöltve: 2014. június 3. Az eredetiből archiválva : 2015. december 22. (határozatlan)
- ↑ Chris Lattner Swift-Ole Begemann eredetéről . Letöltve: 2019. március 10. Az eredetiből archiválva : 2019. március 15. (határozatlan)
- ↑ A Swift programozási nyelv . – Apple, 2014.
- ↑ A Swift 2.0 nyílt forráskódú lesz az év végén. . Habrahabr (2015. június 9.). Letöltve: 2015. június 9. Az eredetiből archiválva : 2015. június 9.. (Orosz)
- ↑ Az Apple nyílt forráskódú "jövő nyelvét". . CNews (2015. december 4.). Letöltve: 2015. december 5. Az eredetiből archiválva : 2015. december 6.. (Orosz)
- ↑ A Swiftről archiválva 2015. december 3-án a Wayback Machine -en – Hivatalos webhely.
- ↑ A Google fontolóra veszi a Swift használatát Androidon . Letöltve: 2017. március 10. Az eredetiből archiválva : 2017. március 9.. (határozatlan)
- ↑ Swift kód futtatása Androidon . Letöltve: 2018. október 16. Az eredetiből archiválva : 2019. július 1. (határozatlan)
- ↑ Swift Androidon: A platformok közötti programozás jövője? . Letöltve: 2018. október 16. Az eredetiből archiválva : 2018. október 17.. (határozatlan)
- ↑ swift/Android.md és a master apple/swift GitHub . Letöltve: 2018. október 16. Az eredetiből archiválva : 2018. szeptember 1.. (határozatlan)
- ↑ iOS 12: Developer 's Perspective , AppTractor (2018. szeptember 13.). Archiválva az eredetiből 2018. november 7-én. Letöltve: 2018. november 7.
- ↑ Hogyan lehet Swift sokkal gyorsabb, mint az Objective-C ezekben az összehasonlításokban? . programers.stackexchange.com. Hozzáférés dátuma: 2016. május 18. Az eredetiből archiválva : 2016. június 9. (határozatlan)
- ↑ Swanner, Nate . A Google fontolóra veheti a Swift használatát Androidon , The Next Web (2016. április 7.). Az eredetiből archiválva : 2017. március 9. Letöltve: 2017. március 10.
Linkek
C programozási nyelv |
---|
|
Fordítók |
|
---|
Könyvtárak |
|
---|
Sajátosságok |
|
---|
Néhány leszármazott |
|
---|
C és más nyelvek |
|
---|
Kategória:C programozási nyelv |