JavaRush /جاوا بلاگ /Random-UR /جاوا ٹاسکس کی اقسام کیا ہیں؟

جاوا ٹاسکس کی اقسام کیا ہیں؟

گروپ میں شائع ہوا۔
جب کوئی شخص اپنے طور پر یا آن لائن کورسز میں پروگرامنگ کا مطالعہ کرنا شروع کرتا ہے، تو اس کے لیے "سرگرمی کے میدان" کی وضاحت کرنا اور ہر چیز کو منظم کرنا بہت ضروری ہے۔ اس آرٹیکل میں ہم اس طرح کی ایک سیسٹمائزیشن پیش کرتے ہیں - جاوا ٹاسکس ابتدائی افراد کے لیے، یہ بتاتا ہے کہ پروگرامنگ JavaRush اور مفید لنکس سیکھنے کے لیے آن لائن کورس میں ایک خاص قسم کو کس حد تک مکمل طور پر پیش کیا گیا ہے۔ جاوا ٹاسکس کی اقسام کیا ہیں - 1

زبان کے نحوی مسائل

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

جمع کرنے کے کام

مجموعے پہلا "سنجیدہ" موضوع ہے جس کا سامنا ایک نیا پروگرامر اپنی پڑھائی کے دوران کرتا ہے۔ ابتدائی افراد کے لیے جاوا کے مسائل، جمع کرنے کے لیے وقف ہیں، جاوا رش پر بھی وسیع پیمانے پر نمائندگی کی جاتی ہے - جاوا سنٹیکس کی تلاش کے ساتویں اور آٹھویں سطح پر۔ یہاں طالب علم پہلی بار جاوا کلیکشن فریم ورک کے بارے میں سنے گا، سیٹ، فہرست اور نقشہ کے انٹرفیس اور ان کے کچھ نفاذ کے ساتھ کام کرے گا۔ تاہم، اس مرحلے پر آپ صرف اس مفید ٹول اور جاوا کے آسان کاموں سے واقف ہوں گے۔ جاوا کلیکشنز کی تلاش کے دوران مجموعوں کا مزید گہرائی سے مطالعہ کیا جائے گا ۔ آپ دیکھتے ہیں کہ یہ اعتراض کتنا اہم ہے، کیونکہ ایک پوری جستجو کا نام اس کے نام پر رکھا گیا تھا!

استثنائی مسائل

جاوا میں غیر معمولی حالات کے ساتھ کام کرنے کے لیے ایک خاص طریقہ کار ذمہ دار ہے، جو پروگراموں میں غلطیوں کی "پکڑنے" کو بہت آسان بناتا ہے۔ لیکن اسے مکمل طور پر استعمال کرنے کے لیے، آپ کو یہ سمجھنا ہوگا کہ جاوا میں استثنیٰ ہینڈلنگ کیسے کام کرتی ہے۔ JavaRush میں اس طرح کے بہت سارے کام ہیں، اور وہ پہلے Java Syntax کی تلاش میں بھی پائے جاتے ہیں۔
جاوا ٹاسکس کی اقسام کیا ہیں - 2

تبادلوں کے مسائل ٹائپ کریں۔

بلاشبہ، اس گروپ کو بنیادی نحوی کاموں کے طور پر درجہ بندی کیا جا سکتا ہے۔ تاہم، ہماری عاجزانہ رائے میں، اس طرح کے کاموں کو اکثر کم سمجھا جاتا ہے، اور ابتدائی لوگ ان سے بھٹک جاتے ہیں۔ لہٰذا، آئیے ٹیمپلیٹس سے ہٹتے ہیں: ہم "ابتدائی اقسام کی تبدیلی" کے عنوان پر ابتدائی طور پر جاوا کے کاموں کا مطالعہ کرتے ہیں، جیسا کہ اکثر کیا جاتا ہے، لیکن تھوڑی دیر بعد - پہلی جاوا سنٹیکس کی تلاش کے اختتام پر۔ اور پھر ہم سیکھیں گے کہ جاوا کور کی تلاش میں OOP کا مطالعہ کرکے غیر قدیم اقسام (آبجیکٹ) کو کیسے کاسٹ کیا جائے ۔ JavaRush میں اس طرح کے بہت سارے کام ہیں؛ آپ کو کوئی اضافی چیز تلاش کرنے کی ضرورت نہیں ہے۔

OOP کو سمجھنے کے لیے کام

OOP سب سے مشکل موضوع نہیں ہے، لیکن یہ انتہائی اہم ہے۔ اس کے علاوہ، اس میں بہت ساری باریکیاں ہیں جنہیں انٹرویو لینے والے مستقبل کے "جونیئرز" کو پکڑنے کے لیے استعمال کرنا پسند کرتے ہیں۔ JavaRush کورس میں ابتدائی افراد کے لیے پروگرامنگ کے عملی مسائل ہیں جو آپ کو آبجیکٹ پر مبنی نقطہ نظر کو سمجھنے میں مدد فراہم کریں گے۔ تاہم، OOP کو صحیح معنوں میں سمجھنے کے لیے، ہم اس موضوع پر لٹریچر پڑھنے کی تجویز کرتے ہیں (مثال کے طور پر، Kay Horstmann، Gary Cornell's Professional's Library، McLaughlin's Object-Oriented Analysis and Design، یا دیگر کتابیں

I/O تھریڈز پر کام

ہم I/O اسٹریمز کو سمجھنے سے بہت پہلے استعمال کرنا شروع کر دیتے ہیں - یہ جاوا ہے، بچے، اور System.out کی وضاحت کرنا، اور اس کے علاوہ، System.in کو ایک سبز ابتدائیہ کے لیے، مشکل ہے، اور پہلے مرحلے پر ضروری نہیں ہے۔ لیکن جاوا کور کی تلاش کے دوران ، اس قدرے الجھے ہوئے موضوع کو سمجھنے کے لیے علم ہی کافی ہے، اور ہم نہ صرف کنسول ان پٹ/آؤٹ پٹ کے بارے میں بات کر رہے ہیں، بلکہ فائل سسٹم کے ساتھ کام کرنے کے بارے میں بھی بات کر رہے ہیں۔ اہم بات یہ ہے کہ ان کاموں کو چھوڑنا نہیں ہے (جاوا رش میں ان میں سے بہت سارے ہیں)، اور نظریہ کو مستقل طور پر سمجھنا ہے۔

پہیلیاں

"پہیلیاں" سے ہماری مراد بڑھتی ہوئی پیچیدگی کے کام ہیں جن کو غیر معیاری طریقے سے لاگو کرنے کی صلاحیت جتنا علم کی ضرورت نہیں ہے۔ یہ جاوا جونیئر کے لیے عام کام ہیں - یہ انٹرویوز میں بہت مقبول ہیں، لیکن حقیقی کام میں، اس معنی میں پہیلیاں بہت عام نہیں ہیں۔ یہی وجہ ہے کہ وہ جاوا رش میں موجود ہیں، لیکن بہت زیادہ نہیں (عام طور پر کیپٹن بوبروف کی کلاسوں میں)۔
جاوا ٹاسکس کی اقسام کیا ہیں - 3
آپ کو پہیلیاں کہاں مل سکتی ہیں:

الگورتھم اور ڈیٹا ڈھانچے

الگورتھم اور ڈیٹا ڈھانچے کے بارے میں مسلسل بحث ہوتی رہتی ہے کہ مستقبل کے پروگرامر کو ان کی کتنی ضرورت ہے۔ ایک بار پھر ہم جواب دیں گے: سوچ کی ترقی کے لیے - ان کی ضرورت ہے، براہ راست کام کے لیے - شاذ و نادر ہی۔ کیونکہ جاوا اور دیگر زبانوں کے لیے بھی، لائبریریاں پہلے ہی تمام معلوم ترتیب، تلاش اور دیگر الگورتھم کے نفاذ کے ساتھ لکھی جا چکی ہیں۔ تاہم، الگورتھم کے اپنے نفاذ کو بنانا بہت مفید ہے، جیسا کہ ان کی پیچیدگی کو سمجھنا ہے۔ خاص طور پر ان لوگوں کے لیے جنہوں نے اسکول میں صرف ریاضی کی تعلیم حاصل کی۔ اصولی طور پر، ان کاموں کو پہیلیوں کے ساتھ جوڑا جاتا ہے، فرق صرف یہ ہے کہ ان سب کو کئی بار آن لائن بیان اور حل کیا جاتا ہے۔ آپ کو توثیق کے لیے توثیق کنندہ کی بھی ضرورت نہیں ہے۔ کوئی بھی کورس منتخب کریں، مثال کے طور پر، پرنسٹن یونیورسٹی سے ، ان کے ساتھی کیلیفورنیا یا سٹیپک سے ۔ ویسے، کورس CS50 میں ، جس کا ترجمہ ہم نے JavaRush پر رکھا ہے، کئی اہم الگورتھم اور ڈیٹا ڈھانچے پر بات کی گئی ہے۔ ہم پرزور مشورہ دیتے ہیں کہ لیول 2-5 کی ویڈیوز دیکھیں اور جاوا میں کاموں کو نافذ کریں۔ گراف کے مسائل: ڈیٹا کی ساخت کے کام:

ملٹی تھریڈنگ

کوئی بھی ایسا پروگرام لکھ سکتا ہے جو "ہیلو ورلڈ" پرنٹ کرتا ہو... جاوا تھریڈ API استعمال کرنے کے بارے میں کیا خیال ہے تاکہ مشہور فقرہ ایک اضافی دھاگے سے پرنٹ ہو؟ اور اس لیے کہ یہ پانچ مختلف تھریڈز سے پانچ بار "Hello world" پرنٹ کرتا ہے، اور تاکہ لائنیں متبادل نہ ہوں؟... ملٹی تھریڈنگ جاوا کور سیکھنے کے دوران ایک حقیقی "طاقت کا امتحان" ہے۔ JavaRush پر ایک پوری جستجو اس انتہائی مشکل موضوع کے لیے وقف ہے، جسے Java Multithreading کہا جاتا ہے، اور اس میں بہت سارے کام شامل ہیں تاکہ طالب علم متوازی عمل کے "درد اور خوبصورتی" کو محسوس کر سکے۔ زیادہ کثرت سے، طلباء کے پہلے "حقیقی" منصوبوں میں زیادہ یا کم حد تک ملٹی تھریڈنگ شامل ہوتی ہے۔ مثال کے طور پر، سادہ کھیل.
جاوا ٹاسکس کی اقسام کیا ہیں - 4

ملٹی تھریڈنگ کا مسئلہ

پانچ خاموش فلسفی گول میز پر بیٹھے ہیں۔ ان میں سے ہر ایک کے سامنے اسپگیٹی کی پلیٹ ہے۔ ہر فلسفی کے بائیں اور دائیں میز پر کانٹے پڑے ہیں (ان کے درمیان)۔ ایک فلسفی یا تو کھا سکتا ہے یا سوچ سکتا ہے۔ مزید یہ کہ، وہ صرف اس صورت میں کھا سکتا ہے جب اس کے پاس دو کانٹے ہوں - ایک اس کے دائیں اور بائیں لے جائے۔ "کانٹا اٹھاؤ" اور "کانٹا نیچے رکھو" الگ الگ اعمال ہیں جو ترتیب وار انجام دیے جاتے ہیں۔

جنرک پر کام

جنرلائزیشن آٹومیشن کا جوہر ہے، یعنی ایک لحاظ سے، پروگرامنگ۔ لہذا جاوا میں عمومیات یا عمومیات کے موضوع کو بھی نظر انداز نہیں کیا جانا چاہئے۔ JavaRush میں پروگرامنگ کے عمومی کام ہوتے ہیں (زیادہ تر جاوا کلیکشن کی تلاش میں، جس کا آغاز لیول 5 سے ہوتا ہے)۔ جہاں آپ کو جنرکس پر مفید مشقیں اور مواد مل سکتے ہیں:

ڈیزائن پیٹرن ٹاسکس

کسی مرحلے پر (جاوا رش کورس کا تقریباً 2/3)، ایک نوآموز پروگرامر کو پروگرامنگ میں اچھے اخلاق کے اصولوں کو قریب سے دیکھنا شروع کرنے کی ضرورت ہے۔ ہم درست کوڈ فارمیٹنگ (جو آسان ہے) اور ڈیزائن پیٹرن (جو زیادہ مشکل ہے) کے بارے میں بات کر رہے ہیں۔ JavaRush کے پاس ایسے کام ہیں۔ اضافی کی ضرورت ہے - وہ مل سکتے ہیں، مثال کے طور پر، کتاب میں (حصہ 4) " Java. پروگرامنگ کے طریقے » بلینوف اور رومانچک۔ یا اس بارے میں سوچیں کہ آپ پہلے سے حل شدہ مسائل کو ٹیمپلیٹ میں کیسے فٹ کر سکتے ہیں۔

یونٹ ٹیسٹنگ

کسی بھی پروگرامر کی ایک اہم مہارت، جسے اکثر غلطی سے خصوصی طور پر ٹیسٹرز سے منسوب کیا جاتا ہے، آپ کے اپنے کوڈ کے لیے یونٹ (یا یونٹ) ٹیسٹ لکھنا ہے۔ JavaRush میں یونٹ ٹیسٹ کے چند کام ہیں، لیکن آپ کو واقعی نئے کاموں کی تلاش میں زحمت نہیں کرنی چاہیے۔ ایک بار جب آپ یہ جان لیں کہ ٹیسٹ کیسے لکھتے ہیں، اپنے کوڈ کو (اپنے پراجیکٹس میں، تعلیمی کاموں میں) یونٹ ٹیسٹ کے ساتھ ڈھانپنے کی عادت بنائیں۔ یہ کنسول آؤٹ پٹ کا استعمال کرتے ہوئے چیک کرنے سے کہیں زیادہ کارآمد ہے، جس کا شکار طلباء کے پروگرامرز ہوتے ہیں۔ اس کے علاوہ، اکثر سب سے پہلی چیز جو کمپنیاں "جونیئرز" کو سونپتی ہیں وہ ہے کسی اور کے کوڈ کے لیے یونٹ ٹیسٹ لکھنا۔

باقاعدہ اظہار کے مسائل

یہ ایک سادہ سا موضوع ہے جسے تقریباً کوئی ابتدائی سمجھ نہیں پاتا، کیونکہ یہ غیر معمولی اور سستی ہے۔ درحقیقت، موضوع کا مطالعہ کرنے، "ریگولر" کو سمجھنے اور جن لوگوں نے ایسا نہیں کیا ہے ان پر فائدہ اٹھانے میں کچھ دن گزارنا قابل قدر ہے۔ یہ اس لیے بھی مفید ہے کیونکہ وہ پروگرامنگ زبان سے تقریباً آزاد ہیں: اسے ایک بار سیکھیں، آپ اسے ہر جگہ استعمال کر سکتے ہیں۔ JavaRush میں کوئی مسئلہ نہیں ہے جو کہ ریگولر ایکسپریشنز پر فوکس کرتا ہے، حالانکہ کچھ کو ان کے استعمال سے حل کیا جا سکتا ہے۔ تو موضوع کو سمجھنے کے لیے کچھ اضافی وسائل یہ ہیں:
جاوا ٹاسکس کی اقسام کیا ہیں - 5

ایک چال کے ساتھ جاوا کے مسائل

اس زمرے میں مشکل کام شامل ہیں جو اکثر پروگرامر کے حقیقی کام سے براہ راست متعلق نہیں ہوتے ہیں۔ وہ بنیادی طور پر انٹرویوز کے دوران پائے جاتے ہیں؛ ان کا استعمال کسی امیدوار کے ذریعے کسی خاص ٹیکنالوجی کے بارے میں گہرائی کو سمجھنے یا اس کی توجہ کو جانچنے کے لیے کیا جاتا ہے۔ اگر آپ کو اس طرح کے مسائل درکار ہوں تو گوگل "جاوا انٹرویو کے مسائل" یا اس طرح کی کوئی چیز۔ زیادہ تر امکان ہے کہ آپ کو مختلف فورمز پر بہت سارے مجموعے کے ساتھ ساتھ سوالات اور جوابات بھی ملیں گے۔ وہ سمجھنے کے لیے مفید ہیں، لیکن کیا ان پر زیادہ وقت گزارنا مناسب ہے؟ Kay Horstmann نے ایک بار InformIT کے لیے اپنے مضمون میں اس طرح کے مسائل کے بارے میں اچھی بات کی تھی، جس کا ترجمہ ہم نے جنوری میں شائع کیا تھا۔ اس کی سوچ کا مختصراً خلاصہ کرنے کے لیے، حقیقی دنیا کے کام ہیں، اور ایک متوازی کائنات ہے - "انٹرویو کے مسائل۔"

لیمبڈا اظہار کے مسائل

جاوا 8 میں لیمبڈا ایکسپریشنز کے لیے سپورٹ ظاہر ہوا، لیکن پھر بھی تمام پروگرامرز انہیں استعمال کرنے کے لیے تیار نہیں ہیں۔ تاہم، آج "جاوا جونیئر کے لیے کام" کے تصور میں لیمبڈا کے تاثرات کے ساتھ ہیرا پھیری شامل ہے، اس لیے ہم تجویز کرتے ہیں کہ آپ ان سے اپنے آپ کو واقف کرائیں، مثال کے طور پر، انتہائی قابل رسائی مضمون سے " جاوا میں لیمبڈا اظہار کے بارے میں مشہور۔ مثالوں اور کاموں کے ساتھ ۔"

نیٹ ورکنگ کے کام

JSON، RMI، HttpUrlConnection، ساکٹ میں سیریلائزیشن... یہ بالکل ابتدائی پروگرامنگ کام نہیں ہیں۔ انہیں ٹھوس علم کی ضرورت ہوتی ہے اور وہ اپنے منصوبوں، انٹرنشپ اور کام کے لیے ایک قسم کا پل ہیں۔ JavaRush (Java Collection quest) کی اعلیٰ سطحوں پر، ان ٹیکنالوجیز اور طریقوں میں مہارت حاصل کرنے کے لیے بہت سی مشقیں ہیں، لیکن آن لائن انٹرن شپ کے دوران سب کچھ زیادہ واضح ہو جائے گا۔
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION