{"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\/fr\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","title":{"rendered":"Pour continuer le d\u00e9veloppement du navigateur Ladybird, il a \u00e9t\u00e9 d\u00e9cid\u00e9 d'utiliser le langage Swift.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Les d\u00e9veloppeurs du navigateur exp\u00e9rimental Ladybird ont annonc\u00e9 leur intention d'utiliser le langage de programmation Swift comme principal pour leur projet. L'int\u00e9gration du code en Swift devrait commencer \u00e0 l'automne, apr\u00e8s la sortie de Swift 6 (utiliser la branche Swift 5 pose probl\u00e8me en raison de la d\u00e9pendance \u00e0 une ancienne version de Clang, incompatible avec la base de code actuelle de Ladybird en C++). Gr\u00e2ce \u00e0 la possibilit\u00e9 de combiner du code en C++ et en Swift, l'adoption de Swift se fera progressivement, sans r\u00e9\u00e9crire le code existant.      <\/p>\n<p>Le choix de Swift est motiv\u00e9 par plusieurs avantages, y compris des m\u00e9thodes de gestion de la m\u00e9moire s\u00fbres, une protection contre les conditions de concurrence, une syntaxe moderne et une ergonomie am\u00e9lior\u00e9e. La nature orient\u00e9e objet de Swift est particuli\u00e8rement importante pour l'\u00e9quipe de Ladybird, car elle permet de mod\u00e9liser plus pr\u00e9cis\u00e9ment les sp\u00e9cifications web et les composants internes du navigateur. Les d\u00e9veloppeurs soulignent \u00e9galement le soutien croissant de Swift pour des plateformes non-Apple et le travail actif sur la compatibilit\u00e9 avec C++, ce qui ouvre la voie \u00e0 une adoption progressive du langage dans le projet. Malgr\u00e9 les liens historiques de Swift avec Apple, le langage devient de plus en plus ind\u00e9pendant, comme en t\u00e9moigne, par exemple, le transfert de son d\u00e9p\u00f4t dans une organisation distincte sur GitHub.    <\/p>\n<p>Andreas Kling, le fondateur du projet Ladybird, a partag\u00e9 ses r\u00e9flexions sur Rust. Selon Kling, bien que Rust poss\u00e8de un \u00e9cosyst\u00e8me impressionnant, il est moins adapt\u00e9 au d\u00e9veloppement de programmes \u00e0 long terme avec de grands graphes d'objets complexes. De plus, Kling a d\u00e9crit la communaut\u00e9 Rust comme \u00ab toxique \u00bb.      <\/p>\n<p>Rappelons qu'\u00e0 l'origine, le navigateur Ladybird a \u00e9t\u00e9 d\u00e9velopp\u00e9 dans le cadre d'un projet de syst\u00e8me d'exploitation, SerenityOS. En juin 2024, Andreas Kling, qui a travaill\u00e9 chez Nokia et a \u00e9t\u00e9 impliqu\u00e9 dans le d\u00e9veloppement de Safari, a d\u00e9cid\u00e9 de s\u00e9parer le projet du navigateur du projet du syst\u00e8me d'exploitation, et de consacrer enti\u00e8rement son temps \u00e0 son d\u00e9veloppement. En juillet, le projet a re\u00e7u un don d'un million de dollars et a commenc\u00e9 \u00e0 former une organisation \u00e0 but non lucratif, la Ladybird Browser Initiative.     <\/p>\n<p>Le navigateur est \u00e9crit en C++ et distribu\u00e9 sous la licence BSD. Le projet d\u00e9veloppe son propre moteur LibWeb, un interpr\u00e9teur JavaScript LibJS, une biblioth\u00e8que de rendu de texte et de graphismes 2D LibGfx, un moteur pour les expressions r\u00e9guli\u00e8res LibRegex, un parseur XML LibXML, un interpr\u00e9teur de code interm\u00e9diaire WebAssembly (LibWasm), une biblioth\u00e8que pour travailler avec Unicode LibUnicode, une biblioth\u00e8que pour la conversion des encodages de texte LibTextCodec, un parseur pour le balisage Markdown (LibMarkdown), des biblioth\u00e8ques avec des primitives cryptographiques (LibCrypto, LibTLS), une biblioth\u00e8que pour le travail avec les archives LibArchive, des biblioth\u00e8ques pour la lecture de son et de vid\u00e9o (LibAudio, LibVideo), et la biblioth\u00e8que LibCore offrant un ensemble g\u00e9n\u00e9ral de fonctions utiles telles que la conversion de temps, entr\u00e9e\/sortie et gestion des types MIME.     <\/p>\n<p>Ladybird utilise une architecture multiprocessus, dans laquelle le processus de cr\u00e9ation de l'interface est s\u00e9par\u00e9 des processus charg\u00e9s du traitement du contenu web, de l'envoi de requ\u00eates sur le r\u00e9seau, du d\u00e9codage des images et du stockage des cookies. Les gestionnaires li\u00e9s au d\u00e9codage des images et \u00e0 l'interaction r\u00e9seau sont isol\u00e9s dans des processus distincts pour renforcer l'isolation et la s\u00e9curit\u00e9. Chaque onglet utilise un processus distinct pour le traitement du contenu web, isol\u00e9 du reste du syst\u00e8me. Pour la construction de l'interface sous macOS, AppKit est utilis\u00e9, tandis qu'Android utilise l'API native de la plateforme pour la cr\u00e9ation d'interfaces graphiques, et sur les autres plateformes, Qt est utilis\u00e9. Les principaux standards web sont pris en charge (le navigateur passe les tests Acid3), HTTP\/1.1 et HTTPS. L'interface graphique est con\u00e7ue dans un style classique et prend en charge les onglets.            <\/p>\n<p>Source : <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.2 - 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\/fr\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\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\/fr\/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\udd47Pour poursuivre le d\u00e9veloppement du navigateur Ladybird, il a \u00e9t\u00e9 d\u00e9cid\u00e9 d'utiliser le langage Swift | ProHoster","description":"Les d\u00e9veloppeurs du navigateur exp\u00e9rimental Ladybird ont annonc\u00e9 leur intention d'utiliser le langage de programmation Swift comme principal pour leur projet.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/dlya-prodolzheniya-razrabotki-brauzera-ladybird-resheno-ispolzovat-yazyk-swift","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","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\/fr\/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\/fr\/wp-json\/wp\/v2\/posts\/119309","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=119309"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/119309\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=119309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=119309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=119309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}