- أدوات المطورين›
- AWS Cloud Development Kit›
- الأسئلة الشائعة
الأسئلة الشائعة حول AWS Cloud Development Kit
عام
ماذا تعني AWS CDK؟
مجموعة تطوير سحابة AWS (AWS CDK) هي عبارة عن برمجيات مفتوحة المصدر في إطار التنمية لتحديد البنية التحتية الأساسية كتعليمات برمجية للغات البرمجة الحديثة ونشرها عبر AWS CloudFormation.
ما الذي أستطيع فعله باستخدام واجهة سطر الأوامر (CLI) الخاصة بـ AWS CDK؟
يُمكنك استخدام واجهة سطر الأوامر (CLI) الخاصة بـ AWS CDK في التفاعل مع تطبيقات CDK. تتيح لك واجهة سطر الأوامر (CLI) الخاصة بـ CDK عرض المكدسات المحددة في تطبيق CDK، وتجميع المكدسات في قوالب CloudFormation، وتحديد أوجه الاختلاف بين مثيلات المكدسات قيد التشغيل والمكدسات المحددة في تعليمة CDK البرمجية، ونشر المكدسات في أي منطقة من مناطق AWS العامة.
كيف تعمل AWS CDK؟
يُمكنك استخدام إطار عمل AWS CDK في كتابة مشاريع AWS CDK المنفذة لإنشاء قوالب CloudFormation. يمكن تنفيذ مشروعات AWS CDK باستخدام سطر أوامر AWS CDK أو في نظام التسليم المستمر.
كيف يمكنني البدء في استخدام AWS CDK؟
وتعد أفضل طريقة للبدء في استخدام AWS CDK هي العمل من خلال القسم بدء الاستخدام في دليل مطوري AWS CDK. في غصون دقائق، يمكنك تحديد تطبيق AWS CDK الأول ونشره. لمعرفة المزيد حول البرامج التعليمية الاسترشادية المتعمقة، تحقق من https://CDKworkshop.com.
هل يوجد عينات لتطبيقات AWS CDK بحيث يمكنني استخدامها كنقطة بداية؟
نعم، يمكنك العثور على عدد من أمثلة AWS CDK، في لغات برمجة متعددة، في https://github.com/aws-samples/aws-cdk-examples. ويتضمن دليل مطوري AWS أيضًا أمثلةً على ذلك في https://docs.thinkwithwp.com/cdk/latest/guide/examples.html.
لماذا أحتاج إلى تثبيت برنامج JavaScript ليكون بإمكاني استخدام AWS CDK؟
تقوم AWS بإنشاء منطق أعمال خاص بحزم AWS Construct Library في TypeScript كما تعمل على توفير التعيينات في كل من لغات البرمجة المدعومة. هذا يضمن لنا التأكد من أن سلوك تصميمات AWS CDK متناسق من لغة إلى أخرى، كما يتيح لنا عرض مجموعة شاملة من حزم التصميمات المتوفرة في جميع اللغات. وتعتبر التعليمة البرمجية التي تكتبها في مشروع AWS CDK أصلية في لغة البرمجة التي تفضلها، كما تعد مدة عرض JavaScript بمثابة تفاصيل لتنفيذ تجربة البرمجة. يمكنك الرجوع إلى مشروع jsii على https://github.com/aws/jsii.
أين يمكنني العثور على التعليمة البرمجية المصدر الخاصة بـ AWS CDK؟
تعتبر التعليمة البرمجية الخاصة بـ AWS CDK مفتوحة المصدر ومتوفرة في GitHub على https://github.com/awslabs/aws-cdk.
كيف أرحّل تطبيقات CDK من الإصدار 1 إلى الإصدار 2؟
لترحيل تطبيقك إلى الإصدار الثاني من AWS CDK، قم أولاً بتحديث علامات الميزات في cdk.json. ثم قم بتحديث تبعيات تطبيقك ووارداته، إن لزم الأمر، للغة البرمجة الخاصة به. يمكنك معرفة المزيد على: https://docs.thinkwithwp.com/cdk/latest/guide/work-with-cdk-v2.html
كيف يمكنني المشاركة؟
نقوم بتطوير AWS CDK في العلن، ونرحب بأي أحد يرغب في المشاركة في قاعدة التعليمات البرمجية الخاصة بنا. يمكنك معرفة المزيد من خلال https://github.com/awslabs/aws-cdk/blob/master/CONTRIBUTING.md.
ما لغات البرمجة التي تدعمها AWS CDK؟
تتوفر AWS CDK بصفة عامة في JavaScript وTypeScript وPython وJava وC# وGo (في برنامج معاينة المطور). نخطط لربط AWS CDK بلغات أخرى في المستقبل، ولذلك قم بالتصويت للغتك المفضلة في GitHub.
في أي منطقة يمكنني استخدام AWS CDK؟
تتوفر AWS CDK لتحديد ونشر موارد AWS في جميع المناطق العامة. وحيث إن AWS CDK تستفيد من خدمة CloudFormation، يُرجى الرجوع إلى المنتجات والخدمات الإقليمية لمعرفة التفاصيل حول توافر الموارد الخاصة لكل منطقة من مناطق AWS.
هل توجد أي قيود أو حدود على الموارد تٌطبق على AWS CDK؟
وحيث أن AWS CDK تستفيد من CloudFormation، فإن تطبيقات AWS CDK تخضع لنفس القيود التي تفرضها خدمة CloudFormation.
ما العلاقة بين AWS CDK وAWS Solutions Constructs؟
AWS Solutions Constructs هو ملحق مكتبة مفتوح المصدر لخدمة AWS CDK. يوفر AWS Solutions Constructs لك مجموعةً من أنماط الهندسة المدقَّقة متعددة الخدمات التي تم إنشاؤها باستخدام أفضل الممارسات التي وضعها AWS Well-Architected Framework. يتطلب AWS Solutions Constructs تثبيت AWS CDK كشرط مسبق. للاطلاع على تعليمات حول كيفية إضافة AWS Solutions Constructs إلى بيئة AWS CDK، يُرجى الاطلاع على دليل التطوير.
AWS Construct Library
ما المقصود بـ AWS Construct Library؟
يجري تسليم تصميمات AWS CDK من خلال AWS Construct Library، وتمثل الأفكار التجريدية لمنطق البنية الأساسية السحابية التي تم تجميعها لإعادة استخدامها. يمكن تحديد التصميمات محليًا أو نشرها لمديري الحزمة مثل npm، أو Maven، أو NuGet، أو PyPI للمشاركة عبر المؤسسات.
أي من الخدمات تتوفر في AWS Construct Library؟
نحظى بتغطية للعديد من خدمات وميزات AWS المشتركة مع تصميمات غنية وعالية المستوى وتغطية كاملة لموارد CloudFormation الأقل في المستوى، بما في ذلك الموارد الجديدة بعد وقت قصير من توفرها. نحافظ على تحديث AWS Construct Library من خلال إنشاء واجهات برمجة التطبيقات تلقائيًا على مستوى الموارد في كل مرة تتغير فيها مواصفات CloudFormation. وبالإضافة إلى واجهات برمجة التطبيقات التي تم إنشائها تلقائيًا، نقوم بتوفير أفكار تجريدية عالية المستوى ومصنوعة يدويًا والتي سهلت العمل مع كل خدمة. لا نملك هذه الأفكار التجريدية عالية المستوى والملائمة لخدمة AWS، ولكننا نقوم بإضافة ميزات جديدة طوال الوقت مع التركيز على الخدمات الأكثر استخدامًا في التطبيقات السحابية الحديثة. تفضل بزيارة مرجع واجهة برمجة تطبيقات AWS Construct Library لمعرفة المزيد.
إلى متي يجب علي انتظار AWS CDK لدعم المزايا الجديدة التي تمت إضافتها إلى CloudFormation؟
نحافظ على توازن AWS Construct Library مع مواصفات المورد الخاص بـ CloudFormation من خلال إضافة ميزات CloudFormation جديدة إلى AWS CDK بعد وقت قصير من نشرها.
كيف يمكنني مشاركة وإدارة تصاميم AWS CDK مع الفريق الخاص بي؟
تعتبر مكتبات AWS CDK construct libraries مثل غيرها من المكتبات. يتم استهلاكها من خلال مدير حزمة لغة البرمجة التي تستخدمها، حيث أن مواصلة تحديث هذه المكتبات يعد جزءاً من سير العمل الطبيعي الخاص بك. تقوم جميع الحزم بدعم الإصدار الدلالي، مما يتيح لك اتخاذ خيارات واعية بشأن وقت الترحيل إلى نماذج البنية التحتية الجديدة.
CloudFormation وSAM
ما العلاقة بين AWS CDK وCloudFormation؟
يمكنك التفكير في AWS CDK باعتبارها مجموعة أدوات تتمركز حول المطور، حيث تستفيد من القوة الكاملة للغات البرمجة الحديثة لتحديد البنية الأساسية كتعليمة برمجية من AWS. عندما يتم تشغيل تطبيقات AWS CDK، يتم تجميعها إلى قوالب CloudFormation JSON/YAML كاملة التشكيل حيث يتم إرسالها بعد ذلك إلى خدمة CloudFormation لتوفيرها. وحيث أن AWS CDK تستفيد من CloudFormation، لا يزال بإمكانك التمتع بجميع المزايا التي تقدمها CloudFormation مثل النشر الآمن والتراجع التلقائي والكشف عن الانحراف.
ما هي العلاقة بين AWS CDK وAWS SAM؟
تقوم AWS Serverless Application Model وAWS CDK بتجريد البنية التحتية لـ AWS كتعليمات برمجية مما جعل الأمر أكثر سهولة بالنسبة لك لتحديد البنية التحتية السحابية الخاصة بك. تركز AWS SAM بصفة خاصة على حالات الاستخدام دون خادم وكذلك التصميمات كما تتيح لك تحديد البنية التحتية الخاصة بك في قوالب JSON/YAML المدمجة والمعلن عنها. توفر AWS CDK تغطية واسعة من خلال خدمات AWS كما تتيح لك تحديد البنية التحتية السحابية في لغات البرمجة الحديثة مثل TypeScript وPython وC# وJava. تعمل كلًا من AWS SAM وAWS CDK بالاستفادة من خدمة CloudFormation كمحرك للتوفير في مجموعات البنية التحتية الخاصة بك. إذا كنت تفضل تحديد البنية التحتية الخاصة بك بدون خادم في قوالب موجزة ومعلن عنها، فإن SAM هي الأنسب على الإطلاق. إذا كنت ترغب في تحديد البنية التحتية لـ AWS الخاصة بك بلغة برمجة مألوفة، ننصحك بتجربة AWS CDK. في كلتا الحالتين، يمكنك الاعتماد على نشر البنية التحتية الآمنة والقابلة للتكرار من خلال CloudFormation.
هل يمكنني استخدام AWS SAM CLI لاختبار وظائف Lambda محليًا والتي تم تحديدها مع AWS CDK؟
نعم، يمكنك تجميع تطبيق AWS CDK محليًا في قالب CloudFormation ثم الرجوع إلى معرف معالج AWS Lambda الذي تم إنشاؤه في SAM CLI. اطلع على القسم SAM CLI في دليل مطوري CDK لمزيد من التفاصيل.
التكلفة
بموجب أي ترخيص يتم توزيع AWS CDK؟
يتم توزيع AWS CDK بموجب Apache License، الإصدار 2.0. اطلع على LICENSE وNOTICE لمزيد من المعلومات.
كم تبلغ تكلفة AWS CDK؟
لا توجد رسوم إضافية على AWS CDK. أنت تدفع مقابل موارد AWS (مثل مثيلات Amazon EC2 أو موازنات أحمال Elastic Load Balancing) التي تم إنشاؤها باستخدام AWS CDK بنفس الطريقة كما لو قمت بإنشائها يدويًا. لا تدفع إلا مقابل ما تستخدمه، وعند استخدامك له لا يوجد حد أدنى للرسوم ولا توجد التزامات مقدمة.