{"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\/pt\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","title":{"rendered":"Para continuar o desenvolvimento do navegador Ladybird, foi decidido usar a linguagem Swift.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Os desenvolvedores do navegador experimental Ladybird anunciaram sua inten\u00e7\u00e3o de usar a linguagem de programa\u00e7\u00e3o Swift como a principal para seu projeto. A inclus\u00e3o de c\u00f3digo Swift deve come\u00e7ar no outono, ap\u00f3s o lan\u00e7amento do Swift 6 (usar a vers\u00e3o 5 do Swift \u00e9 complicado devido \u00e0 depend\u00eancia da velha vers\u00e3o do Clang, que \u00e9 incompat\u00edvel com a atual base de c\u00f3digo em C++ do Ladybird). Gra\u00e7as \u00e0 possibilidade de combinar c\u00f3digo em C++ e Swift, a implementa\u00e7\u00e3o do Swift ocorrer\u00e1 gradualmente sem a necessidade de reescrever o c\u00f3digo existente.      <\/p>\n<p>A escolha do Swift \u00e9 motivada por uma s\u00e9rie de vantagens, incluindo m\u00e9todos seguros de gerenciamento de mem\u00f3ria, prote\u00e7\u00e3o contra condi\u00e7\u00f5es de corrida, sintaxe moderna e ergonomia. A natureza orientada a objetos do Swift \u00e9 especialmente significativa para a equipe do Ladybird, pois permite modelar mais precisamente as especifica\u00e7\u00f5es da web e os componentes internos do navegador. Os desenvolvedores tamb\u00e9m observam a crescente compatibilidade do Swift para plataformas n\u00e3o-Apple e o trabalho ativo na sua compatibilidade com C++, o que abre caminho para a implementa\u00e7\u00e3o gradual da linguagem no projeto. Apesar das conex\u00f5es hist\u00f3ricas do Swift com a Apple, a linguagem est\u00e1 se tornando cada vez mais independente, como evidenciado pela transfer\u00eancia de seu reposit\u00f3rio para uma organiza\u00e7\u00e3o separada no GitHub.    <\/p>\n<p>Andreas Kling, fundador do projeto Ladybird, compartilhou suas opini\u00f5es sobre Rust. De acordo com Kling, embora Rust tenha um ecossistema impressionante, ele \u00e9 menos adequado para o desenvolvimento de programas de longa dura\u00e7\u00e3o com gr\u00e1ficos de objetos complexos. Al\u00e9m disso, Kling descreveu a comunidade Rust como \"t\u00f3xica\".      <\/p>\n<p>Lembramos que o navegador Ladybird foi inicialmente desenvolvido como parte de um projeto para criar um sistema operacional chamado SerenityOS. Em junho de 2024, Andreas Kling, que trabalhou na Nokia e esteve envolvido no desenvolvimento do Safari, decidiu separar o projeto do navegador do projeto do sistema operacional e dedicar seu tempo completamente a seu desenvolvimento. Em julho, o projeto recebeu uma doa\u00e7\u00e3o de 1 milh\u00e3o de d\u00f3lares e come\u00e7ou a formar a organiza\u00e7\u00e3o sem fins lucrativos Ladybird Browser Initiative.     <\/p>\n<p>O navegador \u00e9 escrito em C++ e \u00e9 distribu\u00eddo sob a licen\u00e7a BSD. O projeto desenvolve seu pr\u00f3prio motor LibWeb, interpretador JavaScript LibJS, biblioteca de renderiza\u00e7\u00e3o de texto e gr\u00e1ficos 2D LibGfx, motor de express\u00f5es regulares LibRegex, parser XML LibXML, interpretador de c\u00f3digo intermedi\u00e1rio WebAssembly (LibWasm), biblioteca para trabalhar com Unicode LibUnicode, biblioteca para convers\u00e3o de codifica\u00e7\u00f5es de texto LibTextCodec, parser para markdown (LibMarkdown), bibliotecas com primitivas criptogr\u00e1ficas (LibCrypto, LibTLS), biblioteca para trabalhar com arquivos compactados LibArchive, bibliotecas para reprodu\u00e7\u00e3o de som e v\u00eddeo (LibAudio, LibVideo) e a biblioteca LibCore com um conjunto comum de fun\u00e7\u00f5es \u00fateis, como convers\u00e3o de tempo, entrada\/sa\u00edda e manipula\u00e7\u00e3o de tipos MIME.     <\/p>\n<p>No Ladybird, \u00e9 aplicada uma arquitetura multiprocessual, onde o processo respons\u00e1vel pela forma\u00e7\u00e3o da interface \u00e9 separado dos processos que tratam o conte\u00fado web, enviam solicita\u00e7\u00f5es pela rede, decodificam imagens e armazenam Cookies. Os manipuladores relacionados \u00e0 decodifica\u00e7\u00e3o de imagens e \u00e0 intera\u00e7\u00e3o de rede s\u00e3o alocados em processos separados para aumentar a isola\u00e7\u00e3o e a seguran\u00e7a. Para cada aba, \u00e9 utilizado um processo separado de tratamento de conte\u00fado web, isolado do restante do sistema. A interface \u00e9 constru\u00edda usando AppKit no macOS, API nativa de constru\u00e7\u00e3o de interface gr\u00e1fica no Android, e Qt nas demais plataformas. Os principais padr\u00f5es web s\u00e3o suportados (o navegador passa nos testes Acid3), HTTP\/1.1 e HTTPS. A interface gr\u00e1fica tem um design cl\u00e1ssico e suporta abas.            <\/p>\n<p>Fonte: <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\/pt\/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=\"pt_PT\" \/>\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\/pt\/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\udd47Para continuar o desenvolvimento do navegador Ladybird, foi decidido usar a linguagem Swift | ProHoster","description":"Os desenvolvedores do navegador experimental Ladybird anunciaram a inten\u00e7\u00e3o de usar a linguagem de programa\u00e7\u00e3o Swift como principal para seu projeto.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","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\/pt\/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\/pt\/wp-json\/wp\/v2\/posts\/119309","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=119309"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/119309\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=119309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=119309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=119309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}