জাভা প্রোগ্রামিং (ANM Bazlur Rahman) Book's Code Collection
- অধ্যায় ০০ - উপক্রমণিকা (Introduction)
- অধ্যায় ০১ - জাভা প্রোগ্রামিং ভাষা (Java programming language)
- জাভা প্রোগ্রামিং ভাষা কি?
- কেন জাভা?
- জাভা কিভাবে কাজ করে?
- জাভা ইনস্টল করা
- JShell-এর ব্যবহার
- আইডিইর ব্যবহার
- অধ্যায় ০২ - সাধারণ প্রোগ্রামিং সমস্যা (General programming problems)
- কনসোলে প্রিন্ট করা (Print to console)
- ইউজারের কাছ থেকে ইনপুট নেওয়া (Taking input from the user)
- আইডেন্টিফায়ার (Identifier)
- ভেরিয়েবল (Variable)
- অ্যাসাইনমেন্ট (Assignment)
- কমেন্ট (Comments)
- অনুশীলনী (Exercises)
- অধ্যায় ০৩ - ডেটা টাইপ, অপারেটর ও এক্সপ্রেশন (Data type, operator and expression)
- ডেটা টাইপ (Data Types)
- লিটারেল (Literal)
- অপারেটর (Operator)
- এক্সপ্রেশন (Expression)
- অপারেটর অগ্রাধিকার (Operator Precedence)
- স্টেটমেন্ট, ব্লক ও ভ্যারিয়েবল স্কোপ (Statement, Block and Scope of Variable)
- অনুশীলনী (Exercises)
- অধ্যায় ০৪ – কনট্রোল ফ্লো (Control flow)
- ডিসিশন মেকিং স্টেটমেন্ট (Decision Making Statement)
- লুপ (Loops)
- অনুশীলনী (Exercises)
- অধ্যায় ৫ – অ্যারে (Array)
- অ্যারে ডিক্লারেশন, ক্রিয়েশন ও অ্যাকসেস (Array Declaration, Creation and Access)
- অ্যারে প্রসেসিং (Array processing)
- টু-ডাইমেনশনাল অ্যারে (Two-dimensional array)
- মাল্টি-ডাইমেনশনাল অ্যারে (Multi-dimensional array)
- অনুশীলনী (Exercises)
- অধ্যায় ৬ – অবজেক্ট ও ক্লাস (Object & Class)
- অবজেক্ট (Object)
- ক্লাস (Class)
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের উপাদানসমূহ (Elements of Object Oriented Programming)
- জাভা মেথড (Java Methods)
- অবজেক্ট ইনস্ট্যানশিয়েশন (Object instances)
- মেথড ওভারলোডিং (Method overloading)
- কনস্ট্রাক্টর (Constructor)
- অবজেক্ট রেফারেন্স (Object Reference)
- এনাম (enum)
- নাল (null)
- স্ট্যাটিক ভেরিয়েবল, কনস্ট্যান্ট ও মেথড (Static Variables, Constants and Methods)
- অনুশীলনী (Exercise)
- অধ্যায় ৭ – অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (Object Oriented Programming)
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের প্রয়োজনীয়তা এবং উৎপত্তি (The Requirements and Origins of Object Oriented Programming)
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের সুবিধা (Advantages of Object Oriented Programming)
- অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিংয়ের প্রয়োগ (Application of Object Oriented Programming)
- এনক্যাপসুলেশন (Encapsulation)
- ইনহেরিটেন্স (Inheritance)
- পলিমরফিজম (Polymorphism)
- অনুশীলনী (Exercises)
- অধ্যায় ৮ – এক্সেপশন হ্যান্ডেলিং (Exception Handling)
- Try ব্লক (Try Block)
- Catch ব্লক (Catch Block)
- Finally, ব্লক (Finally Block)
- জাভা এক্সেপশন টাইপ (Java Exception Type)
- এক্সেপশন ডিক্লারেশন ও থ্রোয়িং (Exception declaration and throwing)
- স্ট্যাক ট্রেস (Stack trace)
- সাধারণ এক্সেপশন ক্লাস (General Exception Class)
- ইউজার ডিফাইন্ড এক্সেপশন (User defined exceptions)
- অনুশীলনী (Exercises)
- অধ্যায় ৯ – জেনেরিকস (Generics)
- জাভা জেনেরিকস (Java Generics)
- জেনেরিকস এবং সাবটাইপিং (Generics and Subtyping)
- বাউন্ডেড টাইপ (Bounded Type)
- ওয়াইল্ডকার্ড আরগুমেন্ট (Wildcard argument)
- জেনেরিক মেথড (Generic Method)
- টাইপ ইরেজার (Type Eraser)
- অনুশীলনী (Exercises)
- অধ্যায় ১০ – জাভা আই/ও (Java I/O)
- ফাইল নিয়ে কাজ (Work with File)
- ইনপুট/আউটপুট স্ট্রিম (Input / output stream)
- অনুশীলনী (Exercises)
- অধ্যায় ১১ – জাভা এনআইও (Java New I/O)
- জাভা এনআইও কী? (What is Java NIO?)
- বাফার (Buffer)
- চ্যানেল (Channel)
- ফাইল রিড করা (File Read)
- ফাইল রাইট করা (File Write)
- একত্রে রিড এবং রাইট করা (Read and write together)
- ক্যারেক্টার সেট (Character set)
- অনুশীলনী (Exercises)
- অধ্যায় ১২ – কালেকশন ফ্রেমওয়ার্ক (Collection Framework)
- কালেকশন (Collection)
- লিস্ট (List)
- স্ট্যাক (Stack)
- সেট (Set)
- কিউ (Queue)
- ডেক (Deque)
- লিস্ট তৈরির সাধারণ কিছু উপায় (Here are some common ways to create a list)
- লিস্ট থেকে অ্যারেতে রূপান্তর (Convert from list to array)
- সেট তৈরির সাধারণ কিছু উপায় (Here are some common ways to create a set)
- ম্যাপ (Map)
- কালেকশন অর্ডারিং/সর্টিং (Collection ordering/sorting)
- সার্চিং (Searching)
- অনুশীলনী (Exercise)
- অধ্যায় ১৩ – জাভা ডেট ও টাইম (Java Date and Time)
- java.time প্যাকেজ
- LocalDate
- LocalTime
- LocalDateTime
- টাইম জোনের হিসাব (Time zone calculation)
- ফরম্যাটিং ও পার্সিং (Formatting and parsing)
- অধ্যায় ১৪ – স্ট্রিং, ম্যাথ এপিআই ও ইউটিলিটি ক্লাস (String, Math API and Utility Class)
- স্ট্রিং কনক্যাটানেশন (String concatenation)
- স্ট্রিংয়ের কিছু গুরুত্বপূর্ণ মেথড (Some important methods of string)
- স্ট্রিং পুল (String pool)
- স্ট্রিং বিল্ডার ও স্ট্রিং বাফার (String Builder and String Buffer)
- এপিআইয়ের ডকুমেন্টেশন পড়া (Read the API documentation)
- জাভা ম্যাথ এপিআই (Java Math API)
- র্যানডম নম্বর (Random number)
- বিগ-ইন্টিজার ও বিগ-ডেসিমাল (Big-integer and big-decimal)
- অনুশীলনী (Exercise)
- অধ্যায় ১৫ – ইউনিট টেস্ট (Unit Test)
- JUnit5 অ্যানোটেশন (JUnit5 annotations)
- অ্যাসার্ট স্টেটমেন্ট (Assert statement)
- OOP
- SOLID
- Design Patterns
- PIE
- P -> Polymorphism
- I -> Inheritance
- E -> Encapsulation
- Composition
- Abstraction
- Object -> Attributes, Behavior
- Thump Rule
- rule#1: Attributes should always private
- rule#2:
- High level, low level details
- Encapsulation
- Data hiding
- An object should reveal only minimalistic behavior