এক্সএমএল কেবল একটি সরঞ্জাম যা অনেক স্বাদে এবং ব্যবহারে আসে। এক্সএমএল কিছু জিনিসগুলিতে দক্ষতা অর্জন করে এবং অন্যকে স্তন্যপান করে। আমি মনে করি যে সমস্যাগুলির মধ্যে একটি হ'ল লোকেরা "এন্টারপ্রাইজ" এক্সএমএল দেখেছিল যা নামহীনতা এবং আশেপাশে ছড়িয়ে পড়া (এসওএপি, কেউ?) দিয়ে অকারণে জটিল। মানুষের জন্য এক্সএমএল ফর্ম্যাটগুলি নকশা করার কৌশলটি পড়ার জন্য অত্যধিক না করে ডেটাতে আসল অর্থ যুক্ত করছে।
লোকেরা যে বিষয়গুলির সাথে ইস্যু করে তার মধ্যে একটি হ'ল এক্সএমএল কখনও কখনও কোনও চরিত্র বা কিছু অনুপস্থিত বন্ধনী বন্ধ করে দেয়। তবে, এটি একটি উত্সাহ এবং একটি খারাপ দিক উভয়ই আছে। বিপরীতটি হ'ল এইচটিএমএলের সাথে আপনার মতো অস্পষ্টতা নেই যেখানে আধা-অবৈধ সিনট্যাক্সের বিভিন্ন ক্ষেত্রে আলাদাভাবে ব্যাখ্যা করা যায়।
খারাপ দিকটি এটি হ'ল লেখকের পক্ষে কিছুটা শক্ত এবং শেখা আরও শক্ত। আমি একমত যে এই যুক্তিটি তৈরি করতে হবে যে ওয়েবটি এত দ্রুত এত দ্রুত হয়ে উঠতে পারত না যে এইচটিএমএল এক্সএমএলের মতো কঠোর ছিল, তবে আমি আরও যুক্তি দিয়ে বলতে পারি যে এটি যদি আজ হয় তবে আমরা খুশি হব। :)
এছাড়াও, এটিকে যথাযথভাবে প্রয়োগ করার জন্য, বুদ্ধি এবং বিচার থাকতে পারে বলেই এটি সমস্ত কিছুর জন্য ব্যবহার করবেন না। আপনার সমস্ত কিছু যদি এক্সএমএল হয় তবে আপনি যা চান তা থেকে সর্বদা একটি এক্সএসএলটি রূপান্তর হতে চান। :)
আমি যুক্তি দেব যে ফর্ম্যাটটি কেবল তখনই গুরুত্বপূর্ণ যখন মানুষের সাথে এটির সাথে যোগাযোগ করার প্রয়োজন হয়। আপনি যদি এমন কোনও প্রোগ্রাম লিখছেন যা কোনও কিছুকে সিরিয়ালাইজ করে এবং কোথাও এটি পাঠিয়ে দেয় যেখানে এটি আপনার প্রোগ্রামের অন্য কোনওটির দ্বারা গ্রাস করা উচিত, কে এটি যতটা সম্ভব দক্ষ হিসাবে এতক্ষণ দেখতে দেখতে যত্নশীল? আমার যত্ন নেওয়ার জন্য বাইনারি ফর্ম্যাট বা বনি এবং ইউনিকর্ন ব্যবহার করুন।
এক্সএমএল এর পেশাদার
- YAML এবং JSON না এমন অনেকগুলি প্রচ্ছদ কেস কভার করে
- বিভিন্ন প্ল্যাটফর্ম এবং ভাষার অ্যারেতে এক্সএমএলকে বিশদকরণ এবং যাচাই করার জন্য দুর্দান্ত সরঞ্জাম রয়েছে
- এক্সএমএল সহজে এবং শক্তিশালীভাবে অন্য ফর্ম্যাটে রূপান্তরিত হতে পারে (এক্সএসএলটির মতো জিনিসগুলির মাধ্যমে)
- যুক্তিযুক্ত XML ডকুমেন্টগুলি মানুষের পড়া এবং সম্পাদনা করা সহজ; আমাকে বলবেন না জেএসওন সহজ, এটি নয় :)
- এক্সএমএল কিছুটা ডিগ্রি থেকে স্ব-বর্ণনা করছে, অর্থাত্ এটির মধ্যে সরাসরি তার গঠন এবং অর্থ সম্পর্কে তথ্য থাকে (বেশিরভাগ বাইনারি ফর্ম্যাটগুলির বিপরীতে)
- এনকোডিং পরিচালনা করে
- হোয়াইটস্পেস অজোনস্টিক, যা ক্রস প্ল্যাটফর্মের সহজ ব্যবহারের জন্য করে তোলে
- যদি এটি সু-গঠিত না হয় তবে বিরতি দেয় (ডেটা কাঠামোগতভাবে সঠিক থাকে তা নিশ্চিত করে)
- এটি এসজিএমএল নয়
কনস
- বাগাড়ম্বরপূর্ণ
- বাইনারি হিসাবে পার্স করা তত দ্রুত নয়
- যদি এটি সু-গঠিত না হয় তবে বিরতি ঘটে (আপনার অ্যাপ্লিকেশনটিকে ক্র্যাশ করে)
ভাল ব্যবহার
- কনফিগারেশন ফাইল
- ডেটা ইন্টারচেঞ্জ ফর্ম্যাটগুলি
- সংস্করণ স্থিতিস্থাপক ফাইল ফর্ম্যাট
- ডাটাবেসগুলিতে নথি সংরক্ষণ করা
এত ভাল ব্যবহার হয় না
- ডেটা স্থানান্তর ফর্ম্যাটগুলি
- সিরিজিং অবজেক্টস
- ডাটাবেসে রিলেশনাল ডেটা সংরক্ষণ করা
- উচ্চ কার্যকারিতা আই / ও দৃশ্যের জন্য ফাইল ফর্ম্যাট