পুনরায় ব্যবহারযোগ্য সিঙ্গলটন অবজেক্টস এমন পরিষেবা সরবরাহ করে। এগুলি ব্যবহারকারীর অ্যাঙ্গুলারজেএস অ্যাপ্লিকেশনগুলিতে কোড ভাগ করে নিতে ব্যবহার করা যেতে পারে। এগুলি নির্দেশ, ফিল্টার এবং and । এই নিবন্ধে, আমরা AngularJS এর কারখানাটি বুঝতে পারি।
অ্যাঙ্গুলারজেএস-এ কারখানা কী?
কারখানা একটি কৌণিক ফাংশন যা মানগুলি ফেরত দিতে ব্যবহৃত হয়। কারখানার দ্বারা চাহিদা অনুসারে একটি মান তৈরি করা হয়, যখনই কোনও পরিষেবা বা নিয়ামক প্রয়োজন হয়। মানটি তৈরি হয়ে গেলে, এটি সমস্ত পরিষেবা এবং নিয়ামকদের জন্য পুনরায় ব্যবহৃত হয়।
আমরা একটি পরিষেবা তৈরি করতে কারখানাটি ব্যবহার করতে পারি।
পরিষেবা এবং কারখানার মধ্যে পার্থক্য
- একটি পরিষেবা নিম্নলিখিত উপায়ে সংজ্ঞায়িত করা যেতে পারে:
app.service ('ফার্স্ট সার্ভিস', ফাংশন () {
this.sayHola = ফাংশন () {
কনসোল.লগ ('হ্যালো')
}
সি ++ এ সাধারণ মার্জ সাজানোর প্রোগ্রাম
})
.Service () পদ্ধতিটি পরিষেবাটি সংজ্ঞায়িত করে এমন নাম এবং ফাংশনটি গ্রহণ করে। আমরা নিম্নলিখিত পদ্ধতিতে এটি ইনজেকশন করতে পারি:
app.controller ('অ্যাপকন্ট্রোলার', ফাংশন (ফার্স্ট সার্ভিস) {
ফার্স্ট সার্ভিস.সায়হেলো () // লগ 'হ্যালো'
})
- অন্যদিকে একটি কারখানা নিম্নলিখিত উপায়ে সংজ্ঞায়িত করা যায়:
অ্যাপ.ফ্যাক্টরি ('ফার্স্ট সার্ভিস', ফাংশন () {
ফিরে
sayHola: ফাংশন () {
কনসোল.লগ ('হ্যালো')
}
}
})
কারখানা () এছাড়াও এমন একটি পদ্ধতি যা একটি নাম এবং ফাংশন নেয় যা কারখানাকে সংজ্ঞায়িত করে। কোনও পরিষেবা ইনজেকশনের মতোই আমরা এটি ইনজেক্ট করতে পারি। একটি পরিষেবা এবং কারখানার মধ্যে প্রধান পার্থক্য হ'ল আমরা আক্ষরিক একটি বস্তু ফিরে কারখানার ক্ষেত্রে (এটি ব্যবহার না করে) কারণটি হ'ল পরিষেবাটি কনস্ট্রাক্টর ফাংশন যেখানে কারখানা নেই not
- আরও ভাল বোঝার জন্য, আসুন কারখানার ফাংশনটি দেখুন ():
চআনশন কারখানা (নাম, ফ্যাক্টফ্যান, প্রয়োগ) {
রিটার্ন প্রদানকারী (নাম, {
: পেতে: প্রয়োগ! == মিথ্যা? ImportReturnValue (নাম, ফ্যাক্টফন): ফ্যাক্টফ্যান
})
}
উপরের কোডটিতে, এটি নাম এবং পাস কারখানার ফাংশন নেয় takes এটি একই নামের সাথে একটি সরবরাহকারীর সাথে একটি প্রদান করেআমি পেতে
পদ্ধতি (যা কারখানার কাজ)। এটি কারণগুলির কারণেই যখনই ইনজেক্টরকে একটি নির্দিষ্ট নির্ভরতার জন্য জিজ্ঞাসা করা হয়, ইনজেকশনারের সরবরাহকারীকে সেই পরিষেবাটির উদাহরণ জিজ্ঞাসা করে কল করেআমি পেতে ()
পদ্ধতি
- ফার্স্ট সার্ভিস ইনজেকশনে, কারখানার ফাংশনগুলি কল হয়:
ফার্স্ট সার্ভিসপ্রোভাইডার $ পাবেন () // পরিষেবার উদাহরণটি ফেরত দিন
- পরিষেবা কোডের জন্য:
ফাংশন পরিষেবা (নাম, নির্মাতা) {
qlikview টিউটোরিয়াল ধাপে ধাপে
ফ্যাক্টরি (নাম, ['ject ইনজেক্টর', ফাংশন ($ ইনজেক্টর))
প্রত্যাবর্তন $ ইনজেক্টর.ইনস্ট্যানিয়েট (কনস্ট্রাক্টর)
}])
}
আমরা যখন ফোন করিপরিষেবা (), কারখানা ()
আসলে যাকে বলা হয়। এটি একটি ফাংশন পাস করার মাধ্যমে করা হয় যা ইঞ্জেক্টরকে কনস্ট্রাক্টর দ্বারা কোনও বস্তুর তাত্ক্ষণিক করতে বলে। সহজ কথায়, পরিষেবা একটি পূর্বনির্ধারিত কারখানাকে কল করে।
ject ইনজেক্টর.ইনস্ট্যানিয়েট ()
কলঅবজেক্ট.ক্রিয়েট ()
কনস্ট্রাক্টর ফাংশন সহ। এই কারণে এই পরিষেবা ব্যবহৃত হয়।
জাভাস্ক্রিপ্টে কারখানার উদাহরণ
var firstModule = কৌণিক.মডিউল ('ফার্স্টমডিউল', [])
ফার্স্টমডিউল.ফ্যাক্টরি ('ফার্স্টফ্যাক্টরি', ফাংশন () {
'একটি মান' ফেরত
})
জাভাতে ডেটে স্ট্রিং রূপান্তর করা
ফার্স্টমডিউল কন্ট্রোলার ('ফার্স্টকন্ট্রোলার', ফাংশন ($ স্কোপ, ফার্স্ট ফ্যাক্টরি)
কনসোল.লগ (প্রথম কারখানা)
})
কারখানায় ইনজেকশনের মান
নিম্নলিখিত পদ্ধতি দ্বারা একটি মান কারখানায় ইনজেকশনের ব্যবস্থা করা যেতে পারে:
var firstModule = কৌণিক.মডিউল ('ফার্স্টমডিউল', [])
ফার্স্টমডিউল.ভ্যালু ('সংখ্যামূল্য', 29)
ফার্স্টমডিউল কন্ট্রোলার ('ফার্স্টকন্ট্রোলার', ফাংশন ($ স্কোপ, নম্বর ভ্যালু)
কনসোল.লগ (নম্বর ভ্যালু)
})
বিঃদ্রঃ: এটি অবশ্যই লক্ষ রাখতে হবে যে কারখানার ফাংশন দ্বারা উত্পাদিত মানটি ইনজেকশন করা হয়, কারখানার ফাংশনটি নিজেই নয়।
এটির সাথে আমরা অ্যাংুলারজেএস নিবন্ধে এই কারখানার সমাপ্তি লাভ করি। আমি আশা করি কারখানাটি ঠিক কী এবং কোনও পরিষেবা থেকে এটি কীভাবে পৃথক হয় তা আপনি বুঝতে পেরেছেন।
গহ্যাক আউট এডুরেকা, বিশ্বস্ত জুড়ে 250,000 এরও বেশি সন্তুষ্ট শিক্ষার্থীর নেটওয়ার্ক সহ একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা by কৌণিক একটি জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক যা স্কেলযোগ্য, এন্টারপ্রাইজ এবং পারফরম্যান্স ক্লায়েন্ট-সাইড ওয়েব অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। কৌণিক কাঠামোর গ্রহণযোগ্যতা উচ্চ হওয়ায়, অ্যাপ্লিকেশনটির পারফরম্যান্স ম্যানেজমেন্ট হ'ল সম্প্রদায়-পরিচালিত পরোক্ষভাবে আরও ভাল কাজের সুযোগ চালাচ্ছে। কৌণিক শংসাপত্র প্রশিক্ষণের লক্ষ্য এন্টারপ্রাইজ অ্যাপ্লিকেশন বিকাশের চারপাশে এই সমস্ত নতুন ধারণাটি আচ্ছাদন করা।