Jak Swift na zawsze zmieni świat programowania
Makradar Technologii / / December 19, 2019
Chris Lattner pół roku tworząc nowy język programowania, a przez cały ten czas nikt o tym nie powiedzieć nawet jego najbliższych przyjaciół i współpracowników. Zaczął się w lecie 2010 roku, noce i weekendy pracuje, a do końca roku ma już wskazano podstawy nowego języka. Wtedy właśnie powiedział mi o swoim projekcie czołowych menedżerów spółki, którzy byli pod takim wrażeniem, że podłączone do pracy kilku bardziej doświadczonych inżynierów.
Po kolejnym roku, a połowa jego projekt stał się głównym celem firmy, w której ogromna liczba specjalistów pracy ramię w ramię z Lattnerom byli zaangażowani. To oznaczało tylko jedno, nowy język programowania, wkrótce będą musiały zmienić świat komputerowy. Lattner, jak wiecie, ja pracował w Apple.
Nowy język nazwano szybkiApple wprowadził go na widok publiczny podczas WWDC 2 czerwca. Po 4 latach po Lattner przystąpił do ich potomstwa, nowy język zaszokował wszystkich, z wyjątkiem kilku doświadczonych osób Apple.
Vikram AdveNauczycielu z University of Illinois, raz Lattneru pomogło stworzyć fundament dla jednego programu, który następnie stał się podstawą dla Swifta. Ale, jak wszyscy inni, był bardzo zaskoczony, że jego uczeń wiele lat stworzył nowy język programowania. «Apple jest tak tajemnicza firma, i wygląda na to, Chris wypił magiczny eliksir” - powiedział, śmiejąc się, Adve. - „Wiedziałem, że pracuje nad projektem, który zajmuje cały swój czas, ale to wszystko, co wiem.”
Zazwyczaj, gdy znikąd pojawia się nowego języka, to trwa kilka lat, aby wygrać swoją publiczność. To prawda, nawet jeśli chodzi o takich gigantów jak Apple.
W 2009 roku Google wprowadziło język Go opracowany przez znanego inżyniera Ken Thompson i Rob Pike, a on wciąż nie zyskał dużą popularność na całym świecie. Ale Swift - to inna sprawa. Można to osiągnąć wykorzystania masy w jak najkrótszym czasie, przekraczając tempo rozwoju Java i C # w późnych latach 90. i na początku 2000s.
korzyść szybki polega na tym, że jest przeznaczony dla średniej programator i nadaje się do tworzenia prostych aplikacji mobilnej. I tak prostego narzędzia jak place zabaw, każdy programista może łatwo nauczyć się języka na własną rękę. Dodatkowo, teraz w wielu programistów jest kilka powodów, dla korzystania Swift.
Dzisiaj setki tysięcy programistów piszących aplikacje dla iPhone i iPad, używając Objective-C. A ze względu na ogromną popularność platformy, na pewno będą nadal pisać je w przyszłości. Swift zawiera znaczne ulepszenia w porównaniu z Objective-C, co oznacza, że ogromna społeczność programistów na całym świecie zaczną uczyć się nowego języka w ciągu najbliższych miesięcy.
„Nie było prawdziwym bodźcem do korzystania z Google Go», - powiedział Paul Jansen, który śledził stosowanie różnych językach za pomocą programowania Tiobe Index w ciągu ostatnich 15 lat. „Różnica polega na tym, że Swift, on jest”.
Już około 2400 projektów na GitHub, popularnej usługi hostingowe dla otwartych projektów IT, z wykorzystaniem Swift. I w tym miesiącu nowy język zadebiutował jako numer 16 na liście wersji najgłośniejszych języka Tiobe. Tak, prawie to samo stało się, aby przejść w 2009 roku, ale od tego czasu język traci swój wpływ. Swift w końcu powinna wzmocnić tylko swoje pozycje.
„Ludzie trafi do nowego języka, ponieważ łatwiej jest napisać kod” - mówi Jansen. - „Mają do wyboru albo Objective-C lub SWIFT. A większość wybierze Swift ».
Chris Latter nadzoruje narzędzi programistycznych Apple, wszystkie narzędzia używają inżynierów Apple i programiści innych firm, zajmujących się oprogramowaniem dla komputerów osobistych, laptopów, tabletów i smartfony. Jako doktorant na Uniwersytecie Illinois, kierowanego przez Vikram Adve, stworzył system dla programistów o nazwie LLVMKtóry obecnie stanowi podstawę Xcode.
Po Lattner dołączył do Apple w 2005 roku, firma przełączony na LLVM, który dotknął jak Objective-C zostały wykorzystane przez programistów do tworzenia aplikacji. I po 5 latach Lattner wprowadziła ten system jako podstawę Swift.
Odmówił udzielenia wywiadu do tego artykułu, bez zgody firmy Apple PR-dział, lecz pokrótce opisał ewolucję Swift na swojej stronie. Nawet bez wchodzenia w szczegóły, można powiedzieć, że Lattner Swift wybudowany w tandemie z istniejących narzędzi Apple, że programiści mogą z łatwością korzystać z nowego języka, wraz z Objective-C.
Innymi słowy, Swift - to nie tylko język. On ściśle interakcji z innymi narzędziami, które umożliwiają programistom tworzenie oprogramowania. I to nie tylko rozwój środowiska zbudowanego, ale również w tym debugger, który identyfikuje wszystkie Kod błędu. A większość z tych narzędzi są znane każdemu deweloper Apple. Generalnie, inżynierowie Apple stworzyło łatwe przejście dla dziesiątek tysięcy programistów piszących programy na iPhone, iPad i Mac.
Ponieważ deweloperzy nigdy nie pracował z tym językiem, muszą mieć powody, aby przełączyć się z Objective-C Swift. „Jestem pierwszym i jedynym do tej pory człowiek z doświadczeniem Swift pracy w ciągu 4 lat” - napisał na Twitterze Lattner.
Aby nauczyć się nowego języka wykonuje pracę czasową i mocno, że często dla wielu jest to duży problem. Ale Lattner i Apple doprowadziły rozstrzygających argumentów na rzecz Swift. Nie możemy powiedzieć, że jest o wiele bardziej atrakcyjne niż w innych językach takich jak C #, Ruby lub Python. Ale jest to duży krok naprzód w porównaniu z Objective-C, który ma swoje korzenie w połowie lat 80-tych, a to nie jest tak łatwy w użyciu.
„Wiele osób odmawia Objective-C z powodu swej niezwykłej składni” - mówi Mike Ash, inżynier firmy Apple, który w ciągu ostatnich 15 lat rozwój różnych producentów oprogramowania, - „Swift bardziej poprawne, a średnia składnia, który zainteresuje osoby ludzi. " „Jest wykonana dla produktywnego programista i pozwala mu robić więcej rzeczy w krótszym czasie.”
Lattner pisze na swojej stronie, placów zabaw pozwala na dokonywanie programowania bardziej interaktywne i łatwo dostępne. „On jest pod silnym wpływem filozofii projektanta Bret Victor i interaktywny system oprogramowania światła tabeli. Jak w świetle tabeli, pozwala na pisanie kodu na jednej stronie ekranu i oglądać wyniki pojawią się na drugiej. Innymi słowy, można wypędzić program w chwili jej pisania. "
Podczas WWDC 2014 Lattner wykazała pewne możliwości szybkiego i placów zabaw na przykładzie bardzo prosta gra. Narzędzia pozwalają na dodanie nowego kodu bez rekompilacji i ponowne uruchomienie całego systemu. „Po wprowadzeniu zmian, są one wprowadzane do procesu już uruchomiony w wersji programu, który działa w tej chwili” - powiedział Chris Granger, jeden z twórców tablicy Light.
„Mam nadzieję, że programowanie staną się bardziej dostępne i zabawa rozrywką” - napisał Lattner. - „Apelujemy do nowej generacji programistów i przyczyniając się do zmiany metodologii nauczania informatyki”.
Tabela światło może zrobić to samo, tylko z różnych językach, takich jak Python, Clojure i JavaScript. Jednak, zgodnie z Granger, Place zabaw mogą być szczególnie przydatne narzędzie, ponieważ Swift został specjalnie zaprojektowany do pracy z nim. „Ponieważ oni stworzyli ten język i jego kontroli, mogą robić rzeczy, których nie możemy produkować z innych języków.”
Place zabaw podglyuchivaet trochę więcej, ale teraz może znacznie skrócić czas wymagany do zapisu kodu. „Place zabaw natychmiastowej informacji zwrotnej może przyciągnąć ogromną liczbę ludzi w nowym obszarze.”
Tradycyjnie było przepaść między kompilacji języków programowania takich jak Objective-C i C ++, a interpretowane języków takich jak Python, Ruby i PHP. Korzystanie pierwsze, trzeba najpierw napisać kod, a następnie czekać na Twój kompilator będzie przekształcić go w rodzaju oprogramowania. Ale po program jest kompilowany, to będzie działać bardzo szybko. Języki interpretowane pozwalają przetestować program niemal natychmiast, ale działa wolniej. Swift zebrane najlepsze z obu światów. On jest przyjazny zarówno dla autora, jak iw stosunku do komputera.
Apple - nie jedyna firma, która bada nowe programowanie. Facebook stara się stworzyć coś podobnego, rozwój języków i Hack D. Ta sondy gleby za pomocą Go, Mozilla robi to samo z Rust. Ale wszystkie te języki są dalekie od Swift.
Tak, są łatwo dostępne, a teoretycznie mogą szybko rozprzestrzeniać się za pośrednictwem różnych urządzeń i usług innych firm. Swift - z zupełnie innej sytuacji, jego sprzęt i oprogramowanie ściśle kontrolowane. I najprawdopodobniej nie zostanie wykorzystana do innych platform.
Ale nawet jeśli to pozostaje tylko dla Apple, dostanie ogromny wpływ i rozpowszechniania, nie porównywalną z każdego nowoczesnego języka programowania. A wszystko za sprawą tego popularnego iPhone, iPad i Mac.
Tak, wiele innych języków może prodelyvat te same rzeczy jak Swift, a niektóre są nawet lepsze, ale w tym samym świetle tabeli jest alternatywą zabaw. Mimo to, Swift jest unikalna w swej prostocie i interaktywności, a teraz, po kilku miesiącach od jej wprowadzenia, jest interesująca dla wielu dziesiątków tysięcy programistów na całym świecie.
przez Przewodowa