JSON স্কিমার নির্দেশিকা

JSON স্কিমা

আমরা JSON স্কিমাতে যাওয়ার আগে, JSON এবং JSON স্কিমার মধ্যে পার্থক্য জানা গুরুত্বপূর্ণ।

তাদেরকে JSON

JSON জাভাস্ক্রিপ্ট অবজেক্ট নোটেশনের জন্য সংক্ষিপ্ত, এবং এটি একটি ভাষা-স্বাধীন ডেটা বিন্যাস যা APIগুলি অনুরোধ এবং উত্তর পাঠাতে ব্যবহার করে। JSON মানুষ এবং মেশিনের জন্য একইভাবে পড়তে এবং লিখতে সহজ। JSON একটি পাঠ্য-ভিত্তিক বিন্যাস যা ভাষার সাথে আবদ্ধ নয় (ভাষা স্বাধীন)।

JSON স্কিমা

JSON স্কিমা JSON ডেটা স্ট্রাকচার যাচাই করার জন্য একটি দরকারী টুল। JSON এর গঠন নির্দিষ্ট করতে, একটি JSON-ভিত্তিক বিন্যাস ব্যবহার করুন। এর উদ্দেশ্য হল নিশ্চিত করা যে JSON ডেটা গ্রহণযোগ্য। আমাদের অ্যাপ্লিকেশনের JSON ডেটার কনভেনশন স্কিমা ব্যবহার করে সংজ্ঞায়িত করা যেতে পারে।

JSON স্কিমা স্পেসিফিকেশনের তিনটি প্রধান বিভাগ রয়েছে:

JSON হাইপার-স্কিমা:

JSON হাইপার-স্কিমা হল একটি JSON স্কিমা ভাষা যা হাইপারলিঙ্ক সহ JSON নথিগুলিকে লেবেল করতে ব্যবহার করা যেতে পারে এবং HTTP-র মতো পাঠ্য-ভিত্তিক পরিবেশের মাধ্যমে বহিরাগত JSON সংস্থানগুলি প্রক্রিয়াকরণ এবং পরিবর্তন করার জন্য নির্দেশাবলী ব্যবহার করা যেতে পারে। ক্লিক এখানে JSON হাইপার-স্কিমা সম্পর্কে আরও জানতে।

JSON স্কিমা কোর:

এটি JSON নথির লেবেল এবং যাচাইকরণের নিয়মগুলির একটি সেট৷ 

JSON স্কিমা কোর:

  • আপনার বর্তমানে যে ডেটা বিন্যাস রয়েছে তা বর্ণনা করে। 
  • স্বয়ংক্রিয় পরীক্ষায় ব্যবহার করা যেতে পারে এমন ডেটা যাচাই করে। 
  • ক্লায়েন্টদের দ্বারা প্রদত্ত ডেটার যথার্থতা নিশ্চিত করা।  
  • মানুষ এবং মেশিন উভয়ের জন্য পাঠযোগ্য ডকুমেন্টেশন প্রদান করে। 

JSON স্কিমা বৈধতা:

JSON স্কিমার উপর ভিত্তি করে বৈধকরণ ইনস্ট্যান্স ডেটার কাঠামোর উপর সীমা আরোপ করে। এর পরে, কোন কীওয়ার্ড অ-অ্যাসারশন থাকার তথ্য, যেমন বর্ণনামূলক মেটাডেটা এবং ব্যবহারের ইঙ্গিতগুলি, একটি উদাহরণ অবস্থানে যোগ করা হয় যা সমস্ত ঘোষিত সীমাবদ্ধতা পূরণ করে। 

Newtonsoft এর JSON স্কিমা ভ্যালিডেটর টুল হল এমন একটি টুল যা আপনি সরাসরি আপনার ব্রাউজারে বিনামূল্যে ব্যবহার করতে পারেন। আপনি আপনার JSON স্কিমার গঠন পরীক্ষা করতে এই টুল ব্যবহার করতে পারেন। এই পৃষ্ঠায় আপনাকে শুরু করার জন্য নিয়ন্ত্রণ এবং ব্যাখ্যা রয়েছে। এইভাবে, আপনার JSON গঠনকে কীভাবে উন্নত করা যায় তা দেখা সহজ।

আমরা JSON স্কিমা বৈধকরণ টুল ব্যবহার করে আমাদের JSON অবজেক্ট পরীক্ষা করতে পারি:

JSON যাচাইকারী ত্রুটি মুক্ত

আমাদের বয়সের বৈধতা আছে (সর্বনিম্ন = 20 এবং সর্বোচ্চ = 40) উপরের চিত্রে দেখানো হয়েছে। কোন ত্রুটি পাওয়া যায়নি.

ত্রুটি সহ JSON যাচাইকারী

বয়সের বৈধতা ভুলভাবে প্রবেশ করানো হলে এটি একটি ত্রুটি প্রদর্শন করে।

একটি JSON স্কিমা তৈরি

আসুন আমরা কি বিষয়ে কথা বলছি তা দেখতে JSON স্কিমার একটি উদাহরণ দেখি। একটি মৌলিক JSON অবজেক্ট একটি পণ্য ক্যাটালগ বর্ণনা করে নিম্নরূপ:

JSON উদাহরণ

এর JSON স্কিমা নিম্নরূপ লেখা হতে পারে:

JSON স্কিমার ফলাফল

একটি JSON স্কিমা একটি JSON নথি, এবং সেই নথিটি অবশ্যই একটি বস্তু হতে হবে। কীওয়ার্ড হল JSON স্কিমা দ্বারা নির্দিষ্ট করা বস্তুর সদস্য/বিশিষ্ট। JSON স্কিমার "কীওয়ার্ড" একটি বস্তুর মধ্যে একটি কী/মান সমন্বয়ের "কী" অংশকে নির্দেশ করে। একটি JSON স্কিমা লেখার মধ্যে বেশিরভাগ অংশের জন্য একটি বস্তুর মধ্যে একটি মানের সাথে একটি নির্দিষ্ট "কীওয়ার্ড" ম্যাপ করা জড়িত। 

আসুন আমরা আমাদের উদাহরণে যে কীওয়ার্ডগুলি ব্যবহার করেছি সেগুলি ঘনিষ্ঠভাবে দেখে নেওয়া যাক: 

JSON স্কিমা যেটির সাথে রিসোর্সের স্কিমা মেনে চলে তা এই অ্যাট্রিবিউট দ্বারা লেখা হয়। এই স্কিমাটি ড্রাফ্ট v4 স্ট্যান্ডার্ড অনুসরণ করে লেখা হয়েছে, যেমন "$ স্কিমা" কীওয়ার্ড। এটি আপনার স্কিমাকে বর্তমান সংস্করণে ফিরে আসা থেকে বাধা দেয়, যা পুরানো সংস্করণের সাথে সামঞ্জস্যপূর্ণ হতে পারে বা নাও হতে পারে।

দ্য "খেতাব" এবং "বিবরণ" কীওয়ার্ডগুলি কেবল ব্যাখ্যামূলক; তারা পরীক্ষা করা ডেটার উপর কোন সীমাবদ্ধতা আরোপ করে না। এই দুটি কীওয়ার্ড স্কিমার উদ্দেশ্য বর্ণনা করে: এটি একটি পণ্য বর্ণনা করে।

দ্য "আদর্শ” কীওয়ার্ড আমাদের JSON ডেটার প্রথম সীমানা শর্ত সংজ্ঞায়িত করে; এটি অবশ্যই একটি JSON অবজেক্ট হতে হবে। যদি আমরা সমস্ত স্কিমার জন্য টাইপ সেট না করি, কোডটি কাজ করবে না। কিছু সাধারণ প্রকার হল “সংখ্যা” “বুলিয়ান” “পূর্ণসংখ্যা” “নাল” “অবজেক্ট” “অ্যারে” “স্ট্রিং”।

 

JSON স্কিমা নিম্নলিখিত লাইব্রেরি দ্বারা সমর্থিত:

 

ভাষা

লাইব্রেরি

C

WJElement

পাইথন

jschon

পিএইচপি

বর্ণনা Json স্কিমা

জাভাস্ক্রিপ্ট

ajv

Go

gojsonschema

Kotlin

মিডিয়া-প্রমাণকারী

চুনি

JSONSchemer

JSON (সিনট্যাক্স)

আসুন JSON এর মৌলিক সিনট্যাক্সের একটি সংক্ষিপ্ত বিবরণ দেখি। JSON সিনট্যাক্স হল জাভাস্ক্রিপ্ট সিনট্যাক্সের একটি উপসেট যাতে নিম্নলিখিত উপাদানগুলি অন্তর্ভুক্ত থাকে:

  • নাম/মান জোড়া ব্যবহার করা হয় যা ডেটা উপস্থাপন করে।
  • বস্তুগুলি কোঁকড়া ধনুর্বন্ধনীতে রাখা হয় এবং প্রতিটি নাম একটি ':' (কোলন) দ্বারা পরিচালিত হয়, যার মান জোড়া “,” (কমা) দ্বারা পৃথক করা হয়।
  • মানগুলি "," (কমা) দ্বারা পৃথক করা হয় এবং অ্যারেগুলি বর্গাকার বন্ধনীতে রাখা হয়।
JSON সিনট্যাক্স উদাহরণ

নিম্নলিখিত দুটি ডেটা স্ট্রাকচার JSON দ্বারা সমর্থিত:

  • মানগুলির ক্রম তালিকা: এটি একটি অ্যারে, একটি তালিকা, বা একটি ভেক্টর হতে পারে।
  • নাম/মান জোড়া সংগ্রহ: বিভিন্ন কম্পিউটার ভাষা এই ডেটা স্ট্রাকচারকে সমর্থন করে।

 

JSON (অবজেক্ট)

একটি JSON স্কিমা হল একটি JSON অবজেক্ট যা একটি ভিন্ন JSON অবজেক্টের ধরন এবং গঠনকে রূপরেখা দেয়। একটি JavaScript অবজেক্ট এক্সপ্রেশন জাভাস্ক্রিপ্ট রানটাইম পরিবেশে একটি JSON অবজেক্টকে উপস্থাপন করতে পারে। বৈধ স্কিমা অবজেক্টের কিছু উদাহরণ নিম্নরূপ:

স্কিমা

ম্যাচ

{}

কোনো মান

{ প্রকার: 'অবজেক্ট' }

একটি জাভাস্ক্রিপ্ট অবজেক্ট

{ প্রকার: 'সংখ্যা' }

একটি জাভাস্ক্রিপ্ট নম্বর

{ প্রকার: 'স্ট্রিং'}

একটি জাভাস্ক্রিপ্ট স্ট্রিং

যেমন:

খালি একটি নতুন বস্তু তৈরি করা হচ্ছে:

var JSON_Obj = {};

নতুন বস্তু তৈরি:

var JSON_Obj = নতুন বস্তু()

JSON (XML এর সাথে তুলনা)

JSON এবং XML হল ভাষা-স্বাধীন মানব-পাঠযোগ্য বিন্যাস। বাস্তব-বিশ্বের পরিস্থিতিতে, তারা উভয়ই তৈরি, পড়তে এবং ডিকোড করতে পারে। নিম্নলিখিত মানদণ্ডের উপর ভিত্তি করে, আমরা XML-এর সাথে JSON-এর তুলনা করতে পারি।

জটিলতা

যেহেতু XML JSON এর চেয়ে জটিল, প্রোগ্রামাররা JSON পছন্দ করে।

অ্যারে ব্যবহার

XML কাঠামোগত তথ্য প্রকাশ করতে ব্যবহৃত হয়; যাইহোক, XML অ্যারে সমর্থন করে না, কিন্তু JSON করে।

পদান্বয়

JSON জাভাস্ক্রিপ্ট এর eval ফাংশন ব্যবহার করে ব্যাখ্যা করা হয়। JSON এর সাথে ব্যবহার করার সময় eval বর্ণিত অবজেক্ট প্রদান করে।

 

উদাহরণ:

 

তাদেরকে JSON

এক্সএমএল

{

   "কোম্পানী": ফেরারি,

   "নাম": "GTS",

   "মূল্য": 404000

}

 

 

ফেরারি 

 

জিটিএস 

 

404000 

 

JSON স্কিমার সুবিধা

JSON একটি মানব- এবং মেশিন-পাঠযোগ্য ভাষায় বিচ্যুত করার জন্য ডিজাইন করা হয়েছে। যাইহোক, কিছু সূক্ষ্ম-টিউনিং ছাড়া, এটা হতে পারে না. JSON স্কিমা মেশিন এবং মানুষ উভয়ের জন্য JSON আরও বোধগম্য করার সুবিধা রয়েছে।

JSON স্কিমা ব্যবহার করে বেশ কিছু ক্লায়েন্ট-সাইড আপডেটের প্রয়োজনীয়তাও সরিয়ে দেয়। সাধারণ এইচটিএমএল কোডগুলির একটি তালিকা তৈরি করা এবং তারপরে ক্লায়েন্ট সাইডে প্রয়োগ করা ক্লায়েন্ট-সাইড নির্মাণের জন্য একটি সাধারণ কিন্তু ভুল পদ্ধতি। এপিআই অ্যাপস যাইহোক, এটি সর্বশ্রেষ্ঠ কৌশল নয় কারণ সার্ভার-সাইডে পরিবর্তনের ফলে কিছু কার্যকারিতা ত্রুটিপূর্ণ হতে পারে।

JSON স্কিমার প্রধান সুবিধা হল বিভিন্ন প্রোগ্রামিং ভাষার সাথে এর সামঞ্জস্য, সেইসাথে যাচাইকরণের যথার্থতা এবং ধারাবাহিকতা।

JSON স্কিমা বিস্তৃত ব্রাউজার সমর্থন করে এবং অপারেটিং সিস্টেম, তাই JSON-এ লেখা অ্যাপগুলিকে তাদের সমস্ত ব্রাউজার সামঞ্জস্যপূর্ণ করতে খুব বেশি পরিশ্রম করতে হয় না। বিকাশের সময়, বিকাশকারীরা বেশ কয়েকটি ব্রাউজার বিবেচনা করে, যদিও JSON এর ইতিমধ্যে ক্ষমতা রয়েছে।

অডিও, ভিডিও এবং অন্যান্য মিডিয়া সহ যেকোনো আকারের ডেটা শেয়ার করার সবচেয়ে কার্যকর উপায় হল JSON। এটি এই কারণে যে JSON অ্যারেগুলিতে ডেটা সঞ্চয় করে, যা ডেটা ট্রান্সমিশনকে সহজ করে তোলে। ফলস্বরূপ, JSON হল অনলাইন এপিআই এবং ডেভেলপমেন্টের জন্য সেরা ফাইল ফরম্যাট।

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

Kobold Letters: HTML-ভিত্তিক ইমেল ফিশিং আক্রমণ

Kobold Letters: HTML-ভিত্তিক ইমেল ফিশিং আক্রমণ

Kobold Letters: HTML-ভিত্তিক ইমেল ফিশিং আক্রমণ 31শে মার্চ 2024-এ, লুটা সিকিউরিটি একটি নতুন পরিশীলিত ফিশিং ভেক্টর, Kobold Letters-এর উপর আলোকপাত করে একটি নিবন্ধ প্রকাশ করেছে৷

আরো পড়ুন »
গুগল এবং ছদ্মবেশী মিথ

গুগল এবং ছদ্মবেশী মিথ

Google এবং ছদ্মবেশী মিথ 1 এপ্রিল 2024-এ, Google ছদ্মবেশী মোড থেকে সংগৃহীত কোটি কোটি ডেটা রেকর্ড ধ্বংস করে একটি মামলা নিষ্পত্তি করতে সম্মত হয়।

আরো পড়ুন »
কিভাবে MAC ঠিকানা স্পুফ করবেন

MAC ঠিকানা এবং MAC স্পুফিং: একটি ব্যাপক নির্দেশিকা

MAC ঠিকানা এবং MAC স্পুফিং: একটি বিস্তৃত নির্দেশিকা ভূমিকা যোগাযোগের সুবিধা থেকে সুরক্ষিত সংযোগ সক্ষম করার জন্য, MAC ঠিকানাগুলি ডিভাইস সনাক্তকরণে একটি মৌলিক ভূমিকা পালন করে

আরো পড়ুন »