Hooks: ثورة نمط البرمجة وطريق التقدم في التمويل اللامركزي
تعد Hooks نمط برمجة يسمح للمطورين بإدخال كود مخصص في مسار تنفيذ النظام أو التطبيق. من خلال وظائف أو كتل كود مسبقة التعريف، يمكن للمطورين توسيع وتخصيص وظائف البرنامج دون الحاجة إلى تعديل الكود الأصلي. يتم استخدام هذا النمط على نطاق واسع في أنظمة التشغيل والأطر والمكتبات وتطوير الويب وأنظمة المكونات الإضافية وغيرها من المجالات.
استخدام Hooks يزيد من قابلية التوسع والتخصيص للبرامج. لا يحتاج المطورون إلى تعديل الكود الأصلي لكل متطلب جديد، مما يحافظ على وضوح واستقرار الكود. هذه الطريقة الأنيقة في التوسع تجعل Hooks نموذج برمجة مهم في تصميم البرمجيات.
من الجدير بالذكر أن البرمجة الموجهة للجوانب (AOP) غالبًا ما تقارن ببرمجة Hook. تهدف AOP إلى تحقيق تجزئة الاهتمامات العرضية، وهي أيضًا تكرس جهودها لتعزيز أو تعديل الوظائف دون تغيير المنطق التجاري الرئيسي. يمكن اعتبار AOP كنوع من البرمجة Hook على مستوى تجريدي أعلى.
في يونيو 2023، أصدرت Uniswap مسودة الورقة البيضاء V4، والتي قدمت ميزة Hooks المهمة. على الرغم من أن Hooks قد تم استخدامها على نطاق واسع في أنظمة التمويل Web2 لتلبية احتياجات التخصيص وقابلية التوسع، إلا أن Uniswap أدخلتها في مجال التمويل اللامركزي، مما يمثل سابقة جديدة.
تعتبر Hooks في Uniswap V4 عقودًا خارجية أنشأها المطورون، يمكن ربطها عند إنشاء تجمع السيولة. بعد ذلك، سيقوم تجمع السيولة باستدعاء هذه العقود Hook لأداء عمليات محددة في مراحل حياة مختلفة، مما يوفر مستوى عالٍ من التخصيص. يتيح هذا للمطورين تلبية احتياجات التداول الأكثر تخصيصًا وبناء تطبيقات DApp الأكثر ثراءً بالميزات. على سبيل المثال:
تعديل الرسوم الديناميكية
أمر حد على السلسلة
صانع السوق المتوسط المرجح بالوقت (TWAMM) الاستراتيجية
Uniswap V4 يدعم حاليا أربع مجموعات من استدعاءات Hook، كل مجموعة تحتوي على زوج من الاستدعاءات:
beforeInitialize/afterInitialize: تهيئة مجمع السيولة
من خلال هذه الروابط، ستربط Uniswap V4 السيولة بعمق تطوير التطبيقات اللامركزية، مما يعزز وظائف التطبيقات اللامركزية ويقوي تأثير شبكة Uniswap، مما يجعلها بنية تحتية لنظام التمويل اللامركزي.
! [من بروتوكول Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks](https://img-cdn.gateio.im/webp-social/moments-54611861c378dc9ea0cd7dbefa073e6c.webp019283746574839201
تحديات الأمان في Uniswap V4 Hooks
على الرغم من أن Hooks جلبت إمكانيات جديدة للتمويل اللامركزي ، إلا أنها أدخلت أيضًا مخاطر أمان محتملة. بالإضافة إلى عقود Hook الخبيثة ، حتى عقود Hook الجيدة قد تحتوي على ثغرات. يمكن تقسيم المشكلات الأمنية الرئيسية إلى فئتين:
مشكلة التحكم في الوصول: يجب أن يتم استدعاء بعض الدوال الأساسية فقط بواسطة PoolManager، ولا ينبغي الوصول إليها من قبل عناوين أخرى.
مشكلة التحقق من المدخلات: نظرًا للتحقق غير الصحيح من المدخلات، قد يؤدي ذلك إلى هجمات مختلفة، مثل هجمات إعادة الدخول.
تنبع هذه المشكلات من زيادة تعقيد العقود الذكية الناتج عن برمجة Hook، مما يوسع من مساحة الهجوم. على الرغم من إمكانية تقليل المخاطر من خلال التحكم الصارم في الوصول والتحقق من المدخلات، إلا أن ثغرات العقود لا تزال صعبة التجنب تمامًا، خاصة بالنسبة لعقود Hook القابلة للتحديث.
لذلك، فإن الاستخدام الواسع لبرمجة Hook يحتاج أيضًا إلى إطار شامل، بما في ذلك بيئة تنفيذ آمنة، ونماذج برمجة مناسبة، وقيود استخدام أكثر صرامة.
! [من بروتوكول Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks])https://img-cdn.gateio.im/webp-social/moments-27b2ded9c0018f93a8b2e1b46b7ccee0.webp(
Artela Aspect: دعم برمجة Hook على مستوى البروتوكول
قدمت Artela حلاً مبتكرًا يدعم برمجة Hook على مستوى البروتوكول. كشبكة بلوكتشين من الطبقة 1 متوافقة مع EVM عالية القابلية للتوسع والأداء، قدمت Artela وحدة قابلة للبرمجة تُدعى Aspect كامتداد أصلي، مما أدخل برمجة الجوانب )AOP( إلى شبكة البلوكتشين.
يحتاج Aspect إلى تحديد نقاط الاتصال، مماثلة لاستدعاءات Hook، بما في ذلك:
Block Init:تهيئة الكتلة
Transaction Verification:تحقق من المعاملة
Pre Execute:قبل التنفيذ
Post Execute: بعد التنفيذ
Block Finalize: تحديد الكتلة النهائية
تدعم Aspect حاليًا TypeScript، وتقوم بترجمته إلى WebAssembly )WASM( ثم نشره على شبكة Artela. يمكن لمالك العقد الذكي ربط العقد بـ Aspect، وبعد ذلك ستتم معالجة المعاملات التي تستدعي العقد الذكي بواسطة Aspect.
بالمقارنة مع Uniswap V4 Hooks، فإن Artela Aspects تتمتع بمزايا ملحوظة:
استخدام WASM لتنفيذ الشيفرة، الكفاءة أعلى بكثير من EVM
يمكن ربط دورة حياة الصفقة بالكامل، وليس فقط المنطق الأساسي للتمويل اللامركزي
تعمل بشكل مستقل في بيئة صندوق الأمان، مما يضمن أن التنفيذ لا يؤثر على أمان العقد
تُعالج خصوصية Artela Aspects مشاكل التحكم في الوصول والتحقق من المدخلات في Uniswap V4 Hooks. بالنسبة للعقود اللامركزية المشابهة لـ Uniswap، فإن نشرها على Artela يوفر تجربة Hook أسرع وأكثر قوة وأمانًا.
! [من Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks])https://img-cdn.gateio.im/webp-social/moments-7b30bf11ed19fb81866a695fff7d5bec.webp(
الخاتمة
لا شك أن Hooks التي قدمها Uniswap V4 ستقود اتجاه تطوير DEX. ومع ذلك، فإن Uniswap V4 Hooks لا تزال تعاني من ثغرات أمنية محتملة بسبب قيود العقود الذكية.
تقدم Artela من خلال تصميم Aspect المدعوم بشكل أصلي بواسطة برمجة Hooks، حلاً أمنيًا متقدمًا لبروتوكولات التمويل اللامركزي. يفتح هذا النهج المبتكر آفاقًا جديدة للتطور المستقبلي للتمويل اللامركزي.
! [رحلة متقدمة من Uniswap V4 إلى بروتوكول Artela الأصلي ، ثورة خطافات DeFi])https://img-cdn.gateio.im/webp-social/moments-7d12edeb265919e696f4905b1bd5daf0.webp(
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 12
أعجبني
12
6
مشاركة
تعليق
0/400
NFTDreamer
· منذ 15 س
يا إلهي، لا أفهم تفاصيل V4 مرة أخرى...
شاهد النسخة الأصليةرد0
MEVHunter
· منذ 15 س
تم الكشف عن إشارات mev alpha... الخطافات = فرص السندويشات من الجيل التالي بصراحة
شاهد النسخة الأصليةرد0
LuckyBlindCat
· منذ 15 س
تستمر hooks في الابتكار، ولم أعد أفهم.
شاهد النسخة الأصليةرد0
Layer2Observer
· منذ 15 س
من منظور الشيفرة المصدرية، فإن الـ hooks قد حلت فعلاً مشكلة التكرار.
ثورة Hooks: من Uniswap V4 إلى Artela لبدء فصل جديد في التمويل اللامركزي
Hooks: ثورة نمط البرمجة وطريق التقدم في التمويل اللامركزي
تعد Hooks نمط برمجة يسمح للمطورين بإدخال كود مخصص في مسار تنفيذ النظام أو التطبيق. من خلال وظائف أو كتل كود مسبقة التعريف، يمكن للمطورين توسيع وتخصيص وظائف البرنامج دون الحاجة إلى تعديل الكود الأصلي. يتم استخدام هذا النمط على نطاق واسع في أنظمة التشغيل والأطر والمكتبات وتطوير الويب وأنظمة المكونات الإضافية وغيرها من المجالات.
استخدام Hooks يزيد من قابلية التوسع والتخصيص للبرامج. لا يحتاج المطورون إلى تعديل الكود الأصلي لكل متطلب جديد، مما يحافظ على وضوح واستقرار الكود. هذه الطريقة الأنيقة في التوسع تجعل Hooks نموذج برمجة مهم في تصميم البرمجيات.
من الجدير بالذكر أن البرمجة الموجهة للجوانب (AOP) غالبًا ما تقارن ببرمجة Hook. تهدف AOP إلى تحقيق تجزئة الاهتمامات العرضية، وهي أيضًا تكرس جهودها لتعزيز أو تعديل الوظائف دون تغيير المنطق التجاري الرئيسي. يمكن اعتبار AOP كنوع من البرمجة Hook على مستوى تجريدي أعلى.
! من بروتوكول Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks
Uniswap V4: بداية ثورة Hooks
في يونيو 2023، أصدرت Uniswap مسودة الورقة البيضاء V4، والتي قدمت ميزة Hooks المهمة. على الرغم من أن Hooks قد تم استخدامها على نطاق واسع في أنظمة التمويل Web2 لتلبية احتياجات التخصيص وقابلية التوسع، إلا أن Uniswap أدخلتها في مجال التمويل اللامركزي، مما يمثل سابقة جديدة.
تعتبر Hooks في Uniswap V4 عقودًا خارجية أنشأها المطورون، يمكن ربطها عند إنشاء تجمع السيولة. بعد ذلك، سيقوم تجمع السيولة باستدعاء هذه العقود Hook لأداء عمليات محددة في مراحل حياة مختلفة، مما يوفر مستوى عالٍ من التخصيص. يتيح هذا للمطورين تلبية احتياجات التداول الأكثر تخصيصًا وبناء تطبيقات DApp الأكثر ثراءً بالميزات. على سبيل المثال:
Uniswap V4 يدعم حاليا أربع مجموعات من استدعاءات Hook، كل مجموعة تحتوي على زوج من الاستدعاءات:
من خلال هذه الروابط، ستربط Uniswap V4 السيولة بعمق تطوير التطبيقات اللامركزية، مما يعزز وظائف التطبيقات اللامركزية ويقوي تأثير شبكة Uniswap، مما يجعلها بنية تحتية لنظام التمويل اللامركزي.
! [من بروتوكول Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks](https://img-cdn.gateio.im/webp-social/moments-54611861c378dc9ea0cd7dbefa073e6c.webp019283746574839201
تحديات الأمان في Uniswap V4 Hooks
على الرغم من أن Hooks جلبت إمكانيات جديدة للتمويل اللامركزي ، إلا أنها أدخلت أيضًا مخاطر أمان محتملة. بالإضافة إلى عقود Hook الخبيثة ، حتى عقود Hook الجيدة قد تحتوي على ثغرات. يمكن تقسيم المشكلات الأمنية الرئيسية إلى فئتين:
تنبع هذه المشكلات من زيادة تعقيد العقود الذكية الناتج عن برمجة Hook، مما يوسع من مساحة الهجوم. على الرغم من إمكانية تقليل المخاطر من خلال التحكم الصارم في الوصول والتحقق من المدخلات، إلا أن ثغرات العقود لا تزال صعبة التجنب تمامًا، خاصة بالنسبة لعقود Hook القابلة للتحديث.
لذلك، فإن الاستخدام الواسع لبرمجة Hook يحتاج أيضًا إلى إطار شامل، بما في ذلك بيئة تنفيذ آمنة، ونماذج برمجة مناسبة، وقيود استخدام أكثر صرامة.
! [من بروتوكول Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks])https://img-cdn.gateio.im/webp-social/moments-27b2ded9c0018f93a8b2e1b46b7ccee0.webp(
Artela Aspect: دعم برمجة Hook على مستوى البروتوكول
قدمت Artela حلاً مبتكرًا يدعم برمجة Hook على مستوى البروتوكول. كشبكة بلوكتشين من الطبقة 1 متوافقة مع EVM عالية القابلية للتوسع والأداء، قدمت Artela وحدة قابلة للبرمجة تُدعى Aspect كامتداد أصلي، مما أدخل برمجة الجوانب )AOP( إلى شبكة البلوكتشين.
يحتاج Aspect إلى تحديد نقاط الاتصال، مماثلة لاستدعاءات Hook، بما في ذلك:
تدعم Aspect حاليًا TypeScript، وتقوم بترجمته إلى WebAssembly )WASM( ثم نشره على شبكة Artela. يمكن لمالك العقد الذكي ربط العقد بـ Aspect، وبعد ذلك ستتم معالجة المعاملات التي تستدعي العقد الذكي بواسطة Aspect.
بالمقارنة مع Uniswap V4 Hooks، فإن Artela Aspects تتمتع بمزايا ملحوظة:
تُعالج خصوصية Artela Aspects مشاكل التحكم في الوصول والتحقق من المدخلات في Uniswap V4 Hooks. بالنسبة للعقود اللامركزية المشابهة لـ Uniswap، فإن نشرها على Artela يوفر تجربة Hook أسرع وأكثر قوة وأمانًا.
! [من Uniswap V4 إلى بروتوكول Artela الأصلي ، الرحلة المتقدمة لثورة DeFi Hooks])https://img-cdn.gateio.im/webp-social/moments-7b30bf11ed19fb81866a695fff7d5bec.webp(
الخاتمة
لا شك أن Hooks التي قدمها Uniswap V4 ستقود اتجاه تطوير DEX. ومع ذلك، فإن Uniswap V4 Hooks لا تزال تعاني من ثغرات أمنية محتملة بسبب قيود العقود الذكية.
تقدم Artela من خلال تصميم Aspect المدعوم بشكل أصلي بواسطة برمجة Hooks، حلاً أمنيًا متقدمًا لبروتوكولات التمويل اللامركزي. يفتح هذا النهج المبتكر آفاقًا جديدة للتطور المستقبلي للتمويل اللامركزي.
! [رحلة متقدمة من Uniswap V4 إلى بروتوكول Artela الأصلي ، ثورة خطافات DeFi])https://img-cdn.gateio.im/webp-social/moments-7d12edeb265919e696f4905b1bd5daf0.webp(