Saturday 24 March 2018

التطبيق الإصدار استراتيجية


إستراتيجية إصدار التطبيقات أب
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
ما هي إستراتيجية إصدار إصدارات التطبيقات؟ [مكرر]
هذا السؤال له إجابة هنا:
وأود أن تكون مهتمة للحصول على آراء المجتمع سو حول أفضل استراتيجية إصدار الإصدارات التطبيق.
كيف يمكنك تتبع رقم إصدار التطبيق؟ هل لديك تعريف رسمي لما يمثله كل رقم / حرف في هذا الإصدار؟
ماذا تعني الأرقام / السلاسل المختلفة في إصدار التطبيق لتطبيقك؟
هل تستخدم أي نظام تحديث تلقائي في تطبيقاتك (على سبيل المثال، شيء مثل سباركل) ومدى حسن تصرفك من أجلك؟
هل لديك إجراء تحديث منفصل للاختبار بيتا أو اختبار ما قبل النشر من التطبيق الخاص بك؟
تم وضع علامة على أنها مكررة من قبل غنات، ميكلت، كيليان فوث، GlenH7، رين هنريش 29 أبريل '13 في 2:42.
وقد طرح هذا السؤال من قبل، ولديه بالفعل جواب. إذا كانت هذه الإجابات لا تعالج سؤالك بشكل كامل، فيرجى طرح سؤال جديد.
ترحيل من ستاكوفيرفلو 18 مايو 1111 في 13:48.
وجاء هذا السؤال من موقعنا لمبرمجين المحترفين والمتحمسين.
كيف يمكنك تتبع رقم إصدار التطبيق؟ هل لديك تعريف رسمي لما يمثله كل رقم / حرف في هذا الإصدار؟
ماذا تعني الأرقام / السلاسل المختلفة في إصدار التطبيق لتطبيقك؟
أستخدم ما يلي:
الرائد - الإصدار الرئيسي هو الافراج واضح للمنتج. زادت عندما تكون هناك تغييرات كبيرة في الأداء الوظيفي.
طفيفة - يتم زيادة إصدار طفيفة عندما يتم إضافة ميزات جديدة فقط أو إصلاحات الشوائب الرئيسية.
ترقية / تصحيح - ترقية يشير إلى استبدال منتج مع إصدار أحدث من product. It يتزايد فقط عندما يتم توفير الترقية على إصدار رئيسي معين. يبدأ إصدار باتش مع 0 وتزايد فقط عندما تم حل علة.
بناء لا - يتم زيادة رقم البناء عند إنشاء بنية جديدة.
هل تستخدم أي نظام تحديث تلقائي في تطبيقاتك (على سبيل المثال، شيء مثل سباركل) ومدى حسن تصرفك من أجلك؟
نحن نستخدم أداة البناء الذي يبني تلقائيا التطبيق في الليل الذي نسميه بناء ليلا وهذا يزيد بناء عدد في كل مرة يتم إنشاء بناء.
هل لديك إجراء تحديث منفصل للاختبار بيتا أو اختبار ما قبل النشر من التطبيق الخاص بك؟
لا. اختبارات اختبار على بناء ليلا في كل صباح الذي نسميه بات (بناء قبول الاختبار) والتحقق من بناء ليلا.
واسمحوا لي أن ألاحظ أولا أنه لا يوجد اتفاق فيما يبدو بشأن استراتيجية "أفضل". يمكنني فقط مشاركة تجربتي في مشروع الحالي.
يتم تعريف إصدار النظام يدويا في خاصية بناء. يحدث ذلك عندما يوافق الفريق على إصدار جديد. كما فيرسيونينغ إضافية نستخدم رقم البناء الذي يتم إنشاؤه تلقائيا من قبل بناء سي.
نحن نتابع بشكل فضفاض نظام تسمية أوبونتو YY. MM. version. patch_buildNumber كما وجدنا أن إصدار الرائد. مينور يعبر عن توقعات العملاء؛)
لا توجد تحديثات تلقائية كما أن التطبيق يجب أن تدحرجت من قبل المشرفين.
إن الإصدارات التجريبية أكثر تواترا من إصدارات غا، ولكن يجب أن يكون ذلك كله.
اختبرت العديد من أنظمة الإصدار والآن أنا سعيد جدا مع هذا واحد:
يتم تعيين الرائد بشكل يدوي والرجوع إلى إصدار بما في ذلك التحسينات الرئيسية يتم تعيين الصغرى أيضا يدويا وتشير إلى إصدار ترقية / صيانة، بما في ذلك تحسينات طفيفة & أمب؛ الإصلاحات يتم إنشاء المراجعة تلقائيا وتشير إلى مراجعة دقيقة في المستودع.
آخر واحد يسمح لنا أن تكون مرنة جدا مع فيرسيونينغ. يمكننا أن نشحن إصدارات متعددة للعديد من العملاء، ولا تزال قادرة على تصحيح & أمب؛ إصلاح مع سهولة عن طريق الحصول على نسخة محددة من ريبوس، ثم دمج مرة أخرى مع الجذع.
بناء، التعبئة والتغليف & أمب؛ النشر مؤتمتة بالكامل. الإجراء اليدوي الوحيد هو عندما نقوم بنقل الحزمة الأخيرة إلى ملقم الإنتاج بواسطة فتب. نحن نريد للحفاظ على السيطرة على ذلك لضمان أننا لا تسليم حماقة في الإنتاج. يذهب إلى مرحلة أولية حيث الأوائل يمكن قراءة ملاحظات الافراج ثم تقرر تحميل واستخدام النسخة. يمكن للعملاء الذين يواجهون البق محددة الحصول على نسخة ثابتة سريع جدا باستخدام واحد من هذه الإصدارات.
يمكنني استخدام الإصدار الدلالي لمكتباتي مفتوحة المصدر وتجد أنه من الأسهل بكثير للعمل مع المكتبات الأخرى التي تفعل كذلك. وهو يوفر أساسا مشتركا لفهم ما قد يعنيه تغيير الإصدار. هل المكتبة لا تزال في مرحلة تجريبية؟ هو إصدار فقط لإصلاحات الشوائب؟ هل سيكون هناك تغييرات متقطعة في واجهة برمجة التطبيقات؟
وهو في الأساس تدوين لأفضل ممارسات الإصدار التي تستخدمها بالفعل معظم المشاريع المفتوحة المصدر.

إستراتيجية إصدار التطبيقات أب
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
ما هي إستراتيجية إصدار تطبيقات يوس الجيدة عند استخدام تستفليت للاختبار الداخلي؟
لدي تطبيق يوس يستخدم الإصدار الدلالي لوضع علامة على عمليات الشحن التي تم شحنها. أنا أيضا باستخدام تستفليت أبل لدفع الداخلية يبني للفريق لاختبار / كا.
يتطلب دفع بناء داخلي تحميل بنية إلى إيتونس كونيكت. لا يوجد أي تمييز بين بناء الاختبار وإطلاق سراح بناء على اي تيونز الاتصال، وأي تيونز الاتصال لا يسمح الكتابة فوق الإصدارات التي تم تحميلها سابقا. لذلك في كل مرة أريد أن دفع بناء جديد للاختبار الداخلي، لا بد لي من عثرة رقم الإصدار (حسنا، التصحيح (X. X. X) عدد).
هذا يعمل بشكل جيد، إلا أن مستخدمينا يبدو وكأنه أرقام الإصدار لدينا القفز حول الكثير في ما بين التحديثات. على سبيل المثال، إذا كان هذا هو تاريخ بناء لدينا:
. فإن المستخدمين يشاهدون الإصدارات الجريئة فقط، ويظهر تاريخ إصدارنا غريبا:
اعتقدت طريقة جيدة لتجنب هذا هو استخدام إصدارات بيتا، مثل V1.1.0 بيتا للاختبار يبني، ولكن اي تيونز الاتصال يرفض أي سلاسل الإصدار التي ليست X. X.X.
هل هناك طريقة لمواصلة استخدام اختبار تستفليت للاختبار الداخلي / ضمان الجودة وتجنب ظهور سجل إصدار مملوء بالفجوات للمستخدمين؟
يمكنني استخدام رقم 4 الداخلي في الإصدار بناء، وأعتقد أن اي تيونز لا يزال يقبل هذا. مثلا قد يكون الإصدار 1.0.0 ولكن يمكن أن يكون بناء 1.0.0.87 مما يدل على بناء الداخلي 87 لاختبار. يمكنك اختيار لوب قبالة الرقم الأخير عند عرضها في التطبيق، ولكن الناس لا يهتمون عادة.
لقد وجدت هذا من السهل أن نفهم وقبلت في معظم الأماكن.
بناء عدد بالمقارنة مع رقم الإصدار لا يعطى ما يكفي من الائتمان.

إستراتيجية إصدار التطبيقات أب
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
أفضل الممارسات: إصدار البرامج [كلوسيد]
هل هناك أي دليل أو معيار أفضل الممارسات كيفية إصدار البرامج التي تتطور في وقت فراغك للمتعة، ولكن مع ذلك سوف تستخدم من قبل بعض الناس؟ أعتقد أنه من الضروري إصدار مثل هذه البرامج بحيث تعرف عن الإصدار الأول الذي تتحدث عنه (على سبيل المثال لإصلاح الأخطاء والدعم وما إلى ذلك).
ولكن أين يمكنني بدء الإصدار؟ 0.0.0؟ أو 0.0؟ ثم كيف يمكنني زيادة الأرقام؟ تغيير الإصدار الرئيسي. مينور؟ ولا ينبغي أن أي التزام لنظام مراقبة الإصدار يكون نسخة أخرى؟ أو هل هذا فقط للإصدارات التي تستخدم بطريقة منتجة؟
مغلقة في المقام الأول على أساس الرأي من قبل البومى، أنيموسون & # 9830؛ 2 أغسطس 1313 في 15:43.
العديد من الأسئلة الجيدة تولد قدرا من الرأي استنادا إلى خبرة الخبراء، ولكن الإجابات على هذا السؤال سوف تميل إلى أن تستند بشكل كامل تقريبا إلى الآراء، بدلا من الحقائق أو المراجع أو الخبرة المحددة. إذا كان يمكن إعادة صياغة هذا السؤال لتناسب القواعد في مركز المساعدة، يرجى تعديل السؤال.
مقفل بواسطة فليكسو & # 9830؛ مار 21 في 21:32.
هذا السؤال موجود لأنه ذو أهمية تاريخية، ولكنه لا يعتبر سؤالا جيدا حول الموضوع لهذا الموقع، لذا يرجى عدم استخدامه كدليل على أنه يمكنك طرح أسئلة مشابهة هنا. يتم تجميد هذا السؤال وإجاباته ولا يمكن تغييره. مزيد من المعلومات: مركز المساعدة.
12 أجوبة.
يجب أن تبدأ مع الإصدار 1، إلا إذا كنت تعرف أن النسخة الأولى التي "الإفراج" غير مكتملة بطريقة أو بأخرى.
أما بالنسبة لك كيفية زيادة الإصدارات، وهذا متروك لكم، ولكن استخدام الرئيسية، طفيفة، بناء الترقيم كدليل.
ليس من الضروري أن يكون لديك كل إصدار تلتزم التحكم المصدر كإصدار آخر - سيكون لديك قريبا عدد كبير جدا نسخة في الواقع. تحتاج فقط إلى زيادة رقم الإصدار (في بعض الطريق) عند إصدار نسخة جديدة إلى العالم الخارجي.
حتى إذا قمت بإجراء خطوة تغيير كبير من الإصدار 1.0.0.0 إلى الإصدار 2.0.0.0 (قمت بتغيير من وينفورمز إلى وف على سبيل المثال). إذا قمت بإجراء خطوة تغيير أصغر من 1.0.0.0 إلى 1.1.0.0 (قمت بإضافة دعم لملفات بابوا نيو غينيا). إذا قمت بإجراء تغيير طفيف ثم انتقل من 1.0.0.0 إلى 1.0.1.0 (قمت بإصلاح بعض الخلل).
إذا كنت تريد حقا الحصول على استخدام مفصل العدد النهائي كرقم البناء الذي من شأنه أن يزيد لكل تشيكين / ارتكاب (ولكن أعتقد أن هذا الذهاب بعيدا جدا).
وأود أن استخدام x. y.z نوع من الإصدار.
x - الإصدار الرئيسي.
ذ - الإفراج الطفيفة.
z - رقم البناء.
أنا أساسا اتبع هذا النمط:
عندما يكون جاهزا أنا فرع رمز في الريبو المصدر، علامة 0.1.0 وإنشاء فرع 0.1.0، يصبح الرأس / الجذع 0.2.0 لقطة أو شيء مماثل.
أنا أضيف ميزات جديدة فقط إلى الجذع، ولكن باكبورت إصلاحات للفرع وفي الوقت الذي صدر منه 0.1.1، 0.1.2،.
أعلن الإصدار 1.0.0 عندما يعتبر المنتج ميزة كاملة وليس لديها أوجه القصور الرئيسية.
من ثم على - يمكن للجميع أن يقرر متى لزيادة النسخة الرئيسية.
أستخدم هذه القاعدة لتطبيقاتي:
. y = فيتور نومبر، 0-9. زيادة هذا الرقم إذا كان التغيير يحتوي على ميزات جديدة مع أو بدون إصلاحات الشوائب. z = رقم الإصلاح العاجل، 0-
. زيادة هذا الرقم إذا كان التغيير يحتوي فقط على إصلاحات الأخطاء.
بالنسبة للتطبيق الجديد، يبدأ رقم الإصدار 1.0.0. إذا كان الإصدار الجديد يحتوي على إصلاحات الأخطاء فقط، قم بزيادة رقم الإصلاح العاجل بحيث يكون رقم الإصدار 1.0.1. إذا كان الإصدار الجديد يحتوي على ميزات جديدة مع أو بدون إصلاحات الأخطاء، قم بزيادة رقم الميزة وإعادة تعيين رقم الإصلاح العاجل إلى الصفر بحيث يكون رقم الإصدار 1.1.0. إذا وصل رقم الميزة إلى 9، فقم بزيادة رقم الإصدار الرئيسي وإعادة تعيين العنصر ورقم الإصلاح العاجل إلى الصفر (2.0.0 وما إلى ذلك)
نستخدم a. b.c. d حيث.
(أ) - زيادة كبيرة (زيادة على التسليم إلى العميل) ب - طفيفة (زيادة على التسليم إلى العميل) ج - مراجعة (زيادة على الإصدارات الداخلية) د - بناء (زيادة بواسطة التحكم في الرحلات البحرية)
وهناك مثال آخر لنهج A. B.C هو إصدار إكليبس باندل. حزم الكسوف بدلا من أن يكون الجزء الرابع:
في الكسوف، وتتكون أرقام الإصدار من أربعة (4) شرائح: 3 الأعداد الصحيحة وسلسلة على التوالي اسمه main. minor. service. qualifier. يلتقط كل شريحة نية مختلفة:
يشير الجزء الرئيسي إلى الكسر في أبي يشير الجزء الطفيفة إلى تغييرات "مرئية من الخارج" يشير قطاع الخدمة إلى إصلاحات الأخطاء وتغيير مسار التطوير يشير الجزء المؤهل إلى بنية معينة.
هناك أيضا مخطط إصدار التاريخ، على سبيل المثال: YYYY. MM، YY. MM، يمد.
انها مفيدة للغاية لأن نظرة أولى يعطي انطباعا عن تاريخ الافراج عنه. ولكن أنا أفضل مخطط x. y.z، لأنني أريد دائما أن تعرف نقطة المنتج بالضبط في دورة حياتها (الرائد. مينور. ريليس)
الجواب الأساسي هو "ذلك يعتمد".
ما هو هدفك في فيرسيونينغ؟ يستخدم العديد من الأشخاص version. revision. build ويعلنون فقط version. revision إلى العالم على أنه إصدار إصدار بدلا من إصدار ديف. إذا كنت تستخدم تسجيل الوصول "الإصدار" ثم عليك أن تجد بسرعة أن أرقام الإصدار الخاص بك تصبح كبيرة.
إذا كنت تخطط لمشروعك ثم كنت زيادة مراجعة الإصدارات مع تغييرات طفيفة وإصدار الزيادة للإصدارات مع تغييرات كبيرة، وإصلاح الأخطاء أو وظيفة / الميزات. إذا كنت تقدم الإصدار بيتا أو ليلا بناء الإصدارات ثم تمديد الإصدار لتشمل بناء وزيادة مع كل إصدار.
ومع ذلك، في نهاية اليوم، والامر متروك لكم ولها أن يكون معنى بالنسبة لك.
كما يقول ماهيش: أود استخدام x. y.z نوع من الإصدار.
x - الإصدار الرئيسي y - الإصدار الصغير z - رقم البناء.
قد ترغب في إضافة داتيتيم، ربما بدلا من z.
يمكنك زيادة الإفراج الطفيفة عندما يكون لديك إصدار آخر. من المحتمل أن يبقى الإصدار الرئيسي 0 أو 1، وتغيير ذلك عندما كنت حقا إجراء تغييرات كبيرة (في كثير من الأحيان عندما يكون البرنامج الخاص بك في نقطة حيث أنها لا تتراجع إلى الوراء مع الإصدارات السابقة، أو قمت بتغيير الإطار بأكمله)
كنت أعلم أنك يمكن أن تحقق دائما لمعرفة ما يفعله الآخرون. وتميل برمجيات المصدر المفتوح إلى السماح بالوصول إلى مستودعاتها. على سبيل المثال يمكنك توجيه متصفح سفن إلى svn. doctrine-project. org وإلقاء نظرة على نظام الإصدار الذي يستخدمه مشروع حقيقي.
أرقام الإصدار، والعلامات، كل شيء هناك.
نحن نتبع نهج a. b.c مثل:
زيادة "أ" إذا كان هناك بعض التغييرات الرئيسية حدث في التطبيق. مثل نحن ترقية 1.1 تطبيق إلى 3.5.
"b" إذا كان هناك بعض التغييرات الطفيفة مثل أي كر الجديد أو تعزيز يتم تنفيذها.
"c" إذا كان هناك بعض العيوب إصلاحات في التعليمات البرمجية.
أبدأ الإصدار في أدنى (غير الإصلاح العاجل) سيجيمنت. أنا لا أقصر هذا الجزء إلى 10. ما لم تكن تتبع يبني عليك فقط أن تقرر متى تريد تطبيق زيادة. إذا كان لديك مرحلة ضمان الجودة ثم قد يكون حيث يمكنك تطبيق زيادة إلى أدنى شريحة ثم سيجيمنت المقبل عندما يمر كا ويتم تحريرها. اترك الجزء العلوي لتغييرات السلوك / واجهة المستخدم الرئيسية.
إذا كنت مثلي سوف تجعل من هجين من الأساليب وذلك لتتناسب مع وتيرة تقدم البرنامج الخاص بك.
أعتقد أن النمط الأكثر قبولا a. b.c. أو a. bc. cd خاصة إذا كان لديك كا / الامتثال في المزيج. لقد كان الكثير من فلاك حول تاريخ كونها جزءا عاديا من الإصدارات التي أعطيته ل السائدة.
أنا لا تتبع يبني لذلك أود استخدام نمط a. b.c إلا إذا كان هناك إصلاح عاجل. عندما يكون علي تطبيق إصلاح عاجل ثم تطبيق المعلمة د كتاريخ مع مرور الوقت. واعتمدت المعلمة الوقت كما د لأن هناك دائما إمكانات عدة في يوم عندما تفجر الأمور حقا في الإنتاج. أنا فقط تطبيق د قطاع (يمدن) عندما أنا المتباعدة لإصلاح الإنتاج.
أنا شخصيا لن يعارض مخطط البرمجيات من va. b ريفك حيث c هو ييدمد أو يمد.
كل ما قال. إذا كنت تستطيع مجرد عطل أداة لتكوين وتشغيل معها سوف تبقى لكم من الصداع الحاجة إلى مارشال وجوه الرأي من الإصدار ويمكنك أن تقول فقط "استخدام الأداة". لأن الجميع في عملية التنمية عادة ما تكون متوافقة جدا.

إصدار أبي الخاص بك هو الخطأ، وهذا هو السبب قررت أن تفعل ذلك 3 طرق خاطئة مختلفة.
في النهاية، قررت أعدل، كانت الطريقة الأكثر توازنا هو شخ الجميع قبالة على قدم المساواة. بالطبع أنا & # x2019؛ م يتحدث عن إصدار أبي وليس منذ كبيرة & # x201C؛ علامات التبويب مقابل المساحات & # x201D؛ النقاش رأيت الكثير من المعتقدات القوية في مخيمات مختلفة تماما.
كان هذا على ما يرام. عندما بنيت هل أنا بوند؟ (هيب) في أواخر نوفمبر، كان المقصود أن تكون خدمة بسيطة وسريعة أن بعض الناس سوف تستخدم. وأعتقد أنه من العادل أن نقول إن النقطتين الأوليين قد تحققت، ولكن ليست الأخيرة. لم يكن & # x2019؛ t & # x201C؛ عدد قليل & # x201D؛، في الواقع بنهاية الأسبوع الأول كان أكثر من غوغل أناليتيكش يمكن التعامل معها. النقطة هي أنه يمكنك & # x2019؛ t التنبؤ دائما المستقبل عند كتابة أبي الخاص بك، وفي مرحلة ما قد تحتاج إلى تغيير شيء أن الناس بالفعل تعتمد على.
ولكن هنا & # x2019؛ s المشكلة & # x2013؛ في كل مرة تبدأ فيها الحديث عن أي شيء يتعلق بواجهات برمجة التطبيقات عبر هتب، يحدث ذلك:
كل الطريقة التي تقوم بدورها هناك فلسفية مختلفة تأخذ على & # x201C؛ الطريق الصحيح & # x201d؛ والكثير من الوراء وإلى الأمام على ريست، ما هو ريستفول، ما هو ليس وإذا كان الأمر كذلك. دعنا نتحدث عن تغييرات واجهة برمجة التطبيقات، والتأثير على إصدار الإصدارات، ولماذا يوجد الكثير من الأفكار المتباينة حول كيفية القيام بذلك، وفي النهاية، لماذا لا يكون أي من المتبرع مهما بنفس القدر من الأهمية في إنجاز المهام.
سحب المزيد من البيانات الخرق.
مع الأخذ في الاعتبار أن أبي نفسه يستخدم لميزة البحث على الموقع والآن أيضا من قبل أطراف خارجية خلق كل شيء من تطبيقات الهواتف الذكية لاختبار اختراق الأدوات، استجابة أعلاه عملت بشكل جيد في البداية، ولكن كان محدودا. على سبيل المثال، هذا الرد لا يعمل أيضا تماما:
لماذا ا؟ لأن & # x201C؛ باتلفيلدرويز & # x201D؛ هو باسكال-كاسد وهو أمر رائع لمطابقته مع الطبقات كس مرمزة (على الرغم من أنه ربما ليس نهجا جيدا على المدى الطويل) ولها & # x201C؛ مستقرة & # x201D؛ اسمه للإشارة إلى (لقد فشلت & # x2019؛ تغييره، حتى لو كان هناك & # x2019؛ s خرق الثاني)، ولكن هذا & # x2019؛ s غير مناسبة للعرض كعنوان. كل هذا يأتي من أزور الجدول التخزين وأنا ثم انتقل إلى سكل أزور لسحب البيانات العلائقية التي تصف فعلا الخرق. واحدة من السمات في هذا التخزين العلائقية هو الاسم الذي تراه أعلاه.
ما أردت حقا القيام به هو شيء أشبه بهذا:
احصل عليه؟ إلى النقطة السابقة على اسم الخرق، هذا & # x2019؛ ق لا يزال هناك في السمة اسم ولكن الآن لدينا عنوان كذلك. هذا ما تظهره للأشخاص & # x2013؛ & # x201C؛ باتلفيلد هيروز & # x201D؛ & # x2013؛ ولكن الأهم من ذلك، إذا بوكر هو بوند مرة أخرى يمكنني تسمية خرق شيء مثل Gawker2014 والعنوان يمكن أن يكون شيئا ودية على غرار & # x201C؛ قاذف (الجيش السوري هجوم الكتروني) & # x201D؛. وهو يقسم ما هو مستقر ويمكن التنبؤ به من ذلك الذي لا يعني أنه يمكن للأشخاص إنشاء تبعيات مثل الصور أو الأصول الأخرى على السمة نيم.
يجب أن تكون البيانات الأخرى واضحة جدا: تاريخ الإخلال، عندما تمت إضافته إلى النظام، عدد الحسابات التي تم تحديدها، ووصف الخرق (مرة أخرى، قد يتغير هذا إذا كان يجب تعديل النص) و # x201C؛ DataClasses & # x201D؛. واحدة من الأشياء التي كان كثير من الناس قد طلب هو وصف ما تم اختراقه في الخرق لذلك هناك الآن مجموعة كاملة من الصفات من يمكن أن تضاف عن طريق مجموعة على الخرق نفسه. I & # x2019؛ م تظهر بالفعل هذه تحت كل خرق على صفحة المواقع بوند (وهذا هو سبب آخر أنا قد الآن قرص بعض من الأوصاف).
هذا هو تغيير كسر. في حين أن مشاعر أبي هي نفسها & # x2013؛ تقديم اسم حساب، نعود قائمة من الانتهاكات & # x2013؛ لم يعد هناك مجموعة من أسماء الخرق. إذا أنا ببساطة استبدال أبي القديم مع هذا واحد، الاشياء سوف كسر. واجهات برمجة التطبيقات. يجب. تتطور.
تتطور البرامج، يجب أن يتم إصدار واجهات برمجة التطبيقات.
اسمحوا & # x2019؛ ق فقط تكون واضحة وضوح الشمس حول هذا: العالم يتحرك جرا. استمر أبي ل هيب حوالي 2 أشهر، وليس لأنه تم تصميم سيئة ولكن لأن الخدمة أصبحت بعنف، ناجحة بشكل غير متوقع. أنا أحب هذه الأنواع من المشاكل، وذلك ينبغي لك.
الآن كان لي خيار؛ إما أن أستطيع أن أفعل ما كان لي وحرمان الناس من أفضل طريقة، وأنا يمكن أن تضيف إلى الخدمة الحالية بطريقة غير كسر أو أنا يمكن أن تخلق نسخة جديدة (وإن تعريض نفس الكيان بطريقة مختلفة) وبناء انها أفضل طريقة لعنة كنت أعرف كيف. لا بايت لا لزوم لها، على غرار بشكل صحيح (حتى أقرر إصدار جديد هو أكثر صحة) وتمثيل جيد للكيان الذي أنا & # x2019؛ م في نهاية المطاف محاولة للوصول الى المستهلكين & # x2019؛ التطبيقات.
ليس هناك شيء خاطئ في تقديم نسخة جديدة من أبي عندما يكون الشيء الأكثر منطقية القيام به. بكل الوسائل، هل دامنديست للحصول عليه & # x201C؛ الحق & # x201D؛ من اليوم الأول، ولكن فعل ذلك مع توقع أن & # x201C؛ يمين & # x201D؛ هي حالة مؤقتة. هذا هو السبب في أننا بحاجة إلى أن تكون قادرة على الإصدار.
مختلف مخيمات الإصدار.
الحق، فكيف يمكن أن يكون هذا الإصدار الأعمال يكون؟ أعني أنه ينبغي أن يكون ممارسة بسيطة، أليس كذلك؟ والمشكلة هي أنه يحصل على فلسفية جدا، ولكن بدلا من الحصول على تعثر في ذلك الآن، واسمحوا لي أن الخطوط العريضة للمدارس الثلاث المشتركة من الفكر من حيث كيف أنها & # x2019؛ نفذت عمليا:
ورل: يمكنك ببساطة إختراق إصدار واجهة برمجة التطبيقات في عنوان ورل، على سبيل المثال: هاريبينبوند / أبي / v2 / برياكثداكونت / فو رأس طلب مخصص: يمكنك استخدام عنوان ورل نفسه كما كان من قبل ولكن إضافة رأس مثل & # x201C؛ أبي-فيرسيون: 2 & # x201D؛ قبول الرأس: يمكنك تعديل رأس قبول لتحديد الإصدار، على سبيل المثال & # x201C؛ قبول: أبليكاتيون / vnd. haveibeenpwned. v2 + جسون & # x201D؛
كانت هناك العديد من الأشياء المكتوبة على هذا و أنا & # x2019؛ م الذهاب إلى ربط لهم في نهاية المشاركة، ولكن هنا & # x2019؛ ق نسخة مختصرة:
تمتص عناوين ورل لأنها يجب أن تمثل الكيان: إنني أتفق فعلا مع هذا ما أن الكيان I & # x2019؛ استرجاع هو حساب خرق، وليس نسخة من حساب خرق. من الناحية الدلالية، فإنه & # x2019؛ s ليس صحيحا حقا ولكن اللعنة عليه & # x2019؛ ق سهلة الاستخدام! تمتص رؤوس الطلبات المخصصة لأنها ليست طريقة دلالية لوصف المورد: توفر لنا مواصفات هتب وسيلة لطلب الطبيعة التي نمثلها مثل المورد الذي يتم تمثيله عن طريق رأس القبول، ولماذا تتكاثر هذه؟ قبول الرؤوس تمتص لأنه يصعب اختبارها: لم يعد بإمكاني إعطاء عنوان ورل لشخص ما سوى & # x201C؛ هنا، انقر على هذا & # x201D؛، بدلا من ذلك يجب إنشاء الطلب بعناية وتهيئة رأس القبول بشكل مناسب .
تميل الحجج المختلفة لكل نهج ومعارضته إلى الانتقال من & # x201C؛ هذا هو & # x2018؛ يمين & # x2019؛ طريقة للقيام بذلك ولكن هو أقل عملية & # x201D؛ من خلال إلى & # x201C؛ هذه هي أسهل طريقة لإنشاء شيء مستهلك مما يجعله & # x2018؛ يمين & # x2019؛ & # x201D ؛. هناك الكثير من النقاش حول الوسائط الفائقة، والتفاوض على المحتوى، وما هو & # x201C؛ ريست & # x201D؛ وجميع المسائل الأخرى. للأسف هذا غالبا ما يحصل الفلسفية ويفقد البصر ما يجب أن يكون الهدف الحقيقي: بناء البرمجيات التي تعمل ولا سيما لأبي، مما يجعلها قابلة للاستهلاك بسهولة.
و & # x2019؛ ق عن وجود عقد مستقر، غبي!
أكثر أهمية من كل الهتاف والهذيان حول القيام بذلك بهذه الطريقة أو بهذه الطريقة هو إعطاء الناس الاستقرار. إذا كانوا يستثمرون جهدهم كسب جهدهم كتابة التعليمات البرمجية لاستهلاك أبي الخاص بك ثم كنت & # x2019؛ د أفضل لعنة جيدا لا تذهب وكسرها على مزيد من أسفل الخط.
بصراحة، المناقشات حول ما هو & # x201C؛ ريستفول & # x201D؛ مقابل ما ليس كما لو أن المصطلح نفسه سوف تملي نجاحك هو مجرد المكسرات. تحويل هذه المناقشة إلى & # x201C؛ وفيما يلي الأسباب العملية التي تجعل هذا الأمر منطقيا وهذا هو ما قد يحدث إذا لم تجر ذلك & # x201D؛ و & # x2019؛ جميع الأذنين. المشكلة هي، حتى أصوات العقل في المناقشات الصاخبة ترك الشك فيما هو حقا أفضل نهج، وبالتالي أنا & # x2019؛ وصلت إلى حل وسط & # x2026؛
وهنا 3 طرق خاطئة للاستهلاك هيب أبي يمكنك الآن اختيار من بينها.
حسنا، والآن بعد أن أنشأنا & # x2019؛ ولكن بوضوح أنك تفعل ذلك خطأ، أنا & # x2019؛ d أود أن أعطيك الخيار للاختيار من بينها أي واحدة من 3 طرق خاطئة. انتظر & # x2013؛ ماذا؟! هذا & # x2019؛ ق مثل هذا: ومع ذلك أنا تنفيذ أبي، فإنه إما أن يكون من الصعب جدا أن تستهلك، أكاديمية جدا، من المرجح جدا أن تفشل في وكيل أو شيء جدا شيء. بدلا من اختيار 1 طريقة خاطئة، وأنا & # x2019؛ قررت أن أعطيك كل 3 طرق خاطئة ويمكنك اختيار واحد الذي هو أقل خطأ بالنسبة لك.
طريقة خاطئة 2 - رأس طلب مخصص:
حتما، شخص ما يقول لي أن توفير 3 طرق خاطئة هو شيء خاطئ القيام به. فاز & # x2019؛ t يعني المزيد من كود كودج للحفاظ على؟ لا، فهذا يعني ببساطة أن تطبيق ويب أبي الأساسي مزين بخاصيتين:
أول واحد هو مجرد قيود التوجيه التي تنفذ روتفاكتوريواتريبوت. أنا تمرير في الطريق وتمرير في النسخة التي يمكن تعيين إلى ذلك الطريق ثم تنفيذ يبحث عن وجود إما & # x201C؛ أبي الإصدار و # x201D. رأس أو رأس قبول يتطابق مع هذا النمط:
إذا كان الإصدار المحدد في أي من هذين الخيارين مطابقا للإصدار المحدد في قيد التوجيه، فسيتم استخدام الطريقة التي سيتم استدعاؤها. هذا هو التكيف بسيط من هذه العينة على كوديبلكس.
السمة الثانية تزيين طريقة GetV2 أعلاه يأتي من باب المجاملة من أبي ويب 2 وميزة توجيه السمة. بالطبع يمكننا أن نفعل دائما التوجيه في أبي ويب ولكن كان عادة ما تعرف على الصعيد العالمي. توجيه السمة من هذا القبيل يجلب تعريف المسار إلى السياق الذي يتم تطبيقه ويجعل من القتلى من السهل أن نرى ما هو عمل وحدة تحكم سيتم استدعاؤها عن طريق ما الطريق. وهذا يعني أيضا أن تطبيقات لجميع 3 طرق خاطئة للاتصال أبي الجلوس معا في مكان واحد أنيق.
لذلك باختصار، لا، هذا لا & # x2019؛ ر خلق الكثير من كلودج وسهلة جدا للحفاظ على. ستعيد كل واحدة من المقاربات الثلاثة نفس النتيجة بالضبط والأهم من ذلك، أنها ستظل مستقرة ولن تتغير بأي طريقة كسر، وفي نهاية المطاف، فإن هذا هو الأكثر & # x2019؛ s الشيء المهم بغض النظر عن الخيار الذي تختاره. التنفيذ الكامل الآن أيضا موثقة بشكل واضح على صفحة أبي للموقع.
ولكن ماذا لو لم يتم تحديد إصدار؟
أنت تعرف بت حيث قلت يمكنك & # x2019؛ ر كسر ما & # x2019؛ s بالفعل هناك؟ نعم، وهذا يعني أنه إذا كنت تفعل ما تفعله الآن & # x2013؛ عدم تحديد إصدار & # x2013؛ ثم تحصل على ما تحصل عليه الآن. وبعبارة أخرى، لا يوجد طلب للحصول على إصدار محدد يعني أنك تحصل على الإصدار 1.
أنا & # x2019؛ م موافق تماما مع ذلك بغض النظر عن أن وصلت إلى هذه النقطة بشكل افتراضي. أنا أعرف بعض الناس دائما ترغب في العودة إلى أحدث إصدار إذا كان عدد إيسن & # x2019؛ ر المحدد، ولكن إمهو الذي يكسر كله & # x201C؛ عقد مستقر & # x201D؛ هدف؛ ما تحصل عليه من أبي اليوم قد تكون مختلفة تماما عن ما تحصل غدا إذا أنا تنقيحها. هذا من شأنه أن تمتص وسوف كسر الأشياء.
لديك 3 خيارات، ولكن تفضيلي الشخصي هو & # x2026؛
لدي ترف السيطرة على كل من أبي والمستهلك الرئيسي من كونها هيب الموقع نفسه. وبالنظر إلى I & # x2019؛ لقد قدمنا ​​3 خيارات لاستهلاك واجهة برمجة التطبيقات، أي واحد يمكنني استخدام نفسي؟
أنا & # x2019؛ ذهب مع المفضلة الفلسفية التي هي لتحديد ذلك عن طريق رأس قبول. لا أظن أن هذا صحيح، والبعض الآخر خاطئ، بل أعتقد أن هذا يجعل الأمر أكثر منطقية لسببين رئيسيين:
أوافق على أن عنوان ورل يجب ألا يتغير: إذا وافقنا على أن عنوان ورل يمثل المورد ثم ما لم نحاول & # x2019؛ تمثيل إصدارات مختلفة من المورد نفسه، لا، لا أريد تغيير عنوان ورل. خرق فو هي دائما خرق فو وأنا لا & # x2019؛ ر أعتقد أن فقط لأنني تغيير البيانات التي تم إرجاعها عن فو أن موقع فو يجب أن تتغير. أوافق على أن قبول الرؤوس يصف كيف تريد & # x2019؛ d مثل البيانات: هذا هو دلالة من المواصفات هتب وكما أن الدلالات الدلالية لأفعال الطلب تجعل الكثير من المعنى (أي أننا نحصل على أو نضع أو حذف أو نشر) وكذلك الطريقة التي يرغب العميل في تمثيل المحتوى.
لا يعني هذا بأي حال من الأحوال أن أعتقد أن الاثنين الآخرين خاطئون وبصراحة، لا توجد طريقة أفضل لتبادل أبي مع شخص ما من القول & # x201C؛ هنا، انقر فوق هذا & # x201D؛، ولكن عندما أستطيع بسهولة بناء الطلب وإدارة رؤوس، وأنا & # x2019؛ ذهب مع هذا الطريق.
في الواقع، وتأتي للتفكير في ذلك، وأنا أيضا استخدام الإصدار في مسار المجال. لماذا ا؟ فقط من خلال عملية كتابة هذا أبي كنت باستمرار التواصل مع الناس حول طرق الاستعلام عنه (أكثر على ذلك في وقت لاحق) والسمات التي يعود. أن تكون قادرا على الذهاب نفض الغبار على ويقول & # x201C؛ مهلا، هنا & # x2019؛ ق ما & # x2019؛ م التفكير & # x201D؛ وأنها ببساطة انقر عليه والحصول على نتائج لا تقدر بثمن. هذه هي النقطة التي يقترحها أنصار إصدار عناوين ورل بشكل صحيح: لا يمكنك ببساطة إجراء ذلك عندما تكون & # x2019؛ تعتمد على الرؤوس.
أوه، وفي حال كنت & # x2019؛ إعادة فحص لي، في وقت كتابة هذا أنا لم أكن & # x2019؛ ر توالت بعد الموقع إلى v2 من أبي. الآن بعد أن يتم سحب البيانات الخرق مرة أخرى في أبي عندما يحدث بحث فهذا يعني أن لدي ترف عدم تحميل جميع الخروقات في المصدر على تحميل الأولي (التي لم تكن أبدا أن تكون مستدامة مع مجموعة البيانات توسع). هذا & # x2019؛ ليرة لبنانية حفظ مجموعة من حركة المرور الصادرة وتسريع الأمور بالنسبة للأشخاص من حيث الحصول على تحميل الموقع، ولكنه يعني أيضا مجرد المزيد من العمل قليلا على نهايتي. ترّقب.
في الختام.
من الواضح أنني & # x2019؛ لقد كان قليلا اللسان في الخد هنا فيما يتعلق كل شيء يجري الخطأ ولكن بصراحة، وكلما قرأت على هذا والمزيد من الأسئلة التي تسأل، وأكثر خطأ كل طريق يبدو بطريقة أو بأخرى. في الواقع أنا أعرف لعنة جيدا أن هناك جوانب من بلدي التنفيذ التي ستشار إليها باسم & # x201C؛ خطأ & # x201D؛ (أستطيع أن أفكر في اثنين على الأقل) وبطبيعة الحال أنا & # x2019؛ م تستعد للهجوم المحتمل من ردود الفعل في هذا الشأن. والشيء هو على الرغم من كل من هذه الخيارات يعمل وبصراحة، لجميع الأغراض العملية، فإنها تعمل تماما وكذلك بعضها البعض.
إذا كنت قد أترك الآخرين يفكرون في كيفية إصدار واجهات برمجة التطبيقات (أبيس) الخاصة بهم بفكر نهائي: لن يستخدم أي شخص واجهة برمجة التطبيقات (أبي) إلا بعد إنشائه. وقف المماطلة. لا شيء من هذه & # x201C؛ سيئ & # x201D؛ في أي معنى ملموس، أنها & # x2019؛ إعادة مختلفة فقط. أنها كلها قابلة للاستهلاك بسهولة، فإنها جميعا عودة نفس النتيجة وليس من بينها من المرجح أن يكون لها أي تأثير حقيقي على نجاح المشروع الخاص بك.
المراجع.
تجاوز المكدس: أفضل الممارسات لإصدار أبي؟ (سؤال كبير، إجابات كبيرة، أغلقت كما & # x201c؛ غير بناء & # x201d؛، أفترض لأن & # x201c؛ بيل سحلية و # x201d؛ خرجت على الجانب الخطأ من السرير ذلك الصباح) تم إصدار واجهات برمجة التطبيقات؟ (مقارنة جيدة بين ممارسات الإصدار عبر الخدمات، وإن كان ذلك الآن عامين من العمر) كوديبلكس: نموذج قيود التوجيه (مرتبط في صفحة ويب أبي ل ميكروسوفت & # x2019؛ كمثال على إصدار واجهات برمجة التطبيقات عن طريق إضافة رأس مخصص) كودبيتر: فيرسيونينغ ريستفول الخدمات (واقعية جدا ووصف جيد للطرق المختلفة التي قد تتغير بها واجهة برمجة التطبيقات) مدونة فيناي ساهني & # x2019: أفضل الممارسات لتصميم واجهة برمجة تطبيقات ريستفول براغماتية (هو & # x2019؛ s؛ ريسولتينغ فور ورل فيرسيونينغ فور إنديا & # x201C ؛ استكشاف المستعرض & # x201D؛) المحورية لانس: إصدار أبي (عرض جيد للآراء المتعارضة هناك) ويب كومة من الحب: أسب ويب أبي الإصدار مع أنواع وسائل الإعلام (جيد نهاية إلى نهاية تجول من إنشاء التطبيق لدعم الإصدار من قبل التفاوض على المحتوى)
مرحبا، أنا & # x27؛ م تروي هانت، أكتب هذا بلوق، وخلق دورات ل بلورالزيت وأنا المدير الإقليمي مايكروسوفت و مفب الذي يسافر العالم يتحدث في الأحداث والمهنيين تكنولوجيا التدريب.
مرحبا، أنا & # x27؛ م تروي هانت، أكتب هذا بلوق، وخلق دورات ل بلورالزيت وأنا المدير الإقليمي مايكروسوفت و مفب الذي يسافر العالم يتحدث في الأحداث والمهنيين تكنولوجيا التدريب.
الأحداث القادمة.
أنا عادة تشغيل ورش خاصة حول هذه، وهنا الأحداث العامة القادمة سأكون على:
لم يكن لديك بلورالزيت بالفعل؟ ماذا عن التجربة المجانية لمدة 10 أيام؟ التي سوف تحصل على الوصول إلى الآلاف من الدورات من بينها العشرات من بلدي بما في ذلك:
"سحابة أبدا يذهب إلى أسفل"، أزور سلاز وغيرها من التوافه التوافر.
وهنا كيف اختراق بيل - حقن سكل ضربة تلو الأخرى.
إشترك الآن!
حقوق الطبع والنشر 2017، تروي هانت.
تم ترخيص هذا العمل بموجب ترخيص كريتيف كومونس أتريبوتيون 4.0 إنترناشونال ليسنز. وبعبارة أخرى، حصة بسخاء ولكن تقديم الإسناد.
تنصل.
الآراء التي أعرب عنها هنا هي قد لا تعكس تلك التي أعمل معها، وزملائي، زوجتي، الأطفال وما إلى ذلك ما لم أقتبس شخص ما، مجرد وجهات النظر الخاصة بي.
نشرت مع شبح.
هذا الموقع يعمل بشكل كامل على الشبح ويتم بفضل الدعم الكريمة. اقرأ المزيد عن سبب اختياري لاستخدام جوست.

No comments:

Post a Comment