{"id":119309,"date":"2024-08-10T21:43:00","date_gmt":"2024-08-10T19:43:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift"},"modified":"2024-08-10T21:43:00","modified_gmt":"2024-08-10T19:43:00","slug":"dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","title":{"rendered":"For at forts\u00e6tte udviklingen af browseren Ladybird er det besluttet at bruge programmeringssproget Swift","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Udviklerne af den eksperimentelle browser Ladybird har meddelt, at de har til hensigt at bruge programmeringssproget Swift som det prim\u00e6re sprog for deres projekt. Integrationen af Swift-kode forventes at starte til efter\u00e5ret, efter udgivelsen af Swift 6 (brugen af Swift 5-grenen h\u00e6mmes af forbindelsen til den \u00e6ldre version af Clang, som ikke er kompatibel med den nuv\u00e6rende C++-kodebase for Ladybird). Takket v\u00e6re muligheden for at kombinere C++-kode med Swift vil implementeringen af Swift ske gradvist uden at skulle omskrive den eksisterende kode.      <\/p>\n<p>Valget af Swift er baseret p\u00e5 en r\u00e6kke fordele, herunder sikre metoder til hukommelsesstyring, beskyttelse mod race-tilstande, moderne syntaks og ergonomi. Den objektorienterede natur af Swift er s\u00e6rligt vigtig for Ladybird-teamet, da det muligg\u00f8r en mere pr\u00e6cis modellering af web-specifikationer og interne komponenter af browseren. Udviklerne bem\u00e6rker ogs\u00e5 den forbedrede st\u00f8tte for Swift p\u00e5 ikke-Apple platforme samt den aktive indsats for at sikre kompatibilitet med C++, hvilket \u00e5bner vejen for et gradvist incitament til sproget i projektet. P\u00e5 trods af Swifts historiske b\u00e5nd til Apple bliver sproget stadig mere uafh\u00e6ngigt, hvilket f.eks. fremg\u00e5r af overf\u00f8rslen af dets repository til en separat organisation p\u00e5 GitHub.    <\/p>\n<p>Andreas Kling, grundl\u00e6ggeren af Ladybird-projektet, delte sine tanker om Rust. If\u00f8lge Kling, selvom Rust har et imponerende \u00f8kosystem, er det mindre bekvemt til udvikling af langvarige programmer med store komplekse objektgrafer. Derudover beskrev Kling Rust-f\u00e6llesskabet som \"giftigt\".      <\/p>\n<p>Vi minder om, at browseren Ladybird oprindeligt blev udviklet inden for rammerne af et projekt til at udvikle operativsystemet SerenityOS. I juni 2024, besluttede Andreas Kling, som tidligere arbejdede hos Nokia og var involveret i udviklingen af Safari, at adskille browserprojektet fra operativsystemprojektet og dedikere al sin tid til dets udvikling. I juli modtog projektet en donation p\u00e5 1 million dollars og begyndte at danne den non-profit organisation Ladybird Browser Initiative.     <\/p>\n<p>Browseren er skrevet i C++ og distribueres under BSD-licensen. Projektet udvikler sin egen motor, LibWeb, JavaScript-fortolker LibJS, bibliotek til tekst- og 2D-grafikrendering LibGfx, motor til regul\u00e6re udtryk LibRegex, XML-parser LibXML, fortolker af mellemkode WebAssembly (LibWasm), bibliotek til Unicode-h\u00e5ndtering LibUnicode, bibliotek til konvertering af tekstkoderinger LibTextCodec, parser til Markdown (LibMarkdown), biblioteker med kryptografiske primitive (LibCrypto, LibTLS), bibliotek til arkivh\u00e5ndtering LibArchive, biblioteker til lyd- og videoafspilning (LibAudio, LibVideo) og biblioteket LibCore med et generelt s\u00e6t nyttige funktioner som tidskonvertering, input\/output og behandling af MIME-typer.     <\/p>\n<p>I Ladybird anvendes en flertr\u00e5det arkitektur, hvor den proces, der h\u00e5ndterer brugergr\u00e6nsefladen, er adskilt fra processerne, der s\u00f8rger for behandling af webindhold, sender anmodninger over nettet, dekoder billeder og opbevarer cookies. Behandlerne, der er relateret til dekodning af billeder og netv\u00e6rk, er adskilt i separate processer for at styrke isolationen og beskyttelsen. Hver fane bruger en separat proces til behandling af webindhold, isoleret fra resten af systemet. Til opbygning af brugergr\u00e6nsefladen p\u00e5 macOS anvendes AppKit, p\u00e5 Android - den platformspecifikke API til oprettelse af grafiske brugerflader, og p\u00e5 andre platforme - Qt. De grundl\u00e6ggende webstandarder underst\u00f8ttes (browseren best\u00e5r Acid3-testene), HTTP\/1.1 og HTTPS. Brugergr\u00e6nsefladen er designet i klassisk stil og underst\u00f8tter faner.            <\/p>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=61685\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Ladybird \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Swift \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 \u043a\u043e\u0434\u0430 \u043d\u0430 Swift \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u0447\u0430\u0442\u044c \u043e\u0441\u0435\u043d\u044c\u044e, \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 \u0440\u0435\u043b\u0438\u0437\u0430 Swift 6 (\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0435\u0442\u043a\u0443 Swift 5 \u043c\u0435\u0448\u0430\u0435\u0442 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 \u043a \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Clang, \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0439 \u0441 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043a\u043e\u0434\u043e\u0432\u043e\u0439 \u0431\u0430\u0437\u043e\u0439 Ladybird \u043d\u0430 \u0421++). \u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0432\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u043d\u0430 \u0421++ [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-119309","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Ladybird \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Swift \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Ladybird \u0440\u0435\u0448\u0435\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a Swift | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Ladybird \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Swift \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-08-10T19:43:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-08-10T19:43:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47For at forts\u00e6tte udviklingen af browseren Ladybird er det besluttet at anvende sproget Swift | ProHoster","description":"Udviklerne af den eksperimentelle browser Ladybird har annonceret deres intention om at bruge programmeringssproget Swift som det prim\u00e6re sprog for deres projekt.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Ladybird \u0440\u0435\u0448\u0435\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a Swift | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 Ladybird \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438 \u043e \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Swift \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-08-10T19:43:00+00:00","article:modified_time":"2024-08-10T19:43:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"119309","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 05:44:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 05:44:19","updated":"2026-01-23 05:44:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/119309","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=119309"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/119309\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=119309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=119309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=119309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}