JavaRush /جاوا بلاگ /Random-SD /اچو ته شروع کان شروع ڪريون يا 'هيلو، جاوا ورلڊ!'
articles
سطح

اچو ته شروع کان شروع ڪريون يا 'هيلو، جاوا ورلڊ!'

گروپ ۾ شايع ٿيل
مان هن مضمون کي هڪ غير معمولي، پهرين نظر ۾، تڪرار سان شروع ڪرڻ چاهيان ٿو. بعد ۾ اهو واضح ٿي ويندو ته ڇو.
اچو ته شروع کان شروع ڪريون يا هيلو، جاوا ورلڊ!  - 1
تنهن ڪري، اچو ته ڪنهن کي تصور ڪريو. هي ڪو الپائن اسڪائينگ ۾ مهارت حاصل ڪرڻ چاهي ٿو. ۽ ان لاءِ هو هيٺيان قدم کڻندو آهي:
  • استادن، درسي ڪتاب، دستور، وغيره. - اهو سڀ ڪجهه برائي کان آهي. توهان پنهنجي پاڻ تي اسڪائينگ سکي سگهو ٿا. ان کان سواء، اسڪول ۾ هن سکيو پار-ملڪ سکي برداشت سان چڱي طرح. ان جي مطابق، وڌيڪ ڄاڻ رکندڙ ماڻهن جي سڀني صلاحن کي نظرانداز ڪيو ويو آهي.

  • بهترين سامان چونڊيو ويو آهي. ماهرن جي سطح کان هيٺ نه. سخت بوٽ جيڪي توهان جي پيرن کي نقصان پهچائيندا آهن. سخت اسڪيز جنهن کي موڙڻ لاءِ تمام گهڻي ڪوشش جي ضرورت آهي، ڪنهن جي جسماني تندرستي جي سطح کان تمام گهڻو. خير، وغيره.

  • ٽيسٽ ٽريڪ آهي... خير، اچو ته چئو، ٽريڪ وشال سلالم ۾ ورلڊ ڪپ اسٽيج جي ميزباني ڪري رهيو آهي. اهو صرف پڙهائي لاء صحيح آهي.
  • ساڳي روح ۾ جاري رکو.
تنهنڪري هتي سوال آهي. تون ان کي ڇا سڏيندين؟ ذاتي طور تي، هڪ شخص جي طور تي جيڪو 20 سالن تائين الپائن اسڪائينگ سان واقف آهي، مان هن کي سڏيندس (۽ اهو اڃا تائين تمام نرم آهي!) - نااميد. هن طريقي سان ڪجهه سکڻ لاء مڪمل طور تي ناممڪن آهي. پر هڪ پڪ جو طريقو زخمي ڪرڻ لاء. ۽ سڀ کان وڌيڪ يقيني شيء هميشه لاء اسڪائينگ جي خيال کي ڇڏي ڏيڻ آهي. مان سمجهان ٿو ته توهان هن جائزي ۾ مون سان متفق آهيو. ڪنهن به صورت ۾، مون کي لڳ ڀڳ پڪ آهي ته هن کي ڪنهن به اڻ وڻندڙ ​​​​ڪجهه به اميد نه ڪندو ته کيس خطاب ڪيو ويندو. هاڻي اچو ته ڪنهن ٻئي جو تصور ڪريون. هن کي چئو، ڪمپيوٽر سائنس جو شاگرد ٿيو. هن کي C++، C#، Pascal جي ڪجهه ڄاڻ آهي. هو جاوا سکڻ چاهي ٿو. سندس عمل:
  • سندس علم جي سطح سان لاڳاپيل ادب (صفر سطح، صاف ڳالهائڻ) هڪ طرف ڇڪيو ويو آهي. ذڪر ڪيل C++، C# ۽ OOP نظريي سان ٿوري واقفيت جي بنياد تي.
  • سڀ کان وڌيڪ طاقتور پروگرامنگ ماحول ورتو وڃي ٿو. اچو ته Eclipse يا NetBeans چئون. جيڪو سڀ ڪجھ پاڻ ڪري ٿو، بس ھڪڙي بٽڻ کي دٻايو.
  • آزمائشي ايپليڪيشن جي طور تي، اسان چونڊيو... چئو، چئو چئو چيٽ. هڪ ڪلائنٽ-سرور ايپليڪيشن، ڪلائنٽ حصو ايپلٽ جي صورت ۾، سرور حصو - هڪ ويب سروس يا، بدترين، servlets. صرف پڙهائي لاءِ صحيح.
سوال. تون ان کي ڇا سڏيندين؟ ڇا توهان کي خبر آهي ته پاراڊڪس ڇا آهي؟ حقيقت اها آهي ته هن معاملي ۾ اتي اهم طور تي گهٽ غيرجانبدار تشخيصي ٿي ويندي. ان حقيقت جي باوجود ته حالتون هر لحاظ کان هڪ جهڙيون آهن. جيستائين ٻئي صورت ۾ صحت ۽ زندگيءَ جا نتيجا گهٽ موتمار آهن. ٿي سگهي ٿو اهو مسئلو آهي؟ حالتون واقعي تمام گهڻيون ساڳيون آهن. مون انهن کي خاص طور تي ساڳئي انداز ۾ بيان ڪيو. ۽ هڪ عجيب شيء: جيڪڏهن پهرين جي غير حاضري پڌري آهي، ته پوء ٻيو منظر نامي ڊولپر جي هڪ خطرناڪ تعداد جي پٺيان آهي. جاوا ۾ مهارت حاصل ڪرڻ MIDlets لکڻ سان شروع ٿئي ٿو، ڊيٽابيس لاءِ ڪلائنٽ، چيٽ، ويب سائيٽون ٺاهڻ جي بنياد تي servlets... توهان هڪ ڊگهي وقت تائين هلي سگهو ٿا. پر ان جي باوجود ڳالهه واضح آهي. ساڳئي وقت، داخلا-سطح ادب کي نفرت سان هڪ طرف رکيل آهي. هي پڙهو؟ مون ڏانهن؟ ها، مان هاڻي ٽن سالن کان C++ ۾ لکي رهيو آهيان! (اختيارن Pascal ۾ آهن، ۽ حتي بصري بنيادي ۾.) ۽ مان ڄاڻان ٿو OOP! خير، عام ۾. پوء، اڳتي ڇا آهي؟ ۽ پوءِ هي:
  • 8 بائٽس جي ايري کي ڊگھي ۾ ڪيئن بدلجي؟
  • ائين ڇو ٿو ٿئي NoClassDefFoundError؟
  • مان ايپليڪيشن کي Eclipse ( NetBeans/IDEA/JBuilder) ۾ ڇو لانچ ڪريان، ۽ سڀ ڪجھ ٺيڪ آهي، پر ان کان سواءِ مان ٽائيپ ڪريان ٿو java HelloWorld.class، ۽ اتي ڪا نقص آهي؟
  • اهو ڇو خراب ٿئي ٿو ClassNotFoundException؟
  • اتي لائبريري ڇو نه آهي؟ مون ان کي اڳ ۾ ئي classes.zip ۾ رکي ڇڏيو آهي، پر اهو سڀ ڪجهه بي فائدو ٿيو!
  • مان شين جي هڪ صف ڇو ٺاهيان ٿو، پر جڏهن آئون هڪ عنصر کي استعمال ڪرڻ جي ڪوشش ڪريان ٿو ته آئون حاصل ڪريان ٿو NullPointerException؟
  • ۽ ڇو ...؟
  • ۽ ڇو ...؟
  • ۽ ڇو ...؟
ڇو ڇو ڇو؟ پر ڇاڪاڻ ته جاوا نه آهي C++ يا Pascal. ۽ نه پرل. انهن ٻولين جي ڄاڻ نه رڳو گهڻو ڪري مدد نه ڪندو آهي، پر پڻ رڪاوٽ پڻ. جيڪڏهن صرف ان ڪري ته اهي ٻوليون مڪمل طور تي مختلف نظريا آهن. پر ظاهري مشابهت گمراهه ڪندڙ آهي. يقينن، اهي سڀئي "ڇو" ۽ "ڪيئن" ڪتابن ۾ جواب آهن. سڀ کان بنيادي سطح جي ادب ۾. پر اهو پڙهڻ سست آهي (اختيارن: شرم، وقت نه، وغيره). مان ڄاڻان ٿو ڪافي اسٽريٽائپائپس جيڪي جاوا ڏانهن منتقل ڪيا ويا سي ++ ماهرن طرفان. ھڪڙو تازو مثال: توھان کي ڪڏھن به ٺاھيندڙ ۾ ھڪڙو استثنا اڇلائڻ نه گھرجي. ڇو؟ ها، ڇاڪاڻ ته C++ ۾ اهڙي شئي جي حالت بيان نه ڪئي وئي آهي. انهي جي مطابق، هڪ ميموري ليک ٿئي ٿي. جاوا ۾، اصول ۾ ڪو به اهڙو مسئلو ناهي، هڪ گندگي ڪليڪٽر جي موجودگي جي ڪري. بهرحال، اهڙا ماڻهو آهن جيڪي اهڙين حالتن کان بچڻ جي ڪوشش ڪندا آهن. بس هڪ عمدي اسٽيريوٽائپ جي مطابق. ۽ بدترين شيء اها آهي ته انهن ڪوششن جي نتيجي ۾، ڪوڊ تمام گهڻو پيچيده ٿي ويندو آهي. نحو سکڻ آسان آهي. ۽ مڪمل طور تي ڪافي نه آهي. ٻوليءَ جو نظريو وڌيڪ اهم آهي. ۽ ان کي تمام مؤثر طريقي سان حاصل ڪرڻ لاء، توهان کي شروعات کان شروع ڪرڻ گهرجي. بلڪل ڇو ۽ ڪيئن؟ ۽ هي ٻيو سوال آهي. سو. ڪٿي ۽ ڪيئن شروع ڪجي. اهو منحصر آهي جيڪو توهان حاصل ڪرڻ چاهيو ٿا. جيڪڏهن توهان هڪ ماهر ڪوڊنگ بندر بنجڻ چاهيو ٿا، توهان تقريبا ڪنهن به شيء سان شروع ڪري سگهو ٿا. جيڪڏهن توهان هڪ پيشه ور ٿيڻ چاهيو ٿا، شيون ٿورو وڌيڪ پيچيده آهن. منهنجو تجربو مون کي هيٺين چوڻ جو سبب ڏئي ٿو. هڪ پروفيشنل ڊولپر ۽ "ڪوڊر" جي وچ ۾ فرق اهو آهي ته هو سمجهي ٿو ته ڇا ٿي رهيو آهي. هو پريس بٽڻ کان ٿورو وڌيڪ ڪم ڪري ٿو. هڪ طاقتور ماحول هڪ تمام سٺو مددگار آهي. انهن لاء جيڪي بغير ڪري سگهن ٿا. پر اهو اڪثر ڪري انهن جو واحد اوزار آهي جيڪو ان سان شروع ڪيو. ۽ ان جي غير موجودگي ۾، ڪوڊنگ بندر جي قيمت صفر آهي. ڇاڪاڻ ته پريس ڪرڻ لاءِ ڪي به بٽڻ نه آهن. عام طور تي، بٽڻ کي دٻائڻ واقعي خوفناڪ شڪل وٺي سگھي ٿو. منهنجي هڪ همراهه جاوا ۾ لکيل هڪ پراڊڪٽ ڏٺو. ان کي انسٽال ڪرڻ جون هدايتون انهن لفظن سان شروع ٿيون: “Install JBuilder from the disk...” هاڻي اهو اڳ ۾ ئي موتمار آهي. جيڪڏهن ڊولپرز پراڊڪٽ کي ڊولپمينٽ ماحول کان سواءِ ڪم نه ڪري سگهيا، ته پوءِ مون کي سوچڻ لڳس ته اهو ڪيئن لکيو ويو. گهٽ ۾ گهٽ، اهو شوقين طرفان لکيو ويو هو. مان ڇا سمجهان ٿو "سمجھي ٿو ته ڇا ٿي رهيو آهي؟" هن جو مطلب آهي ته هڪ شخص کي هيٺين سمجهڻ گهرجي:
  • هڪ مجازي مشين ڇا آهي ۽ ڇو ان جي ضرورت آهي؟
  • هڪ مجازي مشين جي نقطي نظر کان هڪ طبقي ڇا آهي.
  • هڪ پيڪيج ڇا آهي؟
  • لائبريري ڇا آهي؟
  • ورچوئل مشين ڪيئن ڏسندي آهي ۽ ڪلاس لوڊ ڪندي آهي؛ ڪلاس لوڊر ڇا آهي ۽ اهو ڪيئن ڪم ڪندو آهي؛ ڊفالٽ طور ڪيترا آهن؛ classpath ڇا آهي.
وغيره. ۽ ايئن. لسٽ جاري رهي. مهرباني ڪري نوٽ ڪريو ته مون ڊولپر لاءِ مخصوص ڄاڻ شامل نه ڪئي آهي. هڪ موضوع ڇا آهي، OOP نقطي نظر کان هڪ ڪلاس ڇا آهي ۽ اهو هڪ اعتراض کان ڪيئن مختلف آهي، ڪيئن ترتيب مينيجر ڪم ڪن ٿا - ڪنهن به ڊولپر کي اهو سڀ ڄاڻڻ گهرجي. هر شي جيڪا مون درج ڪئي آهي اها هڪ ٽيڪنيڪليت کان وڌيڪ آهي. پر گهڻو ڪري اهو ظاهر ٿئي ٿو ته انهن کي ڄاڻڻ ضروري آهي اهو سمجهڻ لاءِ ته ڇا غلط ڪم ڪري رهيو آهي. زندگي مان هڪ مثال. هتي XML سان ڪم ڪرڻ لاءِ هڪ لائبريري آهي جنهن کي xalan سڏيو ويندو آهي. اهو ڪيترن ئي javax.xml... پيڪيجز تي مشتمل آهي - پارسر، ٽرانسفارمر، وغيره. هي لائبريري تمام مشهور آهي. مسئلو اهو آهي ته اهي ساڳيون پيڪيجز J2SDK ۾ موجود آهن نسخي 1.4 کان. سوال. لائبريري مان javax.xml.transform.stream.StreamSource ڪلاس تائين رسائي ڪرڻ دوران ڪهڙو ڪلاس لوڊ ڪيو ويندو، جيڪڏهن xalan پڻ ڪلاس پاٿ ۾ موجود آهي - لائبريري يا J2SDK مان؟ هن سوال جو جواب ڏيڻ لاء، توهان کي ڄاڻڻ جي ضرورت آهي ته ڪلاس لوڊ ڪندڙ ڪيئن ڪم ڪندو آهي. مون هڪ دفعي هڪ فورم ۾ چار ڏينهن جي بحث کي ڏٺو جيڪو آخرڪار هن مسئلي تي آيو. ڪوڊ صحيح طرح سان ڪم نه ڪيو ڇاڪاڻ ته لوڊر اهو طبقو نه ورتو جنهن جي توقع ڪئي وئي هئي. مان ڇا حاصل ڪري رهيو آهيان؟ هتي شيء آهي: وڌيڪ طاقتور ترقياتي ماحول، وڌيڪ اهو ڊولپر لاء ڪندو آهي - گهٽ هن کي سوچڻ گهرجي. ۽ اهو اڳ ۾ ئي آهي، ڪيترو خراب. ايتري قدر جو بندر جي ويجهو. هي پهرين نتيجي تي پهچندو آهي، ڪابه پرواه ناهي ته اهو ڪيترو متضاد لڳي سگهي ٿو:

نتيجو 1. اهو مشورو ڏنو ويو آهي ته جاوا سکڻ شروع ڪيو وڃي بغير ڪنهن طاقتور ماحول جي.

مان نوٽ پيڊ ليول ايڊيٽرن ۾ لکڻ جي حامي نه آهيان. پر مان اهو صرف ان ڪري نه ٿو ڪريان - اهي، ضابطي جي طور تي، نحو نمايان نه آهن. هي هڪ ناقابل اعتماد حد تائين آسان شيء آهي جنهن تي منفي اثر نه آهي. توھان ڪجھ استعمال ڪري سگھو ٿا جهڙوڪ Notepad ++ ، اھو سمجھي ٿو جاوا نحو ۽، طريقي سان، مفت آھي. مثال طور، مون وٽ .java فائل جو قسم سسٽم ۾ رجسٽر ٿيل آهي خاص طور تي ان لاءِ. تنهن ڪري، هڪ ٽيڪسٽ ايڊيٽر نحو نمايان ڪرڻ ۽ ڪمانڊ لائن سان. عذاب جا ٻه يا ٽي ڏينهن - ۽ اهو سمجھڻ ته ڪلاس پاٿ ڇا آهي، مترجم کي ڪيئن شروع ڪيو ويو آهي ۽ ٻين ننڍين شين جو هڪ گروپ - اهو سمجهڻ هميشه لاءِ رهندو. اڳتي. منهنجو تجربو مون کي اهو چوڻ جو سبب ڏئي ٿو ته مستقبل جي استعمال لاءِ علم حاصل ڪرڻ ناممڪن آهي. ان لحاظ کان ته ادب پڙهڻ جي لائق تڏهن ئي آهي، جڏهن اهڙا سوال هجن جن جا جواب هجن. جيڪڏهن توهان بغير ڪنهن سوال جي ڪتاب پڙهندا آهيو، معلومات هڪ هفتي اندر غائب ٿي ويندي. مان هن کي چڱي طرح ڄاڻان ٿو، بشمول منهنجي پنهنجي تجربي مان. مون هڪ ڀيرو پنج دفعا servlets تي ڪتاب پڙهڻ شروع ڪيو. جيستائين مون پنهنجي ڪم ۾ انهن سان ڊيل ڪرڻ شروع ڪيو، معلومات جذب نه ڪئي وئي هئي. ۽ اهو هڪ الڳ ڪيس کان پري آهي. هڪ دفعي، تمام گهڻو وقت اڳ، اٽڪل 8-10 سال اڳ، مون هيٺيون پڙهيو، بدقسمتي سان، مون کي ليکڪ ياد ناهي: هڪ شخص کي نئين پروگرامنگ ٻولي ڪيئن سيکاريندي؟ تمام سادو. توھان کي ان کي ھڪڙي ٻولي، ڪيترائي ڪم ۽ گھٽ ۾ گھٽ دستاويز ڏيڻ جي ضرورت آھي. پوءِ، ٻن مهينن کان پوءِ، جڏهن هو گهٽ ۾ گهٽ هن ٻوليءَ ۾ لکڻ شروع ڪري، ته جامع دستاويز مهيا ڪريو. اهو ٻن هفتن ۾ هڪ جاسوسي ناول وانگر پڙهيو ويندو، جنهن کانپوءِ ماڻهو ڪم ڪرڻ لاءِ تيار ٿي ويندو. مان هن بيان سان 100٪ متفق آهيان. ٻن مهينن ۾، هڪ طرف، سڀ ننڍا مسئلا ختم ٿي ويندا. انهن جا جواب آزاديءَ سان حاصل ڪيا ويندا، جنهن سان سندن قدر گهڻو وڌي ويندو. ٻئي طرف، واضح سوال اڳ ۾ ئي ٺاهيا ويندا، جن جا جواب دستاويز طرفان مهيا ڪيا ويندا. هي ٻئي نتيجي تي پهچندو آهي، جيڪو پهرين کان گهٽ متضاد لڳي ٿو:

نتيجو 2. اهو مشورو ڏنو ويندو آهي ته جاوا سکڻ شروع ڪيو وڃي بغير درسي ڪتابن جي. Java API دستاويز + جاوا ٽيوٽوريل - هي ڪافي کان وڌيڪ آهي.

جاوا API دستاويز لازمي آهي. مان ان کي مقامي طور تي رکڻ جي صلاح ڏيان ٿو، ڊسڪ تي. توهان کي هن سان هڪ ڀيرو وڌيڪ رابطو ڪرڻو پوندو، نه ٻه ڀيرا، يا ڏهه به. ذاتي طور تي، اهڙو ڏينهن نه گذريو آهي جو مان اتي نه وڃان. مان پڻ جاوا ٽيوٽوريل کي مقامي طور تي رکڻ جي صلاح ڏيان ٿو. هي داخلا-سطح جي معلومات آهي جيڪا مڪمل طور تي درسي ڪتاب کي تبديل ڪري ٿي. تنهن هوندي به، اتي ان جي ڪافي مقدار آهي. مون کي اهو چوڻ گهرجي ته انهن علائقن ۾ جن سان آئون ڪم تي معاملو نٿو ڪريان، مون کي اڃا تائين پنهنجي لاء ڪجهه نئين ڳولي ٿو. گهڻو پڙهڻ خراب آهي. جيستائين ڪابه درخواست نه آهي، ڪو به جواب نه آهي. ٿورو پڙهڻ به خراب آهي. گولڊن مطلب ڪٿي آهي؟ مان هن قاعدي تي عمل ڪريان ٿو: مان پڙهندو آهيان جيستائين اهو محسوس ٿيڻ شروع ٿئي ٿو ته مون کي سوال جو جواب ملي چڪو آهي. 90٪ ڪيسن ۾ اهو معاملو ناهي. پر اهو هن وقت آهي ته اهو بهتر آهي ته روڪيو وڃي ۽ پنهنجو پاڻ تي جاري رکو. شروعاتي تڪليف حاصل ڪئي وئي آهي، ۽ آزاديء سان مسئلو حل ڪرڻ گهڻو ڪجهه ڏيندو. يقينن، ڪجهه وقت کان پوء اهو ادب کڻڻ جي قابل آهي. پر ٻيهر، داخلا-سطح ادب لاء. جيتوڻيڪ اهو لڳي ٿو ته اهو سڀ ڪجهه بيڪار آهي، اهو شروعاتي باب پڙهڻ جي قابل آهي. مان تقريبن ضمانت ڪري سگهان ٿو ته توهان گهٽ ۾ گهٽ ڪجهه نئين سکندا. ۽ اهو ڪجهه دير سان انتهائي اهم ٿي سگهي ٿو. ٺيڪ. اسان کي لڳي ٿو ته ڇا لکجي. ڪيئن لکڻ لاء - پڻ. پر مان ڇا لکان؟ ياد رکو هي مضمون ڪٿان شروع ٿيو. ڇا مونکي انسٽنٽ ميسيجنگ سسٽم لکڻ شروع ڪرڻ گھرجي؟ چونڊ، يقينا، توهان جي آهي. اهو مون کي لڳي ٿو ته اهو ان جي لائق ناهي. وڌيڪ پيچيده ڪم، وڌيڪ سوال پيدا ٿيندا. تجربي جي غير موجودگيءَ ۾، اھڙا ڪيترائي سوال انھن کي حل ڪرڻ جي ناممڪن جو احساس ڏياريندا آھن، ان کان پوءِ پنھنجي گھٽتائي، بيوقوفيءَ وغيره جو احساس ٿيندو آھي. بالآخر، اهو فيصلو ڪري سگهي ٿو "ان سان دوزخ ڏانهن ..." ۽ ٻولي سکڻ کي روڪيو. اهي. بلڪل ان جي برعڪس اثر لاءِ جنهن جي ضرورت هئي. اها خصوصيت آهي نه جاوا جي ايتري قدر جو پاڻ کي سکڻ واري عمل جي. پر ڪجهه سببن لاءِ اهي هن جي باري ۾ وساريندا آهن جڏهن اهو پروگرامنگ سيکارڻ جي اچي ٿو. ان کان علاوه، هڪ ننڍڙو ڪم جيڪو آخر تائين مڪمل ڪيو ويو آهي، سفر جي شروعات ۾ ڇڏيل هڪ عظيم نظام جي ڀيٽ ۾ تمام گهڻي اطمينان ۽ تمام گهڻي ڄاڻ ڏئي سگهي ٿي. ان ڪري ٽيون نتيجو: نتيجو 3. اهو مشورو ڏنو ويندو آهي ته جاوا سکڻ شروع ڪريو انهن ڪمن سان جيڪي توهان جي جاوا جي ڄاڻ جي موجوده سطح لاءِ ڪافي آهن. توهان کي فارمولا 1 ڪار تي ڪار هلائڻ سکڻ شروع نه ڪرڻ گهرجي. توهان کي ورلڊ ڪپ ٽريڪ تي الپائن اسڪائينگ سکڻ شروع نه ڪرڻ گهرجي. ۽ ساڳيءَ طرح، توهان کي جاوا ۾ مهارت حاصل ڪرڻ شروع نه ڪرڻ گهرجي ڪجهه وڏي لکڻ سان. مان سمجهان ٿو ته عزائم گهربل آهي. پر هن معاملي ۾ اهي بي بنياد آهن. ۽ توهان وٽ وڌيڪ غير معقول عزائم آهن، توهان وٽ هڪ پروفيشنل ٿيڻ جا گهٽ موقعا آهن. سکيا جي لحاظ کان هڪ قابل ذڪر رجحان آهي، بيحد ڪافي، مختلف فورمز. جيڪڏهن توهان انهن کي عقلمندي سان استعمال ڪيو. عقلمنديءَ سان - هن جو مطلب آهي ته توهان کي سامهون ڪرڻ جي ضرورت آهي، عام طور تي نه. يعني سوال پڇڻ لاءِ نه پر جواب ڏيڻ لاءِ. جنهن کي توهان وٽ پهچڻ جي طاقت آهي. جيڪڏهن توهان سوچيو ته مان پاڻ کي سڀ ڪجهه ڄاڻان ٿو، توهان بلڪل غلط آهيو. ها، مان گهڻو ڄاڻان ٿو. پر اهڙا علائقا آهن جن سان مون ڪڏهن به منهن نه ڪيو آهي. يا مون وٽ آهي، پر تمام ٿورڙو. منهنجي مشق مان هڪ شاندار مثال سرٽيفڪيٽ سان ڪم ڪري رهيو آهي: ڪوڊ سائن ان، محفوظ ڪنيڪشن، وغيره. 1998ع ۾ جڏهن پنهنجو ٿيسز لکندو هو، تڏهن مون اهو ڪم ڪيو هو، پر ان وقت کان وٺي سڀ ڪجهه بدلجي ويو آهي. ڪيترن سالن کان، مون وٽ سوال گڏ ڪيا ويا آهن. مون به ڪجهه ادب پڙهڻ شروع ڪيو. پر، جيئن مون مٿي چيو، توهان مستقبل جي استعمال لاءِ علم حاصل نٿا ڪري سگهو. اهو هڪ ڪڪر وانگر آهي - اهو هڪ ڪن ۾ وڃي ٿو ۽ ٻئي کان ٻاهر نڪرندو آهي. مٿي ۾ سوراخ ڪرڻ کان سواءِ ڪو به نتيجو ناهي. ۽ اهو جاري رهيو جيستائين تازو، جڏهن هڪ سوال پڇيو ويو فورم ۾ هڪ SSL ڪنيڪشن بابت tomcat. ڪجهه مسئلا هئا. ۽ صرف ان سوال مون کي اونڌو ڪرڻ لاءِ زور ڏنو. ۽ جيڪڏھن ڪا درخواست آھي، اتي پڻ ھڪڙو جواب آھي. مون نه رڳو اهو معلوم ڪيو ته ان شخص جو مسئلو ڇا هو، پر مون کي ٻين مفيد معلومات جو هڪ گروپ پڻ مليو. مون آخرڪار سمجهي ورتو ته سرٽيفڪيٽ ڪيئن ڪم ڪن ٿا. لاڳاپيل مضمون منصوبن ۾ آهي. ۽ اهو هر وقت ٿئي ٿو. مون ڪافي ڪم ڪيو، مثال طور، GUI سان. اهو صرف فورم ۾ ڪنهن جي سوال جي نتيجي ۾ هو ته مون TextLayout جي ڪجهه صلاحيتن کي سمجهي ورتو. هن سوال کان اڳ مون کي انهن جي باري ۾ ڪا به خبر نه هئي. ساڳئي طرح، مون کي تازو معلوم ٿيو ته اهو ظاهر ٿئي ٿو ته JButton پڻ html کي پنهنجي هيڊر طور تعبير ڪري ٿو. ان کان اڳ، مون سوچيو ته صرف JLabel اهو ڪري سگهي ٿو. ۽ اهو ٻيهر فورم جي مهرباني. تنهنڪري اهو ظاهر ٿئي ٿو: وڌيڪ اسان سوالن جا جواب، وڌيڪ اسان پاڻ کي سکندا آهيون. ان ڪري مان ان مقبول راءِ سان متفق نه آهيان ته جيڪڏهن ڪو ماڻهو فورم تي ويهي ٿو ته پوءِ ڪجهه به نه ٿو ڪري. اهو واضح کان پري آهي ۽ بنيادي طور تي منحصر آهي ڇو ته اهو شخص فورم تي آهي. ۽ اھو ڇا ڪندو آھي بنيادي طور تي - پڇو يا جواب ڏيو. حقيقت ۾، توهان پڻ پڇي سگهو ٿا. پر پڻ عقلمندي سان. حل لاءِ نه پڇو (۽ خاص طور تي پوسٽ اسڪرپٽ سان “مهرباني ڪري جيڪي ڄاڻن ٿا، جواب ڏيو ۽ سوال نه پڇو!”، جنهن جو مون کي ٻئي ڏينهن ئي سامنا ٿيو!)، پر ٻيهر، ان جي برعڪس، مقرر ڪرڻ لاءِ پڇو. تحريڪ جي هدايت. اهو مڪمل طور تي سمجھڻ وارو آهي ته اهو هڪ ابتدائي لاء اهو سمجهڻ ڏکيو آهي ته ڪٿي کڏڻ لاء، ڇاڪاڻ ته هو صرف تجربو نه آهي. اهو شخص جي غلطي ناهي، ۽ اهو هڪ مسئلو ناهي. هي ٺيڪ آهي. هرڪو ان مان گذري چڪو آهي. مون کي شامل ڪيو. مون لاءِ ذاتي طور تي، اهو تمام گهڻو اهم آهي ته هڪ شخص ڪجهه سکڻ چاهي ٿو. ۽ نه رڳو جواب حاصل ڪريو، صرف هڪ پروگرامنگ ليب وٺڻ کان پوء پنجن منٽن کي وسارڻ لاء. مان هميشه توهان کي حرڪت جو رخ ٻڌائيندس. جيڪڏهن مان هن کي پاڻ سڃاڻان. ۽ جيڪڏهن مون کي خبر ناهي، گهٽ ۾ گهٽ مان اندازو لڳائي سگهان ٿو. ۽ مان ضرور جواب ڳوليندس. پر مان شايد ڪڏهن به سڌو جواب نه ڏيان- گهٽ ۾ گهٽ، مون کي ياد ناهي. رستي ۾، اهو ئي سبب هو جو مون هڪ فورم کي ڇڏي ڏنو. جڏهن مون اڳواٽ سوال پڇڻ شروع ڪيا ته هنن مون کي هڪجهڙائي ۾ سمجھايو ته هنن لاءِ رواج آهي ته رڳو جواب ڏيو. ۽ منهنجي سوالن سان مان اڳتي وڌي سگهان ٿو. انهي ڳالهه تي غور ڪندي ته فورم جي سطح تمام گهڻي گهربل هجي، گهٽ ۾ گهٽ هن طريقي جي مهرباني! - مون وڌيڪ وقت ضايع نه ڪرڻ جو فيصلو ڪيو. تنهن ڪري هڪ فورم چونڊيو توهان جي پسند سان ۽ توهان وڃو. رستي جي ذريعي، هي سائيٽ صحيح طور تي ظاهر ٿيو آهي فورم مان هڪ جي مهرباني. اتي ڪجهه وقت ڳالهائڻ کان پوءِ، مون اڪثر اٿندڙ عنوانن جي هڪ فهرست گڏ ڪئي ۽ محسوس ڪيو ته اهڙي سائيٽ جي گهرج هوندي. ۽ ائين ئي ٿيو. تقريبن سڀئي مضمون فورم ۾ ڪجهه بحثن جي نتيجي ۾ لکيا ويا آهن. يا خط و ڪتابت جي پٺيان جيڪو آئون به باقاعدگي سان هلندو آهيان. نتيجو ڇا آهي؟ ڪم، ڪم ۽ ٻيهر ڪم. اوترو وڌيڪ توهان پاڻ کي ابتدائي اسٽيج تي پنهنجي لاءِ ڪرڻ جي اجازت ڏيندا، اوتري گهٽ ڄاڻ توهان حاصل ڪندا. ۽ ڊگهو رستو پروفيشنلزم ڏانهن. پر صرف توهان اهو چونڊي سگهو ٿا ته توهان ڪير ٿيڻ چاهيو ٿا - هڪ بي ڌياني سان بٽڻ دٻائڻ وارو بندر يا هڪ پروفيشنل. ۽ صرف توهان پنهنجو پاڻ اهو رستو چونڊيو جنهن سان توهان هن يا اهو حاصل ڪري سگهو ٿا. پهريون طريقو واضح آهي. مون ٻئي کي ڏيکارڻ جي ڪوشش ڪئي. توهان جي حرڪت، حضرات! اصل ماخذ سان ڳنڍيو: اچو ته شروعات کان شروع ڪريون يا 'هيلو، جاوا ورلڊ!'
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION