Ohjelmointi

Mitä uutta Applen Swift 4.2 -kielellä

Suunnitellun Swift 5: n vuoden 2019 julkaisun edessä Apple on julkaissut välivaiheen Swift 4.2 -version.

Nykyinen versio: Mitä uutta Applen Swift 4.2: ssa

Applen Swift-ohjelmointikielen versio 4.2 tuo kielen lähemmäksi stabiloitua sovelluksen binaariliitäntää (ABI) ja mahdollistaa binäärisen yhteensopivuuden tulevissa julkaisuissa. ABI-vakaus mahdollistaa binäärisen yhteensopivuuden kirjastojen ja kielen eri versioilla koottujen sovellusten välillä.

Vaikka Applen tavoite on vakaus, Swift 4.2 ei ole binäärinen yhteensopiva aiempien julkaisujen kanssa. Lähteiden yhteensopivuus on kuitenkin tarjolla. Useimpien Swift 4.0-kääntäjällä rakennettujen lähdekoodien tulisi kääntyä sekä Swift 4.2- että Swift 4.1-kääntäjien kanssa.

Muita Swift 4.2: n uusia ominaisuuksia ovat:

  • Geneeriset parannukset, jotka on kiinnitetty ehdollisen vaatimustenmukaisuuden tuen loppuunsaattamiseen, vähentämällä kattilakoodin määrää ja lisäämällä koodin uudelleenkäyttöä.
  • Kirjaston vakio-ominaisuuksia ovat parannukset Hashable-protokollaan ja yhtenäinen joukko satunnaistamistoimintoja ja -protokollia.
  • Erätilan kokoamistuki, joka parantaa rakennusaikoja.
  • Muutos säilytys- / vapautussyklin soittokäytännössä koodikoon pienentämiseksi ja suorituskyvyn parantamiseksi.
  • Rekursiivinen metatietojen tuki.
  • Kompaktimpi heijastuksen metatieto.
  • Soitto-sivustoissa viivatut taipumaargumentit.
  • Erilaisia ​​virhekorjauksia, kuten geneeristen alustusohjelmien perimiseen.
  • kääntäjä - direktiivi, joka on syntaktisesti vastaava # jos nopea version tarkistus, mutta vertaa kääntäjän versioon riippumatta siitä, mikä yhteensopivuustila on käynnissä.
  • Uudet Swift-paketinhallintaominaisuudet, mukaan lukien erätilan tuki, ja tavoitteet on nyt koottu tämän tilan avulla; parannettu järjestelmän luontilogiikka; ja automaattinen Xcode-projektin luonti.

Mistä ladata Swift 4.2

Voit ladata Swift 4.2: n lataamalla Xcode 10.0 IDE: n Applelta.

Muita Swift 4.2: n suunnitelmia ovat:

  • Parannukset kokoamisajan suorituskykyyn.
  • Merkkijonot ovat nyt 16 tavua 24 tavun sijaan. Apple näkee tämän hyvänä kompromissina muistin käytön ja suorituskyvyn välillä, samalla kun se on riittävän suuri tekemään pieniä merkkijonooptimointeja.
  • Sovellusliittymiä tarjotaan helpommaksi satunnaislukujen tuottamiseksi.
  • on tuontia rakennuskokoonpanodirektiivi ilmaisee paremmin tarkoituksen, kun koodia jaetaan iOS: n ja MacOS: n välillä.

Edellinen versio: Mitä uutta Swift 4.1: ssä

Maaliskuun loppupuolella 2018 julkaistu Swift 4.1 lisää kielelle lisää geneerisiä tietoja ja rakentaa parannuksia. Versio 4.1 on lähdeyhteensopiva Swift 4.0: n kanssa.

4.1-julkaisussa toteutettuihin geneerisiin tuotteisiin liittyviin ehdotuksiin sisältyy ehdollisia vaatimustenmukaisuuksia, jotka ilmaisevat käsityksen, että geneerinen tyyppi noudattaa tiettyä protokollaa vain, kun tyyppiargumentit täyttävät tietyt vaatimukset. Tällä ominaisuudella odotetaan olevan suuri vaikutus Swift-standardikirjastoon. Muita yleisiä parannuksia ovat:

  • Kääntäjän syntetisointi Vastaava ja Helppo vaatimustenmukaisuus, kattilan ja monimutkaisuuden vähentämiseksi.
  • Tavallisten kirjastoluettelotyyppien tekeminen Helppo.
  • Liittyvän tyypin poistaminen Hakemistoetäisyys, alkaen Kokoelma ja muokata käyttötapoja betonityyppiin, Int, sen sijaan.

Swift 4.1: ssä on myös enemmän tapoja määrittää koontiversiot, kuten koodikoon optimointi ja helpommat mekanismit alustan ja ympäristötuen kohdentamiseen.

Versio 4.1: n kotelon alle tehdyt muutokset tehtiin osana suunnitelmaa ABI: n (sovelluksen binaarinen interace) vakauttamiseksi Swift 5: ssä, jonka on määrä tapahtua tämän vuoden loppupuolella. Näihin hupun alla oleviin muutoksiin sisältyy natiivikohteen otsikossa olevan sanakokoisen kentän käyttö viitteiden laskemiseen ja ajonaikaisfunktioiden tarkastamiseen. Myös erilaisia ​​keräyskääreitä romahdetaan käyttämällä ehdollista vaatimustenmukaisuutta.

Swift 4.1 parantaa Swift Package Manageria. Se ratkaisee nyt pakettikaavioiden riippuvuudet, jotka käyttävät URL-kaavioita, kuten ssh ja http. Myös jaettujen riippuvuuksien pakettikaavioiden suorituskykyä on parannettu.

4.1-päivityksessä on myös Swift-evoluutioehdotuksia, mukaan lukien omistajuuden avainsanojen heikko ja omistamaton, protokollan omaisuusilmoituksia varten. Tämä tehdään selkeyden vuoksi. Myös moduulien välisiä rakenteiden alustusohjelmia rajoitetaan. Tämä vastaa luokkiin voimassa olevaa rajoitusta.

Mistä ladata Swift 4.1

Voit ladata Swift 4.1 -päivityksen Swift-lataussivulta. Lisäksi Swift 4.1 on saatavana Xcode 9.3 IDE: n kanssa, jossa on koodinsiirtäjä monien lähdemuutosten käsittelemiseksi.

Edellinen versio: Mitä uutta Swift 4.0: ssa

Swift 4.0 on merkittävä päivitys Applen Swiftiin, joka on MacOS- ja iOS-sovelluskehityksessä käytettävän Objective-C-kielen kolmivuotias seuraaja.

Swift 4 -päivitys parantaa Swift Package Manageria ja tarjoaa uusia yhteensopivuustiloja kehittäjille. Apple sanoi, että Swift 4 tekee myös Swiftistä vakaamman ja parantaa sen vakiokirjastoa. Swift 4 on pitkälti lähdeyhteensopiva Swift 3: n kanssa ja toimitetaan osana Applen Xcode 9 IDE: tä.

Mitä uutta Swift 4: n paketinhallinnassa

Swift 3: ssa debyytti Swift Package Manager on työkalu koodin jakamiseen. Se on integroitu Swift-rakennusjärjestelmään automatisoimaan prosessit, mukaan lukien riippuvuuksien lataaminen, kokoaminen ja linkittäminen. Swift 4: n paketinhallinnan parannuksia ovat:

  • Puhtaampi Package API, jonka avulla paketit voivat määrittää uudet asetukset. Nämä asetukset antavat kehittäjille paremman hallinnan pakettien luomisesta ja lähteiden järjestämisestä levylle.
  • Useiden pakettien kehittäminen rinnakkain on tehty helpommaksi.
  • Pakettituotteiden alustaminen, mikä mahdollistaa sen hallinnan, mitä kirjastoja paketti julkaisee asiakkaille.
  • MacOS-pakettirakenteet esiintyvät nyt hiekkalaatikossa, mikä estää verkkoon pääsyn ja tiedostojärjestelmän muokkaamisen haitallisten ilmentymien ulottuvuuden vähentämiseksi.

Uudet yhteensopivuustilat Swift 4: ssä auttavat siirtymistä

Swift 4: n uudet yhteensopivuustilat saattavat säästää sinua muokkaamasta koodia kääntäjän uuden version käyttämiseksi. Kaksi tilaa tuetaan, mukaan lukien Swift 3.2 -tila, joka hyväksyy useimmat lähdetiedostot, jotka on rakennettu Swift 3.x-kääntäjillä, ja Swift 4.0-tila, joka sisältää Swift 4- ja API-muutokset.

Apple sanoi, että moniin hankkeisiin tarvitaan jonkin verran lähdemuuttoa, mutta lähdemuutosten määrä on "melko vaatimaton" verrattuna moniin aiempiin suuriin muutoksiin Swift-julkaisujen välillä. Yhteensopivuustilojen käyttöönotto Swift 4: ssä antaa kehittäjille paremman hallinnan siirtymisvauhtiin.

Kielen parannuksia on runsaasti Swift 4: ssä

Swift 4 esittelee useita kieliparannuksia, kuten:

  • Nopeampi ja helpompi käyttää Merkkijono toteutus säilyttää Unicode-oikeellisuuden ja tukee alaosien kehittämistä ja käyttöä.
  • Parannettu kokoelmatyyppien käyttö ja hallinta.
  • Yksinoikeuden pääsy muistiin, jossa muuttujien mahdollisten muutosten on oltava poissuljettuja muiden muuttujan käyttöoikeuksien kanssa.
  • Kyky arkistoida rakenne ja enum tyypit.
  • Tyyppikohtainen sarjaliitäntä ulkoisiin muotoihin, kuten JSON.
  • Protokollakeskeiset kokonaisluvut, jotka puhdistavat Integer-sovellusliittymät ja tekevät niistä hyödyllisempiä yleisessä ohjelmoinnissa.
  • Tuki missä lausekkeet rajoittamaan liitettyjä tyyppejä. Aikaisemmin liitetyt tyypit pystyivät ilmaisemaan vain yksinkertaisia ​​perintörajoituksia eivätkä kehittyneempiä rajoituksia, jotka olivat käytettävissä missä lauseke.
  • Ohjelman sisällyttäminen nopea juoksu komento rakentaa ja suorittaa nykyisessä paketissa määritetty suoritettava tiedosto.
  • Poisto lopullinen avainsanatuki ilmoitettaessa toimintoja protokollalaajennuksissa.
  • Parempi vuorovaikutus yksityinen ilmoitukset ja laajennukset yksityinen pääsynvalvonta laajennettuna, joten tyypin laajennuksessa määritellyillä jäsenillä on sama pääsy kuin itse tyyppiin määritellyillä jäsenillä, kunhan tyyppi ja laajennus ovat samassa lähdetiedostossa.
$config[zx-auto] not found$config[zx-overlay] not found