Pr java@programming by tanbircox

Page 1

Want more Updates 

http://facebook.com/tanbir.ebooks

আ঩নায ই”ফুক ফা pdf রযডারযয Menu Bar এয View অ঩঱নরি তে রিক করয Auto /Automatically Scroll অ঩঱নরি র঳ররক্ট করুন (অথফা ঳যা঳রয তমরে  Ctrl + Shift + H )। এফায ↑ up Arrow ফা ↓ down Arrow তে রিক করয আ঩নায ঩ড়ায ঳ু রফধা অনু ঳ারয স্ক্রর স্পীড রিক করয রনন।

তমর঴েু আ঩নাযা করিউিায তরাগ্রারভিং র঱খরে মারেন, শুরু তথরকই আরভ রকছু ফযা঩ারয অনু ভান করয রনরে: এই ভু঴ূরে​ে আ঩রন করিউিায তরাগ্রারভিং ঳ম্বরে রকছু ই জারনন না। মরি ইরেভরধযই আ঩রন রকছু তজরন থারকন, এই অনু রেরিয ১ভ অিং঱ আ঩নায কারছ খুফ ত঳াজা ভরন ঴রফ। তকান রকায ঳িং঱য় না করয আ঩রন মেক্ষন নেুন রজরন঳ না ঩ান ফাি রিরয় তমরে ঩ারযন। আরভ এিা অনু ভান করয রনরে তম, আ঩রন আ঩নায ফযফহৃে করিউিায ঳ম্বরে রকছু জারনন। অথোৎ আরভ অনু ভান করয রনরে আ঩রন এয ভরধযই জারনন রকবারফ একরি পাইর ঳িািনা কযা, অনু কৃরে ঑ ভুরছ তপরা, নেুন নাভকযন কযা, আ঩নায কভে঩রযরধরে েথয অনু ঳োন কযা ইেযারি কযরে ঴য়। ঳যরোয জনয, আরভ ধরয রনরে উইরডাজ ৯৫, ৯৮. ২০০, এন.রি. ফা এক্সর঩ চররছ এভন একরি করিউিায ফযফ঴ায কযরছন। আ঱া করয অনযানয অ঩ারযরি​িং র঳রেভ ফযফ঴াযকাযীরিয কারছ ধাযণাগুররা রভরারনা েুরনাভূ রকবারফ ঳঴জরফাধয ঴রফ। এফিং আরভ ধরয রনরে তম র঱খায ফযা঩ারয আ঩নায আগ্র঴ আরছ। জাবা তে তরাগ্রারভিং শুরু কযায জনয িযকারয রজরন঳঩ত্র ঑রয়রফ রফনা ঩য়঳ায় ঩া঑য়া মায়। োছাড়া জাবায জনয রচুয ঩রযভান র঱ক্ষনীয় রফলয়ফস্তু যরয়রছ ঑রয়রফ, ঳ু েযািং এই অনু রেি ত঱ল কযা ভাত্রই খুফ ঳঴রজই আ঩রন আ঩নায িক্ষোরক উন্নে কযরে আয঑ র঱খরে ঩ারযন। কিাইরায, তেযী কযায রজরন঳঩ত্র, ঩ড়ায রফলয়ফস্তু ইেযারি ফযা঩ারয ঩য়঳া খযচ না করয এখারন আ঩রন জাবা তরাগ্রারভিং র঱খরে ঩ারযন। জাবা র঱খায ঩য অনযানয বালা(তরাগ্রারভিং) র঱খা ঳঴জ ঴রয় মায়। োই শুরু কযায জনয জাবা বাররা একিা রফলয়।

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

আরভ ধরয রনরে আ঩রন তরাগ্রারভিং ঳ম্বরে রকছু ই জারনন না - এিা ভাথায় যাখরফন। ঳িূ ণে ফযা঩াযিা তফাঝায জনয রকছু রফর঱ল ঱ব্দ ঳িরকে জানা িযকায: - করিউিায তরাগ্রাভ ঴রে রকছু রনরিে঱নায ঳ভরি মা অনু মায়ী করিউিায ঩ুঙ্খানু ঩ুঙ্খবারফ কাজ করয। করিউিারযয ররে রনরিে঱নাগুররা ঴রে ঩ারয - রকছু ঳িংখযায তমাগ, িু রি ঳িংখযায েুরনা কযা এফিং এয পরাপররয উ঩য রবরি করয তকান র঳োরে উ঩রনে ঴঑য়া এফিং আয঑ কে রক। রকন্তু করিউিারযয কারছ করিউিায তরাগ্রাভ ঴রে রকছু রনরিে঱নাফরী, তমভন ফাফুরচেয কারছ যান্নায রস্তুেরণারী ফা তমভন ঳ু যকারযয কারছ রনরিে঱নাফরী ঴রে স্বযররর঩। তিনা-঩া঑নায র঴঳াফ তমবারফ রভরারনা ঴য় ফা ঩িোয় তমভন তখরা তিখারনা ঴য় ফা ‘঑য়াডে রর঳঳য' "Word Processor" তমবারফ ফাস্তরফ রূ঩ তিয়া ঴য় রিক তেভরন করিউিায আ঩নায রনরিে঱নাফরী ঳রিকবারফ অনু ঳যণ কযরফ এফিং এযই ভাধযরভ গুরুত্ব঩ূ ণে রকছু কাজ কযরফ। আ঩নায তিয়া রনরিে঱নাফরী রিকভরো তফাঝায জনয ঐ রনরিে঱নাগুররা এভন এক বালায় ররখরে ঴য় মা করিউিায ফুঝরে ঩ারয এফিং ো ঴রে তরাগ্রারভিং রযািংগুরয়জ ফা তরাগ্রারভিং বালা। ভুরখ তমভন অরনক ধযরনয বালা ফযফহৃে ঴য় রিক তেভরন তরাগ্রারভিং বালা঑ যরয়রছ অরনক ধযরনয তপাযট্রান(Fortran), তকাফর Cobol), তফর঳ক(Basic), ঩যা঳কার(Pascal), র঳(C), র঳++(C++), জাবা(Java), ঩ারে(Perl)। এই বালাগুররা ঳ফাই রফরবন্ন বারফ তভািাভুরি একই ধযরনয ভোি঱ে রকা঱ করয।

- কিাইরায ভানু রলয তফাধগভয করিউিায বালায় (তমভন জাবা) তরখা একরি করিউিায তরাগ্রাভরক এভন এক রূর঩ রূ঩ােয করয মা করিউিায চারারে ঩ারয। ঴য়ে আ঩নায করিউিারয আ঩রন "ইএক্সই" (EXE) পাইর রক্ষয করযরছন। এই ইএক্সই EXE) পাইরগুররাই ঴রে কিাইরারযয ত঱ল পরাপর ফা আউি঩ুি। ভানু রলয তফাধগভয তরাগ্রাভ তথরক ঳যা঳রয চারারনায ভরো মরেয তফাধগভয তরাগ্রাভ যরয়রছ এগুররায ভরধয। জাবা তরাগ্রারভিং বালায় করিউিায তরাগ্রাভ তরখা শুরু কযরে তগরর রথরভই আ঩নায িযকায ঴রফ জাবা বালায জনয ঳িংকরক (ফা কিাইরায)।

আ঩নারক তিখারফ রকবারফ একরি ঳িংকরক (ফা

কিাইরায) ডাউনররাড এফিং ইনের কযরে ঴য়। আ঩রন একরি কিাইরায ত঩ররই আভযা শুরু কযরে ঩ারয। এই ররিয়ায় আভারিয করয়ক ঘন্টা রাগরফ মায তফ঱ীযবাগই ঴রে রকছু

ফড় ফড় পাইর ডাউনররাড

কযায ঳ভয়। আয঑ রাগরফ রডরে ৪০ তভগাফাইি পা​াঁকা জায়গা (শুরু কযায আরগই পা​াঁকা জায়গা আরছ রকনা রনরিে ঴রয় রনন)।

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

আ঩নায তভর঱রন জাবা তেযী কযায ঩রযরফ঱ ত঩রে চাইরর - "ফানারনায ঩রযরফ঱" (তডরবর঩রভন্ট এনবাইযনরভন্ট) এয ঳া঴ারময আ঩রন করিউিায তরাগ্রাভ "তেযী" কযরফন (ররখরফন) - নীরচয ধা঩গুররা আ঩নারক ঳িন্ন কযরে ঴রফ: জাবা ফানারনায ঩রযরফ঱ (জাবা তডরবর঩রভন্ট এনবাইযনরভন্ট) (কিাইরায এফিং অনযানয রজরন঳঩ত্র) আরছ এভন একরি ফড় পাইর ডাউনররাড। জাবায জনয িযকাযী ঳া঴াময আরছ এভন একরি পাইর ডাউনররাড। আ঩নায তভর঱রন মরি উইনরজ঩(WinZip)(ফা একই ধযরনয একরি) এযই ভরধয না থারক ো঴রর উইনরজ঩(WinZip)আরছ এভন একরি ফড় পাইর ডাউনররাড এফিং ইনের কযরে ঴রফ। জাবা তডরবর঩রভন্ট এনবাইযনরভন্ট ইনের। ঳া঴ামযকাযী পাইর ইনের। এনবাইযনরভন্ট তবরযএফর গুররা রিকিাক কযা। ঳ফ রকছু ঩যীক্ষা করয তিখা। শুরু কযায আরগই মরি আ঩রন ডাউনররাড কযা পাইরগুররা যাখায জনয আ঩নায temp রডরযক্টযীরে নেুন একরি রডরযক্টযী তেযী করয তনন েরফ ফযা঩াযগুররা তফ঱ ঳঴জ ঴রফ। আভযা এরক (download directory) ফরর রচনফ। জাবা তডরবর঩রভন্ট এনবাইযনরভন্ট ডাউনররাড "http://java.sun.com/j2se/1.4.2/download.html" ত঩ইরজ (঑রয়ফ ত঩ইজ) চরর মান। "Download J2SE SDK" ররিংরক রিক করয এ঳.রড.তক.(SDK) ঳পি঑য়যাযরি ডাউনররাড করয রনন। একরি অনু ভরেয চুরি঩ত্র তিখা মারফ। "Accept" এ রিক করুন। আ঩নায অ঩ারযরি​িং র঳রেভ (Operating System) তফরছ রনন এফিং পাইররি আ঩নায ডাউনররাড রডরযক্টরযরে ডাউনররাড করুন। তফ঱ ফড় পাইর এরি, ঳াধাযণ তপানরাইন তভারডভ এ ডাউনররাড কযরে করয়ক ঘন্টা তররগ মারফ। ঩রযয পাইর িু রি঑ তফ঱ ফড়।

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates  http://facebook.com/tanbir.ebooks ২য় ধা঩ - জাবায ডকুরভরন্ট঱ন ডাউনররাড আ঩নায অ঩ারযরি​িং র঳রেভ (Operating System)রিকভে তফরছ রনন। SDK 1.4.1 documentation এ রিক করয ডকুরভরন্ট঱ন ডাউনররাড করয রনন। ৩য় ধা঩ - WinZip ডাউনররাড এফিং ইনের আ঩নায কারছ মরি WinZip ফা একই ধযরনয অনয তকান ঳পি঑য়যায এয তকান ঳িংেযন না থারক েরফ http://www.winzip.com/ ঑রয়ফ ত঩ইজ তথরক WinZip এয ভূ রযায়ন(Evaluation) কর঩ ডাউনররাড করয রনন। ইনেররয জনয তম EXE ত঩রয়রছন ত঳িা চারান। ডকুরভন্ট঱ন ইনেররয জনয রকছু ক্ষন ঩রযই আভযা এিা ফযফ঴ায কযফ। ৪থে ধা঩ - তডরবর঩রভন্ট রকি ইনের ১ভ ধার঩ ডাউনররাড কযা j2sdk-1_4_1-*.exe পাইররি চারান(যান করযন)।

ত ন্ট

রকি রি খুরর মারফ এফিং ইনের ঴রয় মারফ। ৫ভ ধা঩ - ঩রযরফ঱ রিক কযা ডকুরভন্ট঱ন ইনেররয রিক-রনরিে঱নাগুররা ঩রড় রনন। এই ভাত্র তডরবর঩রভন্ট রকি রি তম রডরযক্টরযরে ইনের করযরছন ত঳খারনই ডকুরভন্ট঱ন পাইর যাখায জনয আ঩রন রনরিে঱ ঩ারফন। ডকুরভন্ট঱নরি আনরজ঩(Unzip)করযন এফিং এিা ঳রিক জায়গায় চরর মারফ। ৬ষ্ঠ ধা঩ - ঩রযরফ঱ রিক কযা এই ঩ৃষ্ঠায রনরিে঱ অনু মায়ী আ঩নায ঩াথ চরক(Path Variable) রিক করয রনরে ঴রফ। MS-DOS Prompt খুরর Path ফে​েভারন তকাথায় তিয়া আরছ তিখায জনয PATH রররখ এিা খুফ ঳঴রজ কযা মায়। এয঩য তনাি঩যারড(Notepad) autoexec.bat খুরর রনরিে঱না অনু মায়ী PATH এ ররয়াজনীয় ঩রযফে​েন করয রনন। ৭ভ ধা঩ - ঩যীক্ষা আ঱া করয, এখন আ঩রন আরযকরি MS-DOS উইরডা খুরর javacররখরে ঩াযরফন। ঳ফরকছু রিক থাকরর আ঩রন িু ই রাইরনয তছাট্ট একরি ফাকয তিখরে ঩ারফন। এখারন তিখরে ঩ারফন javac রকবারফ ফযফ঴ায কযরে ঴য়। অথোৎ আ঩রন মাত্রা শুরু কযরে ঩ারযন। আয "Bad Command or File Name" এই ধযরনয তকান ফাে​ো ত঩রর ফুঝরে ঴রফ আ঩রন শুরু কযরে ঩াযরফন না। ইনেররয রনরিে঱নাগুররা আরযকফায ঩রড় তিখুন তকাথায় বুর ঴রয়রছ। PATH রিকভে রিরয়রছন রকনা এফিং এিা কাজ কযরছ রকনা রনরিে ঴রয় রনন। র঩ছরন তমরয় আফায "Programmer's Creed" অিং঱রি ঩রড় রনন এফিং ঳ভ঳যা ঳ভাধান না ঴঑য়া ঩মে​ে নারছাড়ফান্দায ভে ফর঳ থারকন। এখন আ঩রন এভন একরি তভর঱রনয গরফে​ে ভাররক তমিা জাবা তরাগ্রাভ কিাইর কযরে ঩ারয। আ঩রন এখন ঳পি঑য়যায তেযী কযা শুরু কযরে ঩ারযন! ঑হ্ একরি কথা, আ঩রন তম রজরন঳গুররা এইভাত্র আন঩যাক কযররন োয ভরধয একরি ঴রে ঳ু ন্দয-঳ু ন্দয উিা঴যরন(example) িা঳া demo রডরযক্টযী। ঳ফগুররা উিা঴যন চারারনায ভে উ঩রমাগী। োই আ঩রন ঴য়ে facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates  http://facebook.com/tanbir.ebooks রডরযক্টযীিা তফয করয নভুনাগুররারক একিু তনরড়রচরড় তিখরে চারেন। এরিয অরনকগুররাই ঱ব্দ করয। োই অফ঱যই

আ঩নায স্পীকায অন করয রনন। উিা঴যনগুররা চারারনায জনয example1.html এয ভে তিখরে

ত঩ইজগুররা খুরজ তফয করুন

এফিং এরিযরক আ঩নায ঑রয়ফ ব্রাউজারয তরাড করুন।

আ঩নায রথভ তরাগ্রাভরি তফ঱ তছাি এফিং ঳ু ন্দয ঴রফ। তরাগ্রাভরি আকাআরকয জনয একরি জায়গা তেযী কযরফ এফিং এয ফযাফয একরি তযখা আকরফ। এই তরাগ্রাভরি তেযী কযায জনয আ঩নায ররয়াজন ঴রফ: 

তরাগ্রাভরি Notepad খুরর রররখ (অথফা কাি ফা ত঩ে করয) রনন।

তরাগ্রাভরি ত঳ইব করয রনন।

জাবা এযারেি(Java applet) তেযীয জনয জাবা কিাইরায রিরয় তরাগ্রাভরি কিাইর করুন।

তকান ঳ভ঳যা থাকরর রিক করয রনন।

একরি HTML ঑রয়ফ ত঩ইজ তেযী করুন। আ঩নায তেযী কযা জাবা এযারেি এয রবেরয থাকরফ।

জাবা এযারেি রি চারান।

এই ঩যীক্ষায জনয আভযা তম তরাগ্রাভরি ফযফ঴ায কযফ: import java.awt.Graphics; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) { g.drawLine(0, 0, 200, 200); } } ১ভ ধা঩ - তরাগ্রাভরি তরখা: আ঩নায তরাগ্রাভরি যাখায জনয নেুন একরি রডরযক্টযী তেযী করয রনন। তনাি঩যাড (ফা অনয তম তকান তিক্সি এরডিয তমিা TXT পাইর তেযী কযরে ঩ারয)খুররন। একিা ফযা঩ায গুরুত্ব঩ূ ণ:ে আ঩রন মখন ররখরফন তছাি এফিং facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

ফড় ঴ারেয অক্ষয আরািা-আরািা অথে ফ঴ন কযরফ। অথোৎ তরাগ্রারভ তমবারফ আরছ রিক ত঳বারফই আ঩নারক তছাি এফিং ফড় ঴ারেয অক্ষয ররখরে ঴রফ। তরাগ্রাভারযয ভে-রফশ্বা঳ উ঩রযয অিং঱রি আরযকফায তিরখ রনন। তমবারফ আরছ আ঩রন মরি অক্ষরয অক্ষরয ত঳বারফ না রররখন ো঴রর রকন্তু এিা কারজ আ঳রফ না। ২য় ধা঩ - পাইররি ত঳ইব কযা: ১ভ ধার঩ তেযী কযা রডরযক্টযীরে FirstApplet.java নারভ পাইররি ত঳ইব করুন। পাইররয নারভয তক্ষরত্র তছাি ফা ফড় ঴ারেয অক্ষয রবন্ন অথে ফ঴ন করয। রনরিে ঴রয় রনন, তমবারফ তিখারনা ঴রয়রছ, ‘F' এফিং ‘A' ফড় ঴ারেয এফিং অনয অক্ষযগুররা তছাি ঴ারেয। ৩য় ধা঩ - তরাগ্রাভরি কিাইর কযা: একরি MS-DOS উইরডা খুররন। রডরযক্টযী ঩রযফে​েন ("cd") করয FirstApplet.java তমখারন আরছ ত঳ই রডরযক্টযীরে চরর মান। javac FirstApplet.java তছাি এফিং ফড় ঴ারেয অক্ষয রবন্ন অথে ফ঴ন করয! ঴য় এিা কাজ কযরফ, তমখারন উইরডারে তকান তরখা তিখা মারফ না অথফা রকছু ঳ভ঳যা থাকরফ। তকান ঳ভ঳যা না থাকরর, FirstApplet.java পাইররয ঩রড়ই FirstApplet.class নারভ একরি পাইর তেযী ঴রফ। (রনরিে ঴রয় রনন, FirstApplet.java.txt নারভ ত঳ইব না করয FirstApplet.java নারভ পাইররি ত঳ইব করযরছন। MS-DOS উইরডারে dir রররখ পাইররয নারভয রিরক রক্ষয কযররই খুফ ঳঴রজ তফয কযরে ঩াযরফন। পাইররয নারভ মরি .txt এক্সরিন঱ন থারক, নাভ ঩রযফে​েন করয এিা ফাি রিরয় রিন। অথফা, উইরডাজ এক্সরোযায চারররয় View তভনু তথরক Options তফরছ রনন। রনরিে ঴রয় রনন তম, "Hide MS-DOS File Extensions for file types that are registered" ফক্সরি তচক্ড কযা তনই এফিং োয঩যএক্সরোযায রিরয় পাইররয নাভ তিরখন। িযকায ঴রর ঩রযফে​েন করয রনন।) ৪থে ধা঩ - তকান ঳ভ঳যা থাকরর রিক কযা: তকান ঳ভ঳যা থাকরর বাররা করয তিরখ রনন। আ঩নায তরাগ্রাভরিয ঳ারথ উ঩রযয তরাগ্রাভরিয েুরনা করযন এফিং োরিয হুফহু রভরররয় রনন। মেক্ষন আয তকান বূর তিখরফন না ফাযফায কিাইর কযরে থারকন। মরি ভরন ঴য় javac কাজ কযরছ েরফ আরগয অনু রেি তিরখ আ঩নায ফযফস্থারি রিক করয রনন। ৫ভ ধা঩ - একরি ত঩ইজ তেযী কযা: এযারেিরি যাখায জনয একরি HTML ত঩ইজ তেযী করয রনন। আরযকরি তনাি঩যাড উইরডা খুরর নীরচয অিং঱রি ররখুন: <html> <body> <applet code=FirstApplet.class width=200 height=200> </applet> facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

</body> </html>

ঐ একই রডরযক্টযীরে পাইররি applet.htm নারভ ত঳ইব করযন। [HTML এ কাজ কযায তকান ঩ূ ফে অরবজ্ঞো মরি আ঩নায না থারক ো঴রর ঩রড় রনন ঑রয়ফ ত঩ইজ রকবারফ কাজ করয। ত঩ইজ এয রবেরয জাবা এযারেিরক রকবারফ ফযফ঴ায কযরফন ত঳িা Applet িযাগ রিরয় তফাঝারনা ঴য়।]

৬ষ্ঠ ধা঩ - এযারেিরি চারারনা আ঩নায MS-DOS উইরডারে ররখুন: appletviewer applet.htm আ঱া করয, উ঩রযয ফাভ রিরকয তকানা তথরক নীরচয ডান রিরক তকানা ঩মে​ে আড়াআরড় একিা তযখা তিখরে ঩ারফন:

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

তযখারি ঳িূ ণে তিখায জনয এযারেি রবউয়াযরক তিরন একিু ফড় করয রনন। আ঩রন এই HTML ত঩ইজরক তমরকান আধু রনক ব্রাউজায তমভন তনিরে঩ তনরবরগিয ফা ভাইরিা঳পি ইন্টাযরনি এক্সরোযারয স্থা঩ন করয হুফহু রায় একই রচত্র তিখরে ঩াযরফন। আ঩রন আ঩নায রথভ তরাগ্রাভ ঳াপররযয ঳ারথ তেযী করয তপরররন!!!

এইভাত্র রক ঴ররা? রথরভ আ঩রন রনোেই ঳াধাযন একরি জাবা এযারেি এয জনয এক িুকরযা তকাড ররখররন। এযারেি ঴রে একরি জাবা তরাগ্রাভ তমিা একরি ঑রয়ফ ব্রাউজারয চররে ঩াযরফ। অনযরিরক, জাবা এযারেরক঱ন ঴রে একরি একক তরাগ্রাভ তমিা চররফ আ঩নায তরাকার ভযার঱রন (জাবা এযারেরক঱ন একিু তফ঱ী জরির এফিং তভািাভুরি কভ জনররয় ঴য়, োই এযারেি রিরয় আভযা শুরু কযফ)। javac রিরয় আভয এযারেি কিাইর করযরছ। োয঩য এযারেিরি ধাযন কযায জনয আভযা তেযী কযরাভ অরে ঳াধাযন ঑রয়ফ ত঩ইজ। appletviewer রিরয় আভযা এযারেিরি চারররয়রছ, রকন্তু একরি ব্রাউজারয আ঩রন খুফই ঳঴রজই চারারে ঩াযরফন। তরাগ্রাভরিয রনরজয ১০রি রাইন যরয়রছ:

import java.awt.Graphics; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

{ g.drawLine(0, 0, 200, 200); } } আ঩রন মেগুররা জাবা এযারেি তেযী কযরে ঩াযরফন োয ভরধয এরি ঴রে ঳ফ তথরক ঳঴রজয একরি। তরাগ্রাভরি বাররাবারফ ফুঝরে ঴রর আ঩নারক তফ঱ বাররাই র঱খরে ঴রফ, রফর঱ল করয অফরজক্ট ঑রযরয়রন্টড তরাগ্রারভিং তিকরনকস্ এয তক্ষত্রগুররা। তমর঴েু আরভ ধরযই রনরে তরাগ্ররভিং এয অরবজ্ঞো আ঩নায এরকফারযই ঱ূ ণয, এই তরাগ্রারভয রবেরয আ঩ে​ে একরি রাইরন আ঩নায িৃ রি আকলেন কযরে চারে: g.drawLine(0, 0, 200, 200); তরাগ্রারভয রবেরয আ঳র কাজরি করয এই রাইন। এিা আড়াআরড় তযখারি আাঁরক। তরাগ্রারভয ফাকী অিং঱ ঐ একরি রাইনরক ঳঴ায়ো তিয়ায জনয ভঞ্চ তেযী করয এফিং আ঩াে​ে আভযা ঐ ভরঞ্চয কথা ফাি রিরে ঩ারয। আ঳রর মা ঘির ো ঴রে, করিউিাযরক আভযা উ঩রযয ফাভ তকানা(0,0) তথরক নীরচয ডান রিরকয তকানা(200, 200) ঩মে​ে একরি তযখা আাঁকায জনয ফরররছ। করিউিায, আভযা রিক তমভন ফরররছ, তযখারি এাঁরকরছ। এিাই ঴রে করিউিায তরাগ্রারভিং এয আ঳র ভজা। (তখয়ার করুন, উ঩রয ৫ভ ধার঩ আভযা HTML ত঩ইরজয রবেরয এযারেরিয উইরডায ভা঩ রিরয়রছ তিঘেয 200 এফিং রস্থ 200।) এই তরাগ্রারভ আভযা একরি drawLine নারভ একরি method (a.k.a. function) কর করযরছ এফিং এরক চাযরি ঩যাযারভিায (parameters) (0,0,200,200) ঩ারিরয়রছ। রাইনরি একরি ত঳রভরকাররন তমরয় ত঱ল ঴য়। ত঳রভরকারন রাইরনয ত঱রল িারড়য ভে কাজ করয। রাইনরি শুরু ঴য় g. রিরয়, অথোৎ আভযা g নারভয রনরিেি অফরজক্ট (তমিা, এক রাইন উ঩রয আ঩রন তিখরফন, ঴র Graphics িার঳য - ঩রয এই অনু রেরি রফস্তারযেবারফ িা঳ এফিং িার঳য তভথড্ facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

এয রবেরয আভযা মাফ) এয তকান তভথডরক কর কযরে চারে। তভথড্ ঴রে শুধু ভাত্র একরি রনরিে঱ - এিা করিউিাযরক রকছু কযরে ফরর। এই তক্ষরত্র, drawLine করিউিাযরক (0, 0) ঑ (200, 200) রফন্দুয ভরধয একরি তযখা িানরে ফরর। ধযরে ঩ারযন, উইরডায 0,0 রফন্দু যরয়রছ উ঩রযয ফাভ তকানায় এফিং X ঑ Y অরক্ষয ধনাত্মক রিক ডারন ঑ নীরচ ফাড়রে থারক। ঩িোয উ঩য ররেরি রফন্দু (ররেরি pixel)঴রে তেররয একক ফৃ রে।

ঐ চাযরি ঩যাযারভিারযয জায়গায় রফরবন্ন ঳িংখযা ফর঳রয় ঩যীক্ষা কযায তচিা করুন। একিা ফা িু িা ঳িংখযা ঩রযফে​েন করুন, ঩রযফে​েনগুররা ত঳ইব করুন, javac রিরয় আফায কিাইর করুন এফিং ররে ঩রযফে​েরনয ঩য appletviewer এ ঩ুনযায় যান করুন আয তিখুন আ঩নায আরফষ্কায। drawLine ছাড়া আয রক রক পািং঱ন যরয়রছ? Graphics িার঳য ডকুরভন্ট঱ন ঘা​াঁিররই আ঩রন ত঩রয় মারফন। আ঩রন মখন জাবা facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

তডরবর঩রভন্টভ রকি ইনের করযন এফিং ডকুরভন্ট঱ন আন঩যাক্ করযন, একিা পাইর আনররাড ঴য় এয ভরধযই আয এিায নাভ ঴রে java.awt.Graphics.html, এফিং এরি আ঩নায তভর঱রনই আরছ। এই পাইরিাই Graphics িা঳ ঳ম্বরে রফস্তারযে রররখরছ। আভায তভর঱রন এই পাইররয ঳রিক ঩াথ(Path)িা ঴রে D:\jdk1.1.7\docs\api\java.awt.Graphics.html. আ঩নায তভর঱রন ঩াথিা একিু আরািা ঴রে ঩ারয, রকন্তু খুফ কাছাকারছ - এিা রনবেয কযরছ আ঩রন রিক তকাথায় ইনের করযরছন। পাইররি খুাঁরজ তফয করয খুরুন। পাইররিয একিভ উ঩রযয রিরক একরি অিং঱ ঴রে "Method Index"। এরি ঴রে এই িার঳ মেগুররা তভথড যরয়রছ োয একরি োররকা। drawLine তভথড ঴রে োরিয একরি, রকন্তু আ঩রন আয঑ অরনক তিখরে ঩ারফন ত঳খারন। অনযানয রফলরয়য ঩া঱া঩ার঱ আ঩রন আাঁকরে ঩ারযন: 

Lines

 

Arcs

 

Ovals

 

Polygons

 

Rectangles

 

Strings

 

Characters

এই঳ফ রফরবন্ন তভথড্গু ররা একিু ঩রড় তিখুন এফিং এগুররা রনরয় ঩যীক্ষা কযায তচিা করুন। তিখুন নেুন রক তেযী কযা ঳ম্ভফ। উিা঴যণ র঴র঳রফ এই তকাডিুকু তিখরে ঩ারযন: g.drawLine(0, 0, 200, 200); facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

g.drawRect(0, 0, 200, 200); g.drawLine(200, 0, 0, 200); এরে একিা িু ই কণেরফর঱ি ফাক্স তিখরে ঩ারফন(ছরফরি ঩ুরযা঩ুরয তিখায জনয উইরডারক ররয়াজনভে ফড় করয রনরে বুররফন না)। import java.awt.Graphics; import java.awt.Color; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) { g.setColor(Color.red); g.fillRect(0, 0, 200, 200); g.setColor(Color.black); g.drawLine(0, 0, 200, 200); g.drawLine(200, 0, 0, 200); } } রক্ষয করুন, তরাগ্রারভয রিেীয় রাইরন নেুন একরি import রাইন তমাগ ঴রয়রছ। তরাগ্রাভরিয আউি঩ুি তিখরে ঴রফ:

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

আ঩নায ভাথায় ঴য়ে একিা রচো চররছ তম, "শুধু ভাত্র red ফাি রিরয় Color.red এয ফযফ঴ায জানর রকবারফ এফিং রিেীয় import রাইন তমাগ কযরেই ফা জানর রকবারফ?" এই঳ফ ফযা঩াযগুররা উিা঴যণ রিরয় র঱খরফন। কাযণ, শুধু ভাত্র setColor তভথড্ কর কযায একিা উিা঴যণ তিরখরছন আ঩রন। আ঩রন এখন জারনন তম, যিং ঩রযফে​েন কযরে চাইরর Color. এয ঩রয একরি যিং এয নাভ ফর঳রয় setColor তভথড্ এয ঩যাযারভিায র঴র঳রফ ফযফ঴ায কযরে ঴য় এফিং তরাগ্রারভয একিভ উ঩রয ঳রিক import রাইন তমাগ কযরে ঴য়। আ঩রন মরি setColor এয রিরক োকান তিখরে ঩ারফন এয একরি ঳িংমু ি অিং঱ যরয়রছ Color িা঳ ঳ম্বরে। এফিং এয ভরধয যরয়রছ ঳কর ঳রিক যিং এয নাভমু ি একরি োররকা এফিং নেুন যিং (নাভরফ঴ীন)তেযীয উ঩ায়। আ঩রন েথযরি ঩রড়রছন, আ঩নায ভাথায় তযরখ রিরয়রছন এফিং এখন আ঩রন জারনন জাবারে রকবারফ যিং ঩রযফে​েন কযা মায়। করিউিায তরাগ্রাভায ঴ফায এিাই ঴রে ঳ফরচরয় গুরুত্ব঩ূ ণে অিং঱ - আ঩রন তকৌ঱র র঱খরফন এফিং ঩রড়য তরাগ্রাভ ররখায জনয ো ভরন যাখরফন। ঴য় উিা঴যণ ঩রড় (এখারন তমভন করযরছন) নেুফা ডকুরভরন্ট঱ন ঩রড় ফা তকারডয নভুনা facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

(তমভন demo রডরযক্টযীয ভরধয) তিরখ আ঩রন তকৌ঱র র঱খরফন। অনু ঳োন কযায ভে, নেুন রজরন঳ র঱খায ভে এফিং রফরবন্ন রজরন঳ ভরন যাখায ভে একিা তব্রইন থাকরর েরফই আ঩রন তরাগ্রারভিং তক বাররাফা঳রে ঩াযরফন! এই অিংর঱ আ঩রন মা র঱খররন: রররনয়ায, র঳কুরয়ন্সার তকাড - উ঩য তথরক শুরু করয নীচ ঩মে​ে তভথড কর ঳ম্বররে বাগ-বাগ কযা তকাড ররখা(রার চেুবূেজ আাঁকায আরগ রাইনগুররায একরি আাঁকায তচিা করয তিখুন রক ঴য় - এিা চেুবূেজরি িাযা ত াঁরক মারফ এফিং অিৃ ঱য ঴রয় মারফ। তকারডয রবেরয রাইনগুররায িভ একরি গুরুত্ব঩ূ ণে ফযা঩ায)। ধাযাফার঴ক রাইন একরি করিউিায তরাগ্রারভয ভূ র অিং঱ গিন করয। আাঁকায ঳ফ ধযরনয রবন্ন-রবন্ন তভথড্ রনরয় ঩যীক্ষা-রনযীক্ষা করয তিখুন নেুন রকছু তেযী কযরে ঩ারযন রকনা।

আ঩রন তরাগ্রারভিং র঱খরছন। আয োই একিা ফযা঩ায আ঩রন রক্ষয কযরফন তম, আ঩রন িরভই তফ঱ বারই বূর ঑ অনু ভান কযরছন। এয কাযরন আ঩নায তরাগ্রাভ ঴য় কিাইর ঴রে না ফা এরক্সরকউি কযায ঩য আ঩রন আ঱ানু রু঩ আউি঩ুি ঩ারেন না। এই ঳ভ঳যাগুররাই ঴রে ফাগ্ ফা ত্রুরি। আয এরিয িূ য কযায ররিয়ারক ফরা ঴য় রডফারগিং। তম তকান তরাগ্রাভারযয রায় অরধেক ঳ভয় ফযয় ঴য় এই রডফারগিং এ। আ঩নায রনরজয ফাগ্ তেযী কযায জনয আ঩রন রচুয ঳ভয় এফিং ঳ু রমাগ ঩ারফন। রকন্তু োয আরগ ফাগ্ আরছ রক না এই ফযা঩ারয আয঑ তফ঱ী ঩রযষ্কায ঴ফায জনয রনরজযাই রকছু তেযী করয। আ঩নায তরাগ্রারভয রবেরয তকান একিা রাইরনয ত঱রল ত঳রভরকারন ফাি রিরয় javac রিরয় কিাইর কযায তচিা করযন। কিাইরায আ঩নারক একিা বূররয তভর঳জ রিরফ। এিারক ফরর কিাইরায এযয এফিং তরাগ্রাভ এরক্সরকউি কযায আরগ আ঩নারক এই ধযরনয ঳কর এযয ফা বূর িূ য কযরে ঴রফ । রফরবন্ন ধযরনয কিাইরায এযরযয ঳ারথ ঩রযরচে ঴রে পািং঱রনয বূর ফানান রিরয়, একিা "{" ফাি রিরয় ফা তকান একিা ইভর঩ািে রাইন ফাি রিরয় তিখরে ঩ারযন। রথরভই তকান এক রফর঱ল ধযরনয কিাইরায এযয তিরখ ঴ো঱ ঴রে ঩ারযন। রকন্তু রফর঱ল উরের঱য তেযী ঩রযরচে facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

এযয রিরয় এবারফ ঩যীক্ষা-রনযীক্ষা কযরে কযরে আ঩রন অরনক ঳াধাযন এযয রচনরে ঩াযরফন। তরাগ্রাভ মখন কিাইর ঴রে থারক এফিং যান ঴রে থারক েখন এরক্সরকউ঱ন (ফা যান-িাইভ) এযয নারভ ঩রযরচে ফাগ তিখা তমরে ঩ারয। এফিং এরে আ঩রন ঩ূ ফে ঩রযকরিে আউি঩ুি ঩ারফন না। উিা঴যণস্বরু঩ ফরা মায়, নীরচয তকাডরি িু 'রি ঩যস্পযরছিী কণেরফর঱ি একরি চেুবূেজ আাঁরক: g.setColor(Color.red); g.fillRect(0, 0, 200, 200); g.setColor(Color.black); g.drawLine(0, 0, 200, 200); g.drawLine(200, 0, 0, 200); অনযরিরক নীরচয তকাডরি শুধু ভাত্র রার চেুবূেজরিরক(রাইন িু 'রিয উ঩য রিরয়) তেযী করয: g.setColor(Color.black); g.drawLine(0, 0, 200, 200); g.drawLine(200, 0, 0, 200); g.setColor(Color.red); g.fillRect(0, 0, 200, 200); এই তকাডরি রায় হুফহু একই যকভ রকন্তু মখন এরক্সরকউি ঴য় ঳িূ ণে উরটা তিখা মায়। আ঩রন মরি কণে িু 'রি তিখরে চান েরফ রিেীয় তকাডরিরে একরি ফাগ যরয়রছ। আরযকরি উিা঴যণ তিয়া ঴র: g.drawLine(0, 0, 200, 200); g.drawRect(0, 0, 200, 200); g.drawLine(200, 0, 0, 200); এই তকাড তেযী কযরফ চাযরিরক কাররা রাইন রফর঱ি একরি চেুবূেজ এফিং িু রি কণে। ঩রযয তকাডরি এখারন তেযী কযরফ শুধু ভাত্র একরি কণে: g.drawLine(0, 0, 200, 200); facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

g.drawRect(0, 0, 200, 200); g.drawLine(0, 200, 0, 200); আ঩রন মরি িু 'রি কণে তিখায আ঱া করয থারকন েরফ আফায রিেীয় তকারড একরি ফাগ যরয় তগরছ(রক বূর রছর ফুঝরে না ঩াযা ঩মে​ে ২য় তকাডিুকু তিখরে থারকন )। রারগ কাযণ এগুররা খুফ ঳ূ ক্ষ্ম। রনরজয ফাগ ধযা চচো কযায জনয আ঩রন ঩মোপ্ত ঳ভয় ঩ারফন। গড়঩ড়ো একজন তরাগ্রাভায োয রায় অরধেক ঳ভয় ফাগ খুরজ তফয কযা এফিং িূ য কযায় ফযয় করযন। মখন ফাগ তিখা মারফ িয়া করয রনযা঱ ঴রফন না এগুররা তরাগ্রারভিং জগরেয খুফ ঳াধাযণ একিা অিং঱।

঳াভরয়কবারফ ডািা ফা েথয যাখায জনয ঳কর তরাগ্রাভ তবরযরয়ফর ফযফ঴ায করয। উিা঴যনস্বরূ঩ ধরুন তরাগ্রারভয তকান এক ঩মোরয় আ঩রন একজন ইউজারযয কাছ তথরক একরি ঳িংখযা চাইররন, ঩রয তমন ফযফ঴ায কযরে ঩ারযন ত঳জনয ঳িংখযারিরক আ঩রন একরি তবরযরয়ফর এ যাখরফন। তবরযরয়ফর ফযফ঴ায কযায আরগ অফ঱যই োরিযরক ঳ু রনরিেি(রডপাইনড) ফা ঳ু স্পিবারফ জানারনা(রডরিয়াডে) থাকরে ঴রফ। এফিং ররেযক তবরযরয়ফররক তকান রফর঱ল ধযন(িাই঩) র঴র঳রফ উরেখ কযরে ঴রফ। উিা঴যনস্বরূ঩, আ঩রন একরি তবরযরয়ফররক এভন এক ধযন(িাই঩) র঴র঳রফ উরেখ কযরে ঩ারযন মা ঳িংখযা যাখরে ঩ারয, আফায আরযকরি তবরযরয়ফর উরেখ কযরে ঩ারযন মা তকান ফযরিয নাভ যাখরে ঩ারয। (কাযন জাবারে তবরযরয়ফর ফযফ঴ায কযায ঩ূ রফে োরিয অফ঱যই রনরিেিবারফ উরেখ কযরে ঴য় এফিং তম যকভ েথয ত঳খারন থাকরফ োরিয ধযন ফা িাই঩ উরেখ কযরে ঴য়, জাবা ঴রে একরি স্ট্রিংরর িাই঩ড রযািংগুরয়জ। অরনক রযািংগুরয়রজয এই ধযরনয ফাধা ধযা রনয়ভকানু ন তনই। ঳াধাযনে ফড় ফড় তরাগ্রাভ তেযী কযায ঳ভয় স্ট্রিং িাইর঩িং আ঩নায তরাগ্রারভিং এযয এয ঳িংখযা কভারে ঳া঴াময করয।)

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

import java.awt.Graphics; import java.awt.Color; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) { int width = 200; int height = 200; g.drawRect(0, 0, width, height); g.drawLine(0, 0, width, height); g.drawLine(width, 0, 0, height); } } উ঩রযয তরাগ্রারভ আভযা িু রি তবরযরয়ফর ফা চরক- উরেখ width ঑ height করযরছ। এরিয ধযন রিরয়রছ int। একরি তবরযরয়ফর ফা চরক তমরকান ইনরিজায(঩ূ ণে ঳িংখযা তমভন ১, ২, ৩)যাখরে ঩ারয। িু রি তবরযরয়ফররকই আভযা ২০০ রিরয় ইরনর঳য়ারাইজ করযরছ। খুফ ঳঴রজই আভযা ররখরে ঩াযোভ: int width; width = 200; int height; height = 200; ১ভ ঩েরেরে শুধু ভাত্র একিু োড়াোরড় িাই঩ কযা মারফ। তকান একরি তবরযরয়ফররক োয রথভ তবরু ফ঳ারনায ঩েরেরক ফরা ঴য় তবরযরয়ফর এয ইরনর঳য়ারাইরজিং। তবরযরয়ফররক ইরনর঳য়ারাইজ কযরে বূরর তগরর খুফ ঳াধাযন একরি ফাগ তিখা তিয়। ফাগরি তিখরে চাইরর তকারডয ইরনর঳য়ারাইরজিং অিং঱িুকু("= 200" অিং঱রি) ফাি রিন এফিং facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

তরাগ্রাভরি আফায কিাইর করয তিখুন রক ঴য়। আ঩রন তিখরফন তম কিাইরায ঳ভ঳যারি ঳ম্বরে আ঩নারক অরবরমাগ কযরছ। মাই ত঴াক এরি একরি বাররা তফর঱িয। এরি আ঩নারক অরনক ঳ভয় অ঩চরয়য ঴াে তথরক যক্ষা কযরফ। জাবারে িু ই ধযরনয তবরযরয়ফর আরছ - ঳াধাযন (রররভরিব) তবরযরয়ফর এফিং িা঳। int িাই঩রি ঳াধাযন। এরি মা কযরে ঩ারয ো ঴রে এরি একরি ঳িংখযা যাখরে ঩ারয। আ঩রন একরি int তঘালনা(রডরিয়ায) কযরফন, এরে একরি তবরু রিরফন এফিং ফযফ঴ায কযরফন। অনযরিরক, িা঳ এ করয়ক অিং঱ থারক এফিং রকছু তভথড থারক। এই তভথডগুররায ঳া঴ারময িা঳রক খুফ ঳঴রজ ফযফ঴ায কযা মায়। িার঳য ঳যা঳রয একরি বাররা উিা঴যন ঴ররা Rectangle িা঳। োই এিা রিরয়ই আভযা শুরু করয। এেক্ষন ঩মে​ে আভযা তম তরাগ্রাভরিয উ঩য কাজ কযরাভ োয ভরধয ঳ফরচরয় ফড় একরি ঳ীভাফে​ো ঴রে তম, আভযা ধরয রনরয়রছ উইরডারি ২০০ ফাই ২০০ র঩রক্সররয। আভযা মরি উইরডারক রজজ্ঞা঳া করয "েুরভ কে ফড়?" এফিং োয঩য চেুবূেজ এফিং কণেিয় আাঁরক ো঴রর তকভন ঴রফ? Graphics িা঳ (java.awt.Graphics.html - আাঁকাআাঁরকয ঳কর পািং঱ন তম পাইররয ভরধয আরছ) এয ডকুরভন্ট঱ন ত঩ইজরি মরি আ঩রন তিরখন ো঴রর রক্ষয কযরফন তম, এরিয ভরধয getClipBounds নারভ একরি পািং঱ন আরছ। ঳িূ ণে রফফযণ তিখায জনয পািং঱নরিয উ঩রয রিক করুন। পািং঱নরি তকান ঩যাযারভিায তনয় না রকন্তু এয ঩রযফরে​ে Rectangle িাইর঩য একরি তবরু রযিানে করয। রযিানে কযা এই rectangle এয রবেরয যরয়রছ ড্ররয়িং এরযয়ায তিঘেয এফিং রস্থ। ডকুরভন্ট঱ন এয এই ত঩ইরজ Rectangle এয উ঩য রিক কযরর আ঩রন চরর মারফন Rectangle িা঳ (java.awt.Graphics.html) এয ডকুরভন্ট঱ন ত঩ইরজ। ত঩ইজরিয উ঩রয তবরযরয়ফর এয োররকায অিংর঱ োকারর তিখরে ঩ারফন তম এই িার঳ x, y, width ঑ height নারভ মথািরভ চাযরি তবরযরয়ফর যরয়রছ। ঳ু েযািং এখন আভযা তমিা কযফ ো ঴রে getClipBounds ফযফ঴ায করয ঳ীভানা র঴র঳রফ একরি rectangle অফরজক্ট ঩াফ এফিং ো তথরক তিঘেয এফিং রস্থ তফয করয width ঑ facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

height তবরযরয়ফরর ঳িংযক্ষন কযফ। ঩ূ রফেয উিা঴যরন আভযা রিক এবারফই করযরছ: import java.awt.Graphics; import java.awt.Color; import java.awt.Rectangle; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) { int width; int height; Rectangle r; r = g.getClipBounds(); width = r.width - 1; height = r.height - 1; g.drawRect(0, 0, width, height); g.drawLine(0, 0, width, height); g.drawLine(width, 0, 0, height); } } এই উিা঴যনরি যান কযরর তিখরে ঩ারফন তম চেুবূেজ এফিং কণেগুররা অঙ্করনয জায়গায ঳ারথ ঳িূ ণে রপি ঴রয়রছ। আয঑ তিখরফন, উইরডায ঳াইজ ঩রযফে​েরনয ঳ারথ ঳ারথ স্বয়িংরিয়বারফ চেুবূেজ এফিং কণেগুররা নেুন ঳াইরজ আফায অরঙ্কে ঴রে। এই তকারড নেুন ঩া​াঁচরি ধাযনা আরছ, এক নজরয তিরখ তনই: রথভে, Rectangle িা঳ ফযফ঴ায করযরছ ফরর তরাগ্রারভয েৃেীয় রাইরন java.awt.Rectangle ইভর঩ািে কযরে ঴রফ। facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

তরাগ্রারভয রবেরয আভযা রেনরি চরক ফা তবরযরয়ফর ফযফ঴ায করযরছ।

িু রি (width এফিং height)int িাইর঩য এফিং একরি (r) Rectangle িাইর঩য। অঙ্করনয ঩রয঳য ফা ড্ররয়িং এরযয়ায ভা঩ জানায জনয আভযা

getClipBounds পািং঱ন ফযফ঴ায করযরছ। এরি তকান ঩যাযারভিায তনয় না,োই এরে আভযা রকছু ই তিইরন("()")। Rectangle রযিানে করয। "r= g.getClipBounds();" রাইনরি রররখ আভযা আ঳রর এরিই ফররে তচরয়রছ "রযিানে কযা চেুবূেজরি িয়া করয r তবরযরয়ফরর ফর঳রয় রিন। Rectangle িার঳য ঳ি঳য র঴র঳রফ r তবরযরয়ফররি আ঳রর চাযরি তবরযরয়ফর রনরয় গরিে - x, y, width এফিং height (Rectangle িার঳য ডকুরভরন্ট঱ন ঩ড়ায ঳ভয় আ঩রন ঴য়ে এই নাভগুররা ঩রড় থাকরফন)।

"."(ডিত঳঩ারযি (য ফযফ঴ায

কযরে ঴রফ। ঳ু েযািং "r.width" অিং঱রি ঴রে "r তবরযরয়ফররয রবেরয width এয ভান"। তবরযরয়ফর width এয রবেরয। উ঩রয ঐ জায়গারিরে আভযা ১ রফরয়াগ করযরছ। রফরয়াগরি ফাি রিরয় তিখুনরো রক ঴য়। ১ এয ফিরর ৫ ফাি রিরয়঑ তিখুন রক ঴য়। ঳ফর঱রল ড্ররয়িং পািং঱রন আভযা width ঑ height ফযফ঴ায করযরছ। এই জায়গায় ঳াধাযণে একরি রশ্ন কযা ঴য়, "width ঑ height নারভয তবরযরয়ফরগুররা তেযী কযায আরিৌ তকান িযকায রছর রক?" উিয ঴রে "না"।

r.width - 1 ফযফ঴ায কযরে

঩াযোভ। তবরযরয়ফরগুররা তেযী কযায উরে঱য ঴রে তকাড তমন একিু ঳঴জবারফ ঩ড়া মায়। এফিং একই কাযরণ এইবারফ তকাড তরখা একরি বাররা অবযা঳঑ ফরি। জাবা করয়করি ঳঴জ ধযরনয তবরযরয়ফর ঳ার঩ািে করয। এরিয ভরধয facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

নীরচয রেনরি ঴রে ঳ফরচরয় কভন: 

int - ঩ূ ণে ঳িংখযা (১, ২, ৩ ....)

 

float - ি঱রভক ঳িংখযা (তমভন: ৩.১৪১৫৯)

 

char - অক্ষয (a,b,c .....)

঳াধাযণ তবরযরয়ফররয উ঩য আ঩রন গারণরেক ঩েরে ররয়াগ কযরে ঩ারযন। +(তমাগ), -(রফরয়াগ), *(গুণ), /(বাগ) এফিং আয঑ রকছু আরছ জাবায়। রকবারফ এই ঩েরেগুররা তরাগ্রারভ ররয়াগ কযরফন ত঳ ফযা঩ারয এখারন একরি উিা঴যণ তিয়া ঴ররা। ধযা মাক আ঩রন ১০ রপি ফযা঳ রফর঱ি একরি তগাররকয আয়েন রনণেয় কযরে চান। নীরচয তকাডরি ো করয তিরফ: float diameter = 10; float radius; float volume; radius = diameter / 2.0; volume = 4.0 / 3.0 * 3.14159 * radius * radius * radius; রথভ র঴঳াফরি ঴রে "diameter তবরযরয়ফররয ভানরক ২.০ রিরয় বাগ করয বাগপররক radius নাভক তবরযরয়ফরর যারখা"। কযরফন, "=" রচহ্ণরি এখারন রনরিে঱ করয "ডান রিরকয র঴঳ারফয পরাপররক ফাভ রিরকয তবরযরয়ফরর যারখা। রু র঩িং(Looping) করিউিায ঳ু চারুবারফ করয এভন কাজগুররায ভরধয একরি ঴রে ঩ুনযাফৃ রিক বারফ র঴঳াফ - কাজ কযা। ঩ূ রফেয অনু রেিগুররায ভরধযই তিরখরছ রকবারফ "অনু িরভক(ফা র঳কুরয়রন্সয়ার) তকাড" ররখরে ঴য়। facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

এখন আভযা তম রফলরয় আররাচনা কযফ ো ঴রে রকবারফ এই অনু িরভক তকারডয অিং঱গুররারক ফাযফায কাজ কযারনা মায়। উিা঴যণরুর঩ ধরুন নীরচয ছরফরি আ঩নারক আাঁকরে ফরা ঴ররা:

শুরু কযায বাররা একরি স্থান ঴রফ মরি আভযা নীরচয ভে অনু বূরভক ঳ভােযার তযখাগুররা এাঁরক তপরর:

রাইনগুররা আাঁকায একরি উ঩ায় ঴রে অনু িরভক(ফা র঳কুরয়রন্সয়ার) তকাড তরখা: import java.awt.Graphics; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

{ int y; y = 10; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); y = y + 25; g.drawLine(10, y, 210, y); } } (রকছু নেুন তরাগ্রাভারযয কারছ "y=y+25" অিং঱রি খাযা঩ তিখায় মখন োযা এরি রথভফারযয ভে তিরখ। এয রকৃে অথে ঴রে, "y তবরযরয়ফররয ভারনয ঳ারথ ২৫ তমাগ করয তমাগপররক আফায y তবরযরয়ফরর ফ঳ারনা"। ঳ু েযািং রাইনরি এরক্সরকউি ঴ফায আরগ মরি y এয ভান ১০ থারক ো঴রর রাইনরি এরক্সরকউি ঴ফায ঩রযই এয ভান ঴রয় মারফ ৩৫।) রায় ঳ফাই তকারডয রিরক োকারনায ঩য঩যই তখয়ার করয থাকরফন তম এয রবেরয িু রি রাইন যরয়রছ মা ঘুরযরপরয ফাযফায আর঳। এই রনরিেি তক্ষরত্র এই ঩ুণযাফৃ রি খুফ একিা খাযা঩ ঴য়রন, রকন্তু রচো করয facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates  http://facebook.com/tanbir.ebooks তিখুন তো আ঩রন মখন ঴াজায ঴াজায তযা এফিং করাভ ঳িন্ন একরি রগ্রড আাঁকরফন তরাগ্রাভ তেযীয এই ঩েরে তফ঱ রফযরিকয ঴রয় তিখা রিরফ। এই ঳ভ঳যায ঳ভাধান ঴রে একরি রু ঩ , নীরচ তমভন তিখারনা ঴রয়রছ: import java.awt.Graphics; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) { int y; y = 10; while (y <= 210) { g.drawLine(10, y, 210, y); y = y + 25; } } } তরাগ্রাভরি যান কযরর তিখরে ঩ারফন ২০০ র঩রক্সর তিঘেযরফর঱ি নয়রি অনু বূরভক ঳ভােযার তযখা আাঁকা ঴রয়রছ। while মু ি অিং঱রিরক জাবারে রু র঩িং অিং঱ ফরর। ঐ অিং঱রি জাবারক রিক এই বারফ কাজ কযরে ফরর: while মু ি ফাকযিংর঱য ফেনীয রবরেরযয অিং঱রক জাবা বাররাবারফ তিরখ এফিং রিক করয, "y রক ২১০ এয তচরয় তছাি না ঳ভান?"

উিয মরি ঴যা ঴য় ো঴রর জাবা "{" এফিং "}" ব্রারকরিয রবেরয

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

আফে তকারডয রবেরয ু রক মায়। রু র঩িং ত঱ল ঴য় ব্লরকয এরকফারয ত঱রল। জাবা মখন ত঱রলয ব্রারকরিয রনকি ত঩ৌঁরছ এরি আফায while অিংর঱ রপরয আর঳ এফিং একই রশ্ন আফায করয। এই ঘুরয আ঳ায ফযা঩ায অথোৎ রু র঩িং এয ঘিনা অরনকফায ঴রে ঩ারয। 

আয মরি উিয "না" ঴য় ো঴রর জাবা ২য় ব্রারকি িাযা আফে অিং঱

ফাি রিরয় স্বাবারফকবারফ নীরচয রিরক তমরে থাকরফ। ঳ু েযািং আ঩রন রক্ষ করয থাকরফন তম তরাগ্রাভরি মখন আ঩রন যান কযরফন, শুরুরে y এয ভান থারক ১০। ২১০ এয তচরয় ১০ তছাি আয , োই জাবা ব্রারকি িাযা আফে অিংর঱ ু রক মায় এফিং (১০, ১০) রফন্দু তথরক (২১০, ১০) রফন্দু ঩মে​ে একরি তযখা আাঁরক, y এয ভান ৩৫ করয এফিং আফায while এয কারছ রপরয মায়। ২১০ এয তচরয় ৩৫ তছাি, োই জাবা আফায ব্রারকি এয রবেরযয অিংর঱ ু রক মায়, (১০, ৩৫) তথরক (২১০, ৩৫) রফন্দু ঩মে​ে একরি তযখা আাঁরক, y এয ভান ৬০ করয এফিং োয঩য আফায while এয কারছ রপরয মায়। এই ধাযাফার঴কো চররে থারক মেক্ষন না ঩মে​ে y এয ভান ২১০ এয তচরয় ফড় না ঴য়। েখন তরাগ্রাভ ত঱ল ঴রয় মায়। আভযা রিেীয় একরি রু ঩ তমাগ করয আভারিয রগ্রড ত঱ল কযরে ঩ারয, রিক এইবারফ:

import java.awt.Graphics; public class FirstApplet extends java.applet.Applet { public void paint(Graphics g) { facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

int x, y; y = 10; while (y <= 210) { g.drawLine(10, y, 210, y); y = y + 25; } x = 10; while (x <= 210) { g.drawLine(x, 10, x, 210); x = x + 25; } } } আ঩রন রক্ষয করয তিখরফন তম একরি while এয রেনরি অিং঱ থারক: একরি আরছ ইরনর঱য়ারাইরজিং তে঩ মা y এয ভান ১০ করয।

 

োয঩য while এয রথভ ব্রারকরিয রবেরয এবারু রয়঱ন তে঩।

 

োয঩য while এয তকান একরি জায়গায় যরয়রছ ইনরিরভন্ট তে঩

মা y এয ফৃ রে করয। একই কাজ কযায জনয জাবারে আরযকরি ঩েরে আরছ, রকন্তু এরি while এয তচরয় একিু জরির। এিারক for রু ঩ ফরর। আ঩নায কারছ নীরচয ভে একরি while অিং঱ থারক: y = 10; while (y <= 210) { g.drawLine(10, y, 210, y); facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

y = y + 25; } ো঴রর এই while অিংর঱য ঳ভভারনয তকাড ঴রফ রিক এইযকভ: for (y = 10; y <= 210; y = y + 25) { g.drawLine(10, y, 210, y); } আ঩রন তিখরফন তম for মা করয ো ঴র এরি ইরনর঳য়ারাইরজিং, এবারু রয়঱ন এফিং ইনরিরভরন্টিং রাইনগুররারক একরি তছাি এক রাইরন রনরয় আর঳। এরি আ঩নায তরাগ্রারভয তিঘেযরক শুধু ভাত্র তছাি করয, আয রকছু ই না।

এয রবেরযই রু ঩ ঳ম্বরে দ্রুে িু রি ঩রয়ন্ট: 

অরনক তক্ষরত্র, এিা রু র঩য রবেরয ররেফায y এয ভান ২১০ এ

ইরনর঳য়ারাইজ করয আফায এয তথরক ২৫ কভারনায ভে ত঳াজা। এবারু রয়঳ন রশ্ন কযরফ, "y রক ১০ এয তচরয় ফড় না ঳ভান?" ঩ছন্দ আ঩নায। অরনরক রথরভ তমাগ করয োয঩য রফরয়াগ কযা ঳঴জ ভরন করয, রকন্তু আ঩রন তো অনযযকভ঑ ঴রে ঩ারযন।

ইনরিরভন্ট ফা ভান ফাড়ারনায ধা঩রি তফ঱ গুরুত্ব঩ূ ণে। ধরুন ঘিনািরভ

আ঩রন রু র঩য রবেরয "y = y + 25;" ঱ব্দগুররা বূরর ররখররন না। এরে করয পরাপর মা ঴রফ ো ঴রে y এয ভান আয ঩রযফে​েন ঴রফ না - এিায ভান ঳ফ঳ভয় ১০ থাকরফ। অথোৎ y এয ভান করখানই ২১০ এয তচরয় ফড় ঴রফ না এফিং রু ঩রি ঳াযাজীফন ধরয চররে থাকরফ (অথফা মেক্ষন না ঩মে​ে আ঩রন করিউিায ফে কযরফন ফা উইরডারি facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

ফে করয রিরফন)।

অনে রু ঩ ফা

ইনরপরনরিব রু ঩ ফরর। এই ধযরনয ত্রুরি ঴য঴ারভ঱াই ঘরি।

রু র঩িং রনরয় ঩যীক্ষা-রনযীক্ষা কযরে চাইরর নীরচয ছরফগুররা আাঁকায জনয তরাগ্রাভ ররখরে ঩ারযন:

জাবা এফিং অনযানয করিউিায তরাগ্রারভিং রযািংগুরয়জ ঳ম্বরে আয঑ অরনক েথয ত঩রে চাইরর ঩রযয ঩ৃষ্ঠায ররিংকগুররা তিরখ রনন। [রফ:দ্র: এই অিং঱রি howstuffworks.com তথরক অনু ফাি কযা ঴রয়রছ]

অরবজ্ঞ, অনরবজ্ঞ তরাগ্রাভায এফিং ঳াধাযন ইউজায ঳ফায জাবা তরাগ্রারভিং তরনগুরয়জ ঳ম্বরে ঳ভযক ধাযনা তি঑য়ায জনয আভায এই ক্ষুদ্র ররচিা।আরভ একজন তরাগ্রাভায র঴঳ারফ তচিা কযরফা ঩রযেন ফািংরা এফিং ররয়াজনীয় ইিংরযজী বালায ফযফ঴ায঳঴ তছাি তছাি ির঩ক঳ আকারয ধাযাফার঴কবারফ রেযকিা রফলয় আররাচনা কযায,আরভ আ঱া করয জাবা তরাগ্রারভিং তরনগুরয়জ ঴ারেখরড় িাযা ঳ফাই উ঩কৃে ঴রফন।

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

তরাগ্রাভ তরনগুরয়জ এয রাথরভক ধাযনা: করিউিায আরফষ্কারযয ঩য তথরকই ো রিরয় জরির ঳ভ঳যা ঳঴রজ ঳ভাধারনয তচিা অফযা঴ে যরয়রছ এফিং গরফলনা ঑ উন্নয়নভূ রক কাজ চররছ রফরবন্ন তরাগ্রারভিং ঩িরে রনরয়। ভরডউরায তরাগ্রারভিং, ি঩-ডাউন তরাগ্রারভিং, ফিভ-আ঩ তরাগ্রারভিং উেখরমাগয করয়করি তরাগ্রারভিং ঩িরে। ঳কর তরাগ্রারভিং ঩িরেয উরে঱য অরবন্ন- ঳঴রজ ঳ভ঳যা ঳ভাধারনয জনয তরাগ্রাভ তেযী, তরাগ্রারভয গ্র঴নরমাগযো ফৃ রি, ফযফহৃে ডািায ঳঴জ ঳িংযক্ষন ঑ তগা঩নীয়ো যক্ষা ইেযারি। ফে​েভারন ফাস্তফোয অররারক ঳ভ঳যা ঳ভাধারনয ররেশ্রুে রিরয় তরার঳রডউয অরযরয়ন্টড তরাগ্রারভিং ঩িরেয ধাযনা঳঴ অরেরযি রকছু ধাযনা রনরয় তরাগ্রারভিং জগরে নেুন চভক রনরয় আর঳ Object-oriented programming (OOP)঩িরে। জাবা তরনগুরয়রজ একরি ঳঴জ, ঳াফরীর, ঳যর, তছাট্র একরি তরাগ্রারভিং তরনগুরয়জ। জাবা তরাগ্রারভিং তকৌ঱র অরনকিা র঳ এফিং র঳ ++ এয ভে। তরাগ্রারভিং তরনগুরয়রজ র঳ এফিং র঳ ++ এয রফঘ্ন঳ৃ রিকাযী তফর঱িযাফরী ফাি রিরয় নেুন অরনক তফর঱িযয ঳ভন্বয় ঘিারনা ঴য়, মা জাবারক ঳রেযকায অরথে একরি ঳঴জ ঳াফরীর, রফশ্বস্ত ঑ ঳ু ফ঴ন঱ীর তরনগুরয়রজ ঩রযনে করযরছ। জাবা তরনগুরয়রজয রধান তফর঱ি ঴রে রনরি​ি তকান োিপভ রনবেয঴ীনো। জাবাই রথভ অফরজক্ট অরযরয়ন্টড তরাগ্রাভ তরনগুরয়জ মা রনরি​ি রকছু ঴াডে঑য়যায ঳পি঑য়ারযয গরডয ভধয ঳ীভাফি নয়। পরর এক করিউিায রকিংফা অ঩ারযরি​িং র঳ তেরভ তরখা জাবা তরাগ্রাভ রবন্ন কিউিায রকিংফা অ঩ারযরি​িং র঳েরভ যান কযা ঳ম্ভফ। ফে​েভান ঳ভরয় ইন্টাযরনি এফিং তনি঑য়াকে তরাগ্রারভয জনররয়ো ফৃ রি ঩া঑য়ায় ঩ূ নোঙ্গ অফরজক্ট অরযরয়রন্টড তরাগ্রাভ তরনগুরয়জ র঴঳ারফ জাবা অে​েয জনররয়ো রাব করযরছ এফিং আগাভীরে এয ঩রযরধ আরযা ফৃ রি ঩ারফ ফরর আ঱া কযা মায় ।

Object-oriented programming (OOP) ঴র তরাগ্রারভিং জগরে এক নেুন ঳িংরমাজন। OOP ঩িরেরে কেগুররা ঱ব্দ ফায ফায ফযফহৃে ঴য়,OOP তরাগ্রাভ ফুঝরে ঴রর এই ঱ব্দ ঳ন্বরে তভৌররক ধাযনা থাকা রফর঱ল ররয়াজন। Object, Class, Instance, Method, Message passing, Inheritance, Abstraction, Encapsulation, (Subtype) polymorphism, Decoupling. Object রক ? ঳াধাযনবারফ object ফররে ফুজায় তকান ফস্তু, আ঩রন real-world এ অরনক উিা঴যণ খুরাঁ জ ঩ারফন: আ঩নায desk, আ঩নায তিরররব঱ন, আ঩নায bicycle একরি অফরজক্ট, ফই, করভ, খাো, করিউিায এগুররা রেযকরিই এক একরি অফরজক্ট। ররেরি অফরজরক্টয রকছু তফর঱ি থারক, তমগুররায জনয একরি object অনয একরি object তথরক অরািা। OOP তরাগ্রারভিং ঩িরেয যান িাইভ এনরিরি ঴র object। object ঴র software bundle of related state and behavior.. চররফ“““““““

জাবা তরাগ্রারভিং তরনগুরয়জ ঴ারেখরড়- রিেীয় ঩ফে Object রক ? ঳াধাযনবারফ object ফররে ফুজায় তকান ফস্তু, আ঩রন real-world এ অরনক উিা঴যণ খুরাঁ জ ঩ারফন: আ঩নায desk, আ঩নায তিরররব঱ন, আ঩নায bicycle একরি অফরজক্ট, ফই, করভ, খাো, করিউিায এগুররা রেযকরিই এক একরি অফরজক্ট। ররেরি অফরজরক্টয রকছু তফর঱ি থারক, তমগুররায জনয একরি object অনয একরি object তথরক অরািা। OOP facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

তরাগ্রারভিং ঩িরেয যান িাইভ এনরিরি ঴র object। object ঴র software bundle of related state and behavior। ঩ূ রফয রিউনরি রছর: জাবা তরাগ্রারভিং তরনগুরয়জ ঴ারেখরড়- রথভ ঩ফে। ররিংকhttp://techtunes.com.bd/programming/tune-id/18859/#comment-38781 **তরখরকয (এভ ইয়াকুফ)অনু ভরে ফযরেরযরক এই তরখায আিংর঱ক ফা ঩ূ ণে অিং঱ তকান ধযরনয রভরডয়ায় ঩ুনঃরকা঱ কযা মারফ না। Objects are key to understanding object-oriented technology। real-world ফস্তুয অরনক উিা঴যণ খুরাঁ জ ঩ারফনksed আ঩নায ,আ঩নায ত঩ালা রানী :, আ঩নায elcycis,

,

। Real-world ফস্তু িু ই গুণাফরর঳ভূ ঴ বাগাবারগ করয :state and behavior/অফস্থান

এফিং আচযণ। ত঩ালা রানীয অফস্থান যরয়রছ (নাভ, যিং, breed, ক্ষুধাে​ে) এফিং আচযণ (barking, আনা ঴রে, wagging ররজ)।

Bicycles এয অফস্থান যরয়রছ rseg ফে​েভান),

rseg ঩রযফে​েন঱ীর) আচযণ,

pedal cadence, ফে​েভান গরেএফিং (

cadence, applying brakes pedalয়)।

real-

world ফস্তুয জনয state and behavior objects is a great way to begin thinking in terms of objectoriented programming. আ঩রন রক্ষয কযরফন তম real-world objects vary in complexity আ঩নায তিরফর রযাি এয কথাই ধরুন এরি only two possible states (on and off) and two possible behaviors (turn on, turn off) থাকরে ঩ারয , রকন্তু আ঩নায তডেি঩ তযরড঑রিয কথা বাফুন radio রিরে additional states (on, off, current volume, current station) and behavior (turn on, turn off, increase volume, decrease volume, seek, scan, and tune). এই real-world ঩মেরফক্ষণগুররই translate into the world of object-oriented programming. ররেযকরি ফস্তু রক্ষয করুন তিখুন এফিং রনরজই িু রি রশ্ন করুন: ‚What possible states can this object be in?‛ and ‚What possible behavior can this object perform?‛.আ঩রন ঩মেরফক্ষণ করয তিখুন তম আ঩নায তডেির঩ তম রাইিরি অরছ ো only two possible states (on and off) and two possible behaviors (turn on, turn off)থাকরে ঩ারয।রকন্তু আ঩নায রিরবয ক্ষরত্র অরেরযি states (on, off, current volume, current station) and behavior (turn on, turn off, increase volume, decrease volume, seek, scan, and tune) আ঩রন ঑ রক্ষয কযরে ঩ারযন তম some objects, in turn, will also contain other objects. এই real-world ঩মেরফক্ষণগুরর ঳ভস্ত object-oriented তরাগ্রারভিংএ translate করয। নীরেয রচরত্র একরি ঳াইরকররয রগয়ায রক্ষয করুন- এিা একিা software object এয উিা঴যন.

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

Software objects are conceptually similar to real-world objects: they too consist of state and related behavior. এই ঩েরে একরি ফস্তুয অবযেযীণ state ঩রযচারনা করয এফিং object-to-object তমাগারমারগয জনয রাথরভক তকৌ঱র র঴র঳রফ ঳যফযা঴ করয। অবযেযীণ তগা঩ন করয এফিং requiring ঳ভস্ত ঩াযস্পরযক তমাগারমাগ object-oriented তরাগ্রারভিংএয তডিা একরি তভৌররক ভূ রনীরে র঴র঳রফ একরি object এয ভধয রিরয় কভে ঳িািন করয। উিা঴যরণয জনয একরি bicycle, রফরফচনা করুন:

By attributing state (ফে​েভান গরে, ফে​েভান pedal cadence, এফিং ফে​েভান gear) ত঳ই state ঩রযফে​েন কযায জনয এফিং providing ঩েরেরি, ফস্তুরিয রনয়েরণ থারক তমভন ফাইরয রফশ্ব এরি ফযফ঴ায কযরে অনু রভািন কযা ঴য়। উিা঴য স্বরূ঩, bicycleএয ৬ gears তকফর যরয়রছ, gears ঩রযফে​েন কযরে একরি ঩েরে তমরকান ভূ রয ফারের কযরে ঩ারয তম ৬এয তচরয় ১ অথফা ফৃ ঴িরযয তচরয় কভ। facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

Bundling code into individual software objects provides a number of benefits, including: ১। Modularity: একরি object এয জনয উৎ঳ তকাড তরখা মারফ এফিং অনযানয ফস্তুয জনয উৎ঳ তকারডয যক্ষণারফক্ষণ কযা মারফ স্বাধীনবারফ। Once created, an object can be easily passed around inside the system. ২। Information-hiding: By interacting only with an object’s methods

মেযীণ ররয়ারগয রফ঱ি

ফণেনা ফাইরয রফশ্ব তথরক রু কারনা থারক। ৩। Code re-use: If an object already exists (perhaps written by another software developer), you can use that object in your program. This allows specialists to implement/test/debug complex, task-specific objects, which you can then trust to run in your own code. ৪। Pluggability and debugging ease: If a particular object turns out to be problematic object রযরে঳ কযরে ঩ারযন।এরি আ঳র রফরশ্ব mechanical ঳ভ঳যা তভযাভরেয অনু রূ঩। শুধু তভযাভে কযা ঴য় ঳ভগ্র তভর঱ন ররেস্থা঩ন ঴য় না। class রক? রকৃে রফরশ্ব, আ঩রন একই ধযরনয অরনক স্বে​ে ফস্তু ঳াভজ঳য রায়঱ই খুাঁরজ ঩ারফন। bicyclesএয ঴াজায ঴াজায একই যকভ তেরয কযা এফিং একই ভরডররয ।

bicycle blueprintsএয একই ত঳ি তথরক রনভোণ কযা ঴রয়রছর …

………চররফ..

class রক? class ঴র ইউজাযরডপাইনড ফা ফযফ঴াযকাযী রনর্ধারযে তডিা িাই঩, মা তরাগ্রারভ রফট

ইন তডিা িাইর঩য ভে কাজ করয। এরি class এ

রফট ইন তডিা িাইর঩য করয়করি তবরযরয়ফর এফিং ঐ তবরযরয়ফর এরক্স঳ কযায জনয কেগুররা পািং঱ন থারক। ররয়াজন অনু ঳ারয তরাগ্রারভ class ফর্ননা কযা ঴য়। রকৃে রফরশ্ব, আ঩রন একই ধযরনয অরনক স্বে​ে ফস্তু ঳াভজ঳য খুাঁরজ ঩ারফন। bicyclesএয ঴াজায ঴াজায একই যকভ তেরয কযা এফিং একই ভরডররয । ররেযক bicycle blueprintsএয একই ত঳ি তথরক রনভোণ কযা ঴রয়রছর.এফিং একই উ঩ািান রিরয়। object-oriented ঱ে​োফরীরে, আভযা জারন তম আ঩নায bicycle ,bicycles র঴র঳রফ একই তেনীয । একরি তেনী তথরক blueprint তমরি স্বে​ে ফস্তু তেরয কযা ঴য়। এখারন ফরা ঴রয়রছ তম রথরভ একরি bicycle তেযী করয ঩যফরেরে ো তথরক অরনক গুররা ঳াইরকর তেযী কযা ঴য়। **তরখরকয (এভ ইয়াকুফ)অনু ভরে ফযরেরযরক এই তরখায আিংর঱ক ফা ঩ূ ণে অিং঱ তকান ধযরনয রভরডয়ায় ঩ুনঃরকা঱ কযা মারফ না। জাবায় class তঘালনায জনয class keyword য ঩য ঐ class এয নাভ রিরে ঴য়। class ফরডরে class এয তভম্বায তবরযরয়ফরগুররায তঘালনা এফিং তভম্বায পািং঱নগুররায ফর্ননা থারক। রনেরররখে উিা঴যনরি রক্ষয করুন এখারন class ঴র Bicycle :

Bicycle class is one possible implementation of a bicycle: class Bicycle { facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

int cadence = 0; int speed = 0; int gear = 1; void changeCadence(int newValue) { cadence = newValue; } void changeGear(int newValue) { gear = newValue; } void speedUp(int increment) { speed = speed + increment; } void applyBrakes(int decrement) { speed = speed – decrement; } void printStates() { System.out.println(‛cadence:‛+cadence+‛ speed:‛+speed+‛ gear:‛+gear); } } The syntax of the Java programming language আ঩নারক নেুন করয তিখরফ, but the design of this class is based on the previous discussion of bicycle objects. The fields cadence, speed, and gear represent the object’s state, and the methods (changeCadence, changeGear, speedUp etc.) একরি bicycle এয জনয blueprint ভাত্র একরি, একরি অযা঩রররক঱রন but the design of this class is based on the ফযফ঴ায কযা মারফ। এখারন একরি Bicycle class মা িু ইরি আরািা Bicycle objects and invokes their methods: class Bicycle { public static void main(String[] args) { // Create two different Bicycle objects Bicycle bike1 = new Bicycle(); Bicycle bike2 = new Bicycle(); facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

// Invoke methods on those objects bike1.changeCadence(50); bike1.speedUp(10); bike1.changeGear(2); bike1.printStates(); bike2.changeCadence(50); bike2.speedUp(10); bike2.changeGear(2); bike2.changeCadence(40); bike2.speedUp(10); bike2.changeGear(3); bike2.printStates(); } } রনরে output তিখুন the ending pedal cadence, speed, and gear for the two bicycles: What Is Inheritance? তম ররিয়ায় তকান িা঳ ফা অফরজরক্টয ফা অনয তকান িা঳ ফা অফরজরক্টয তফর঱িয অর্জন করয োক Inheritance ফা উিযরধকায ঳ূ রত্র ফরা ঴য়। একই তরাগ্রারভ রকছু তরাগ্রাভািং঱ ফাযফায তরখায তচরয় একফায রররখ ো ঩ুনঃ ঩ুনঃ ফযফ঴ায কযা ঳ু রফিাজনক। তরাগ্রারভ ফযফহৃে তকান িা঳ অনযানয তরাগ্রারভ ফযফ঴ায কযা মায়। এবারফ ঩ুযােন িা঳ তথরক নেুন িা঳ তেরয কযায তকৌ঱ররক Inheritance ফরা ঴য়। Mountain Bike,Road bikes, উিা঴যরণয জনয এফিং ঳ভররয় bikes, bicycles (

,

pedal cadence,

gear)। ররেযক এখন঑ অরেরযি তফর঱িয ঑ ঳িংজ্ঞারয়ে করয তম

োরিযরক আরািা তেরয করয: ঳ভররয় bicyclesএয িু ই আ঳ন যরয়রছ এফিং handlebarsএয িু ই ত঳ি; যাস্তা bikesএয রফন্দু handlebars যরয়রছ; রকছু ঩ফে​ে bikesএয একরি অরেরযি ঱ৃ ঙ্খর ফরয়, োরিয একরি রনে​েয gear অনু ঩াে যরয়রছ। Object-oriented তরাগ্রারভিং অনযানয তেণী তথরক ঳াধাযণবারফ ফযফহৃে েযইি এফিং আচযণ উিযারধকায঳ূ রত্র ত঩রে তেণী অনু রভািন করয। এই উিা঴যরণরি, Bicycle MountainBike, RoadBike

superclass

,

TandemBike। জাবা তরাগ্রারভিং বালারে, ররেযক তেনী একরি ঳যা঳রয superclass যাখরে অনু রভািন কযা ঴য়, এফিং ররেযক superclassএয subclassesএয একরি অ঳ীভ ঳িংখযায জনয ঳ম্ভাফনা যরয়রছ:

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

একরি subclass তেরয কযায জনয ফাকযযীরে ঳঴জ। আ঩নায class তঘালণায শুরুরে, ভূ র঱ব্দ ফযফ঴ায করুন র঳ারযে করুন, মা উিযারধকায঳ূ রত্র ত঩রয়রছন এফিং তেনীয নারভয িাযা অনু ঳যণ করযরছররন: নীরচয উিা঴যনরি রক্ষয করুন-

class MountainBike extends Bicycle { // new fields and methods defining a mountain bike would go here } এরি MountainBike এয তক্ষরত্র Bicycle র঴র঳রফ ঩েরে এয , তফর঱রিয একরচরিয়াবারফ তপাকা঳ কযরে এয তকাড এখন঑ অনু রভািন করয তম এরি অননয তেরয করয। এরি ঩ড়রে আ঩নায subclasses ঳঴রজয জনয তকাড তেরয করয। উ঩যন্তু, আ঩নায েযাি এফিং আচযণ ঳রিকবারফ ডকুরভন্টরে গ্র঴ণ করয মা ররেযক superclass ঳িংজ্ঞারয়ে করযন, since that code will not appear in the source file of each subclass.

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Want more Updates 

http://facebook.com/tanbir.ebooks

ইন্টাযরনি ঴রে ঳িংগ্র঴ীে  http://techtunes.com.bd/tuner/tanbir_cox  http://tunerpage.com/archives/author/tanbir_cox  http://somewhereinblog.net/tanbircox  http://pchelplinebd.com/archives/author/tanbir_cox  http://prothom-aloblog.com/blog/tanbir_cox

http://facebook.com/tanbir.cox http://facebook.com/tanbir.ebooks http://tanbircox.blogspot.com

facebook /gmail/skype: -

http://tanbircox.blogspot.com


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.