<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss.xsl" type="text/xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>عمر البيك</title><description>مهندس برمجيات · مصمّم منتجات · مستشار تحوّل رقمي</description><link>https://omaralbeik.com</link><language>ar</language><atom:link href="https://omaralbeik.com/ar/rss.xml" rel="self" type="application/rss+xml"/><atom:link href="https://omaralbeik.com/en/rss.xml" rel="alternate" type="application/rss+xml" hreflang="en" title="Omar Albeik"/><lastBuildDate>Mon, 03 Aug 2026 00:00:00 GMT</lastBuildDate><item><title>ربط libVLC مباشرةً من Swift 6</title><link>https://omaralbeik.com/ar/blog/binding-libvlc-directly-from-swift-6</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/binding-libvlc-directly-from-swift-6</guid><description>احتاج تطبيق IPTV إلى «صورة داخل صورة»، وخطُّ VLCKit الذي كان يقوم عليه لا يملكها. ملاحظات في امتلاك محرّك C بدل استهلاكه — عزلُ المؤشّرات، وأعمارٌ لا يفحصها شيء، ومجموعةُ رقعٍ مرتّبة على شيفرة VLC نفسها، وما كلّفه ذلك.</description><pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate><category>swift</category><category>open-source</category><category>software</category><category>engineering</category></item><item><title>اجعل لإضافاتك في Swift فضاء أسماء</title><link>https://omaralbeik.com/ar/blog/protocol-oriented-extensions</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/protocol-oriented-extensions</guid><description>تجاوزت SwifterSwift خمسمئة إضافة فبدأت تصطدم بمكتباتٍ أخرى. فالعضو الذي تضيفه إلى نوعٍ لا تملكه ليس محصورًا في مكتبتك — بل هو عامٌّ في المشروع كلّه، ولا يبلغه اسم وحدتك.</description><pubDate>Sat, 19 Feb 2022 00:00:00 GMT</pubDate><category>swift</category><category>api-design</category><category>open-source</category><category>software</category><category>engineering</category></item><item><title>استخدم SSH بدل HTTPS مع Git</title><link>https://omaralbeik.com/ar/blog/enforce-ssh-instead-of-http-for-git-operations</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/enforce-ssh-instead-of-http-for-git-operations</guid><description>أوقفت GitHub قبول كلمات المرور مع Git عبر HTTPS في آب 2021. و‏credential helper يريحك من الكتابة لا من انتهاء الصلاحية؛ أما المفتاح فيريحك منهما معًا، ويطال روابط HTTPS التي لم تكتبها أنت.</description><pubDate>Mon, 23 Aug 2021 00:00:00 GMT</pubDate><category>tooling</category><category>software</category><category>engineering</category></item><item><title>ثلاث مقارنات تفعلها المكتبة القياسية عنك</title><link>https://omaralbeik.com/ar/blog/let-the-standard-library-compare</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/let-the-standard-library-compare</guid><description>إيجاد أول مطابق، والترتيب بأكثر من مفتاح، وفحص فهرس في مدًى. الصيغة المكتوبة باليد أطول في الثلاث، وأبطأ في اثنتين منها.</description><pubDate>Mon, 16 Dec 2019 00:00:00 GMT</pubDate><category>swift</category><category>software</category><category>engineering</category></item><item><title>مراقبات الخصائص تعطيك القيمة القديمة والجديدة أصلًا</title><link>https://omaralbeik.com/ar/blog/use-property-observers</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/use-property-observers</guid><description>يأخذ كلٌّ من willSet و‏didSet وسيطًا، ولكلٍّ منهما اسم افتراضي، فتسميته صراحةً زيادةٌ في الغالب. أما القواعد المتعلقة بمتى لا تعمل فأهمّ.</description><pubDate>Fri, 06 Dec 2019 00:00:00 GMT</pubDate><category>swift</category><category>software</category><category>engineering</category></item><item><title>الـ typealias يقبل وسيطًا نوعيًّا</title><link>https://omaralbeik.com/ar/blog/generics-in-typealias</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/generics-in-typealias</guid><description>تسمّي معالج الإكمال مرةً واحدة ثم تكتبه Handler&lt;Post&gt; في كل موضع. يعطيك ذلك وضوحًا وموضعًا واحدًا تغيّر فيه التوقيع. ولا يعطيك أمانًا نوعيًّا.</description><pubDate>Thu, 05 Dec 2019 00:00:00 GMT</pubDate><category>swift</category><category>api-design</category><category>software</category><category>engineering</category></item><item><title>متى تستعمل subscript آمنًا للمجموعات</title><link>https://omaralbeik.com/ar/blog/safe-collection-subscript</link><guid isPermaLink="true">https://omaralbeik.com/ar/blog/safe-collection-subscript</guid><description>الإضافة تحوّل انهيار الخروج عن الحدود إلى nil. وهذا مفيد حين يأتي الفهرس من خارج شيفرتك، ويخفي خطأً منطقيًّا حين لا يكون كذلك.</description><pubDate>Fri, 12 Jul 2019 00:00:00 GMT</pubDate><category>swift</category><category>api-design</category><category>software</category><category>engineering</category></item></channel></rss>