القضبان: موارد مريحة: يستحق استخدام أو غير مرن/مبالغ فيه؟
-
27-09-2019 - |
سؤال
لقد كنت أتعامل مع القضبان خلال الشهرين الماضيين وحتى الآن كل شيء يسير على ما يرام - ولكن هناك مجال واحد أشك قليلاً عليه.
ما زلت أسمع عن أفراح موارد القضبان المريحة: أي ، "مورد: FOO" في التكوين/الطرق ، وإجراءاتك المريحة 7 في وحدة التحكم.
باستثناء الأشياء البسيطة للغاية (على سبيل المثال ، تم تنفيذ 99 ٪ عن طريق تشغيل "إنشاء سقالة") ، أجد أنه من السهل محاولة الضغط على وظيفة مشروعي في هذا النهج من مجرد مطابقة عناوين URL كل إجراء حسب الحاجة.
لكنني ما زلت أشعر بأنني مخطئ ، وأن الموارد المريحة في جميع الظروف باستثناء أكثر ما تبقى ، هي الطريق للذهاب.
لذا:
(أ) هل يمكن لأي شخص تقديم رأي حول هذا؟
(ب) بالنسبة إلى الأشخاص ذوي الخبرة ، ما هي ٪ من طرقك في المشروع النموذجي: الموارد وما هي النسبة المئوية التي يتم ترميزها على حدة؟ هتافات...
المحلول
الموارد مريحة ، لكنها ليست ميزة "مقاس واحد يناسب الجميع". بعض الأشياء لا معنى لها مع الطرق السبعة.
لا تنسى تستطيع:
- استبعاد طرق محددة مع
:except
. - تضمين طرق محددة فقط مع
:only
. - أضف طرقك الخاصة إلى المورد.
لذلك فهي ليست غير مرنة كما تعتقد. ولكن إذا ، بعد أخذ هذه النقاط الثلاث في الاعتبار ، فإن المورد لا "يشعر بالصواب" ، تخطاها! لم يكن من المفترض أبدًا استبدال التوجيه المنتظم ، بل إنه يحاول فقط تجريد حالة الاستخدام الأكثر شيوعًا.
إذا تخطيت الموارد المريحة تمامًا ، فستفتقد الكثير من الوظائف المجانية. استخدمه بحكمة وستكون بخير.
نصائح أخرى
بشكل عام أبدأ مشروعًا مع وضع بنية الراحة في الاعتبار. أقوم ببناء وظيفتي الأساسية بهذه الطريقة ، لكن مع تقدم المشروع/الموقع ، أكتب المزيد والمزيد من المشاهدات التي لا تتناسب مع الهندسة المعمارية. مواقع التسويق والوظائف الموازية هي أمثلة مثالية على ذلك.
هنا مقال عن النهج:
http://ablogaboutcode.com/2010/11/22/to-be-or-not-to-be-restful-ruby-on-roils-best-practices/
قبل أن تبدأ ، إليك بعض الأسئلة التي قد ترغب في طرحها على نفسك:
- هل تتعامل وحدة التحكم/العرض هذه بشكل أساسي مع كائن/كيان مثل منشور ، مدونة؟
- هل ستتوفر جميع الإجراءات الجديدة والتحديث والحذف والتحرير والإجراءات الجديدة على الويب؟
كمبدأ توجيهي ، إذا أجبت بنعم على هذين السؤالين ، فمن الأفضل أن تبدأ بالراحة وتتوقع أن تستخدم الهندسة المعمارية في النهاية كبنة بناء لإجراءات إضافية ووجهات نظر قد ترغب في القيام بها. بخلاف ذلك ، اختر عنوان URL الذي يمثل أفضل ما سيظهره الإجراء أو يقوم به ( /الأرشيف ، /الجولة ، /ديسمبر-أوفر) وتأكد لإنشاء).