Category: التطوير

إرغو: خادم IRC حديث مكتوب بلغة Go

2024-12-18
إرغو: خادم IRC حديث مكتوب بلغة Go

Ergo هو خادم IRC حديث مكتوب بلغة Go، مصمم لسهولة الإعداد والاستخدام. يجمع بين ميزات ircd وإطار عمل الخدمات ووظيفة bouncer (إدارة الحسابات المتكاملة، وتخزين السجل، ووظيفة bouncer). يدعم أحدث مواصفات IRCv3 وهو قابل للتخصيص بدرجة عالية من خلال تكوين YAML قابل لإعادة التجزئة. الميزات الرئيسية تشمل الخدمات المتكاملة (NickServ، ChanServ، HostServ)، ودعم TLS/SSL الأصلي، ومصادقة SASL، ودعم LDAP، وميزات أمان وخصوصية متقدمة.

التطوير خادم IRC

إصدار معادل الصوت ذو الخمس نطاقات مفتوح المصدر a5eq.lv2

2024-12-18
إصدار معادل الصوت ذو الخمس نطاقات مفتوح المصدر a5eq.lv2

أصدر ashafq a5eq.lv2، وهو برنامج إضافي لمعادل الصوت ذي الخمس نطاقات مفتوح المصدر من نوع LV2. يحتوي هذا البرنامج الإضافي على رف منخفض، وثلاثة مرشحات ذروة، ورف عالي، مصمم لضبط الصوت بدقة من قبل مهندسي الصوت الهواة والمحترفين. يتميز بمعاملات مرشح عالية الدقة، ومعالجة ستيريو، وواجهة سهلة الاستخدام. وهو متوافق مع أي برنامج مضيف يدعم LV2، مثل Ardour و Audacity، ويتم تثبيته واستخدامه بسهولة عبر سطر الأوامر. يمكن للمستخدمين تقديم المشكلات أو المساهمة في الكود عبر GitHub.

محرر نصوص قابل للتكيف "ad": دمج Vim و Acme

2024-12-18
محرر نصوص قابل للتكيف

ad هو محرر نصوص جديد يجمع بين واجهة تحرير الوضعية من Vim و Kakoune ونهج قابلية التوسعة من Acme في Plan9. يسمح ad للمستخدمين بتنفيذ النصوص ويعمل كساحة لعب لتجربة تنفيذ ميزات محرر النصوص المختلفة. حاليًا، ad مستقر بما فيه الكفاية ومكتمل الميزات بما يكفي لتجربته، على الرغم من أن الوثائق قليلة وقد توجد أخطاء. فلسفة تصميم ad تجمع بين تحرير الوضعية من Vim و mini-buffer من Emacs وأوامر التحرير وقابلية التوسعة من Acme، بهدف إنشاء بيئة تحرير مريحة تدعم التفاعل المباشر مع الأدوات والبرامج الخارجية.

توليد نسيج سريع: البرنامج التعليمي الخاص بنسيج XOR

2024-12-18

يشرح هذا البرنامج التعليمي كيفية إنشاء نسيج XOR، وهو نسيج بسيط يتم إنشاؤه باستخدام عملية XOR لإحداثيات x و y لكل بكسل. على الرغم من أنه ليس مثاليًا للألعاب أو الفن، إلا أنه مثالي لاختبار مُخطيطات القوام. يوضح المقال عملية XOR، ويناقش تأثير حجم النسيج على سطوع اللون، ويوضح كيفية إنشاء أنسجة مماثلة باستخدام عاملَي AND و OR. كما يتم تقديم مثال على نسيج ثلاثي الأبعاد باستخدام XOR.

dLine: أداة تقويم في المحطة الطرفية لإدارة الجدول الزمني بكفاءة

2024-12-18
dLine: أداة تقويم في المحطة الطرفية لإدارة الجدول الزمني بكفاءة

dLine هي أداة سطر أوامر تعرض البيانات المهمة بتنسيق تقويم مباشرةً داخل محطتك الطرفية. تراقب التواريخ المهمة، وتبسط إضافة الأحداث عبر واجهات برمجة التطبيقات، وتحسب الفترات الزمنية لأنواع مختلفة من الأحداث. صُممت dLine للمطورين، فهي تبسط إدارة الأحداث والتنقل في الجدول الزمني دون الحاجة إلى مغادرة المحطة الطرفية. تتميز بمشاهد ديناميكية وثابتة، وآلة حاسبة للأحداث، وقدرات قوية لإدارة البيانات، بما في ذلك إضافة الأحداث، وحذفها، وعرضها، وتنظيفها. كما تدعم dLine مخططات الألوان المخصصة، وترجمات المستخدمين، والتكامل مع تقويم Google.

OpenAuth: خادم OAuth 2.0 عالمي ومُدار ذاتيًا

2024-12-17
OpenAuth: خادم OAuth 2.0 عالمي ومُدار ذاتيًا

OpenAuth هو مزود مصادقة عالمي، قائم على المعايير، ومفتوح المصدر. يمكن نشره كخدمة مستقلة أو دمجها في تطبيقات موجودة، وهو يعمل مع أي إطار عمل وينفذ على Node.js و Bun و AWS Lambda أو Cloudflare Workers. بالتوافق مع مواصفات OAuth 2.0، يوفر OpenAuth واجهة مستخدم قابلة للتخصيص مع سمات مُصممة. على عكس معظم حلول المصادقة مفتوحة المصدر التي تأتي على شكل مكتبات، OpenAuth هو خادم مركزي مصمم لتسهيل الإدارة الذاتية على بنيتك التحتية. يتجاهل عمدًا إدارة المستخدمين، وبدلاً من ذلك يوفر وظائف استدعاء للبحث/إنشاء المستخدمين المخصصين. تخزين البيانات ضئيل (رموز التحديث، إلخ) باستخدام مخزن KV بسيط (Cloudflare KV، DynamoDB). واجهة مستخدم مُعدة مسبقًا متاحة، لكن يمكنك تخصيصها أو استبدالها بالكامل. تم إنشاء OpenAuth بواسطة فريق SST، ويسهل عملية المصادقة لتطبيقاتك.

IncludeOS: تشغيل التطبيقات في السحابة بدون أي تكلفة إضافية

2024-12-17

IncludeOS هو نظام تشغيل خفيف الوزن يسمح لك بتشغيل تطبيقك في السحابة بدون نظام تشغيل تقليدي. فهو يدمج وظائف نظام التشغيل مباشرة في تطبيقك، مما يخلق آلات افتراضية عالية الأداء، آمنة، وفعالة من حيث الموارد. تبدأ تطبيقات IncludeOS في غضون عشرات الملي ثانية، ولا تتطلب سوى بضعة ميغابايت من مساحة القرص والذاكرة. تسهل أدوات سطر الأوامر البسيطة عملية البناء والتشغيل، وهناك العديد من الأمثلة والوثائق لمساعدة المطورين على البدء بسرعة.

SeleniumBase: إطار عمل قوي لأتمتة الويب

2024-12-17
SeleniumBase: إطار عمل قوي لأتمتة الويب

SeleniumBase هو إطار عمل قوي بلغة بايثون لأتمتة الويب، والاختبار، وتجاوز اكتشاف البوتات. يعتمد على Selenium WebDriver، ويدمج مع أدوات تشغيل الاختبارات مثل pytest، مما يوفر بناء جملة نظيفًا وميزات واسعة النطاق مثل الانتظار التلقائي لعناصر الصفحة، وإنشاء تقارير الاختبار، ولوحة معلومات، ودعم متصفحات وأنظمة تشغيل متعددة. يتضمن SeleniumBase أيضًا أوضاعًا مثل وضع UC ووضع CDP لتحسين السرية والموثوقية، بالإضافة إلى أمثلة ووثائق شاملة للتطبيق السريع.

Cerbos تعتمد تقنية CRDTs لبناء بيئة لعب تعاونية

2024-12-17
Cerbos تعتمد تقنية CRDTs لبناء بيئة لعب تعاونية

بَنَت شركة Cerbos بيئة تطوير متكاملة وبيئة اختبار تعاونية تُسمى "Playground" لتبسيط منطق التفويض المعقد. ولتفعيل التعاون السلس، تستخدم تقنية أنواع البيانات المُكررة الخالية من التعارضات (CRDTs)، والتي تُحل تلقائيًا التعارضات في الأنظمة الموزعة. وتستكشف المقالة تقنية CRDTs، وتُقارن مكتباتها الشائعة مثل Yjs وAutomerge، وتناقش التحديات وإمكانيات بناء CRDT مخصص. وتُدمج Cerbos تقنية CRDTs مع بنية back-end for front-end (BFF)، باستخدام WebSockets لنقل البيانات وIndexedDB للبقاء المحلي، مما يخلق منصة تعاونية قوية. كما تُعالج التحديات المتعلقة بالتعاون العالمي واستمرارية البيانات.

جعل Rust غير الآمن أكثر أمانًا قليلاً: أدوات للتحقق من الرموز غير الآمنة، بما في ذلك المكتبات في C و C++

2024-12-17
جعل Rust غير الآمن أكثر أمانًا قليلاً: أدوات للتحقق من الرموز غير الآمنة، بما في ذلك المكتبات في C و C++

تنبع شعبية Rust من قدرتها على القضاء على أخطاء الذاكرة وأخطاء التزامن في وقت التجميع، لكن كتل الرمز `unsafe` الخاصة بها يمكن أن تتجاوز هذه الفحوصات. تستكشف هذه المقالة أدوات للتحقق من رمز Rust غير الآمن، بما في ذلك الرمز الذي يتم استدعاؤه من مكتبات C أو C++. وهي تقدم أدوات الكشف عن الأخطاء في وقت التشغيل - مُصححات - وMiri، وهو مُفسّر يجد السلوك غير المعروف بشكل حتمي. تكتشف المُصححات الوصول إلى الذاكرة خارج الحدود، وسباقات البيانات، وأكثر من ذلك، بينما يوفر Miri تقارير أخطاء أكثر دقة مع شظايا من الرمز. ومع ذلك، لا يدعم Miri حاليًا الرمز الذي يتم استدعاؤه عبر FFI من C/C++، مما يتطلب استخدام مُصححات مُجمع C/C++ في مثل هذه الحالات. تعمل هذه الأدوات على تحسين أمان وموثوقية رمز Rust، حتى عند التعامل مع رمز `unsafe` أو التفاعل مع مكتبات C/C++.

التطوير أخطاء الذاكرة

BYOJS: تبني جافا سكريبت الأصلي لتطوير الويب

2024-12-17

يدعم مشروع BYOJS بناء تطبيقات الويب باستخدام جافا سكريبت الأساسية، بدلاً من الاعتماد على أطر عمل ضخمة. على الرغم من شعبية الأطر واللغات مثل TypeScript، يجادل BYOJS بأن بناء تطبيقات ويب فعالة باستخدام لغة JS الأساسية هو فن ضائع. يشجع على استخدام مكتبات فضفاضة الاقتران بدلاً من أطر عمل مترابطة بإحكام، والدعوة لاختيار أداة أقل قوة لإنجاز المهمة، مع إعطاء الأولوية للرمز المختصر. يوفر المشروع أدوات مساعدة مفيدة مثل واجهة برمجة تطبيقات تخزين بسيطة للقيمة الأساسية، وباعث أحداث غير متزامن، وملفوفة نموذجية، وأكثر من ذلك. جميع الرموز مرخصة بموجب ترخيص MIT.

اختراق في أمن الشبكة: محاصرة المتسللين في "شبكة جهنم"

2024-12-17
اختراق في أمن الشبكة: محاصرة المتسللين في

طور باحثون في فريق SensorFu بجامعة أولو نظامًا جديدًا للدفاع عن أمن الشبكة مستوحى من تقنية LaBrea tarpit. يقوم النظام باعتراض طلبات ARP وتأخير استجابات SYN-ACK، مما يخلق عددًا كبيرًا من الأجهزة الظاهرية على الشبكة لإرباك المتسللين. هذا يجبر المهاجمين على إضاعة وقت كبير في تحديد الأجهزة الحقيقية، مما يمنح المسؤولين وقتًا بالغ الأهمية لإصلاح الثغرات الأمنية. أظهرت الاختبارات أن النظام يمدد أوقات الفحص لساعات، مما يقلل بشكل كبير من معدلات نجاح الهجمات. يُعد هذا النظام خفيف الوزن، وكفؤ، وسهل النشر، ويوفر حماية شبكة قوية للمنظمات من جميع الأحجام.

بروتوكول Surfer: إطار عمل مفتوح المصدر للتحكم في بياناتك الشخصية

2024-12-17
بروتوكول Surfer: إطار عمل مفتوح المصدر للتحكم في بياناتك الشخصية

بروتوكول Surfer هو إطار عمل مفتوح المصدر يُمكّن المستخدمين من تصدير وإنشاء تطبيقات بناءً على بياناتهم الشخصية. يعالج هذا الإطار مشكلة عزل البيانات عبر العديد من المنصات، حيث يوفر حلاً يتألف من تطبيق سطح مكتب لتصدير البيانات من تطبيقات وخدمات متنوعة، بالإضافة إلى مجموعة أدوات تطوير برمجيات Python (SDK) لبناء تطبيقات باستخدام هذه البيانات. يمكن للمستخدمين الاستفادة من بروتوكول Surfer لإنشاء نماذج ذكاء اصطناعي مخصصة، واستعادة السيطرة على بياناتهم من شركات التكنولوجيا الكبرى، أو ترك إرث رقمي.

Hooklistener: أداة تصحيح أخطاء واختبار الويب هوك المرئية

2024-12-17
Hooklistener: أداة تصحيح أخطاء واختبار الويب هوك المرئية

Hooklistener هي أداة عبر الإنترنت لتصور و تصحيح أخطاء واختبار Webhooks. وهي توفر فحص حمولة البيانات في الوقت الفعلي، و إمكانيات الاختبار المحلي، و الجدولة المخصصة، و التنبيهات القابلة للتنفيذ، و ميزات التعاون الجماعي. يمكن للمستخدمين بسهولة إعداد نقاط النهاية، واستقبال وتحليل Webhooks، وأتمتة سير العمل باستخدام المهام المجدولة. يوفر Hooklistener خططًا مجانية ومدفوعة لتلبية الاحتياجات المختلفة، مما يُمكّن المطورين من إدارة و تصحيح أخطاء Webhooks بكفاءة أكبر.

التطوير الاختبار

تحدي التعرف الضوئي على الحروف: رقمنة مذكرات سان سيمون

2024-12-17

أمضى الكاتب عدة أسابيع في استخدام تقنية التعرف الضوئي على الحروف (OCR) لرقمنة نسخة من أواخر القرن التاسع عشر من مذكرات سان سيمون الفرنسية التي تعود إلى القرن الثامن عشر. يحتوي هذا العمل الضخم المكون من 45 مجلداً على أكثر من 3 ملايين كلمة، وهو متاح على الإنترنت كصور، لكنه يصعب قراءته. كان الهدف هو إنشاء نسخة نصية قابلة للقراءة والبحث والنسخ. واجهت التحديات صعوبة جودة الصور وتحليل المناطق المختلفة للصفحة (العناوين، النص الرئيسي، التعليقات الهامشية، الحواشي السفلية، إلخ). تم استخدام واجهة برمجة تطبيقات Google Vision لـ OCR، مع برنامج Python لمعالجة النتائج لتحديد وفصل النص من المناطق المختلفة. وبالرغم من عدم قدرة نماذج اللغة الكبيرة (LLMs) على التعامل بشكل موثوق مع إشارات الحواشي السفلية، فقد قام الكاتب بتحسين البرنامج وأضاف مراجعة يدوية، مما أدى إلى إصدار المجلد الأول.

بايب جيت: وكيل خفيف الوزن ومستضاف ذاتيًا - بديل ngrok الاقتصادي الخاص بك

2024-12-17
بايب جيت: وكيل خفيف الوزن ومستضاف ذاتيًا - بديل ngrok الاقتصادي الخاص بك

بايب جيت هو وكيل خفيف الوزن ومستضاف ذاتيًا، تم إنشاؤه باستخدام FastAPI، مصمم كبديل اقتصادي لـ ngrok. يسمح لك بعرض خوادم الخاصة بك المحلية على الإنترنت، مما يوفر طريقة بسيطة لإنشاء أنفاق من جهازك المحلي إلى العالم الخارجي. إنه أداة ممتازة للمطورين الذين يرغبون في فهم كيفية عمل خدمات النفق مثل ngrok داخليًا أو يحتاجون إلى بديل قابل للتخصيص يُستضاف على بنيته التحتية الخاصة. الميزات الرئيسية تتضمن الاستضافة الذاتية، والاتصالات الفريدة، وإمكانية التخصيص، وتصميم خفيف الوزن، وسهولة التعلم. التثبيت سهل، عبر git clone أو pip.

Bruin: بناء خطوط أنابيب البيانات باستخدام SQL و Python

2024-12-17
Bruin: بناء خطوط أنابيب البيانات باستخدام SQL و Python

Bruin هي أداة قوية لأنابيب البيانات تجمع بين استخراج البيانات، وتحويل البيانات باستخدام SQL و Python، والتحقق من جودة البيانات في إطار عمل واحد. تعمل مع منصات البيانات الرئيسية وتعمل على جهازك المحلي، أو مثيل EC2، أو GitHub Actions. تشمل الميزات الرئيسية استخراج البيانات، وتحويلات SQL و Python، والتحقق من جودة البيانات، وقوالب Jinja، والتحقق من النهاية إلى النهاية، ودعم بيئات متعددة. يتم تعريف خطوط الأنابيب بسهولة باستخدام ملف pipeline.yml بسيط.

SpiceNice: إطلاق قاعدة بيانات مفتوحة المصدر للتوابل الطهيّة

2024-12-17
SpiceNice: إطلاق قاعدة بيانات مفتوحة المصدر للتوابل الطهيّة

SpiceNice هو موقع إلكتروني جديد مفتوح المصدر يوفر قاعدة بيانات شاملة للتوابل الطهيّة. يقدم معلومات مفصلة عن كلّ توابل، بما في ذلك اسمها النباتي، واستخداماتها الطهيّة، ومنشأها، بالإضافة إلى معلومات عن النباتات المُقابلة. تمّ بناؤه باستخدام Strapi (الخلفية)، وPostgreSQL (قاعدة البيانات)، وAstro (واجهة المستخدم)، ويهدف SpiceNice إلى أن يصبح موردًا أساسيًا للطهاة، وعلماء الأحياء، والمزارعين، وهواة التوابل. تشمل الخطط المستقبلية واجهة برمجة تطبيقات ويب، ودعمًا متعدد اللغات، ومنتدى مجتمعي.

التطوير توابل

احتفال Discourse بعشر سنوات من بناء مجتمعات الإنترنت

2024-12-17
احتفال Discourse بعشر سنوات من بناء مجتمعات الإنترنت

احتفل برنامج Discourse، وهو برنامج منتدى مفتوح المصدر، بالذكرى السنوية العاشرة له في 26 أغسطس 2024. منذ إطلاقه برؤية لرفع مستوى الخطاب على الإنترنت، نما من فريق صغير مكون من أربعة أفراد إلى أكثر من 100 موظف في 25 دولة. تضم المنصة أكثر من 20,000 مجتمع، و 107 مليون موضوع، وحوالي 1.65 مليار منشور. تضمن التطوير المستمر إضافة 49 إضافة، وميزات دردشة، وأدوات مدعومة بالذكاء الاصطناعي للإشراف وتحسين تجربة المستخدم. يُعد هذا النجاح دليلاً على طبيعته مفتوحة المصدر، والتزامه بردود أفعال المستخدمين، وتفاني فريقه.

Langfuse: منصة هندسة LLM مفتوحة المصدر تبسط التطوير

2024-12-17
Langfuse: منصة هندسة LLM مفتوحة المصدر تبسط التطوير

Langfuse هي منصة هندسة LLM مفتوحة المصدر مصممة لتبسيط تطوير ونشر تطبيقات نماذج اللغة الكبيرة (LLM). وهي توفر ميزات مثل قابلية ملاحظة LLM، والمقاييس، والتقييمات، وإدارة المطالبات، وملعبًا، ومجموعات بيانات، وتتكامل بسلاسة مع أدوات مثل LlamaIndex وLangchain وOpenAI SDK وLiteLLM. يمكن للمطورين استخدام Langfuse لمراقبة أداء LLM، وإدارة المطالبات، وتقييم فعالية النموذج، وفي النهاية تسريع تطوير تطبيقات LLM.

التطوير منصة تطوير

برامج ثابتة مفتوحة المصدر: الضرورة والخيارات الاستراتيجية

2024-12-17

تتناول هذه المقالة ضرورة البرامج الثابتة مفتوحة المصدر. يجادل الكاتب بأن البرامج الثابتة، كبرنامج للتحكم في الأجهزة، يجب أن تلتزم بمبادئ البرمجيات الحرة. لا يتعلق الأمر بالحرية فقط، بل يرتبط أيضًا بمصالح المستخدمين العملية. قد تحد البرامج الثابتة غير الحرة من وظائف الأجهزة، وتخفي ثغرات الأمان، بل وقد تمنع المستخدمين من إصلاح مشاكل الأمان. تحلل المقالة وجهتي نظر: إحداهما تعتبر البرامج الثابتة مفتوحة المصدر مرغوبة ولكنها ليست ضرورية؛ والأخرى تدعو إلى أن تكون جميع برمجيات النظام مفتوحة المصدر. يميل الكاتب إلى الأول، معتقدًا أن إعطاء الأولوية لحرية نواة نظام التشغيل أكثر أهمية، لكنه يؤكد في الوقت نفسه على فوائد البرامج الثابتة مفتوحة المصدر، ويناقش كيفية تعزيزها من خلال وسائل استراتيجية.

فريق تطوير مكون من شخص واحد يصل إلى مليوني مستخدم

2024-12-17

ناديا أودونايو، مهندسة برمجيات، طورت تطبيق StoryGraph، وهو تطبيق مجتمع للقراءة يضم أكثر من مليون مستخدم، كمطورة فردية. يساعد StoryGraph المستخدمين على تتبع قراءاتهم ويقترح الكتب بناءً على الحالة المزاجية والتفضيلات. هذه القصة الملهمة تبرز تصميم ناديا، ومهاراتها التقنية، و«إطار العمل الفردي» الذي استخدمته لتحقيق هذا الإنجاز المذهل. تقدم رؤى قيّمة للمطورين الأفراد الطموحين.

الجبر الخطي يُعزز محرر الرسوم التخطيطية التفاعلي

2024-12-17
الجبر الخطي يُعزز محرر الرسوم التخطيطية التفاعلي

استخدم إيفان شوبين، أثناء تطوير محرر الرسوم التخطيطية التفاعلي الخاص به Schemio، عمليات المصفوفات من الجبر الخطي بذكاء لحل سلسلة من المشاكل الصعبة. في البداية، كان Schemio يدعم فقط إنشاء عناصر رسومية بسيطة والتلاعب بها. ومع ذلك، عندما تم تقديم هيكل هرمي، أصبحت تحويلات الإحداثيات معقدة. استخدم المؤلف في البداية نهجًا تكراريًا، لكنه واجه مشاكل في القياس ونقاط المحور. في النهاية، استخدم شوبين المصفوفات لتمثيل التحويلات (الترجمة، والدوران، والتغيير في الحجم)، باستخدام ضرب المصفوفات لتحويل الإحداثيات، واستخدام عكس المصفوفات بذكاء لحل مشكلة تحويل الإحداثيات من العالم إلى الإحداثيات المحلية. بالإضافة إلى ذلك، عالجت عمليات المصفوفات التعديل الدقيق لموضع ودوران الكائن عند نقله داخل التسلسل الهرمي، مما يمنع القفزات غير المتوقعة. رمز مصدر Schemio مفتوح المصدر ومتوفر على GitHub.

Tig: واجهة نصية لـ Git

2024-12-17

Tig هي واجهة نصية تعتمد على ncurses لـ Git، تعمل بشكل أساسي كمتصفح لمستودعات Git. كما تساعد في مرحلة التغيير للالتزام على مستوى الكتل، وتعمل كأداة تصفح لنتائج أوامر Git المختلفة. تتوفر تعليمات التثبيت، وملاحظات الإصدار التي توضح الميزات الجديدة وإصلاحات الأخطاء، بالإضافة إلى موارد مثل الصفحة الرئيسية، والوثائق، وقسم الأسئلة والأجوبة على Stack Overflow. يمكن تقديم تقارير الأخطاء وطلبات الميزات من خلال متتبع المشكلات أو عبر البريد الإلكتروني.

مطوران ينشئان لعبة برمجة خيالية: Droste's Lair

2024-12-17
مطوران ينشئان لعبة برمجة خيالية: Droste's Lair

قضى مطوران أسبوعين في تطوير Droste's Lair، وهي بيئة برمجة لعبة خيالية. يقوم اللاعبون ببناء و عد الهياكل الرياضية من خلال تفاعلات سحب وإفلات بديهية، باستخدام آلية "amb" للتنفيذ المتفرّع والرجوع الذاتي. تتمحور اللعبة حول موضوع السيوف والسحر، وتقدم تحديات مثل عكس عناصر القائمة، وتوليد جميع مجموعات أوراق اللعب، وحساب طرق تغطية لوح الدومينو. تجمع Droste's Lair بذكاء بين عناصر البرمجة والألعاب، مما يوفر طريقة جديدة وجذابة لتعلم مفاهيم البرمجة والرياضيات.

فالهالا: إعادة هيكلة جافا الرائعة تقترب من الانتهاء

2024-12-17

بعد رحلة استمرت عقدًا من الزمن، يقترب مشروع فالهالا، وهو إعادة هيكلة طموحة لجافا، من الانتهاء. ويهدف فالهالا إلى سد الفجوة بين الفئات والأنواع البدائية، حيث يقدم فئات قيمة توفر سهولة ترميز الفئات مع أداء الأنواع البدائية، مما ينتج عنه تخطيط ذاكرة مسطح ومضغوط. في مؤتمر ديفوكس 2024، قدم Brian Goetz، كبير مهندسي لغة جافا، تحديثًا شاملاً، مسلطًا الضوء على ميزات رئيسية مثل فئات القيمة، والأنواع المقيدة باللاشيء، وتحليل التعيين المحدد المحسن، والإعداد الصارم.

التطوير فئات القيمة

إطار عمل Forked الجديد من Swift يبسط إدارة البيانات المشتركة

2024-12-17
إطار عمل Forked الجديد من Swift يبسط إدارة البيانات المشتركة

أطلق المطور درو مكورماك إطار عمل Swift الجديد Forked، والذي يهدف إلى تبسيط إدارة البيانات المشتركة على أجهزة واحدة ومتعددة. مستوحى من آلية الدمج في Git، يدعم Forked إنشاء الفروع والدمج داخل ملف واحد، مما يحقق الاتساق النهائي. لا يحتاج إلى سجل كامل للتغييرات، بل فقط ما يكفي من الإصدارات للدمج ثلاثي الاتجاهات. يستخدم Forked الهياكل بدلاً من الفئات، ويدعم Codable، ويتكامل بسلاسة مع خدمات السحابة مثل iCloud. كما أنه يعالج مشاكل التنافس الناتجة عن الوصول المتزامن، ويدعم منطق الدمج المخصص أو خوارزميات CRDT المدمجة. يتم تحقيق مزامنة CloudKit ببضع سطور من التعليمات البرمجية.

مُجمِّع جديد من CHICKEN Scheme: CRUNCH - مُجمِّع Scheme ثابت النوع

2024-12-17

تُقدّم هذه المقالة CRUNCH، وهو مُجمِّع جديد لمجموعة فرعية ثابتة النوع من لغة البرمجة Scheme. وهو مبني على نظام CHICKEN Scheme، ويُحوّل شفرة Scheme إلى شفرة C99 قابلة للنقل. يهدف CRUNCH إلى توفير مُجمِّع Scheme عالي الأداء وخفيف الوزن، لمعالجة أوجه القصور في أنظمة Scheme الحالية فيما يتعلق بالأداء وقابلية النقل. وهو مناسب بشكل خاص لتطوير الألعاب، وإنشاء الآلات الافتراضية، وبرمجة الأنظمة المدمجة. على الرغم من أن CRUNCH لديه قيود في ميزات لغة Scheme المدعومة، إلا أنه يحقق توليد شفرة فعال من خلال الاستدلال على الأنواع والعديد من عمليات التحسين، ليتكامل بسلاسة مع نظام CHICKEN Scheme.

مايكروسوفت تطلق مكتبة Multilspy مفتوحة المصدر: تبسيط تطوير عملاء خوادم اللغات

2024-12-17
مايكروسوفت تطلق مكتبة Multilspy مفتوحة المصدر: تبسيط تطوير عملاء خوادم اللغات

أصدرت مايكروسوفت مكتبة بايثون مفتوحة المصدر تُدعى Multilspy، وهي مصممة لتبسيط عملية بناء التطبيقات حول خوادم اللغات. تدعم Multilspy لغات متعددة (Java وRust وC# وPython)، وتُسهّل عملية تنزيل ملفات الخادم الثنائية، وإعداد/إزالة خوادم اللغات، وتوفر واجهة برمجة تطبيقات سهلة الاستخدام. تتفاعل مع خوادم اللغات للحصول على نتائج التحليلات الثابتة، مثل إكمال التعليمات البرمجية، وتعريفات الرموز، والمراجع – وهي أمور بالغة الأهمية في تقنيات توليد التعليمات البرمجية بمساعدة الذكاء الاصطناعي مثل Monitor-Guided Decoding.

أفضل الممارسات لتمثيل الميراث في قواعد بيانات SQL Server

2024-12-17
أفضل الممارسات لتمثيل الميراث في قواعد بيانات SQL Server

تستعرض هذه المقالة أفضل الممارسات لتمثيل علاقات الميراث في قواعد بيانات SQL Server. وتُقدّم ثلاثة أساليب شائعة: الميراث من جدول واحد، والوراثة من جداول ملموسة، والوراثة من جداول الفئات. ويتم شرح مزايا وعيوب كل منها بالتفصيل. الوراثة من جدول واحد بسيطة، لكنها تعاني من مشاكل في قابلية التوسع وسلامة البيانات؛ وتُحلّ الوراثة من جداول ملموسة هذه المشاكل، لكنها تؤدي إلى استعلامات غير فعالة؛ أما وراثة جداول الفئات فتُوازن بين البساطة والكفاءة، مما يجعلها الخيار المفضل في معظم الحالات. كما يتم مناقشة أساليب بديلة تستخدم JSON للحقول الخاصة بالأنواع الفرعية وتصميم قواعد البيانات المُعيارية.

1 2 206 207 208 210 212 213 214