এই প্রশ্নের জবাবে আরও অনেক কিছুই বলা যায়, এগুলিই আমার প্রথম চিন্তা যা আমার মনে ঝাঁপিয়ে পড়েছিল:
প্রথম এবং সর্বাগ্রে, মনে রাখবেন যে private
কেবল একটি সংকলন-সময় নির্মাণ - এটি রানটাইমে কার্যকর করা যায় না ( প্রাসঙ্গিক আলোচনার জন্য এখানে এবং এখানে দেখুন )। এর মতো, দয়া করে private
সুরক্ষার প্রয়োজনে যে কোনও উপায়ে কার্যকর হওয়ার কোনও ধারণা থেকে নিজেকে নিষ্ক্রিয় করুন । এটি কেবল এটি সম্পর্কে নয়।
এটা তোলে হয় এনক্যাপস্যুলেশন সম্পর্কে, এবং আপনি একটি ক্ষেত্র অথবা আপনার উপাদান উপর পদ্ধতি আছে যখন যে আপনি এটা encapsulate করতে চান, এটা স্পষ্ট যে এটা এমন জায়গা থেকে অ্যাক্সেস করা উচিত উপার্জন, তাহলে আপনি একেবারে এটা করা উচিত private
: যে কি private
জন্য: এটি আপনার অভিপ্রায় ইঙ্গিত দেয় যে আপনি যা কিছু রেখেছেন তা ক্লাসের বাইরে থেকে স্পর্শ করা উচিত নয়।
একই জন্য যায় public
: এটিও একটি সংকলন-কেবল-নির্মাণমূলক কাঠামো, সুতরাং ক্লাসের সদস্যরা public
ডিফল্টরূপে সত্য হয় যদিও সত্য, রানটাইমে ঠিক তার শূন্য থাকে। তবে যখন আপনার এমন কোনও সদস্য রয়েছে যা আপনি আপনার শ্রেণীর API এর অংশ হিসাবে বহির্বিশ্বে স্পষ্টভাবে প্রকাশ করতে চান, আপনার public
এই উদ্দেশ্যটি সিগন্যাল করার জন্য একেবারে করা উচিত : এটাই তার public
পক্ষে।
এটি সাধারণভাবে টাইপস্ক্রিপ্টের জন্য প্রযোজ্য। বিশেষভাবে কৌণিক ক্ষেত্রে, উপাদান শ্রেণীর উপর সর্বজনীন সদস্য থাকার জন্য অবশ্যই কার্যকরভাবে ব্যবহারের ক্ষেত্রে রয়েছে: উদাহরণস্বরূপ, কনট্র্যাক্টর ইনজেকশনের মাধ্যমে "বোবা" শিশুরা "স্মার্ট" পিতামাতাদের ইনজেকশন দেওয়ার সাথে ধারক / উপাদান (ওরফে স্মার্ট / বোবা ) প্যাটার্নটি প্রয়োগ করার সময় , পিতামাতার সদস্যদের কী হওয়া উচিত এবং বাচ্চাদের দ্বারা তাদের স্পর্শ করা উচিত নয় সে সম্পর্কে আপনার অভিপ্রায়টি প্রকাশ করা অত্যন্ত গুরুত্বপূর্ণ: অন্যথায়, আপনি যখন তাদের বোবা বাচ্চাদের তাদের পিতামাতার মদ মন্ত্রিসভায় আশেপাশে বোকা বানাবেন তখন অবাক হবেন না।
সুতরাং, আপনার প্রশ্নের আমার উত্তর:
নীচের মতো সবার জন্য কী আমার সর্বদা ব্যক্তিগত যুক্ত করা উচিত?
একটি জোরালো হয় কোন । আপনার সর্বদা যুক্ত করা উচিত নয় private
কারণ এটি করার ফলে আপনি কীওয়ার্ডের উদ্দেশ্যকে পরাস্ত করেন, কারণ এটি আর কোনও উদ্দেশ্যকে ইঙ্গিত দেয় না যদি আপনি এটি সর্বত্র রাখেন: আপনি সম্ভবত এটি অন্য কোথাও রাখবেন না।