ভূমিকা
আ ন ম বজলুর রহমান রোকনের বই জাভা প্রোগ্রামিং ইতিমধ্যেই প্রোগ্রামিংয়ে উৎসাহী বাংলাভাষী ছাত্র ও পেশাজীবী মহলে আদৃত হয়েছে। ২০১৭ সালে এর প্রথম সংস্করণ মুদ্রিত হওয়া থেকে শুরু করে চার বছর ধরে নানা সময়ে বইটি রকমারি ডট কমের বহুল বিক্রীত বইয়ের তালিকায় শীর্ষস্থানে ছিল। বাংলাভাষী পাঠকের কাছে প্রোগ্রামিং ও প্রযুক্তিকে নিয়ে আসতে এর আগে নানা প্রকাশনাসংস্থা থেকে বিভিন্ন বইপত্র প্রকাশিত হয়েছে বটে, কিন্তু জাভা প্রোগ্রামিং বিষয়টিকে বাংলাভাষী পাঠকের কাছে তুলে ধরতে এই বই যে একটি নতুন মাইলফলক স্থাপন করেছে, সে কথা বলা বাহুল্য।
বইটি মূলত কলেজ-বিশ্ববিদ্যালয়ের ছাত্রছাত্রীদের প্রথম প্রোগ্রামিং ভাষা শেখার কথা মাথায় রেখে লেখা। ইতিমধ্যে জাভা প্রোগ্রামিংয়ের উচ্চতর বিষয়াদি নিয়ে রোকনের জাভা থ্রেড প্রোগ্রামিং, অ্যাডভান্সড জাভা প্রোগ্রামিং ও জাভা ওয়েব প্রোগ্রামিং শীর্ষক বই প্রকাশিত হয়েছে। যেসব পাঠক জাভা প্রোগ্রামিংয়ের প্রথম প্রকাশ পড়ে উপকৃত হয়েছেন, তাঁদের অনেকেই সেসব বইতে আগ্রহী হয়েছেন বলে আমাকে জানিয়েছেন।
গত চার বছরে জাভা আরো বেশ খানিকটা পথ এগিয়েছে, ভাষায় বেশ কিছু পরিবর্তন এসেছে। সেই নিরিখে জাভা প্রোগ্রামিং-এর দ্বিতীয় সংস্করণ প্রকাশকে বেশ সময়োপযোগী উদ্যোগ বলে মনে করি। নতুন সংস্করণে প্রোগ্রামিংয়ের ব্যবহারের পরিপ্রেক্ষিত নিয়ে একটি অধ্যায় সংযোজিত হয়েছে। বইটির বেশ কিছু অংশ নতুন করে লেখা হয়েছে। এর বাইরে বিভিন্ন অধ্যায়ের আলোচনার সঙ্গে নতুন উদাহরণ যুক্ত করা হয়েছে। আমি নিশ্চিত, পাঠকের জন্য প্রোগ্রামিং বুঝতে সেগুলো সহায়ক হবে। বিভিন্ন অধ্যায়ের অনুশীলনীর কলেবর বৃদ্ধি করা হয়েছে, চর্চা করার জন্য কিছু প্রোগ্রামিং সমস্যা দেওয়া হয়েছে। প্রথম সংস্করণের ভূমিকা লেখার সময়ে অনুশীলনীর সীমাবদ্ধতাকে এই বইয়ের মৌলিক সীমাবদ্ধতা হিসেবে তুলে ধরেছিলাম। প্রকাশক ও লেখক বিষয়টি আমলে নিয়ে অনুশীলনী যুক্ত করায় তাঁদের অভিনন্দন।
শিক্ষা ও শিক্ষা বিতরণ একটি ক্রমাগত উন্নয়ন প্রক্রিয়া। আমি নিশ্চিত, রোকন ও দ্বিমিক তাঁদের জাভা প্রোগ্রামিং-এর দ্বিতীয় সংস্করণ প্রকাশ করেই থেমে যাবেন না। বইতে দেওয়া উদাহরণ ও অনুশীলনীর সমস্যাগুলোর আরো গুণগত উন্নতিসাধন সম্ভব, তৃতীয় সংস্করণের দিকে তাকিয়ে থাকব সে উন্নতির জন্য। তবে আমি আশা করব এই বইয়ের অনুশীলনীর সমস্যাগুলোর সমাধান কোনো ওয়েবসাইটের মাধ্যমে অনতিবিলম্বে পাঠকের কাছে পৌঁছানোর ব্যবস্থা করবেন তাঁরা। ভালো কোড কীভাবে লিখতে হয়, তা শেখার জন্য ভালো প্রোগ্রামারের হাতে করা কোড দেখা খুবই সহায়ক। অনুশীলনীর সমস্যার সমাধান ওয়েবসাইটের মাধ্যমে পাঠকের কাছে পৌঁছানোর বেলায় রোকন কোডিং কনভেনশন ও স্ট্যান্ডার্ডের প্রতি যে বিশেষ যত্নবান হবেন, সে আস্থা আমার আছে। কোডিং কনভেনশন ও স্ট্যান্ডার্ডের বিষয়গুলো কেবল জাভার জন্যই যে প্রযোজ্য, তা নয়। অন্য ভাষায় প্রোগ্রামিং করার ক্ষেত্রেও এই বিষয়গুলোর প্রতি সচেতনতা একজন শিক্ষার্থীকে ভালো প্রোগ্রামার হওয়ার পথে বেশ এগিয়ে দেয়।
বাংলা ভাষার গুণগত দিক থেকেও নতুন সংস্করণটিতে কিছুটা পরিমার্জনার সুযোগ আছে। আশা করব, এর পরের সংস্করণে সে বিষয়টিও লেখক ও প্রকাশক বিবেচনায় নেবেন। এর বাইরে সময়ের সঙ্গে গণমাধ্যমের রূপান্তরের নিরিখে বইটির পাঠ-সহযোগী হিসেবে একটি ইউটিউব চ্যানেল তৈরি করে তাতে বিভিন্ন বিষয়ে টিউটোরিয়াল প্রকাশ করাকে সময়ের দাবি বলেই মনে করি। আমি আশা করব, রোকন ও দ্বিমিক এই বিষয়ে উদ্যোগী হবে।
জাভা প্রোগ্রামিং, আ ন ম বজলুর রহমান ও প্রকাশক দ্বিমিকের সামগ্রিক সাফল্য কামনা করছি।
শাহ্ মোস্তফা খালেদ
সহযোগী অধ্যাপক
তথ্যপ্রযুক্তি ইনস্টিটিউট
ঢাকা বিশ্ববিদ্যালয়
প্রথম সংস্করণের ভূমিকা
তৃতীয় দশকে পদার্পণ করেছে জাভা। ১৯৯৫ সালে যাত্রা শুরু করে গত ২২ বছরে ক্রমাগত উন্নতি, প্রসার ও জনপ্রিয়তা অর্জন করেছে অত্যন্ত জনপ্রিয় এই প্রোগ্রামিং ভাষা। মিথষ্ক্রিয় ইন্টারনেট তৈরিতে নেতৃত্বদান ছাড়াও অন্য ইন্টারনেট প্রোগ্রামিংয়ের ভাষাগুলোকেও ক্রমাগত চ্যালেঞ্জের মুখে ফেলেছে জাভা। এতে ইন্টারনেট প্রোগ্রামিং ভাষাগুলোর মধ্যে প্রতিযোগিতার সৃষ্টি হয়েছে; ফলে জাভাসহ প্রতিটি ভাষার কম্পাইলারেই সন্নিবেশিত হয়েছে বিভিন্ন প্রযুক্তি, লাইব্রেরি, ফ্রেমওয়ার্ক ইত্যাদি। গত দু’দশক ধরে প্রকৌশল-বান্ধব প্রযুক্তি উন্নয়নেও নেতৃত্ব দিয়েছে জাভা, তাই আজও ওয়েব প্রোগ্রামিং বা ওয়েব অ্যাপ্লিকেশন তৈরিতে ডেভেলপারের প্রথম পছন্দের ভাষা জাভা।
বাংলাদেশের বিশ্ববিদ্যালয়গুলোতে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের ভাষা হিসেবে সি++ এর পাশাপাশি জাভা শিক্ষণের শুরু অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং শিক্ষার সাথে সাথেই। সে হিসেবে জাভা-শিক্ষণেও প্রায় দু’দশকের অভিজ্ঞতা অতিক্রম করেছে এই বিশ্ববিদ্যালয়গুলো। বাংলাদেশের বেশিরভাগ বিশ্ববিদ্যালয়ে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং শিক্ষার প্রধান ভাষা হিসেবে জাভা গৃহীত হয়েছে এমনটা বললেও অত্যুক্তি হবে না। এমনকি দুয়েকটি বিশ্ববিদ্যালয় প্রথম প্রোগ্রামিং ভাষা হিসেবেও জাভা শিক্ষাদান করে। শিক্ষাদানের এই অভিজ্ঞতা অনেক ক্ষেত্রেই ফলপ্রসু প্রমাণিত হলেও সব ক্ষেত্রেই সফল হয়েছে, এমনটি ভাবার অবকাশ নেই। অনেক ক্ষেত্রেই কম্পিউটার বিদ্যার ছাত্র বা তথ্য প্রযুক্তি খাতে কর্মসংস্থান প্রত্যাশী স্নাতকদের মধ্যেও অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ও জাভা বিষয়ে কর্মোপযোগী জ্ঞানের অভাব দেখা যায়। বৃহৎ পরিসরে এই বিষয় দুটোর শিক্ষাদান ও শিখণে উৎকর্ষ অর্জনের পথে বাংলা ভাষায় উৎকৃষ্ট মানের গ্রন্থ সহ অন্যান্য শিক্ষা-উপকরণের অভাব একটি উল্লেখযোগ্য বাঁধা বলা যেতে পারে।
সে নিরিখে আ ন ম বজলুর রহমান রোকন “জাভা প্রোগ্রামিং” পুস্তক রচনার যে উদ্যোগ গ্রহণ করেছেন, তা মহতী নিঃসন্দেহে। গ্রন্থটিতে মোট ১৫টি অধ্যায়ে বিভাজন করে জাভার প্রাথমিক বিষয়বস্তু সম্পর্কে যে আলোচনা করা হয়েছে, তা প্রারম্ভিক পর্যায়ের জাভা শিক্ষার্থীর জন্যে অত্যন্ত উপযোগী। দেশে বিশ্ববিদ্যালয় পর্যায়ে চার বা ছয় মাসের সেমিস্টার পদ্ধতি বিদ্যমান। এই সময়ের মধ্যে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ও প্রোগ্রামিংয়ের ভাষা হিসেবে জাভা শিক্ষায় অগ্রাধিকারের ভিত্তিতে বিষয়বস্তু নির্বাচন ও শ্রেণিবিন্যাস করা হয়েছে, বিষয়বস্তুর বিন্যাসক্রম সাজানো হয়েছে সে নিরিখেই। ফলে গ্রন্থটিতে বিভিন্ন বিষয়াদি যেমন যুক্ত করা হয়েছে, তেমনি জনপ্রিয় ধারার পুস্তকে থাকে এমন কিছু বিষয়াদি বাদও দেয়া হয়েছে। যেমন ডেটা ব্যবস্থাপনা শেখা একজন প্রোগ্রামারের জন্য বেশি জরুরি বিবেচনায় জাভা কালেকশন ফ্রেমওয়ার্ক এবং প্রোগ্রামের মধ্যে কীভাবে খুব সহজেই সফলভাবে ভুল-ভ্রান্তি খুঁজে বের করা যায় তার জন্য ইউনিট টেস্টিংয়ের ওপর দুটো অধ্যায় সংযোজিত হয়েছে, ডিবাগিং বিষয়ে আলোচনা করা হয়েছে। অন্য দিকে অপারেটিং সিস্টেমের ধারণা শেখার আগে মাল্টিথ্রেডিং শেখা অনাবশ্যক মনে করে মাল্টিথ্রেডিং বাদ দেয়া হয়েছে; চার থেকে ছয় মাসে জাভা শেখার ক্ষেত্রে জাভার গ্রাফিক্যাল ইউজার ইন্টারফেস সংক্রান্ত বিষয়াদিকে বাদ দেয়া হয়েছে। গত দশ বছরের শিক্ষকতার অভিজ্ঞতা, বিশেষত গত চার বছর ধরে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ও জাভা শিক্ষাদানের অভিজ্ঞতার আলোকে বজলুর রহমান রোকনকে এই পরামর্শ দিয়েছিলাম, তিনি একমত হয়ে গ্রন্থটির বিষয়বস্তু পুনর্বিন্যাস করেছেন। অদূর ভবিষ্যতে এই গ্রন্থের অগ্রসর সংস্করণ লেখার পরিকল্পনা গ্রহণ করেছেন লেখক, তাতে বাদ পড়া বিষয়াদিসহ জাভার অন্যান্য অগ্রসর বিষয়বস্তু সম্পর্কে আলোচনা করা হবে। গ্রন্থটিকে নতুন শিক্ষার্থীদের জাভা ও অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং শেখার ক্ষেত্রে একটি পূর্ণাঙ্গ সংস্থান হিসেবে পরিকল্পনা করতে পরামর্শ দিয়েছিলাম বজলুর রহমানকে, তিনি করেছেনও তাই। প্রথম প্রোগ্রামিং ভাষা হিসেবে পাঠক জাভা ও অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং শিখতে চাইলে অথবা কোনো শিক্ষক বা পথনির্দেশকের সহায়তা ছাড়া জাভা শিখতে চাইলেও এই গ্রন্থ উপযোগী হবে বলেই ধারণা করি।
বজলুর রহমান রোকনকে দেখেছি ২০০৯ সালের শুরু থেকেই, ঢাকা বিশ্ববিদ্যালয়ের তথ্য প্রযুক্তি ইনস্টিটিউটে, আমি সেখানে প্রভাষক তখন, রোকন ছাত্র সফটওয়্যার ইঞ্জিনিয়ারিং বিষয়ে স্নাতক প্রথম বর্ষে। একটু খেয়ালী, একটু উদাস, একটু অলস, তথাকথিত ভালছাত্রের গুণগুলোর অনেকগুলোই ছিল অনুপস্থিত। ছিল শেখার আগ্রহ, ছিল উজ্জ্বল চোখদুটো – অমিত আগ্রহের, উজ্জ্বল সম্ভাবনার প্রতীক হয়ে। প্রথম প্রোগ্রামিং ক্লাসে আমি ছিলাম ওদের শিক্ষক, বেছে আনা ৩০টি তারকার মধ্যে কোন বিশেষ দীপ্তি ছিল না রোকনের। খুব ভাল বললেও, রোকন সেরাদের কাতারে ছিল, তা বলা সত্যের অপলাপ হবে। সেখানেই তার বিশেষত্ব, বিশ্ববিদ্যালয়ের প্রথম বর্ষ থেকে পরের বছরগুলোতে প্রবল আগ্রহের শক্তিতে কী হতে পারে তার প্রমাণ রেখেছেন রোকন জাভা-আসক্তি দিয়ে, প্রযুক্তির প্রতি গভীর ভালবাসা দিয়ে। বিশ্ববিদ্যালয়ের প্রথাগত পদ্ধতির পড়ালেখা বা অর্জনগুলোর তুলনায় জাভা ও প্রোগ্রামিং প্রযুক্তি নিয়েই ছিল তার মাতামাতি। সময়ের সাথে সাথে জাভা ও প্রোগ্রামিং নিয়ে রোকনের আগ্রহ এবং উদ্যোগ আরো শাণিত হয়েছে। সময় এগিয়েছে, ব্যস্ততা বেড়েছে, প্রযুক্তির প্রতি রোকনের আগ্রহের ঘাটতি তৈরি হয় নি। উৎসাহের কমতি দেখি নি এতটুকুও, বরং তা বেড়েই চলেছে উত্তরোত্তর। সে আগ্রহের ঐকান্তিকতারই প্রকাশ ঘটেছে জাভা বিষয়ে ব্লগ লেখায়, ছাত্রকাল থেকেই সফটওয়্যার তৈরির সৌখিনতায়, গত চার বছর ধরে জাভা-ভিত্তিক ডেভেলপমেন্ট প্রতিষ্ঠানে একাগ্র কর্মনিষ্ঠায় ও জাভা ইউজার গ্রুপ বাংলাদেশের প্রতিষ্ঠায় তার ক্লান্তিহীন পরিশ্রমে, সবশেষে জাভা বিষয়ে বাংলা ভাষায় গ্রন্থ রচনার উদ্যোগের মধ্য দিয়ে।
“জাভা প্রোগ্রামিং” লেখার গোড়া থেকেই বিভিন্ন বিষয়ে আমার সাথে পরামর্শ করেছেন রোকন, সব ক্ষেত্রে দুজনে একমত না হতে পারলেও, বেশিরভাগ পরামর্শই গ্রহণ করেছেন তিনি। বিশেষত অধ্যায়ান্তে অনুশীলনী সংযোজনের ফলে পড়া শেষে পাঠকের জন্য চিন্তা ও চর্চার খোরাক জুটেছে এই গ্রন্থটিতে, সেটি শিক্ষার্থীদের জন্য সহায়ক হবে নিঃসন্দেহে। গ্রন্থটির ভবিষ্যতের সংস্করণে অনুশীলনীগুলোকে আরো সমৃদ্ধ করা হবে বলে আশা রাখি। ঢাকার নাগরিক জীবন, সময় ও দৈনন্দিন জীবনের কাজের চাপ গ্রন্থ রচনার ক্ষেত্রে অনুপযোগী হলেও নিজের সেরাটা দেয়ার চেষ্টা করেছেন রোকন। বাংলা ভাষায় জাভা, প্রোগ্রামিং সহ কম্পিউটার বিজ্ঞানের বিষয়াদির ক্ষেত্রে সার্থক ও নির্ভুল গ্রন্থপ্রকাশ নানা কারনেই বেশ কঠিন। সঠিক পরিভাষা বিনির্মাণ ও তার প্রয়োগের যথার্থ প্রয়াস এখনো নেয়া হয় নি। বাংলাদেশ কম্পিউটার কাউন্সিল বা বাংলা একাডেমী এই বিষয়ে যথাযথ উদ্যোগ না নেওয়া পর্যন্ত এ অসুবিধা দূরীকরণ সম্ভব বলে মনে হয় না। প্রোগ্রামিংয়ের আলোচনায় কিছু ইংরেজি শব্দ চলে আসা স্বাভাবিক। বাংলা কথ্যরীতিতে প্রয়োজন-অপ্রয়োজনে ইংরেজি ও হিন্দি শব্দের অনুপ্রবেশ, সামাজিক যোগাযোগের মাধ্যমগুলোতে ওই রীতিতে বাংলা লেখার ফলে আজকাল লিখিত বাংলাতেও পরিহার্য বিদেশি শব্দের বহুল ব্যবহার দেখা যাচ্ছে, আলোচ্য গ্রন্থ এই দোষ থেকে পুরোপুরি মুক্ত সে দাবি করা সম্ভব নয়, ভবিষ্যতের সংস্করণে উপযুক্ত সম্পাদনার মাধ্যমে এই সমস্যা দূর করা সম্ভব বলে আমার বিশ্বাস। এই সব সমস্যার মধ্যেও “জাভা প্রোগ্রামিং” গ্রন্থটির প্রথম প্রকাশ সাফল্যমণ্ডিত হোক, শিক্ষার্থীদের জন্য সহজে মাতৃভাষায় শিখণের সুযোগ অবারিত করুক, বিদ্যার্থী সমাজে ভাবনার নতুন দ্বার উন্মুক্ত করুক, সৃষ্টিকর্তার কাছে এই প্রার্থনা করি।
শাহ্ মোস্তফা খালেদ
সহকারী অধ্যাপক
তথ্য প্রযুক্তি ইনস্টিটিউট
ঢাকা বিশ্ববিদ্যালয়
সূচিপত্র
- কৃতজ্ঞতা স্বীকার
- ভূমিকা
- প্রথম সংস্করণের ভূমিকা
- লেখক পরিচিতি
- লেখকের কথা
- উপক্রমণিকা
- অধ্যায় ১ – জাভা প্রোগ্রামিং ভাষা
- প্রোগ্রামিং ভাষা কী?
- কেন জাভা?
- জাভা কীভাবে কাজ করে?
- জাভা প্লাটফরমের সাবসেট
- জাভা ইনস্টল করা
- লিনাক্সে প্রথম জাভা প্রোগ্রাম
- JShell-এর ব্যবহার
- আইডিইর ব্যবহার
- অধ্যায় ২ – সাধারণ প্রোগ্রামিং সমস্যা
- কনসোলে প্রিন্ট করা
- ইউজারের কাছ থেকে ইনপুট নেওয়া
- আইডেন্টিফায়ার
- ভ্যারিয়েবল
- অ্যাসাইনমেন্ট
- কমেন্ট
- অনুশীলনী
- অধ্যায় ৩ – ডেটা টাইপ, অপারেটর ও এক্সপ্রেশন
- ডেটা টাইপ
- লিটারেল
- অপারেটর
- এক্সপ্রেশন, স্টেটমেন্ট ও ব্লক
- অপারেটর অগ্রাধিকার
- অনুশীলনী
- অধ্যায় ৪ – কনট্রোল ফ্লো
- ডিসিশন মেকিং স্টেটমেন্ট
- লুপ
- অনুশীলনী
- অধ্যায় ৫ – অ্যারে
- অ্যারে ডিক্লারেশন, ক্রিয়েশন ও অ্যাকসেস
- অ্যারে প্রসেসিং
- টু-ডিমেনশনাল অ্যারে
- মাল্টি-ডিমেনশানাল অ্যারে
- অনুশীলনী
- অধ্যায় ৬ – অবজেক্ট ও ক্লাস
- অবজেক্ট
- ক্লাস
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের উপাদানসমূহ
- জাভা মেথড
- অবজেক্ট ইনস্ট্যানশিয়েশন
- মেথড ওভারলোডিং
- কনস্ট্রাক্টর
- অবজেক্ট রেফারেন্স
- এনাম
- নাল
- স্ট্যাটিক ভ্যারিয়েবল, কনস্ট্যান্ট ও মেথড
- অনুশীলনী
- অধ্যায় ৭ – অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের প্রয়োজনীয়তা এবং উৎপত্তি
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের সুবিধা
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের প্রয়োগ
- এনক্যাপসুলেশন
- ইনহেরিটেন্স
- পলিমরফিজম
- অনুশীলনী
- অধ্যায় ৮ – এক্সেপশন হ্যান্ডেলিং
- Try ব্লক
- Catch ব্লক
- Finally ব্লক
- জাভা এক্সেপশন টাইপ
- এক্সেপশন ডিক্লারেশন ও থ্রোয়িং
- স্ট্যাক ট্রেস
- সাধারণ এক্সেপশন ক্লাস
- ইউজার ডিফাইন্ড এক্সেপশন
- অনুশীলনী
- অধ্যায় ৯ – জেনেরিকস
- জাভা জেনেরিকস
- জেনেরিকস এবং সাবটাইপিং
- বাউন্ডেড টাইপ
- ওয়াইল্ডকার্ড আরগুমেন্ট
- জেনেরিক মেথড
- টাইপ ইরেজার
- অনুশীলনী
- অধ্যায় ১০ – জাভা আই/ও
- ফাইল নিয়ে কাজ
- ইনপুট/আউটপুট স্ট্রিম
- অনুশীলনী
- অধ্যায় ১১ – জাভা এনআইও
- জাভা এনআইও কী?
- বাফার
- চ্যানেল
- ফাইল রিড করা
- ফাইল রাইট করা
- একত্রে রিড এবং রাইট করা
- ক্যারেক্টার সেট
- অনুশীলনী
- অধ্যায় ১২ – কালেকশন ফ্রেমওয়ার্ক
- কালেকশন
- লিস্ট
- স্ট্যাক
- সেট
- কিউ
- ডেক
- লিস্ট তৈরির সাধারণ কিছু উপায়
- লিস্ট থেকে অ্যারেতে রূপান্তর
- সেট তৈরির সাধারণ কিছু উপায়
- ম্যাপ
- কালেকশন অর্ডারিং/সর্টিং
- সার্চিং
- অনুশীলনী
- অধ্যায় ১৩ – জাভা ডেট ও টাইম
- java.time প্যাকেজ
- LocalDate
- LocalTime
- LocalDateTime
- টাইম জোনের হিসাব
- ফরম্যাটিং ও পার্সিং
- অধ্যায় ১৪ – স্ট্রিং, ম্যাথ এপিআই ও ইউটিলিটি ক্লাস
- স্ট্রিং কনক্যাটানেশন
- স্ট্রিংয়ের কিছু গুরুত্বপূর্ণ মেথড
- স্ট্রিং পুল
- স্ট্রিং বিল্ডার ও স্ট্রিং বাফার
- এপিআইয়ের ডকুমেন্টেশন পড়া
- জাভা ম্যাথ এপিআই
- র্যানডম নম্বর
- বিগ-ইন্টিজার ও বিগ-ডেসিমাল
- অনুশীলনী
- অধ্যায় ১৫ – ইউনিট টেস্ট
- JUnit5 অ্যানোটেশন
- অ্যাসার্ট স্টেটমেন্ট
- পরিশিষ্ট ১ – কমান্ড লাইন আরগুমেন্ট
- পরিশিষ্ট ২ – Object ক্লাস
- পরিশিষ্ট ৩ – জাভা কি পাস-বাই-ভ্যালু?
- পরিশিষ্ট ৪ – জাভা স্ট্রিং ফরমেটিং
- পরিশিষ্ট ৫ – সংরক্ষিত কিওয়ার্ড
- পরিশিষ্ট ৬ – ক্যারেক্টার এনকোডিং
- পরিশিষ্ট ৭ – ডিবাগিং
- পরিশিষ্ট ৮ – রিকার্শন
- পরিশিষ্ট ৯ – জাভা কীভাবে কাজ করে এবং কীভাবে ভালো পারফর্ম করে
- পরিশিষ্ট ১০ – বাংলায় জাভা প্রোগ্রামিং
- ইনডেক্স
Reviews
There are no reviews yet.