Увод у Апплеов нови програмски језик: Свифт

Ове године на ВВДЦ-у, фокус је био толико на иОС 8 и ОС Кс Иосемите, да је оно што је требало да буде највећа вест догађаја било прилично недовољно цењено. Аппле је свету представио програмски језик Свифт. Ово за крајњег корисника једва да је вест. Међутим, за заједницу програмера то би могло да промени игру. Одређени програмски језици имају јасне предности у односу на друге програмске језике, неки су бржи, неки ефикаснији, неки су само чистији, неки невероватно једноставни. Аппле је најновија фирма која је креирала сопствени програмски језик након Гоогле-овог Го (Голанг) и Мицрософт-овог .Нет Фрамеворк-а. Свифт Программинг Лангуаге тврди да је научио из ових језика, док је остао веран свом претходнику Објецтиве Ц. Аппле тврди да је створио најбржи, најробуснији програмски језик високог нивоа. Хајде да објаснимо.

Зашто су нам потребни програмски језици?

Постоји неколико начина да натерате уређај да ради „ствари“. Било који уређај, од модерних гаџета за ношење до традиционалних рачунара, може да се направи да ради ствари користећи старомодни начин машинског језика, писање у сировом бајт коду/језику за склапање, ручно креирање сваке инструкције; или се можете ослонити на језике високог нивоа који ће вам помоћи да смањите део досаде. Зато је више фокуса на приближавању језика програмера што је могуће ближе нормалном језику. Разумемо да име Свифт привлачи више програмера него посматрача, али ћемо ипак поједноставити објашњење да бисмо вам помогли да разумете технологију која ће контролисати будуће генерације Аппле производа.

Кратки пример: Електронски уређаји су буквално најглупље ствари које човечанство познаје, без свег програмирања, свели би се на пуке украсе. Оно што им даје стварну функцију је програмирање. На веома основном нивоу, електроници треба рећи, акцију по акцију, шта треба да раде, то је оно што смо радили са бушеним картицама, а касније и са машинским језиком. Затим смо напредовали у времену да развијемо језике који нам омогућавају да комуницирамо са машинама на релативно природнији начин (да, код је заправо једноставнија верзија онога што би могао бити). Написали бисмо код, он би био компајлиран у нешто што рачунар разуме, а затим би се извршио. Дакле, да резимирамо, код-компајлирај-изврши.

  Колико кошта 1 милион кованица на ТикТок-у?

Зашто Свифт?

Сада, можете замислити да је најрелевантније питање „Зашто?“. Ц, језик је из 70-их, који је у то време пробио значајна нова поља, а затим је дошао његов изданак, Циљ Ц у 80-им. Аппле од тада користи ту платформу за развој. Логика налаже „ако није покварен, не поправљај га“, а ако ради 30 година узастопно, шта би могао бити проблем? Па то. Аппле користи Објецтиве Ц већ деценијама. Време је за нешто брже, моћније, лакше. Улази Свифт.

Према званична е-књига на Свифт-у (доступно бесплатно на иТунес-у) „Свифт је нови програмски језик за иОС и ОС Кс апликације који се заснива на најбољем од Ц и Објецтиве-Ц, без ограничења компатибилности са Ц. Свифт усваја безбедне обрасце програмирања и додаје модерне функције како би програмирање учинило лакшим, флексибилнијим и забавнијим. Свифтова чиста листа, подржана зрелим и веома вољеним оквирима Цоцоа и Цоцоа Тоуцх, прилика је да се поново замисли како функционише развој софтвера.”

Зашто је Свифт важан?

Колико год Аппле желео да верујете у њихову свесрдну иновацију, постојала је идеја о језику „скриптирања“. Традиционални параметри за компајлирање и извршавање кода захтевају да свој код видите у акцији тек након што је преведен. Компилација вам показује за шта је тачно ваш код способан. Ако ваш код има грешке, компилација ће резултирати неправилним понашањем или кваровима. Тада ће посао кодера бити да пронађе где лежи грешка, да је поправи и затим почне изнова. Овај процес је и напоран и дуготрајан, али то је нешто са чим је свет програмирања одувек живео; тако су ствари одувек биле. Језици за скриптовање се извршавају ред по ред тако да можете да видите резултате док пишете, елиминишући потребу да касније прегледате свој код за грешке. Учинити процес бржим и то много лакшим.

  Како избрисати грану ГитХуб-а?

До данас, скрипт језици су били ограничени у својим могућностима. Узмимо за пример Питхон, он је брз, али је такође ограничен на једноставније ствари са ограниченим могућностима. Као аутомобил Форумла1, одличан за трке, не толико за набавку намирница.

Ако желите да направите игру, онда Питхон није ваше окружење. Међутим, Објецтиве-Ц је (или Ц++ ако користите Виндовс). Сада, Свифт обећава најбоље од оба (у ствари, многа) света, узимајући инспирацију из Објецтиве-Ц, Руст, Хаскелл, Руби, Питхон, Ц#, ЦЛУ и превише других да би их могао навести (референца: Свифт програмер/стручњак Цхрис Латтнер). Свифт тврди да задржава добре ствари и губи лоше ствари од горе наведених. У кључним тестовима његово извршење је брже од Питхон-а и много брже од Објецтиве-Ц-а, тако да је добар почетак.

Шта још ради?

Свифт такође доноси визуелно окружење у реалном времену које се зове „игралиште“ где можете да видите свој резултат који се компајлира у реалном времену, слично као језик за скриптовање. Ово, на основу дизајна апликације, може све процесе свести на неколико минута, јер ако нешто крене наопако, одмах ћете знати шта је узроковало и можете то одмах да решите. То је програмски еквивалент исправљања грешке на отиску у односу на исправљање црвено подвучене речи док идете даље. Омогућава вам да брже креирате сложене апликације.

Иде мало дубље. За језике високог нивоа, од вас се захтевало да декларишете и приступите класама и библиотекама да бисте ангажовали функције, без обзира колико су основне. у Ц++ Биће вам потребни <иостреам.х> и <цонио.> да бисте користили основни улаз, излаз и типове података у вашем коду. У Свифту, међутим, ништа од тога није неопходно. Не бисте морали да декларишете ниједну библиотеку, јер ће Свифт управљати оним што је потребно за сваки тип података и ио (улаз/излаз) функција и саму ће ангажовати ту библиотеку. Дакле, штампање нечег тако једноставног као што је „Здраво свете“, иде од

#include<stdio.h>
int main(void)
{
  printf("Hello Worldn");
  return0;
}

на једноставно:

println("Hello, world")

То је цео код који треба да се састави. Такође ћете приметити да код не користи страшно „;“ као универзални знак крајњег исказа.

  Како да увезете фотографије са камере или телефона користећи фотографије на Мац-у

Који су недостаци?

Сада, постојање Свифта не значи тренутну смрт Објецтиве-Ц и свих његових начина. Апликације се и даље могу креирати помоћу Објецтиве-Ц-а, а изворни Објецтиве Ц корисници се неће осећати потпуно отуђеним јер постоје сличности у овим окружењима. Наравно, пошто је Аппле управо провео 4 године радећи на новом програмском језику, они ће се фокусирати на гурање и подршку Свифту, сада и у будућности. Можда ће једног дана избрисати Објецтиве-Ц из анала Аппле-ових програмских језика, али тај дан није данас. Мада ако је изашао нови језик, који је тако лак за учење и који је много бржи, зашто би га онда неко користио Објецтиве-Ц?

Наравно, постоји неколико забринутости, а непосредна је преокрет у индустрији. Читаве каријере су исковане око подучавања људи како да праве иПхоне апликације, те каријере и њихови ученици су одмах застарели, биће доста реструктурирања на том фронту. Такође ћемо добити нови сет раних адаптера за Свифт (Флаппи Бирдс је већ креиран помоћу Свифта), што је добро и лоше. Добро је што ће нова крв бити убризгана у организам, лоше је што ће та нова крв бити неискусна и преплавити тржиште лоше направљеним апликацијама.

Ускоро ћемо разговарати о Аппле-овом металном оквиру, расправљајући о његовим предностима и недостацима, посебно у иОС играма.

Закључак

У случају да се питате зашто није најављен нови хардвер на ВВДЦ конференцији, онда ћемо вас поново упутити на нашу ранију изјаву да сам хардвер не може учинити ништа док софтвер који стоји иза њега не ради. Дакле, ово је буквално била највећа вест свих времена. Да добијамо нову контролу над софтвером који ће променити лице целокупног хардвера у будућности. Да бисте добили Свифт, требаће вам Ксцоде 6 бета и ИД програмера.

Доведите Свифт-а овде