আমি ভেবেছিলাম যে আপনি কীভাবে একটি অ্যাপ্লিকেশনে মডিউলগুলি ফিট করতে পারেন সে সম্পর্কে কথা বলে আমি উপরের উত্তরের প্রসারকে বাড়িয়ে দেব। আমি এই সম্পর্কে ডাগ ক্রকফোর্ড বইটিতে পড়েছি তবে জাভাস্ক্রিপ্টে নতুন হয়ে যাচ্ছিল এটি এখনও কিছুটা রহস্যজনক ছিল।
আমি এসি # ব্যাকগ্রাউন্ড থেকে এসেছি তাই সেখান থেকে দরকারী বলে কিছু পরিভাষা যুক্ত করেছি।
এইচটিএমএল
আপনার কাছে কিছু শীর্ষ স্তরের এইচটিএমএল ফাইল থাকবে। এটি আপনার প্রকল্পের ফাইল হিসাবে এটি ভাবতে সহায়তা করে। আপনি প্রকল্পে যুক্ত প্রতিটি জাভাস্ক্রিপ্ট ফাইল এটিতে যেতে চায়, দুর্ভাগ্যক্রমে আপনি এর জন্য সরঞ্জাম সমর্থন পাবেন না (আমি আইডিইএ ব্যবহার করছি)।
এই স্ক্রিপ্ট ট্যাগ সহ আপনার প্রকল্পে ফাইল যুক্ত করতে হবে:
<script type="text/javascript" src="app/native/MasterFile.js" /></script>
<script type="text/javascript" src="app/native/SomeComponent.js" /></script>
এটি ট্যাগগুলি ভেঙ্গে যাওয়ার ফলে জিনিসগুলি ব্যর্থ হওয়ার কারণ হয়ে দেখা দেয় - যদিও এটি এক্সএমএল দেখে মনে হচ্ছে এটি সত্যিই ক্রেজিয়ার নিয়ম সহ কিছু!
নেমস্পেস ফাইল
MasterFile.js
myAppNamespace = {};
এটাই. এটি কেবল আমাদের বাকী কোডগুলিতে থাকার জন্য একটি একক বিশ্বব্যাপী পরিবর্তনশীল যুক্ত করার জন্য। আপনি এখানে নেস্টেড নেমস্পেসগুলি ঘোষণা করতে পারেন (বা তাদের নিজস্ব ফাইলগুলিতে)।
মডিউল (গুলি)
SomeComponent.js
myAppNamespace.messageCounter= (function(){
var privateState = 0;
var incrementCount = function () {
privateState += 1;
};
return function (message) {
incrementCount();
//TODO something with the message!
}
})();
আমরা এখানে যা করছি তা হ'ল আমাদের অ্যাপ্লিকেশনটির একটি ভেরিয়েবলের জন্য একটি বার্তা কাউন্টার ফাংশন। এটি এমন একটি ফাংশন যা কোনও ফাংশন দেয় যা আমরা তাত্ক্ষণিকভাবে সম্পাদন করি ।
ধারণা
আমি মনে করি যে এটি সামারকম্পোনেন্টের শীর্ষস্থানটিটি যেখানে আপনি কোনও কিছুর ঘোষণা দিচ্ছেন এমন নেমস্পেস হিসাবে ভাবতে সহায়তা করে। এটির একমাত্র সতর্কতা হ'ল প্রথমে আপনার সমস্ত নেমস্পেসগুলি অন্য কোনও ফাইলে উপস্থিত হওয়া দরকার - এগুলি কেবলমাত্র আমাদের অ্যাপ্লিকেশন ভেরিয়েবলের দ্বারা নিযুক্ত অবজেক্ট।
আমি এই মুহুর্তে এটির সাথে কেবলমাত্র ছোট পদক্ষেপ নিয়েছি (আমি কোনও এক্সট্রা অ্যাপ্লিকেশন থেকে কিছু সাধারণ জাভাস্ক্রিপ্ট রিফ্যাক্টর করছি যাতে এটি পরীক্ষা করতে পারি) তবে এটি বেশ সুন্দর বলে মনে হচ্ছে আপনি ' এর কোথাও এড়ানো পর্যন্ত সামান্য কার্যকরী ইউনিটগুলি সংজ্ঞায়িত করতে পারেন it ' ।
আপনি এই স্টাইলটি কোনও ফাংশন ফাংশন দিয়ে ফাংশনটি ফিরিয়ে দিয়ে তাত্ক্ষণিকভাবে ফোন না করে ফিরে এসে কনস্ট্রাক্টরদের সংজ্ঞায়িত করতেও ব্যবহার করতে পারেন।