Category: التطوير

إعادة التفكير في اختبارات الوظائف: نهج شجرة الاستمرار

2025-03-13

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

أسطورة المهندس 10x: العمل الجماعي يتفوق على البطولة الفردية

2025-03-13
أسطورة المهندس 10x: العمل الجماعي يتفوق على البطولة الفردية

يكشف هذا المقال عن أسطورة "المهندس 10x"، بحجة أن مقياسًا واحدًا لقياس إنتاجية المهندس مضلل ويتجاهل أهمية العمل الجماعي. ويشير الكاتب إلى أن تطوير البرمجيات ليس مسرحًا لأبطال فرديين، بل إن الكفاءة العامة للفريق هي المفتاح. يجب أن تمكّن منظمات الهندسة عالية الأداء حتى المهندسين العاديين من خلق قيمة كبيرة، وأن تُنمّي المزيد من المهندسين المتميزين من خلال تصميم النظام الجيد وثقافة الفريق، بدلاً من الاعتماد المفرط على ما يسمى بـ "العقول المبدعة".

التطوير

مطاردة مُجمِّعات JIT: الوعد الكاذب لتحسين مخابئ السطور المضمنة

2025-03-13
مطاردة مُجمِّعات JIT: الوعد الكاذب لتحسين مخابئ السطور المضمنة

تبحث هذه الورقة في تحسين أداء مُجمِّعات الترجمة المسبقة (AoT) عن طريق إضافة تعديل ثنائي ديناميكي (DBM). قام الباحثون بتنفيذ تحسين مخبئ سطر مضمّن (IC) قائم على DBM في مُجمِّع Hopc AoT JavaScript. ومع ذلك، لم تُظهر التجارب أي تحسين في الأداء. وجدت الدراسة أن تقليل عمليات الوصول إلى الذاكرة لا يُسرّع دائمًا التنفيذ على الهياكل الحديثة، مما يُشكِّك في استراتيجيات التحسين التقليدية. ويخلص إلى أن تحسينات المُجمِّع المُعقّدة لا تستحق الجهد إلا إذا لم يتمكن المعالج من تسريع الكود بنفسه، وهي نتيجة تنطبق على مُجمِّعات AoT وJIT على حدٍ سواء.

سجل تطوير الويب: تحديات التوافق بين الأنظمة الأساسية

2025-03-13
سجل تطوير الويب: تحديات التوافق بين الأنظمة الأساسية

هذا سجل تطوير ويب يوثق إنشاء موقع ويب باستخدام Visual Studio Code على نظام Windows 11. الموقع قيد التطوير، مع محتوى غير متسق وبعض الفقرات عبارة عن ملاحظات فقط. تم إجراء الاختبارات على أجهزة مختلفة، بما في ذلك متصفحي Edge وChrome على نظام Windows 11، ومتصفح Safari على جهاز Mac، ومتصفح Chrome على جهاز Chromebook. التجارب على أجهزة الكمبيوتر المكتبية والمحمولة جيدة، لكن إصدارات iPad Mini والهاتف تعاني من مشاكل توافق وعرض غريب.

نصائح مهنية في مجال التكنولوجيا: خذها بحذر (خاصة من ذوي الخبرة)

2025-03-13
نصائح مهنية في مجال التكنولوجيا: خذها بحذر (خاصة من ذوي الخبرة)

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

التطوير

Xata Agent: خبير PostgreSQL المدعوم بالذكاء الاصطناعي

2025-03-13
Xata Agent: خبير PostgreSQL المدعوم بالذكاء الاصطناعي

Xata Agent هو وكيل ذكاء اصطناعي مفتوح المصدر يراقب قاعدة بيانات PostgreSQL الخاصة بك، ويحدد أسباب المشاكل الجذرية، ويقترح إصلاحات وتحسينات. فكر فيه كموظف SRE من ذوي الخبرة متخصص في Postgres، أصبح الآن جزءًا من فريقك. إنه يراقب السجلات والقياسات، ويقترح ضبط التكوين بشكل استباقي، ويحل مشاكل الأداء (بما في ذلك استخدام وحدة المعالجة المركزية والذاكرة والاتصالات العالية)، ويقدم اقتراحات الفهرسة، ويساعد حتى في عملية التنظيف. يدعم نماذج من OpenAI و Anthropic و Deepseek، ويتم نشر Xata Agent بسهولة عبر Docker. يستخدمه فريق Xata بالفعل يوميًا لإدارة العديد من قواعد بيانات Postgres النشطة. إصدار سحابي قيد التطوير.

التطوير

مصحح أخطاء السفر عبر الزمن من مايكروسوفت: نظرة متعمقة على TTD

2025-03-13
مصحح أخطاء السفر عبر الزمن من مايكروسوفت: نظرة متعمقة على TTD

يُعد برنامج تصحيح أخطاء السفر عبر الزمن (TTD) من مايكروسوفت إطار عمل قويًا لتسجيل البيانات وإعادة تشغيلها في وضع المستخدم، والذي يُمكّن المطورين من تصحيح أخطاء البرامج كما لو كانوا يتنقلون عبر خط زمني. يقوم البرنامج بحقن ملف DLL لالتقاط جميع حالات تنفيذ العملية، وتخزينها في ملف .trace. ويُعد جوهر النظام محرك وقت التشغيل Nirvana، الذي يُقلد تعليمات وحدة المعالجة المركزية للتحكم الدقيق. وحتى مع التحديات مثل عمليات الفاصلة العائمة، ونماذج الذاكرة، وتقليد الأجهزة الطرفية، والرموز التي تُعدّل نفسها بنفسها، يستخدم Nirvana الترجمة الثنائية الديناميكية وتقنيات تخزين البيانات المؤقتة للكود من أجل الكفاءة والدقة. يصف المقال خطأً تم العثور عليه أثناء تصحيح أخطاء ملف PE 32 بت مُشفر باستخدام TTD، مُسلطًا الضوء على ميزة استخدام ملف تتبع TTD نفسه للتصحيح.

تاريخ لطيف للرياضيات: نقاط القوة والضعف

2025-03-13
تاريخ لطيف للرياضيات: نقاط القوة والضعف

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

التطوير مراجعة كتاب

صيغ إحصائية للمبرمجين: ورقة غش

2025-03-13

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

التطوير إحصاء

تحليل النوع الثابت لـ Ruby بدون تعليقات النوع

2025-03-13
تحليل النوع الثابت لـ Ruby بدون تعليقات النوع

طور مهندسو Shopify محللًا جديدًا للنوع الثابت يستنتج معلومات النوع لبرامج Ruby دون الحاجة إلى تعليقات النوع. يستخدم المحلل خوارزمية Sparse Conditional Constant Propagation (SCCP) محسّنة وتتبعًا دقيقًا لتدفق البيانات للتعامل بكفاءة مع تحليل النوع بين الإجراءات، ويكمل التحليل في ثوانٍ حتى بالنسبة للبرامج التي تحتوي على عدد كبير من الفئات. يقدم هذا البحث نهجًا جديدًا لتحسين المُجمعات للغات الديناميكية، ويفتح إمكانيات جديدة لتحسين الأداء في لغات ديناميكية مثل Ruby.

حلقات OODA: تطبيق الاستراتيجية العسكرية على تطوير البرمجيات

2025-03-13
حلقات OODA: تطبيق الاستراتيجية العسكرية على تطوير البرمجيات

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

التطوير حلقة OODA

Ubuntu 25.10 ستشمل أدوات نظام أساسية مُعاد كتابتها بلغة Rust

2025-03-13
Ubuntu 25.10 ستشمل أدوات نظام أساسية مُعاد كتابتها بلغة Rust

أعلن مهندسو Ubuntu عن خطط لاستبدال أدوات النظام الأساسية (مثل ls و cp و mv) بإصدارات حديثة تعتمد على لغة Rust في Ubuntu 25.10. والهدف هو تعزيز الأمان والاستقرار، وليس فقط الأداء. يساعد نظام أنواع Rust ومدقق الاستعارات في التخفيف من نقاط الضعف الأمنية المتعلقة بالذاكرة. وتسهل أداة تسمى `oxidizr` التبديل بين التنفيذات. وعلى الرغم من وجود بعض مشاكل التوافق، إلا أن المشروع يعد بتحسين متانة النظام بشكل عام في إصدارات Ubuntu المستقبلية.

التطوير أدوات النظام

Shadeform توظف مهندس برمجيات أول لـ سوق الحوسبة السحابية GPU

2025-03-13
Shadeform توظف مهندس برمجيات أول لـ سوق الحوسبة السحابية GPU

تعلن شركة Shadeform عن وظيفة شاغرة لمهندس برمجيات أول لبناء قدرات التنسيق والخدمات المُدارة لسوق الحوسبة السحابية GPU الخاص بها. تقدم الشركة موارد حوسبة GPU بأسعار معقولة وموثوقة لشركات Fortune 100، والشركات الناشئة، وأكثر من ذلك. المرشح المثالي سيكون لديه خبرة في برمجة Go، والتنسيق (Kubernetes، Nomad، إلخ)، والحوسبة السحابية (AWS و GCP)، وبنية تحتية GPU/ML. تُقدّم الشركة تعويضًا تنافسيًا، وأسهمًا، وخيارات العمل عن بُعد.

مورفو مفتوحة المصدر: ثورة في تحسين شكل المواد اللينة

2025-03-13
مورفو مفتوحة المصدر: ثورة في تحسين شكل المواد اللينة

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

تحسين خوارزمية أتكنسون للتعتيم: لوحات ألوان عشوائية والخطية

2025-03-13
تحسين خوارزمية أتكنسون للتعتيم: لوحات ألوان عشوائية والخطية

يشرح هذا المنشور خوارزمية أتكنسون المُحسّنة للتعتيم والتي تدعم لوحات ألوان عشوائية والخطية الصحيحة. على عكس الخوارزميات السابقة المحدودة بلوحات ألوان بالأبيض والأسود، فإن هذه الخوارزمية تتعامل مباشرةً مع الصور الملونة، واختيار اللون الأقرب عن طريق حساب المسافة الإقليدية بين كل بكسل وكل لون في لوحة الألوان. بالإضافة إلى ذلك، فهي تتضمن الخطية لحل مشكلة الإخراج شديد السطوع الناتجة عن عدم خطية مساحة ألوان sRGB، وتأخذ في الاعتبار إدراك الإنسان لاختلاف درجات سطوع الألوان. يوفر المنشور أيضًا روابط لموارد ذات صلة، بما في ذلك التنفيذات والأدوات عبر الإنترنت.

مساعد البرمجة Cursor AI: حد ٨٠٠ سطر من التعليمات البرمجية يثير نقاشًا

2025-03-13
مساعد البرمجة Cursor AI: حد ٨٠٠ سطر من التعليمات البرمجية يثير نقاشًا

واجه مستخدم مشكلة مع مساعد البرمجة Cursor AI: توقف عن العمل بعد تجاوز ٧٥٠-٨٠٠ سطر من التعليمات البرمجية. أدت مشاركة المستخدم على Hacker News إلى نقاش حول تنظيم التعليمات البرمجية والبرمجة بمساعدة الذكاء الاصطناعي. اقترح مستخدمون آخرون تقسيم الملفات الكبيرة إلى وحدات أصغر وأكثر وحدة، واستخدام وظيفة "Agent" في Cursor، وتطبيق مبدأ المسؤولية الواحدة لتحسين قابلية صيانة التعليمات البرمجية وكفاءة معالجة الذكاء الاصطناعي.

arXivLabs: التعاون المجتمعي في تطوير ميزات arXiv

2025-03-13
arXivLabs: التعاون المجتمعي في تطوير ميزات arXiv

arXivLabs هو إطار عمل يسمح للمشاركين بتطوير ومشاركة ميزات arXiv الجديدة مباشرة على الموقع الإلكتروني. يتشارك الأفراد والمنظمات المشاركة في قيم arXiv المتمثلة في الانفتاح والمجتمع والتميز وخصوصية بيانات المستخدم. يلتزم arXiv بهذه القيم ولا يتعاون إلا مع الشركاء الذين يلتزمون بها. هل لديك فكرة لمشروع سيفيد مجتمع arXiv؟ تعرف على المزيد حول arXivLabs!

التطوير

نظام تشغيل ترانسبوتر من تصميم مراهق يبلغ من العمر 16 عامًا: ملحمة الحوسبة القديمة من عام 1995

2025-03-13
نظام تشغيل ترانسبوتر من تصميم مراهق يبلغ من العمر 16 عامًا: ملحمة الحوسبة القديمة من عام 1995

في عام 1995، قام مبرمج يبلغ من العمر 16 عامًا ببناء نظام تشغيل مستقل لمعالج ترانسبوتر باستخدام 128 كيلوبايت فقط من ذاكرة الوصول العشوائي. تضمن هذا المشروع الطموح نظام تشغيل أساسي، ومحرر نصوص، ومُجمع Small-C، وجهاز تجميع. قام بتوسيع المُجمع بجد، ليُشغّل في النهاية برامج معقدة مثل برنامج شطرنج من مسابقة IOCCC، وبرنامج تتبع الأشعة. كما تم تطوير برنامج نمذجة ثلاثي الأبعاد. بعد سنوات، عاد المؤلف إلى هذا المشروع، مُفصلًا تحديات استعادة نظام التشغيل، بما في ذلك مشكلات ترتيب البايت، وإدارة الذاكرة، وأخطاء الفاصلة العائمة. وتختتم المقالة بمحاكاة ناجحة لنظام التشغيل، وتقديم تعليمات لإعادة بنائه. تُظهر هذه القصة براعة مثيرة للإعجاب والمثابرة في مواجهة الموارد المحدودة.

التطوير

xlskubectl: إدارة مجموعة Kubernetes الخاصة بك باستخدام جدول بيانات؟

2025-03-13
xlskubectl: إدارة مجموعة Kubernetes الخاصة بك باستخدام جدول بيانات؟

xlskubectl هو مشروع يدمج Google Spreadsheet مع Kubernetes بشكل جريء! يمكنك الآن إدارة مجموعتك من نفس جدول البيانات الذي تستخدمه لتتبع نفقاتك. من خلال الاستفادة من قدرات التحديث المتزايد لواجهة برمجة تطبيقات Kubernetes وقدرات البرمجة النصية لـ Google Spreadsheet، تم تحقيق هذه الاتصال الذي يبدو مجنونًا. على الرغم من أن المؤلفين يبحثون عن تمويل لرفع المشروع إلى مستوى أعلى، إلا أنه إنجاز مثير للإعجاب يدفع إلى التفكير في بدائل ملفات YAML.

التطوير

بروتوكول التعاون C4 من ZeroMQ: نموذج تعاون مفتوح المصدر قابل لإعادة الاستخدام

2025-03-13

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

تصميم تجربة المستخدم بدون مصمم: كيفية إنشاء تجارب رائعة بسرعة

2025-03-12
تصميم تجربة المستخدم بدون مصمم: كيفية إنشاء تجارب رائعة بسرعة

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

التطوير

Zinc: نموذج أولي بسيط بلغة برمجة أنظمة

2025-03-12

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

(sr.ht)

تطور أيقونات PuTTY: من الرسم اليدوي إلى SVG

2025-03-12

تتحدث هذه المقالة عن تطور أيقونات PuTTY من الرسومات اليدوية في التسعينيات إلى نواقل SVG القابلة للتطوير في الوقت الحاضر. قام الكاتب في البداية بإنشاء أيقونات بحجم 32 × 32 بكسل باستخدام محرر أيقونات MSVC، محدودة بمجموعة ألوان 16 لونًا وتقنية العرض في ذلك الوقت. مع مرور الوقت، من أجل التكيّف مع دقة أعلى واحتياجات الأدوات المختلفة، قام الكاتب بتحسين العملية، وأنشأ في النهاية برنامجًا نصيًا يقوم بإنشاء أيقونات تلقائيًا بأحجام وتنسيقات متعددة. وقد بلغ ذلك ذروته في إصدارات SVG، مما حقق قابلية تطوير حقيقية. تظل فلسفة التصميم بسيطة وواضحة، مما يعكس أسلوب PuTTY "القديم الموثوق به"، ولا تزال قيد الاستخدام حتى اليوم.

من بي إينف إلى يو في: ترقيتي لإدارة بيئة بايثون

2025-03-12

سئمت من الإعداد المعقد لبي إينف وبي إكس والأدوات الأخرى؟ تُفصّل هذه التدوينة الانتقال السلس من بي إينف إلى يو في، وهي أداة واحدة تجمع وظائف بيب وبي إينف وبي إكس وأكثر. يُوثّق الكاتب بعناية إلغاء تثبيت بي إينف، وتثبيت يو في، وتثبيت إصدارات بايثون، وإنشاء روابط رمزية، واستخدام `uv tool install` لإدارة الحزم، بما في ذلك حل بديل لتوكس. والنتيجة هي بيئة بايثون مبسطة تُدار بواسطة يو في، مع خطط لحذف ملفات .python-version وتحديث وثائق المشروع.

وداعًا لـ JS المعقد: إنشاء مواقع ويب تفاعلية باستخدام العديد من صفحات HTML الصغيرة

2025-03-12

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

التطوير

fast-png: ترميز وفك تشفير PNG في جافا سكريبت

2025-03-12
fast-png: ترميز وفك تشفير PNG في جافا سكريبت

fast-png هو مُشفّر و مُفكّك تشفير صور PNG مكتوب بالكامل بلغة جافا سكريبت. يُوفر خيارات للتحقق من CRC، والبيانات المُخصّصة للصور، وكتل النصوص. قم بتثبيته عبر npm واستخدم واجهة برمجة التطبيقات البسيطة الخاصة به لقراءة وكتابة صور PNG. مرخص بموجب MIT.

التطوير

التقييم المضمن: تعزيز لإنتاجية المبرمجين

2025-03-12

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

نيوانسد: سياق رسم بياني دقيق للاتصالات لمساعدي ترميز الذكاء الاصطناعي

2025-03-12
نيوانسد: سياق رسم بياني دقيق للاتصالات لمساعدي ترميز الذكاء الاصطناعي

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

التطوير

التاريخ الغريب لتعليقات جافا سكريبت: لماذا تعمل `<!--` و `-->`

2025-03-12

تتناول هذه المقالة التاريخ الغريب لاستخدام `` كتعليقات في جافا سكريبت. في البداية، لضمان التوافق مع المتصفحات القديمة، كان المطورون يضعون أكواد جافا سكريبت الخاصة بهم داخل تعليقات HTML داخل علامات ``. والمثير للدهشة أن المتصفحات الحديثة لا تزال تدعم هذه الصيغة بسبب مشاكل التوافق مع المتصفحات القديمة والتزام لجنة التوحيد بـ"عدم تعطيل الويب". تشرح المقالة كيفية عمل هذه الصيغة ولماذا يجب أن تظهر `-->` في بداية السطر.

التطوير

AudioNimbus: غلاف Rust للصوت المكاني الغامر مع Steam Audio

2025-03-12
AudioNimbus: غلاف Rust للصوت المكاني الغامر مع Steam Audio

AudioNimbus هي مكتبة Rust توفر غلافًا آمنًا وسهل الاستخدام حول مجموعة أدوات الصوت المكاني القوية Steam Audio من Valve. وهي تبسط دمج الصوت ثلاثي الأبعاد الغامر في مشاريع Rust، مع دعم ميزات مثل HRTF و Ambisonics وانتشار الصوت الواقعي (بما في ذلك تخفيف المسافة والانعكاسات) وأكثر من ذلك. تتكون المكتبة من وحدتين: `audionimbus` (غلاف آمن عالي المستوى) و `audionimbus-sys` (روابط تم إنشاؤها تلقائيًا لواجهة برمجة تطبيقات Steam Audio C). تحقق من العرض التوضيحي للبدء السريع!

التطوير
1 2 139 140 141 143 145 146 147 213 214