JavaRush /جاوا بلاگ /Random-UR /لیول 33۔ لیول کے موضوع پر انٹرویو کے سوالات کے جوابات
Afli
سطح
Санкт-Петербург

لیول 33۔ لیول کے موضوع پر انٹرویو کے سوالات کے جوابات

گروپ میں شائع ہوا۔
سوالات/اضافے/تنقید کا استقبال ہے۔ لیول 33۔ لیول - 1 کے موضوع پر انٹرویو کے سوالات کے جوابات
  1. JSON کیا ہے؟

    JSON (جاوا اسکرپٹ آبجیکٹ نوٹیشن) ایک سادہ ڈیٹا انٹرچینج فارمیٹ ہے جو JavaScript پروگرامنگ لینگویج کے سب سیٹ پر مبنی ہے۔

  2. جاوا اور جاوا اسکرپٹ میں کیا فرق ہے؟

    یہ 2 مختلف پروگرامنگ زبانیں ہیں، ان کے ناموں میں مماثلت کے باوجود۔ ان دونوں میں سی کی طرح نحو ہے۔ اختلافات درج ذیل ہیں:

    • جاوا کلاسز، جاوا اسکرپٹ - پروٹو ٹائپ پر مبنی ایک OOP اپروچ کو نافذ کرتا ہے۔
    • جاوا میں جامد ٹائپنگ ہے، جاوا اسکرپٹ میں ڈائنامک ٹائپنگ ہے۔
    • جاوا مرتب کردہ بائی کوڈ سے بھری ہوئی ہے۔ JavaScript کی براہ راست فائل سے تشریح کی جاتی ہے۔

    لنک کرنے کے لیے آپ کا متن...

  3. JSON اور XML میں کیا فرق ہے؟

    JSON ڈیٹا ایکسچینج فارمیٹ ہے۔

    XML ایک مارک اپ لینگویج ہے (جس میں آپ نحو، ساخت، ڈیٹا کی اقسام اور عمومی طور پر ان کے ماڈل کی وضاحت کر سکتے ہیں)۔

    ان دونوں کو ڈیٹا کی منتقلی کے لیے استعمال کیا جا سکتا ہے۔ قدرتی طور پر، دونوں معیارات کے ساتھ کام کرنے کے لیے، مختلف فریم ورک استعمال کیے جاتے ہیں اور نحو مختلف ہے۔

  4. آپ JSON کے ساتھ کام کرنے کے لیے کون سے فریم ورک کو جانتے ہیں؟

    لیول 33 نے ہمیں جیکسن فریم ورک سے متعارف کرایا۔ اس کے علاوہ، میں 3 مزید دوں گا، اور ایک مضمون کا لنک جس میں ان کا موازنہ کیا گیا ہے:

    1. جیکسن بذریعہ فاسٹر ایکس ایم ایل
    2. JSON.simple از Yidong Fang
    3. Google سے GSON
    4. اوریکل سے JSONP

    JSON کے ساتھ کام کرنے کے لیے جاوا لائبریریوں کا موازنہ کرنا: JSON.simple، GSON، Jackson اور JSONP

  5. آپ XML کے ساتھ کام کرنے کے لیے کون سے فریم ورک کو جانتے ہیں؟

    چونکہ XML ڈیٹا کی نمائندگی کی شکل ہے، اس کے ساتھ کام کرنے کے لیے مزید متنوع ٹیکنالوجیز موجود ہیں۔ میں جاوا آبجیکٹ کو XML میں سیریلائز کرنے کے لیے استعمال ہونے والی ٹیکنالوجیز دوں گا۔

    1. JAXB (JDK میں J میں شامل)
    2. ایکس اسٹریم

    XML کے ساتھ کام کرنے کے لیے مختلف فریم ورک کے مختصر جائزہ کے ساتھ لنک: JAVA + XML

  6. آپ جیکسن کی کون سی تشریحات جانتے ہیں؟

    آئیے ان کو دیکھتے ہیں جو لیکچرز میں استعمال ہوئے تھے:

    • @JsonAutoDetect - کلاس کے سامنے رکھا گیا۔ جیکسن سے کہتا ہے کہ لکھتے یا پڑھتے وقت اس کلاس کے فیلڈز استعمال کریں۔ قوسین میں، آپ ایک پیرامیٹر سیٹ کر سکتے ہیں (fieldVisibility = JsonAutoDetect.Visibility.ANY) استعمال کیے جانے والے فیلڈز کی مرئیت کو ترتیب دینے کے لیے (بطور ڈیفالٹ، صرف عوامی فیلڈز استعمال کیے جاتے ہیں)۔
    • @JsonIgnore - میدان سے پہلے رکھا گیا۔ جیکسن سے کہتا ہے کہ پڑھتے/لکھتے وقت اس فیلڈ کو نظر انداز کرے۔
    • @JsonProperty - فیلڈ، گیٹر یا سیٹر سے پہلے رکھا گیا۔ آپ کو سیریلائزیشن کے دوران ایک مختلف فیلڈ کا نام بتانے کی اجازت دیتا ہے۔
    • @JsonWriteNullProperties - کلاس کے سامنے رکھا گیا۔ آبجیکٹ فیلڈز کو نظر انداز نہیں کیا جائے گا۔
    • @JsonPropertyOrder - کلاس کے سامنے رکھا گیا۔ آپ کو اس ترتیب کی وضاحت کرنے کی اجازت دیتا ہے جس میں جاوا آبجیکٹ کے فیلڈز کو JSON میں سیریلائز کیا جائے گا۔
    • @JsonDeserialize - میدان سے پہلے رکھا گیا۔ آپ کو اس کلاس کی وضاحت کرنے کی اجازت دیتا ہے جس میں JSON آبجیکٹ کو ڈی سیریلائز کیا گیا ہے۔ مثال کے طور پر، جاوا میں، صفوں اور فہرستوں کو صفوں میں سیریلائز کیا جاتا ہے، اور ڈی سیریلائزیشن کے دوران، ہم منتخب کر سکتے ہیں کہ ہم بالکل کیا حاصل کرنا چاہتے ہیں۔

    یہاں کچھ تشریحات کے ساتھ ایک سائٹ کا لنک ہے: جیکسن تشریحات

  7. آپ JAXB کی کون سی تشریحات جانتے ہیں؟

    میں صرف ان کا تجزیہ کروں گا جو لیکچر میں استعمال ہوئے تھے:

    • @XmlRootElement - کلاس سے پہلے رکھا گیا۔ اشارہ کرتا ہے کہ یہ آبجیکٹ ایک اعلیٰ سطحی عنصر ہو سکتا ہے، یعنی باقی تمام عناصر اس کے اندر موجود ہیں۔
    • @XmlType - کلاس سے پہلے رکھا گیا۔ XML اسکیما میں اضافی معلومات شامل کرتا ہے۔ آپ کچھ صفات کی وضاحت کر سکتے ہیں، جیسے عناصر کی ترتیب، نام وغیرہ۔
    • @XmlElement - فیلڈ سے پہلے رکھا گیا۔ آپ کو ایکس ایم ایل عنصر کا نام، ڈیفالٹ ویلیو وغیرہ سیٹ کرنے کی اجازت دیتا ہے۔
    • @XmlAttribute - فیلڈ سے پہلے رکھا گیا۔ فیلڈ کو ایک XML وصف کے طور پر دکھایا جائے گا۔
    • @XmlElementWrapper - فیلڈ یا حاصل کرنے والے سے پہلے رکھا گیا۔ آپ کو عناصر کے گروپ کے لیے بارڈر ٹیگ بنانے کی اجازت دیتا ہے۔
    • @XmlJavaTypeAdapter - کلاس سے پہلے رکھا گیا۔ اس کلاس کو مارشلنگ/غیر مارشال کرنے کے لیے درکار معاون اڈاپٹر کلاس کو قوسین میں دکھایا گیا ہے۔
    • @XmlEnum - enum سے پہلے رکھا گیا۔ قوسین میں آپ اس قسم کی وضاحت کر سکتے ہیں جس میں enum اقدار کی نمائندگی کی جائے گی۔
    • @XmlEnumValue — enum قدر سے پہلے رکھا گیا ہے۔ آپ کو دی گئی اینوم ویلیو کے لیے ایک خاص قدر بتانے کی اجازت دیتا ہے۔

    یہاں کچھ تشریحات کے ساتھ ایک سائٹ کا لنک ہے (میں تشریحات کا صحیح ترجمہ تخلیق نہ کرنے کے لیے معذرت خواہ ہوں، معلومات قابل فہم ہے، لیکن مجھے بالکل اندازہ نہیں ہے کہ اسے روسی زبان میں صحیح طریقے سے کیسے کہنا ہے): https:// jaxb.java.net/tutorial/index .html

  8. JSON میں سیریلائزیشن اور ڈی سیریلائزیشن میں کیا فرق ہے؟

    مجھے سوال کا جوہر سمجھ نہیں آیا۔ مجھے 2 باہمی عمل کا موازنہ کرنے کا کوئی فائدہ نظر نہیں آتا۔ شاید اس کا مقصد JSON اور XML کا موازنہ کرنا تھا؛ اس موضوع کا لنک اگلے سوال میں دیا گیا ہے۔

  9. کون سا بہتر ہے JSON یا XML؟ کیوں؟

    یہاں ایک زبردست مضمون ہے جو JSON اور XML کا موازنہ کرتا ہے: JSON اور XML۔ کیا بہتر ہے؟

    شاید یہ کہنا ناممکن ہے کہ کچھ بہتر ہے۔ انتخاب کرتے وقت، آپ کو خود ہی کام کو دیکھنا چاہئے اور استعمال میں کیا زیادہ موثر ہوگا۔ اس کے علاوہ، انتخاب ڈویلپر کی ذاتی ترجیحات پر منحصر ہو سکتا ہے۔

  10. ڈی ٹی او کیا ہے؟

    ڈی ٹی او (ڈیٹا ٹرانسفر آبجیکٹ) ایک ڈیزائن پیٹرن ہے جس میں ڈیٹا کے ساتھ کام کرنے کی کوئی منطق نہیں ہے۔ ڈی ٹی اوز کو عام طور پر مختلف ایپلی کیشنز کے درمیان، یا ایک ہی ایپلی کیشن کے اندر پرتوں کے درمیان ڈیٹا کی منتقلی کے لیے استعمال کیا جاتا ہے۔ انہیں معلومات کے ذخیرے کے طور پر سوچا جا سکتا ہے جس کا واحد مقصد اس معلومات کو وصول کنندہ تک پہنچانا ہے۔

لیول 33۔ لیول 2 کے موضوع پر انٹرویو کے سوالات کے جوابات
11/10/2016 کو 15.50 پر اپ ڈیٹ کیا گیا۔

تبصرہ کے مطابق سوال نمبر 2، نمبر 3 درست کر دیا گیا۔

تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION