JavaRush /جاوا بلاگ /Random-SD /جاوا EE جو تعارف
zor07
سطح
Санкт-Петербург

جاوا EE جو تعارف

گروپ ۾ شايع ٿيل
اڄ اسين ڳالهائينداسين ته اهو ڇا آهي - Java EE: اهو ڇا تي مشتمل آهي، جاوا EE ايپليڪيشنن جي فن تعمير جون خاصيتون ڇا آهن، ۽ اسان هن پليٽ فارم جي مختلف ٽيڪنالاجيز جا تفصيل فراهم ڪنداسين. موضوع پاڻ وسيع آهي، پر اسان بنيادي ڳالهين تي نه رکنداسين. آخر ۾، اسان اسپرنگ فريم ورڪ سان جاوا EE جو هڪ ننڍڙو مقابلو ڪنداسين ۽ ان سوال جو جواب ڏينداسين: ”سيکارڻ لاءِ بهتر ڇا آهي“ (اسپائيلر: يقيناً، توهان کي سڀ ڪجهه سکڻ جي ضرورت آهي =)) جاوا EE جو تعارف - 1اچو ته بنيادي ڳالهين سان شروع ڪريون.

Java EE - اهو ڇا آهي؟

Java EE هڪ پليٽ فارم آهي جيڪو Java SE جي چوٽي تي ٺهيل آهي جيڪو هڪ API ۽ رن ٽائم ماحول فراهم ڪري ٿو ترقي ۽ هلائڻ لاءِ وڏي پيماني تي، ملٽي ٽائر، اسپيبلبل، قابل اعتماد، ۽ محفوظ نيٽ ورڪ ايپليڪيشنون. اهڙين ايپليڪيشنن کي انٽرپرائز ايپليڪيشنس سڏيو ويندو آهي ڇاڪاڻ ته اهي مسئلا حل ڪن ٿا وڏن ڪاروبار کي درپيش. بهرحال، اهو صرف وڏيون ڪارپوريشنون ۽ سرڪاري ادارا نه آهن جيڪي انهن قسمن جي ايپليڪيشنن مان فائدو حاصل ڪري سگهن ٿا ۽ جاوا EE مهيا ڪري ٿو. حل جيڪي جاوا اي اي پليٽ فارم پيش ڪري ٿو ڪارائتو آهن، ۽ ڪڏهن ڪڏهن صرف ضروري، انفرادي ڊولپرز ۽ ننڍن تنظيمن لاء.

جاوا EE ترقي

جاوا اي اي جاوا ڪميونٽي پروسيس (JCP) ذريعي ترقي ڪئي وئي آهي، جيڪا 1998 ۾ ٺاهي وئي. اها دلچسپي پارٽين کي اجازت ڏئي ٿي ته جاوا ٻولي جي پليٽ فارم جي وضاحتن جي مستقبل جي ورزن کي ترتيب ڏيڻ ۾ حصو وٺن. ھن عمل جو بنياد آھي JSR (جاوا اسپيسيفڪيشن جي درخواست)، رسمي دستاويز بيان ڪري ٿو وضاحتون ۽ ٽيڪنالاجيون جيڪي تجويز ڪيل آھن جاوا پليٽ فارم ۾ شامل ڪيا وڃن. اهڙيون درخواستون ڪميونٽي جي ميمبرن پاران ڪيون ويون آهن - عام ڊولپرز ۽ ڪمپنيون. بعد ۾ شامل آهن Oracle، Red Hat، IBM، Apache ۽ ٻيا ڪيترائي. اهي. ماڻهو تجويز ڪن ٿا نيون خاصيتون ۽ شيون غور ڪرڻ لاءِ ته اهي جاوا ۾ شامل ڪرڻ چاهيندا. ۽ پوء اهي هڪ ووٽ رکون ٿا، جنهن جي بنياد تي فيصلو ڪيو ويو آهي ته ايندڙ ورزن ۾ ڇا شامل ڪيو وڃي. جاوا EE ورجن جي تاريخ هن طرح ڏسجي ٿي:
  • J2EE 1.2 (ڊسمبر 1999)
  • J2EE 1.3 (سيپٽمبر 2001)
  • J2EE 1.4 (نومبر 2003)
  • Java EE 5 (مئي 2006)
  • Java EE 6 (ڊسمبر 2009)
  • جاوا EE 7 (مئي)
  • جاوا EE 8 (آگسٽ 2017)
  • جڪارتا EE 8 (سيپٽمبر 2019)
2017 ۾، پليٽ فارم جي ترقي ۾ هڪ نئون سنگ ميل واقع ٿيو: Oracle جاوا EE جي ترقي تي ڪنٽرول Eclipse فائونڊيشن ڏانهن منتقل ڪيو. ۽ اپريل 2018 ۾، Java EE جو نالو تبديل ڪيو ويو Jakarta EE، جيڪو مڪمل طور تي Java EE 8 سان مطابقت رکي ٿو.

جاوا EE ايپليڪيشن آرڪيٽيڪچر

مختصر تعارف. ان کي سمجهڻ ۾ آساني پيدا ڪرڻ لاءِ، اچو ته جاوا EE ايپليڪيشنن جي ڍانچي ۽ ڪجهه اصطلاحن جي باري ۾ ڳالهايون جيڪي اسان اڳتي استعمال ڪنداسين. جاوا EE ايپليڪيشنن ۾ هڪ جوڙجڪ آهي جنهن ۾ ٻه اهم خاصيتون آهن:
  • پهريون، گھڻ-سطح. جاوا اي اي ايپليڪيشنون گھڻا ٽائر آهن، ۽ اسان ان بابت وڌيڪ تفصيل سان ڳالهائينداسين؛
  • ٻيو، nesting. اتي ھڪڙو جاوا EE سرور (يا ايپليڪيشن سرور) آھي، ان جي اندر واقع جزو ڪنٽينرز سان. اهي ڪنٽينر گهر (بنگو!) اجزاء.
جاوا EE ايپليڪيشنن جي فن تعمير کي بيان ڪرڻ لاء، اچو ته پهرين تہن بابت ڳالهايون. سطحون ڇا آهن؟ ڇا جاوا EE ٽيڪنالاجيون استعمال ڪيون ويون آهن مختلف سطحن تي؟ اڳيون، اسان بحث ڪنداسين ته ڪيئن ايپليڪيشن سرور، جزو ڪنٽينرز، ۽ اجزاء پاڻ ۾ ڳنڍيل آهن. پر ذهن ۾ رکو ته اهي سڀ هڪ ئي شيء تي مختلف زاوين کان نظريا آهن، ۽ ترتيب هتي اهم ناهي.

ايپليڪيشن جي سطح

ملٽي ٽائر ايپليڪيشنون ايپليڪيشنون آهن جيڪي فنڪشنل اصولن جي مطابق الڳ ٿيل ماڊلز (سطح، تہه) ۾ ورهايل آهن. عام طور تي (جنهن ۾ جاوا EE ترقي جي حوالي سان)، انٽرپرائز ايپليڪيشنن کي ٽن سطحن ۾ ورهايو ويو آهي:
  • ڪسٽمر؛
  • سراسري سطح؛
  • ڊيٽا جي رسائي جي سطح.
  1. ڪلائنٽ پرت هڪ ايپليڪيشن آهي جيڪا جاوا EE سرور (وچولي پرت) کان ڊيٽا جي درخواست ڪري ٿي. سرور، موڙ ۾، ڪلائنٽ جي درخواست تي عمل ڪري ٿو ۽ ان کي جواب ڏئي ٿو. ڪلائنٽ ايپليڪيشن هڪ برائوزر ٿي سگهي ٿي، هڪ اسٽائل ايپليڪيشن (موبائيل يا ڊيسڪ ٽاپ)، يا گرافڪ انٽرفيس کان سواء ٻيون سرور ايپليڪيشنون.

  2. وچولي سطح ورهايل آهي، موڙ ۾، ويب سطح ۽ ڪاروباري منطق جي سطح ۾.

    1. ويب پرت ڪجهه حصن تي مشتمل آهي جيڪي گراهڪن ۽ ڪاروباري منطق جي پرت جي وچ ۾ رابطي کي مهيا ڪن ٿيون.

      هيٺيون جاوا EE ٽيڪنالاجيون استعمال ڪيون ويون آهن ويب سطح تي:

      • JavaServer Faces ٽيڪنالاجي (JSF)؛
      • جاوا سرور صفحا (JSP)؛
      • اظهار جي ٻولي (EL)؛
      • سروليٽ؛
      • جاوا EE (CDI) لاءِ حوالا ۽ انحصار.

    2. ڪاروباري منطق پرت اجزاء تي مشتمل آهي جيڪي ايپليڪيشن جي سڀني ڪاروباري منطق کي لاڳو ڪن ٿا. ڪاروباري منطق اهو ڪوڊ آهي جيڪو ڪارڪردگي مهيا ڪري ٿو جيڪو ڪجهه مخصوص ڪاروباري علائقي جي ضرورتن کي ڍڪي ٿو (مالي صنعت، بينڪنگ، اي ڪامرس). هن سطح کي سڄي نظام جو بنيادي سمجهي سگهجي ٿو.

      ٽيڪنالاجيون جيڪي هن سطح تي شامل آهن:

      • انٽرپرائز JavaBeans (EJB)؛
      • JAX-RS RESTful ويب خدمتون؛
      • Java Persistence API ادارو؛
      • جاوا ميسيج سروس.

  3. ڊيٽا جي رسائي جي سطح. هي سطح ڪڏهن ڪڏهن انٽرنيشنل انفارميشن سسٽم (EIS) جي سطح کي سڏيو ويندو آهي. EIS مختلف ڊيٽابيس سرورز، ERP (انٽرپرائز ريسورس پلاننگ) انٽرپرائز ريسورس پلاننگ سسٽم ۽ ٻين ڊيٽا ذريعن تي مشتمل آهي. ڪاروباري منطق پرت ڊيٽا لاءِ هن پرت تائين رسائي ڪري ٿي.

    هن سطح تي توهان ٽيڪنالاجيون ڳولي سگهو ٿا جهڙوڪ:

    • Java Database Connectivity API (JDBC)؛
    • Java Persistence API؛
    • جاوا EE ڪنيڪٽر آرڪيٽيڪچر؛
    • جاوا ٽرانزيڪشن API (JTA).

ايپليڪيشن سرور، ڪنٽينر، اجزاء

اچو ته وڪيپيڊيا مان جاوا EE جي تعريف تي هڪ نظر وجهون. Java EE جاوا ٻولي لاءِ وضاحتن ۽ لاڳاپيل دستاويزن جو هڪ سيٽ آهي، وچولي ۽ وڏي ادارن جي ڪمن لاءِ سرور پليٽ فارم جي فن تعمير کي بيان ڪري ٿو. بهتر سمجھڻ لاءِ ته ”خاص وضاحتن جو سيٽ“ ڇا مطلب آھي ھن حوالي سان، اچو ته جاوا انٽرفيس سان تشبيھ ٺاھيون. جاوا انٽرفيس خود ڪارڪردگي کان خالي آهي. اهو صرف ڪجهه معاهدي جي وضاحت ڪري ٿو جنهن جي مطابق ڪجهه ڪارڪردگي تي عمل ڪيو ويو آهي. پر ٻيا طبقا انٽرفيس کي لاڳو ڪن ٿا. ان کان علاوه، ھڪڙي انٽرفيس ۾ ڪيترائي عمل ٿي سگھن ٿا، جن مان ھر ھڪ ٻئي کان ڪجھ تفصيلن ۾ مختلف ٿي سگھي ٿو. وضاحت سان هر شيء بلڪل ساڳي آهي. ننگي جاوا EE صرف وضاحتن جو هڪ سيٽ آهي. اهي وضاحتون مختلف جاوا اي اي سرورز پاران لاڳو ڪيون ويون آهن. هڪ جاوا EE سرور هڪ سرور ايپليڪيشن آهي جيڪو Java EE پليٽ فارم APIs کي لاڳو ڪري ٿو ۽ معياري Java EE خدمتون مهيا ڪري ٿو. جاوا اي اي سرور ڪڏهن ڪڏهن ايپليڪيشن سرور کي سڏيندا آهن. سرور ڊيٽا ايپليڪيشن اجزاء تي مشتمل ٿي سگھي ٿو، جن مان هر هڪ پنهنجي سطح سان ملائي سطح جي ترتيب سان ملندو آهي. جاوا EE سرور مختلف خدمتون مهيا ڪري ٿو انهن حصن کي ڪنٽينر جي صورت ۾. ڪنٽينر انهن اجزاء جي وچ ۾ انٽرفيس آهن جيڪي اهي ميزباني ڪن ٿا ۽ گهٽ-سطح پليٽ فارم-آزاد ڪارڪردگي جيڪا جزو کي سپورٽ ڪري ٿي. ڪنٽينرز انهن حصن لاءِ مخصوص خدمتون مهيا ڪن ٿا جيڪي اهي ميزبان آهن. مثال طور، ڊولپمينٽ لائف سائيڪل مينيجمينٽ، انحصار انجيڪشن، اتفاق، وغيره. ڪنٽينر ٽيڪنيڪل پيچيدگي کي لڪائي ٿو ۽ پورائيبلٽي وڌائي ٿو. جاوا EE ۾ چار مختلف قسم جا ڪنٽينر آهن:
  1. ايپلٽ ڪنٽينرز اڪثر برائوزرن پاران لاڳو ڪيا ويا آهن. جڏهن ايپليٽ ٺاهي رهيا آهيو، توهان اپليڪيشن جي بصري پاسي تي ڌيان ڏئي سگهو ٿا، جڏهن ته ڪنٽينر هڪ محفوظ ماحول فراهم ڪري ٿو.

  2. ايپليڪيشن ڪلائنٽ ڪنٽينر (ACC) ۾ جاوا ڪلاس، لائبريريون، ۽ ٻيون فائلون شامل هونديون آهن جيڪي خاصيتون لاڳو ڪرڻ لاءِ گهربل هونديون آهن جهڙوڪ انجيڪشن، سيڪيورٽي مئنيجمينٽ، ۽ جاوا SE ايپليڪيشنن ۾ نالو ڏيڻ جون خدمتون.

  3. ويب ڪنٽينر ويب اجزاء جي انتظام ۽ عمل ڪرڻ لاءِ بنيادي خدمتون مهيا ڪري ٿو (servlets، EJB Lite اجزاء، JSP صفحا، فلٽر، ٻڌندڙ، JSF صفحا، ۽ ويب خدمتون). اهو سرويٽس کي فوري ڪرڻ، شروع ڪرڻ ۽ سڏڻ، ۽ HTTP ۽ HTTPS پروٽوڪول جي حمايت ڪرڻ جو ذميوار آهي. ھي ڪنٽينر استعمال ڪيو ويندو آھي ويب پيجز کي ڪلائنٽ برائوزرن جي خدمت ڪرڻ لاءِ.

  4. EJB (Enterprise Java Bean) ڪنٽينر EJB ماڊل اجزاء جي انتظام ۽ عمل ڪرڻ جو ذميوار آهي جنهن ۾ ايپليڪيشن جي ڪاروباري منطق جي پرت شامل آهي. اهو نئون EJB بين ادارو ٺاهي ٿو، انهن جي زندگي جي چڪر کي منظم ڪري ٿو، ۽ خدمتون مهيا ڪري ٿو جهڙوڪ ٽرانزيڪشن، سيڪيورٽي، اتفاق، تقسيم، نالو ڏيڻ، يا غير مطابقت واري دعوت جي صلاحيت.

جاوا اي اي ۾ پڻ چار قسم جا حصا آھن جيڪي جاوا اي اي جي وضاحت جي عمل کي سپورٽ ڪرڻ گھرجي:
  1. ايپلٽ گرافڪ يوزر انٽرفيس (GUI) ايپليڪيشنون آهن جيڪي برائوزر ۾ هلن ٿيون. اهي طاقتور يوزر انٽرفيس پيدا ڪرڻ لاءِ امير سوئنگ API جو فائدو وٺن ٿا.

  2. ايپليڪيشنون پروگرام آهن جيڪي ڪلائنٽ جي پاسي تي هلن ٿيون. عام طور تي اهي گرافڪ يوزر انٽرفيس (GUI) آهن ۽ بيچ پروسيسنگ لاءِ استعمال ٿيندا آهن.

  3. ويب ايپليڪيشنون (سروسليٽ ۽ انهن جا فلٽر، ويب ايونٽ ٻڌندڙن، JSP ۽ JSF صفحن تي مشتمل آهن) - ويب ڪنٽينر ۾ هلن ٿيون ۽ ويب ڪلائنٽ کان HTTP درخواستن جو جواب ڏيو. Servlets SOAP ۽ RESTful ويب سروس جي آخري پوائنٽن کي پڻ سپورٽ ڪن ٿا.

  4. انٽرپرائز ايپليڪيشنون (انٽرپرائز جاوا بينز، جاوا ميسيج سروس، جاوا ٽرانزيڪشن API، اسينڪرونس ڪالز، ٽائيم سروسز سان ٺهيل) هڪ EJB ڪنٽينر ۾ هلن ٿيون. ڪنٽينر-منظم EJBs ٽرانزيڪشنل ڪاروباري منطق کي سنڀاليندا آهن. اهي RMI (يا SOAP ۽ RESTful ويب خدمتن لاءِ HTTP) ذريعي مقامي طور تي يا دور دراز تائين رسائي سگهجن ٿيون.

هيٺ ڏنل ڊراگرام ڏيکاري ٿو هڪ عام جاوا EE ايپليڪيشن آرڪيٽيڪچر: جاوا EE جو تعارف - 2

ٽيڪنالاجيون

تنهن ڪري، اسان فن تعمير کي ترتيب ڏنو آهي. مجموعي جوڙجڪ واضح هجڻ گهرجي. تعميراتي اجزاء کي بيان ڪرڻ جي عمل ۾، اسان ڪجهه جاوا EE ٽيڪنالاجيز جهڙوڪ EJB، JSP وغيره تي ڌيان ڏنو. اچو ته انهن تي هڪ ويجهي نظر رکون. هيٺ ڏنل جدول ڏيکاري ٿو ٽيڪنالاجيون جيڪي خاص طور تي ڪلائنٽ سطح تي استعمال ڪيون وينديون آهن:
ٽيڪنالاجي مقصد
سروليٽس جاوا ڪلاس جيڪي متحرڪ طور تي ڪلائنٽ جي درخواستن تي عمل ڪن ٿا ۽ جواب پيدا ڪن ٿا (عام طور تي HTML صفحا).
جاوا سرور جا منهن (JSF) يوزر انٽرفيس سان ويب ايپليڪيشنون ٺاهڻ لاءِ فريم ورڪ. توھان کي اجازت ڏئي ٿو يوزر انٽرفيس جا حصا شامل ڪريو (مثال طور، فيلڊز ۽ بٽڻ) ھڪڙي صفحي تي، انھن اجزاء کي تبديل ڪرڻ ۽ تصديق ڪريو، ۽ ھن ڊيٽا کي سرور-سائڊ اسٽوريج ۾ ذخيرو ڪريو.
جاوا سرور Facelets ٽيڪنالاجي کي منهن ڏئي ٿو اهو JSF ايپليڪيشن جو هڪ ذيلي قسم آهي جيڪو JSP صفحن جي بدران XHTML صفحا استعمال ڪري ٿو
جاوا سرور صفحا (JSP) ٽيڪسٽ دستاويز جيڪي servlets ۾ مرتب ڪيا ويا آهن. توهان کي جامد صفحن ۾ متحرڪ مواد شامل ڪرڻ جي اجازت ڏئي ٿي (جهڙوڪ HTML صفحا)
جاوا سرور صفحا معياري ٽيگ لائبريري (JSTL) هڪ ٽيگ لائبريري جيڪا JSP صفحن جي حوالي سان بنيادي ڪارڪردگي کي شامل ڪري ٿي.
اظهار جي ٻولي معياري ٽيگ جو هڪ سيٽ جيڪو JSP ۽ Facelets صفحن ۾ استعمال ڪيو ويندو آهي جاوا EE اجزاء تائين رسائي حاصل ڪرڻ لاءِ.
جاوا EE (CDI) لاءِ حوالا ۽ انحصار جاوا اي اي ڪنٽينرز پاران مهيا ڪيل خدمتن جي ھڪڙي سيٽ جي نمائندگي ڪري ٿو اجزاء جي زندگي جي چڪر کي منظم ڪرڻ لاء، ۽ گڏوگڏ اجزاء کي ڪلائنٽ شين ۾ محفوظ طريقي سان انجکشن ڪرڻ.
جاوا بينس اجزاء شيون جيڪي ايپليڪيشن صفحن لاءِ عارضي ڊيٽا اسٽوريج طور ڪم ڪن ٿيون.
هيٺ ڏنل جدول ڏيکاري ٿو ٽيڪنالاجيون استعمال ٿيل ڪاروباري منطق جي سطح تي:
ٽيڪنالاجي مقصد
انٽرپرائز جاوا بينس (انٽرپرائز بين) اجزاء EJBs منظم ٿيل بينون آھن جيڪي ھڪڙي ايپليڪيشن جي بنيادي ڪارڪردگي تي مشتمل آھن.
JAX-RS RESTful ويب خدمتون اهو ويب سروسز کي ترقي ڪرڻ لاءِ هڪ API آهي جيڪا REST آرڪيٽيڪچرل انداز سان مطابقت رکي ٿي.
JAX-WS ويب سروس جي آخري پوائنٽ SOAP ويب سروسز ٺاهڻ ۽ استعمال ڪرڻ لاءِ API.
Java Persistence API (JPA) ادارا هڪ API ڊيٽا اسٽورن ۾ ڊيٽا تائين رسائي ۽ ان ڊيٽا کي جاوا پروگرامنگ ٻولي جي شين ۾ تبديل ڪرڻ ۽ ان جي برعڪس.
جاوا EE منظم ڪيل بينون منظم ڪيل شيون جيڪي ايپليڪيشن جي ڪاروباري منطق کي مهيا ڪن ٿيون پر EJB جي ٽرانزيڪشن يا سيڪيورٽي خاصيتن جي ضرورت ناهي.
جاوا ميسيج سروس جاوا ميسيج سروس (JMS) API هڪ پيغام رسائيندڙ معيار آهي جيڪو Java EE ايپليڪيشن حصن کي پيغام ٺاهڻ، موڪلڻ، وصول ڪرڻ ۽ پڙهڻ جي اجازت ڏئي ٿو. هي اجزاء جي وچ ۾ تقسيم، قابل اعتماد ۽ هم وقت سازي رابطي کي يقيني بڻائي ٿو.
هيٺ ڏنل جدول ڏيکاري ٿو ٽيڪنالاجيون استعمال ٿيل ڊيٽا جي رسائي پرت تي:
ٽيڪنالاجي مقصد
جاوا ڊيٽابيس ڪنيڪشن API (JDBC) ڊيٽا اسٽورن مان ڊيٽا تائين رسائي ۽ حاصل ڪرڻ لاءِ گھٽ-سطح API. JDBC جو هڪ عام استعمال هڪ مخصوص ڊيٽابيس جي خلاف SQL سوالن کي لکي رهيو آهي.
Java Persistence API هڪ API ڊيٽا اسٽورن ۾ ڊيٽا تائين رسائي ۽ ان ڊيٽا کي جاوا پروگرامنگ ٻولي جي شين ۾ تبديل ڪرڻ ۽ ان جي برعڪس. JDBC جي مقابلي ۾ تمام اعلي سطحي API. جي ڊي بي سي جي سڀني پيچيدگين کي ڊولپر کان لڪايو هيٺ.
جاوا EE ڪنيڪٽر آرڪيٽيڪچر API ٻين ڪارپوريٽ وسيلن کي ڳنڍڻ لاء، جهڙوڪ:
  • ERP (انٽرپرائز ريسورس پلاننگ، انٽرپرائز ريسورس پلاننگ سسٽم)
  • CRM (انگريزي: Customer Relationship Management, Customer Relationship Management System).
جاوا ٽرانزيڪشن API (JTA) ٽرانزيڪشن جي وضاحت ۽ انتظام ڪرڻ لاءِ هڪ API، بشمول ڪيترن ئي ڊيٽا اسٽورن ۾ ورهايل ٽرانزيڪشن ۽ ٽرانزيڪشن.

جاوا EE بمقابله بهار

اسپرنگ فريم ورڪ کي جاوا اي اي جي مقابلي ۾ سمجهيو ويندو آهي. جيڪڏهن توهان انهن ٻن پليٽ فارمن جي ترقي تي نظر اچن ٿا، هڪ دلچسپ تصوير ظاهر ٿئي ٿي. جاوا EE جو پهريون نسخو IBM جي شموليت سان ٺاهيو ويو. اهي ٿڌو ٿي ويا، پر بيڪار، ڳري، ۽ استعمال ڪرڻ ۾ تڪليف. ڊولپرز جدوجهد ڪئي ڇاڪاڻ ته وڏي تعداد ۾ ترتيب واري فائلن کي برقرار رکڻ جي ضرورت آهي ۽ ٻيا سبب جيڪي ترقي کي پيچيده ڪن ٿا. ساڳئي وقت، بهار IoC پيدا ٿيو. اها هڪ ننڍڙي، خوبصورت ۽ استعمال ۾ آسان لائبريري هئي. اهو پڻ استعمال ڪيو هڪ ترتيب واري فائيل، پر جاوا EE جي برعڪس، اتي صرف هڪ هو. بهار جي سادگي حقيقت اها آهي ته لڳ ڀڳ هرڪو پنهنجي منصوبن ۾ هن فريم ورڪ کي استعمال ڪرڻ شروع ڪيو آهي. ۽ پوءِ بهار ۽ جاوا EE پنهنجو رستو ساڳيو شيءِ ڏانهن شروع ڪيو ، پر مختلف سرن کان. Pivotal Software، Spring جو ڊولپر، جاوا ڊولپرز جي سڀني ممڪن ۽ ناممڪن ضرورتن کي پورو ڪرڻ لاءِ پروجيڪٽ کانپوءِ پروجيڪٽ جاري ڪرڻ شروع ڪيو. تدريجي طور تي، جيڪو اڳ ۾ بهار سڏيو ويندو هو پهريون منصوبو بڻجي ويو، ۽ پوء مڪمل طور تي اسپرنگ ڪور ۾ ڪيترن ئي ٻين منصوبن سان ضم ٿي ويو. اهو سڀ ڪجهه بهار جي ناگزير پيچيدگي جو سبب بڻيو ان جي مقابلي ۾ جيڪو اصل ۾ هو. وقت گذرڻ سان گڏ، بهار جي انحصار جي پوري ٽنگ تي نظر رکڻ ڏاڍو ڏکيو ٿي پيو، ۽ هڪ الڳ لائبريريءَ جي ضرورت پيدا ٿي، جيڪا هر شيءِ پاڻ لوڊ ڪري ۽ هلائيندي (هاڻي محبوب اسپرنگ بوٽ به ڪنهن جاءِ تي هچڪي ويو آهي). هن سڄي وقت، JCP هڪ شيء تي ڪم ڪري رهيو آهي - جاوا EE اندر ممڪن هر شيء جي وڌ ۾ وڌ سادگي حاصل ڪرڻ لاء. نتيجي طور، جديد EJB ۾، هڪ بيان بيان ڪرڻ لاء، اهو ڪافي آهي ته هڪ تشريح بيان ڪرڻ لاء ڪلاس جي مٿان، جيڪا ڊولپر کي رسائي ڏئي ٿي انٽرپرائز جاوا بينز ٽيڪنالاجي جي مڪمل طاقت تائين. ۽ ساڳي سادگي جاوا EE اندر هر وضاحت کي متاثر ڪيو آهي. نتيجي طور، بهار ۽ جاوا EE ڪارڪردگي جي لحاظ کان تقريبن برابري آهن. ڪجھ شيون بھتر آھن، ڪجھ شيون خراب آھن، پر جيڪڏھن توھان عالمي سطح تي ڏسو، ڪو وڏو فرق نه آھي. اهو ساڳيو ڪم جي پيچيدگي لاء آهي. ٻئي بهار ۽ جاوا EE بهترين اوزار آهن. شايد بهترين جيڪو في الحال جاوا ۾ انٽرنيشنل نيٽ ورڪ ايپليڪيشنن جي تعمير لاءِ موجود آهي. بهرحال، Java EE عام طور تي صرف انٽرپرائز ايپليڪيشن سرور جي اندر ڪم ڪري سگهي ٿو (Tomcat هڪ نه آهي)، ۽ اسپرنگ اسٽيڪ تي هڪ ايپليڪيشن ڪنهن به شيءِ تي هلائي سگهي ٿي (ساڳي ٽام ڪيٽ تي)، ۽ ايستائين جو سرور کان سواءِ (جيئن ته اهو هلندو. اهو پنهنجي اندر آزاديء سان). هي اسپرنگ کي هڪ مثالي اوزار بڻائي ٿو ننڍڙن فرنٽ-اينڊ GUI ايپليڪيشنن يا مائڪرو سروس آرڪيٽيڪچرز کي ترقي ڪرڻ لاءِ. پر ايپليڪيشن سرورز تي انحصار کي ختم ڪرڻ سان بهار جي ايپليڪيشنن جي اسپيبلٽي تي منفي اثر پيو. ۽ جاوا EE هڪ اسپيبلبل مونوليٿڪ ڪلستر ايپليڪيشن کي لاڳو ڪرڻ لاءِ مناسب آهي. بهار جي فريم ورڪ سان واقف ڊولپر هن وقت مزدورن جي مارڪيٽ تي وڌيڪ طلب ۾ آهن. اهو ڪيئن تاريخي طور تي ٿيو: هڪ دفعي جڏهن جاوا اي اي تمام گهڻو پيچيده هو، بهار "گراهڪ بنياد حاصل ڪيو." ۽ اڃا تائين، سوال جو ڪو واضح جواب نه آهي ته ڇا بهار يا جاوا اي اي سکڻ لاء. ھڪڙو شروعاتي ھيٺ ڏنل مشورو ڏئي سگھجي ٿو. ڄاڻ حاصل ڪريو (گهٽ ۾ گهٽ سطحي طور تي) ٻنهي پليٽ فارمن سان. جاوا EE ۽ اسپرنگ ٻنهي ۾ هڪ ننڍڙو گهر پروجيڪٽ لکو. ۽ پوءِ ان فريم ورڪ ۾ وڌيڪ اونهائي وڌو جيڪا ڪم تي گهربل هوندي. نتيجي طور، بهار ۽ جاوا EE جي وچ ۾ مٽائڻ ڏکيو نه ٿيندو.

نتيجا

هڪ وڏي پيماني تي موضوع، يقينا، هڪ مضمون ۾ ڍڪي نه ٿو سگهجي! نئين شرطن جي هڪ ٽون کان پوء، توهان شايد هن علم کي حقيقي زندگي جي مثال تي "لاڳو" ڪرڻ چاهيو ٿا. تنهن ڪري، اسان جاوا EE جو مطالعو جاري رکنداسين: توهان کي ايندڙ مضمون ۾ جاوا EE ترقي لاءِ مقامي ماحول قائم ڪرڻ تي عملي سبق ملندا.
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION