Angular-styleguide: المسؤولية الفردية للخدمات

تم إنشاؤها على ٢٨ يوليو ٢٠١٥  ·  6تعليقات  ·  مصدر: johnpapa/angular-styleguide

معلومات جيدة جدا في دليل الأسلوب هذا. لدي سؤال حول الخدمات والمسؤولية الفردية ومدى دقة ذلك. على سبيل المثال ، لدي تطبيق فيديو بقدرات خادعة. في البداية يكون هيكل خدمتي كما يلي:


// videos.service.js
(function() {

    'use strict';

    function Videos($http) {
        var service = {
            getVideos: getVideos,
            getVideo: getVideo,
            saveVideo: saveVideo,
            deleteVideo: deleteVideo
        }

        return service;

        function getVideos() {
            // return video list
        }

        function getVideo() {
            // return video by id
        }

        function saveVideo() {
            // add/edit video
        }

        function deleteVideo() {
            // delete video
        }
    }

})();

هل من الأفضل فصل الوظائف مثل هذا؟


// videos.service.js
(function() {

    'use strict';

    function Videos($http) {
        var service = {
            getVideos: getVideos,
            getVideo: getVideo
        }

        return service;

        function getVideos() {
            // return video list
        }

        function getVideo() {
            // return video by id
        }
    }

})();

// videos_crud.service.js
(function() {

    'use strict';

    function VideosCrud($http) {
        var service = {
            saveVideo: saveVideo,
            deleteVideo: deleteVideo
        }

        return service;

        function saveVideo() {
            // add/edit video
        }

        function deleteVideo() {
            // delete video
        }
    }

})();

قد يعود هذا إلى التفضيل الشخصي ، لكنني اعتقدت أنني سأحصل على أي فكرة قد تكون لدى شخص ما بشأن هذا.

شكرا على أي اقتراحات.

question

ال 6 كومينتر

لست خبيرًا في Angular ، لكن كخدمة CRUD ، قد تتضمن جميع إجراءات CRUD ، لذا لا يجب عليك كسرها في مقاطع الفيديو (مع يحصل) و video_crud (مع حفظ / إنشاء وحذف). خلاف ذلك ، قد يتم الخلط بين معنى خدمة CRUD.

ومع ذلك ، انتظر المزيد من الآراء حول هذا الموضوع :)

للوهلة الأولى ، تتعامل خدمتك الأولية مع CRUD مقابل نفس نقطة نهاية REST API على الأرجح ، وتتعامل مع وظيفة الثبات المتعلقة بالفيديو. له نفس التبعية على $ http. لذلك لا أرى أي سبب لتقسيم الأشياء ، في هذه الحالة قد ينتهي بك الأمر مع هذه الخدمات المقسمة اعتمادًا على بعضها البعض في حال احتجت إلى تنفيذ طريقة udateVideo تحتاج إلى استدعاء getVideo لتحميل بعض البيانات الوصفية ، على سبيل المثال.

viniciuskneves ستوفر هذه الفكرة التطبيق العملي عند توفير تطبيق للمستخدمين العامين مقابل المستخدمين المرحلة يجب أن

@ tdvanderveen أميل إلى الموافقة على ذلك أيضًا. أعتقد أن دقة الفصل موجودة على الأرجح أكثر لنوع الوحدة نفسها بدلاً من ما تفعله الوحدة.

السؤال الأول هو "لماذا؟". ثم ... "ما الفائدة التي ستجنيها من هذا؟"

لا أعتقد أن هناك فائدة واضحة. ما لم تتمكن من تحديد ذلك بوضوح ولم يتم ملؤه بـ IFs و MAYBEs ، فقد يكون له قيمة.

إغلاق القضية لأنني لا أعتقد أنه سيتم إضافة هذا إلى الدليل ، لكن السؤال جيد وأعتقد أن الإجابة عليه.

وجهة نظري: ليس هناك قيمة كافية للقيام بذلك

johnpapa شكرا على المدخلات. حصلت على التوضيح الذي أحتاجه.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

jejja picture jejja  ·  25تعليقات

amiceli picture amiceli  ·  7تعليقات

Bekt picture Bekt  ·  13تعليقات

philmerrell picture philmerrell  ·  10تعليقات

bampakoa picture bampakoa  ·  3تعليقات