জাভা প্রোগ্রামিং লেনগুয়েজ হাতেখড়ি- দ্বিতীয় পর্ব

Object কি ?

সাধারনভাবে object বলতে বুজায় কোন বস্তু, আপনি real-world এ অনেক উদাহরণ খুঁজে পাবেন: আপনার desk, আপনার টেলিভিশন, আপনার bicycle  একটি অবজেক্ট, বই, কলম, খাতা, কম্পিউটার এগুলো প্রত্যকটিই এক একটি অবজেক্ট। প্রতিটি অবজেক্টের কিছু বৈশিষ্ট থাকে, যেগুলোর জন্য একটি object অন্য একটি object থেকে অলাদা। OOP প্রোগ্রামিং পদ্বতির রান  টাইম এনটিটি হল object। object হল software bundle of related state and behavior।

পূবের টিউনটি ছিল: জাভা প্রোগ্রামিং লেনগুয়েজ হাতেখড়ি- প্রথম পর্ব। লিংক- https://www.techtunes.io/programming/tune-id/18859/#comment-38781 **লেখকের (এম ইয়াকুব)অনুমতি ব্যতিরেকে এই লেখার  আংশিক বা পূর্ণ অংশ কোন ধরনের মিডিয়ায় পুনঃপ্রকাশ করা যাবে না।

Objects are key to understanding object-oriented technology। ঠিক আপনার ধারে কাছে দেখুন এবং আপনি real-world বস্তুর অনেক উদাহরণ খুঁজে পাবেন: আপনার পোষা প্রানী, আপনার desk, আপনার টেলিভিশন, আপনার bicycle, গাড়ী ইত্যাদি । Real-world বস্তু দুই গুণাবলিসমূহ ভাগাভাগি করে: state and behavior/অবস্থান এবং আচরণ। পোষা প্রানীর অবস্থান রয়েছে (নাম, রং, breed, ক্ষুধার্ত) এবং আচরণ (barking, আনা হচ্ছে, wagging লিজ)। উদাহরন স্বরূপ Bicycles এর অবস্থান রয়েছে (বর্তমান gear, বর্তমান pedal cadence, বর্তমান গতি) এবং আচরণ (পরিবর্তনশীল gear, পরিবর্তনশীল cadence, applying brakes pedalয়)। অবস্থান সনাক্ত করছে এবং real-world বস্তুর জন্য  state and behavior objects is a great way to begin thinking in terms of object-oriented 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 এর উদাহরন.

concepts-object

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, বিবেচনা করুন:

concepts-bicycleObject

By attributing state (বর্তমান গতি, বর্তমান pedal cadence, এবং বর্তমান gear) সেই state পরিবর্তন করার জন্য এবং providing পদ্ধতিটি, বস্তুটির নিয়ন্ত্রণে থাকে যেমন বাইরে বিশ্ব এটি ব্যবহার করতে অনুমোদন করা হয়। উদাহর স্বরূপ, bicycleএর ৬ gears কেবল রয়েছে, gears পরিবর্তন করতে একটি পদ্ধতি যেকোন মূল্য বাতিল করতে পারে যে ৬এর চেয়ে ১ অথবা বৃহত্তরের চেয়ে কম।

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এর একই সেট থেকে নির্মাণ করা হয়েছিল... চলবে...........

****লেখকের (এম ইয়াকুব)অনুমতি ব্যতিরেকে এই লেখার  আংশিক বা পূর্ণ অংশ কোন ধরনের মিডিয়ায় পুনঃপ্রকাশ করা যাবে না।

Level 3

আমি মোহাম্মদ ইয়াকুব। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 15 বছর যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 42 টি টিউন ও 322 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 6 ফলোয়ার আছে এবং আমি টেকটিউনসে 16 টিউনারকে ফলো করি।

ICT Specialist & IT Business Entrepreneurship, Course Curriculum expert, eLearning, Education & Industry Partnership expert. Expertise in Cyber Security, Cloud Computing, AI, Big Data, RFID, Technology Project Management, Change management, leadership & the development of comprehensive large scale eHealth programs. Former Asset Professor in University of Kuala Lumpur, Kuala Lumpur,...


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

অনেক জটিল মনে হচ্ছে ,ভাল করে পড়তে হবে।একটু সহজ করে কি লিখা যাবে ভাইয়া ।

জাভা প্রোগ্রামিং লেনগুয়েজ খুব একটা সহজ নয়, একটু জটিল তো বটে, জাভা প্রোগ্রামিং লেনগুয়েজ এর বাংলা কোন সহজ টিউটোরিয়াল আছে কিনা আমার জানা নাই, জাভা প্রোগ্রামিং লেনগুয়েজ যেহেতু ইংরেজী মাধ্যম তাই বাংলায় একটু জটিল মনে হতে পারে, এই টিউটোরিলটির পাশাপাশি জাভা প্রোগ্রামিং লেনগুয়েজ এর বই পড়তে হবে এবং প্রচুর প্রেকটিস করতে হবে। জাভা প্রোগ্রামিং লেনগুয়েজ এর মাত্র নার্সারী লেভেল শুরু হল.. এখনেতো সত্যিকার জটিল সময় বাকী। তবে জাভা প্রোগ্রামিং লেনগুয়েজ সমন্ধে শিখতে হলে অন্তত: প্রোগ্রামিং লেনগুয়েজ এর অ…. ক,খ… জানা প্রয়োজন। টিউটোরিয়াল ফলো করেন আস্তে আস্তে সব ঠিক হয়ে যাবে। ধৈর্য ধরে প্রোগ্রামিং প্রেকটিস করুন সবকিছু এক সময় সহজ মনে হবে। টিউটোরিয়াল এর কোন অংশ বুঝতে সমস্যা হবে জানাবেন, প্রয়োজনীয় সহযোগীতা দেয়া হবে । ধন্যবাদ।

Thanks vaia,আপনাদের মতো ভালো মানুসগুলোর সহোযোগিতার কারোনেই আমাদের মতো মানুস গুলো বেচে আছে ।

    ধন্যবাদ রিপন ভাইয়া, মানুষ মানুষের জন্য………..

ভাইয়া, JAVA শিখার জন্য কোন বাংলা বই বা PDF অথবা কোন English Writter er BOOK
Reference দিলে সুবিধা হত।

Level 0

vi amar ecliopse to setup nicca na atar .exe ta click korlay dakhai cannot execute etc………..ame run e gia dekhce java thik vabai install hoyaca …akhon ke korbo