الأسئلة الشائعة حول AWS Cloud Development Kit

عام

مجموعة تطوير سحابة AWS (AWS CDK) هي عبارة عن برمجيات مفتوحة المصدر في إطار التنمية لتحديد البنية التحتية الأساسية كتعليمات برمجية للغات البرمجة الحديثة ونشرها عبر AWS CloudFormation.

يُمكنك استخدام واجهة سطر الأوامر (CLI) الخاصة بـ AWS CDK في التفاعل مع تطبيقات CDK. تتيح لك واجهة سطر الأوامر (CLI) الخاصة بـ CDK عرض المكدسات المحددة في تطبيق CDK، وتجميع المكدسات في قوالب CloudFormation، وتحديد أوجه الاختلاف بين مثيلات المكدسات قيد التشغيل والمكدسات المحددة في تعليمة CDK البرمجية، ونشر المكدسات في أي منطقة من مناطق AWS العامة.

يُمكنك استخدام إطار عمل AWS CDK في كتابة مشاريع AWS CDK المنفذة لإنشاء قوالب CloudFormation. يمكن تنفيذ مشروعات AWS CDK باستخدام سطر أوامر AWS CDK أو في نظام التسليم المستمر.

وتعد أفضل طريقة للبدء في استخدام AWS CDK هي العمل من خلال القسم بدء الاستخدام في دليل مطوري AWS CDK. في غصون دقائق، يمكنك تحديد تطبيق AWS CDK الأول ونشره. لمعرفة المزيد حول البرامج التعليمية الاسترشادية المتعمقة، تحقق من https://CDKworkshop.com.

نعم، يمكنك العثور على عدد من أمثلة AWS CDK، في لغات برمجة متعددة، في https://github.com/aws-samples/aws-cdk-examples. ويتضمن دليل مطوري AWS أيضًا أمثلةً على ذلك في https://docs.thinkwithwp.com/cdk/latest/guide/examples.html.

تقوم AWS بإنشاء منطق أعمال خاص بحزم AWS Construct Library في TypeScript كما تعمل على توفير التعيينات في كل من لغات البرمجة المدعومة. هذا يضمن لنا التأكد من أن سلوك تصميمات AWS CDK متناسق من لغة إلى أخرى، كما يتيح لنا عرض مجموعة شاملة من حزم التصميمات المتوفرة في جميع اللغات. وتعتبر التعليمة البرمجية التي تكتبها في مشروع AWS CDK أصلية في لغة البرمجة التي تفضلها، كما تعد مدة عرض JavaScript بمثابة تفاصيل لتنفيذ تجربة البرمجة. يمكنك الرجوع إلى مشروع jsii على https://github.com/aws/jsii.

تعتبر التعليمة البرمجية الخاصة بـ AWS CDK مفتوحة المصدر ومتوفرة في GitHub على https://github.com/awslabs/aws-cdk.

لترحيل تطبيقك إلى الإصدار الثاني من 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 بصفة عامة في JavaScript وTypeScript وPython وJava وC# وGo (في برنامج معاينة المطور). نخطط لربط AWS CDK بلغات أخرى في المستقبل، ولذلك قم بالتصويت للغتك المفضلة في GitHub.

تتوفر AWS CDK لتحديد ونشر موارد AWS في جميع المناطق العامة. وحيث إن AWS CDK تستفيد من خدمة CloudFormation، يُرجى الرجوع إلى المنتجات والخدمات الإقليمية لمعرفة التفاصيل حول توافر الموارد الخاصة لكل منطقة من مناطق AWS.

وحيث أن AWS CDK تستفيد من CloudFormation، فإن تطبيقات AWS CDK تخضع لنفس القيود التي تفرضها خدمة CloudFormation.

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 CDK من خلال AWS Construct Library، وتمثل الأفكار التجريدية لمنطق البنية الأساسية السحابية التي تم تجميعها لإعادة استخدامها. يمكن تحديد التصميمات محليًا أو نشرها لمديري الحزمة مثل npm، أو Maven، أو NuGet، أو PyPI للمشاركة عبر المؤسسات.

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

نحافظ على توازن AWS Construct Library مع مواصفات المورد الخاص بـ CloudFormation من خلال إضافة ميزات CloudFormation جديدة إلى AWS CDK بعد وقت قصير من نشرها.

تعتبر مكتبات AWS CDK construct libraries مثل غيرها من المكتبات. يتم استهلاكها من خلال مدير حزمة لغة البرمجة التي تستخدمها، حيث أن مواصلة تحديث هذه المكتبات يعد جزءاً من سير العمل الطبيعي الخاص بك. تقوم جميع الحزم بدعم الإصدار الدلالي، مما يتيح لك اتخاذ خيارات واعية بشأن وقت الترحيل إلى نماذج البنية التحتية الجديدة.

CloudFormation وSAM

يمكنك التفكير في AWS CDK باعتبارها مجموعة أدوات تتمركز حول المطور، حيث تستفيد من القوة الكاملة للغات البرمجة الحديثة لتحديد البنية الأساسية كتعليمة برمجية من AWS. عندما يتم تشغيل تطبيقات AWS CDK، يتم تجميعها إلى قوالب CloudFormation JSON/YAML كاملة التشكيل حيث يتم إرسالها بعد ذلك إلى خدمة CloudFormation لتوفيرها. وحيث أن AWS CDK تستفيد من CloudFormation، لا يزال بإمكانك التمتع بجميع المزايا التي تقدمها CloudFormation مثل النشر الآمن والتراجع التلقائي والكشف عن الانحراف.

تقوم 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 CDK محليًا في قالب CloudFormation ثم الرجوع إلى معرف معالج AWS Lambda الذي تم إنشاؤه في SAM CLI. اطلع على القسم SAM CLI في دليل مطوري CDK لمزيد من التفاصيل.

التكلفة

يتم توزيع AWS CDK بموجب Apache License، الإصدار 2.0. اطلع على LICENSE وNOTICE لمزيد من المعلومات.

لا توجد رسوم إضافية على AWS CDK. أنت تدفع مقابل موارد AWS (مثل مثيلات Amazon EC2 أو موازنات أحمال Elastic Load Balancing) التي تم إنشاؤها باستخدام AWS CDK بنفس الطريقة كما لو قمت بإنشائها يدويًا. لا تدفع إلا مقابل ما تستخدمه، وعند استخدامك له لا يوجد حد أدنى للرسوم ولا توجد التزامات مقدمة.