JavaRush /جاوا بلاگ /Random-SD /حصو 1. بهار ۽ JavaEE سکڻ کان پهريان توهان کي ڄاڻڻ جي ضرور...

حصو 1. بهار ۽ JavaEE سکڻ کان پهريان توهان کي ڄاڻڻ جي ضرورت آهي

گروپ ۾ شايع ٿيل
جيڪڏهن توهان اڳ ۾ ئي جاوا ايس اي جو مطالعو مڪمل ڪيو آهي يا ان جي ويجهو آهيو، اهو وقت آهي سوچڻ لاءِ ايندڙ قدمن بابت جاوا ڊولپر جي پيشي کي فتح ڪرڻ ۾. حصو 1. بهار ۽ JavaEE سکڻ کان پهريان توهان کي ڄاڻڻ جي ضرورت آهي - 1هڪ طرف، توهان وٽ اڳ ۾ ئي جاوا جي سٺي ڄاڻ آهي: توهان ڄاڻو ٿا ته IDE سان ڪيئن ڪم ڪجي، پروگرام لکڻ، ۽ گهڻو ڪجهه. پر اسان کي انهن سان گڏ اڳتي ڇا ڪرڻ گهرجي، پروگرام؟ انهن کي ڪيئن ٿڌو ٺاهيو ۽ "انهن کي دنيا ۾ آزاد ڪيو"؟ اهو واضح ٿئي ٿو ته اهو انٽرپرائز ٽيڪنالاجيز جو مطالعو شروع ڪرڻ جو وقت آهي. ۽ هي آهي جتي مزو شروع ٿئي ٿو. اهو مسئلو ناهي ته توهان ڪهڙي ٽيڪنالاجي اسٽيڪ سان شروع ڪرڻ جو فيصلو ڪيو. ڇا اهو JavaEE هجي يا بهار، توهان شايد ڪيتريون ئي شيون ڏسندا جيڪي اڃا تائين توهان جي سمجھ کان ٻاهر آهن. جاوا ۽ جديد ٽيڪنالاجيز جي بنيادي ڳالهين جي وچ ۾، اڃا تائين علم جي هڪ وچولي سطح آهي جيڪا توهان جي مدد ڪندي ته توهان کي خود قابو ۽ خود اعتمادي جي باقيات کي نه وڃايو جڏهن وڏي دستاويز پڙهڻ. تنهن ڪري، مضمونن جي هن سيريز جو مقصد توهان کي JavaEE يا بهار جي وڌيڪ مطالعي لاءِ گهٽ ۾ گهٽ ضروري نظرياتي ڄاڻ ڏيڻ آهي. سڀ مواد 7 حصن ۾ ورهايل آهي:
  1. اچو ته نيٽ ورڪ جي باري ۾ ٿورو ڳالهائي.
  2. اچو ته ڪلائنٽ-سرور جي جوڙجڪ ۽ ٽي-سطح فن تعمير تي غور ڪريو.
  3. اچو ته ڏسو HTTP/HTTPS پروٽوڪول.
  4. اچو ته سڀ ڪجهه سکو جيڪو توهان کي Maven بابت ڄاڻڻ جي ضرورت آهي.
  5. اچو ته servlets بابت ڳالهايون.
  6. سروليٽ ڪنٽينر.
  7. ۽ آخر ۾ - MVC جي باري ۾.

حصو 1. اچو ته نيٽ ورڪ جي باري ۾ ٿورو ڳالهائي

اچو ته سڀ کان اهم شيءِ سان شروع ڪريون ۽ ان بنياد جي باري ۾ ڳالهايون جنهن تي سڀئي سماجي نيٽ ورڪ، ويب سروسز ۽ ايپليڪيشنون، ميسينجر ۽ ساديون سائيٽون ٺهيل آهن - نيٽ ورڪ بابت ( مضمونن جي هن سلسلي جي سلسلي ۾، اصطلاح ”نيٽورڪ“ جو مطلب آهي. گلوبل انٽرنيٽ ). نيٽ ورڪ ڪمپيوٽرن جي وڏي تعداد تي مشتمل آهي: اهي هڪ ٻئي سان ڳنڍيل آهن ۽ رابطي جي قابل آهن. اهو سمجهڻ ضروري آهي ته اهي اهو ڪيئن ڪن ٿا، ڇاڪاڻ ته ويب ايپليڪيشنون خاص طور تي اهي آهن جيڪي اهي معلومات کي هڪ ڪمپيوٽر کان ٻئي ڏانهن منتقل ڪرڻ لاء ڪندا آهن.

OSI نيٽ ورڪ ماڊل

او ايس آءِ (اوپن سسٽم انٽر ڪنيڪشن) ماڊل هڪ نيٽ ورڪ ٺاهڻ لاءِ هڪ پرت وارو طريقو ٺاهي ٿو. اهو واضح طور تي ڏيکاري ٿو ته ڪيئن ۽ ڪهڙي سطح تي ساڳئي نيٽ ورڪ جا ميمبر هڪ ٻئي سان رابطو ڪري سگهن ٿا. مجموعي طور تي، هي ماڊل 7 سطحن تي مشتمل آهي:
7 لاڳو ٿيل
6 نمائندگي
5 سيشن
4 ٽرانسپورٽ
3 نيٽ ورڪ
2 ڊڪٽ
1 جسماني
تجريدي تہن ۾ ٽوڙڻ سان ماهرن کي اجازت ڏئي ٿي جيڪي ڪم ڪن ٿا، مثال طور، ٽرانسپورٽ پرت تي، نيٽ ورڪ ۽ سيشن پرت تي نيٽ ورڪ تي عمل درآمد جي تفصيل بابت نه سوچڻ. اهو طريقو پروگرامنگ ۾ پڻ استعمال ٿيندو آهي. اچو ته OSI ماڊل جي سڀني تہن تي نظر رکون ۽ معلوم ڪريو ته انهن مان اسان لاء دلچسپ آهن:
  1. 1. جسماني سطح - هتي فزڪس جا قانون پنهنجو ڪم ڪن ٿا، ۽ انسان جو ڪم اهو آهي ته هو پنهنجي مقصد لاءِ استعمال ڪري ۽ ان کي سڌو ڪري. مثال طور، ڪيبل ٺاهڻ ۽ انهن کي نيٽ ورڪ ميمبرن ڏانهن رکڻ.

    اسان کي دلچسپي نه آهي.

  2. ڊيٽا لنڪ پرت - نيٽ ورڪ نوڊس ڏانهن ڊيٽا منتقل ڪرڻ ۽ جسماني شين تي ڊيٽا ٽرانسميشن چينلز ٺاهڻ جو ذميوار.

    Нам не интересен, если только нет желания писать прошивку для каналообразующей аппаратуры.

  3. Сетевой уровень — для определения addressов отдельных пользователей сети и маршрутов к ним. На этом уровне стоит остановиться подробнее, а именно — на addressе пользователя в сети.

    Он определяется специальным протоколом: самый распространённый — IPv4 (Internet Protocol version 4). Именно его нужно использовать веб-программисту для обращения к другому абоненту сети.

    IPv4 состоит из четырех byteовых значений, разделенных точкой, например: 192.0.2.235. Стоит помнить, что значения byteовые, а значит, они лежат в пределах 0..255.

    IP-address, в свою очередь, делятся на классы, и просто так присвоить себе красивую комбинацию циферок не получится, но так сильно углубляться мы не станем. Достаточно понимать, что IP-address — это уникальный идентификатор абонента в сети, по которому мы сможем к нему обратиться.

  4. Транспортный уровень — занимается доставкой информации addressту. Для этого используются разные протоколы, которые нам пока не интересны. Гораздо больше нас интересует понятие, которое появляется на этом уровне, — port.

    Порты отвечают за идентификацию конкретного applications на компьютере. Например, ты написал чат на Java, установил на 2 компа и хочешь отправить своему собеседнику. Твое сообщение упаковывается, отправляется по конкретному IP-addressу, доставляется твоему собеседнику, но его ПК не знает, что делать с полученной информацией, так How не понимает, Howое приложение должно обработать твое сообщение. Для этого и указываются порты при общении абонентов в сети.

    Порт представляет собой число от 0 до 65535. Он добавляется к IP-addressу после двоеточия: 192.0.2.235:8080. Но нельзя использовать все порты из указанного диапазона: часть из них зарезервирована под операционную систему, еще часть принято использовать с конкретно оговоренной целью. В преднаmeaning разных портов углубляться не будем, пока достаточно понимать их роль в процессе общения в сети.

  5. Сеансовый уровень — создает и управляет сеансами связи приложений. На этом уровне становится возможным взаимодействие приложений, отправка requestов служебного уровня. Для нас важно знать, что на этом уровне между двумя абонентами открывается сессия (session), с которой нам часто придется работать.

    Сессия — сущность, которая создается при установке связи между двумя пользователями. В ней можно сохранять нужную нам информацию о юзере, об истории их взаимодействия. Важной деталью является то, что при остановке обмена информацией сессия не пропадает, а сохраняет свое состояние на протяжении установленного промежутка времени, поэтому пользователи могут продолжить обмен информацией после перерыва.

    جيڪڏهن هڪ ايپليڪيشن ڪيترن ئي استعمال ڪندڙن سان گڏ ڳالهائي ٿي، ڪنيڪشن جو هڪ مناسب تعداد، ۽ تنهن ڪري سيشن، قائم ڪيا ويا آهن. هر سيشن ۾ هڪ منفرد سڃاڻپ ڪندڙ (ID) هوندو آهي ، جيڪو ايپليڪيشن کي اجازت ڏيندو آهي ته انهن صارفين جي وچ ۾ فرق ڪري، جن سان ڪميونيڪيشن ٿئي ٿي.

  6. پريزنٽيشن پرت - انڪوڊنگ/ڊيڪوڊنگ ڊيٽا لاءِ ذميوار. ظاهر آهي، جيڪڏهن اسان کي ”هيلو ويب“ واري اسٽرنگ کي ڪنهن ٻئي صارف ڏانهن موڪلڻ جي ضرورت آهي، اهو پهريون ڀيرو بدلجي (انڪوڊ ٿيل) بائنري ڪوڊ ۾، ۽ پوءِ ئي موڪليو ويو. هڪ دفعو اهو منزل تي پهچي ٿو، پيغام واپس تبديل ڪيو ويو آهي (ڊيڪوڊ ٿيل) ۽ وصول ڪندڙ اصل تار ڏسي سگهي ٿو. اهي عمل پيشي جي سطح تي ٿين ٿا.

  7. ايپليڪيشن پرت اسان لاءِ سڀ کان وڌيڪ دلچسپ پرت آهي. اهو ايپليڪيشنن کي نيٽ ورڪ سان رابطو ڪرڻ جي اجازت ڏئي ٿو. هن سطح تي اسان وصول ڪنداسين، پيغام موڪليندا، خدمتن ڏانهن درخواستون ۽ ريموٽ ڊيٽابيسس.

    اهڙا ڪيترائي پروٽوڪول آهن جيڪي هن سطح تي استعمال ڪيا ويا آهن: POP3، FTP، SMTP، XMPP، RDP، SIP، TELNET ۽ يقيناً، HTTP/HTTPS. هڪ پروٽوڪول هڪ آفاقي معاهدو آهي جنهن تي عمل ڪريون ٿا جڏهن پيغامن کي ترتيب ڏيو. اسان ضرور ڳالهائينداسين HTTP/HTTPS پروٽوڪول بابت الڳ الڳ ۽ وڌيڪ تفصيل سان.

حصو 1. بهار ۽ JavaEE سکڻ کان پهريان توهان کي ڄاڻڻ جي ضرورت آهي - 2 اسان کي ڄاڻڻ جي ضرورت ناهي ته هن ماڊل جي هر سطح ڪيئن ڪم ڪري ٿي. بنيادي شيء اها آهي ته انهن عناصر جي آپريشن جي اصولن کي سمجهڻ، جنهن سان اسان کي معاملو ڪرڻو پوندو جڏهن ويب ايپليڪيشنون لکڻيون، يعني:
  • IP پتو - نيٽ ورڪ تي رڪنيت جو پتو؛
  • پورٽ - مخصوص سبسڪرائبر جي ايپليڪيشن ايڊريس؛
  • سيشن ھڪڙو ادارو آھي جيڪو ٻن رڪنن جي وچ ۾ پوري رابطي ۾ موجود آھي؛
  • ايپليڪيشن پروٽوڪول (HTTP/HTTPS) اهي ضابطا آهن جيڪي پيغام لکڻ ۽ موڪلڻ وقت اسان جي رهنمائي ڪندا.
جڏهن اسان وڃون ٿا، چئو، هڪ آن لائن اسٽور، اسان ان جي مقام جو پتو ۽ بندرگاهه ڏيکاريون ٿا. توهان جي پهرين دوري تي، هڪ سيشن ٺاهي وئي آهي جنهن ۾ اسٽور معلومات رڪارڊ ڪري سگهي ٿو. مثال طور، سامان بابت جيڪي اسان ڪارٽ ۾ ڇڏيا هئا. جيڪڏهن اسان آن لائن اسٽور ٽيب کي بند ڪريون ٿا ۽ پوءِ ان ڏانهن واپس وڃون ٿا، اسان جون پروڊڪٽس ڪارٽ ۾ رهنديون ڇو ته اهي سيشن ۾ محفوظ ڪيون وينديون آهن. يقينن، اسان سڀ معلومات حاصل ڪندا آهيون جيڪا اسان اسٽور مان HTTP/HTTPS پروٽوڪول ذريعي حاصل ڪندا آهيون، ۽ اسان جو برائوزر ان تي عمل ڪري سگهي ٿو. توهان اعتراض ڪري سگهو ٿا ۽ چئو ته توهان ڪڏهن به برائوزر ۾ ايڊريس ۽ پورٽ داخل نه ڪيو آهي، ۽ توهان جزوي طور تي صحيح هوندا، ڇاڪاڻ ته توهان ڊومين جو نالو داخل ڪيو آهي، جيڪو DNS سرور تي تبديل ڪيو ويو آهي. پر هتي، اچو ته هڪ بهتر نظر رکون ته ڇا آهي.

DNS (ڊومين نالو سسٽم)

جيئن ته اسان اڳ ۾ ئي معلوم ڪيو آهي، نيٽ ورڪ تي هر رڪنيت هڪ منفرد پتو آهي. جيڪڏهن اسان هڪ ايپليڪيشن بابت ڳالهائي رهيا آهيون، ان جو منفرد پتو هوندو IPv4:port . هن ايڊريس کي ڄاڻڻ، توهان سڌو سنئون ايپليڪيشن تائين رسائي ڪري سگهو ٿا. اچو ته تصور ڪريو ته اسان هڪ ويب ايپليڪيشن لکي آهي جيڪا حقيقي وقت ۾ سڀني ملڪن ۾ سراسري هوا جي درجه حرارت ڏيکاري ٿي. اسان ان کي سرور تي ايڊريس 226.69.237.119 ۽ پورٽ 8080 تي لڳايو آهي. صارف کي اسان کان معلومات حاصل ڪرڻ لاءِ، هن کي برائوزر ۾ 5 نمبر داخل ڪرڻ گهرجن: 226.69.237.119:8080. ماڻهو اصل ۾ نمبرن جي سيٽ کي ياد ڪرڻ پسند نٿا ڪن: اسان سڀني کي ٻن فون نمبرن کان وڌيڪ ياد ناهي. اهو ئي سبب آهي ته ڊومين نالو سسٽم ايجاد ڪيو ويو . اسان پنهنجي ايڊريس لاءِ ”عرف“ ٺاهي سگهون ٿا- مثال طور، world-temperature.com- ۽ اسان کي ڳولڻ بدران پنج عددي ايڊريس استعمال ڪري، صارف اسان جي ڊومين جو نالو برائوزر جي ايڊريس بار ۾ ٽائيپ ڪري سگهي ٿو. ڊومين جا نالا ۽ حقيقي پتي سان ملائڻ لاء، اتي آهن DNS سرور . جڏهن صارف داخل ٿئي ٿو، مثال طور، javarush.ru برائوزر ۾، هن جي درخواست DNS سرور ڏانهن موڪلي وئي آهي، جتي اهو هڪ حقيقي پتي ۾ بدلجي ٿو. حصو 1. بهار ۽ JavaEE سکڻ کان اڳ اوھان کي ڇا ڄاڻڻ گھرجي - 4اسان لاءِ اھو سمجھڻ ضروري آھي، ڇاڪاڻ⁠تہ اسان جي ايپليڪيشنن ۾ اسين ريموٽ سروسز کي سڏينداسين ڊومين جي نالي ۽ حقيقي ايڊريس سان، ۽ اھي ئي خدمتون ھونديون. اهو ئي سڀ ڪجهه آهي! هن آرٽيڪل ۾، اسان نيٽ ورڪ ڊيزائن جي بنيادي ڳالهين تي غور ڪيو، جيڪي توهان جي ويب پروگرامنگ سکڻ شروع ڪرڻ کان پهريان ڪارائتو هوندا. ايندڙ وقت اسان ڏسنداسين ته ڪلائنٽ-سرور آرڪيٽيڪچر ڇا آهي ۽ اهو سمجهڻ ڇو ضروري آهي. حصو 2. اچو ته سافٽ ويئر آرڪيٽيڪچر جي باري ۾ ٿورو ڳالهايون حصو 3. HTTP/HTTPS پروٽوڪول حصو 4. Maven Basics Part 5. Servlets. هڪ سادي ويب ايپليڪيشن لکڻ حصو 6. سروليٽ ڪنٽينرز حصو 7. متعارف ڪرائڻ MVC (ماڊل-ويو-ڪنٽرولر) نمونو حصو 8. هڪ ننڍڙي اسپرنگ بوٽ ايپليڪيشن لکڻ
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION