Въведение в новия език за програмиране на Apple: Swift

Тази година на WWDC фокусът беше толкова силно върху iOS 8 и OS X Yosemite, че това, което трябваше да бъде най-голямата новина на събитието, беше доста недооценено. Apple представи на света езика за програмиране Swift. Това за крайния потребител едва ли е новина. Въпреки това, за общността на разработчиците това може да бъде и промяна в играта. Някои езици за програмиране имат ясни предимства пред други езици за програмиране, някои са по-бързи, някои по-ефективни, някои са просто по-чисти, някои невероятно прости. Apple е най-новата фирма, която създава свой собствен език за програмиране след Go (Golang) на Google и .Net Framework на Microsoft. Swift Programming Language твърди, че се е научил от тези езици, като същевременно остава верен на своя предшественик на Objective C. Apple твърдят, че са създали най-бързия и здрав език за програмиране на високо ниво. Нека обясним.

Защо се нуждаем от езици за програмиране?

Има доста начини да накарате устройството да прави „неща“. Всяко устройство, от модерни носими джаджи до традиционните компютри, може да бъде накарано да прави неща, използвайки или старомоден начин на машинен език, писане на необработен байтов код/език за асемблиране, изработване на всяка инструкция на ръка; или можете да разчитате на езици от високо ниво, които ще ви помогнат да намалите част от досадата. Ето защо има повече фокус върху приближаването на езиците за разработчици възможно най-близо до нормалния език. Разбираме, че името на Swift привлича повече разработчици, отколкото зяпачи, но все пак ще опростим обяснението, за да ви помогнем да разберете технологията, която ще контролира бъдещите поколения продукти на Apple.

Кратък пример: Електронните устройства са буквално най-глупавите неща, познати на човечеството, без цялото програмиране те биха били сведени до обикновени орнаменти. Това, което им дава някаква реална функция, е програмирането. На много основно ниво на електрониката трябва да се каже, действие по действие, какво трябва да прави, това е, което правехме с перфокартите и по-късно с машинния език. След това се придвижихме напред във времето, за да разработим езици, които ни позволяват да общуваме с машините по относително по-естествен начин (да, кодът всъщност е по-опростена версия на това, което може да бъде). Щяхме да напишем код, той ще бъде компилиран в нещо, което компютърът разбира и след това ще бъде изпълнен. И така, за да обобщим, код-компилиране-изпълнение.

  Как да използвате новото поле за търсене на Microsoft Outlook

Защо Swift?

Сега можете да си представите, че най-уместният въпрос е „Защо?“. C, езикът е от 70-те години, разбивайки значителни новини по онова време, след това дойде неговият издънка, Objective C през 80-те. Оттогава Apple използва тази платформа за разработка. Логиката повелява „ако не е повреден, не го поправяйте“ и ако работи в продължение на 30 последователни години, какъв може да е проблемът? Е, това. Apple използва Objective C от десетилетия. Време е за нещо по-бързо, по-мощно, по-лесно. Влезте Суифт.

Според официална електронна книга на Swift (достъпно безплатно в iTunes) „Swift е нов език за програмиране за приложения за iOS и OS X, който се основава на най-доброто от C и Objective-C, без ограниченията на съвместимостта с C. Swift приема модели за безопасно програмиране и добавя модерни функции, за да направи програмирането по-лесно, по-гъвкаво и по-забавно. Чистият лист на Swift, подкрепен от зрелите и много обичани рамки Cocoa и Cocoa Touch, е възможност да си представим как работи разработката на софтуер.“

Защо Swift е важен?

Колкото и да иска Apple да ви накара да повярвате в тяхната искрена иновация, има идея за „скриптов“ език. Традиционните параметри за компилиране и изпълнение на код изискват да виждате кода си в действие само след като е компилиран. Компилацията ви показва на какво точно е способен вашият код. Ако кодът ви има грешки, компилацията ще доведе до неправилно поведение или сривове. Тогава работата на кодера ще бъде да проследи къде е грешката, да я поправи и след това да започне отначало. Този процес е едновременно труден и отнема много време, но това е нещо, с което светът на програмирането винаги е живял; така са били нещата винаги. Езиците за скриптове се изпълняват ред по ред, така че можете да виждате резултатите, докато пишете, елиминирайки необходимостта да преглеждате кода си за грешки по-късно. Ускоряване на процеса и много по-лесно.

  Как да премахнете смарт маркери от работна книга в Excel

Към днешна дата възможностите на скриптовите езици са ограничени. Вземете Python например, той е много бърз, но също така е ограничен до по-прости неща с ограничени възможности. Като кола на Forumla1, чудесна за състезания, не толкова за получаване на хранителни стоки.

Ако искате да направите игра, тогава Python не е вашата среда. Въпреки това, Objective-C е (или C++, ако сте на Windows). Сега Swift обещава най-доброто от двата (всъщност много) свята, черпейки вдъхновение от Objective-C, Rust, Haskell, Ruby, Python, C#, CLU и твърде много други за изброяване (справка: разработчик/експерт на Swift Крис Латнър). Суифт твърди, че запазва добрите неща и губи лошите от горното. В ключови бенчмаркове изпълнението му е по-бързо от Python и много по-бързо от Objective-C, така че е добър старт.

Какво друго прави?

Swift също така носи визуална среда в реално време, наречена „детска площадка“, където можете да видите своя резултат, компилиран в реално време, подобно на скриптов език. Това, въз основа на дизайна на приложението, може да съкрати цели процеси до няколко минути, защото ако нещо се обърка, вие веднага ще разберете какво го е причинило и можете да се справите с него точно там. Това е програмен еквивалент на коригиране на грешка в разпечатка срещу коригиране на подчертана в червено дума, докато продължавате. Позволява ви да създавате сложни приложения по-бързо.

Отива малко по-дълбоко. За езици от високо ниво трябваше да декларирате и да получите достъп до класове и библиотеки, за да ангажирате функции, без значение колко са основни. в C++ Ще ви трябват и , за да използвате основния вход, изход и типове данни във вашия код. В Swift обаче нищо от това не е необходимо. Няма да е необходимо да декларирате никакви библиотеки, тъй като Swift ще управлява това, от което се нуждае всеки тип данни и io (вход/изход) функция и ще ангажира сама тази библиотека. И така, отпечатването на нещо толкова просто като „Здравей, свят“ започва

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

на просто:

println("Hello, world")

Това е целият код, който трябва да бъде компилиран. Ще забележите също, че кодът не използва страшното „;“ като универсален знак за крайно изявление.

  Как да включите пространствено аудио за AirPods на iPhone или iPad

Какви са недостатъците?

Съществуването на Swift не означава мигновена смърт на Objective-C и всичките му начини. Приложенията все още могат да се създават с помощта на Objective-C и потребителите на Objective C няма да се чувстват напълно отчуждени, тъй като има прилики в тези среди. Разбира се, тъй като Apple току-що прекара 4 години в работа върху нов език за програмиране, те ще се съсредоточат върху прокарването и поддръжката на Swift, сега и в бъдеще. Може би един ден те ще изтрият Objective-C от аналите на езиците за програмиране на Apple, но този ден не е днес. Въпреки че ако има нов език, който е толкова лесен за научаване и е толкова по-бърз, тогава защо някой ще го използва с Objective-C?

Разбира се, има няколко притеснения, като непосредствените са катаклизми в индустрията. Цели кариери са изковани около обучението на хората как да правят приложения за iPhone, тези кариери и техните ученици веднага са остарели, ще има много преструктуриране на този фронт. Също така ще получим нова реколта от ранни адаптери към Swift (Flappy Birds вече са създадени с помощта на Swift), което е както хубаво, така и лошо. Добре, че нова кръв ще бъде инжектирана в организма, лошото е, че тази нова кръв ще бъде неопитна и ще наводни пазара с лошо направени приложения.

Скоро ще обсъдим металната рамка на Apple, ще обсъдим нейните предимства и недостатъци, особено в игрите с iOS.

Заключение

В случай, че се чудите защо не беше обявен нов хардуер на конференцията на WWDC, тогава ще ви насочим отново към нашето по-ранно изявление, че хардуерът сам не може да направи нищо, докато софтуерът зад него не работи. Така че това беше буквално най-голямата новина за всички времена. Че получаваме ново управление на софтуера, което ще промени облика на целия хардуер в бъдеще. За да получите Swift, ще ви трябва Xcode 6 бета и идентификатор на разработчика.

Вземете Swift тук