WELCOME TO
ICT CLASS
ICT for XI-XII
Monir Ahmed
Asst Prof, Dept of ICT
BAF Shaheen College Dhaka
Last Topic was:
Chapter 5: C Programming (Part# 7)
দুটি সংখ্যার গসাগু ও লসাগু নির্ ণয়ের অ্যালগনরদম ও ফ্লাচার্ ণ
Today’s Topic is:
Chapter 5: C Programming (Part# 8)
ফ্রাগ্রাম নিজাইি ময়িল
নস ফ্রাগ্রায়মর বৈনিষ্ট্য
নস ফ্রাগ্রায়মর স্ট্রাকচার
Program Design Model
ফ্রাগ্রায়মর সাংগঠনিক কাঠায়মা বৈনরর রীনৈিীনৈ ৈা নিেমকানুিয়ক ফ্রাগ্রাম নিজাইি ময়িল ৈয়ল।
• Structured Programming
• Visual Programming
• Object Oriented Programming
• Event Driven Programming
Structured Programming
• এয়ৈ ফ্রাগ্রায়ম ফ্ের্য়মির্গুয়লা নিন্ন নিন্ন মনিউল ৈা ফ্েনর্য়ৈ নৈিক্ত।
• একটি মূল মনিউল থায়ক এৈং নকছু সাৈ-ফ্রাগ্রাম ৈা ফাংিি থায়ক।
• রনৈটি ফ্েনর্ স্বৈন্ত্রিায়ৈ নিন্ন নিন্ন কাজ কয়র।
• রনৈটি ফ্েনর্য়ৈ ফ্েয়কায়িা সংখ্যক ফ্ের্য়মন্ট ব্যৈহার করা োে।
• ফ্রাগ্রানমং অ্যায়রাচ হয়ে র্প-টু-িাউি।
• উদাহরর্: C, Pascal, QBASIC, ALGOL, PL/I, Ada
Visual Programming
• ফ্মনু ৈা নচয়ের সাহায়ে কমান্ড ৈা নিয়দ ণি রদাি করা হে।
• Windows এর ময়ৈা GUI অ্পায়রটিং নসয়েম এ ময়িলটি সমথ ণি কয়র।
• DOS অ্পায়রটিং নসয়েয়ম এই ধরয়ির ময়িল ৈাস্তৈােি সম্ভৈ িে।
• ফ্রাগ্রায়মর ময়ে সংযুক্ত রয়োজিীে অ্ৈয়জক্ট সহয়জই নিৈ ণাচি করা োে।
• এয়ৈ অ্য়িক কম ফ্ের্য়মন্ট ৈা নিয়দ ণি ব্যৈহার কয়র ফ্রাগ্রাম রচিা করা োে।
ব্যৈহারকারীর নিকর্ খুৈই জিনরে।
• উদাহরর্ : Visual Basic, Visual C, C++, Visual Foxpro,
MS Access
Object Oriented Programming −OOP
• ফ্ির্া ও ইিস্ট্রাকিয়ির সমন্বয়ে চলক বৈনর করা হে োয়ক ৈলা হে অ্ৈয়জক্ট।
• ফ্ময়সজ আদাি-রদায়ির মােয়ম অ্ৈয়জক্টগুয়লা পরস্পয়রর সায়থ ফ্োগায়োগ রক্ষা
কয়র।
• অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমং হয়লা ফ্ির্া ফ্কনিক ফ্রাগ্রানমং (Data based programming)।
• এই পদ্ধনৈয়ৈ ফ্রাগ্রায়মর ইিস্ট্রাকিিগুয়লা ফ্ির্া দ্বারা নিেনন্ত্রৈ হে।
• উদাহরর্ : Ruby, C++, C#, Java, Smalltalk, VB.NET,
Python, Fortran, Perl, PHP, Lisp, Modula-2
Object Oriented Programming −OOP
মূলৈ ৬ টি রাথনমক ধারর্ার মােয়ম অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমংয়ক উপস্থাপি
করা হে। ফ্েমি -
১। অ্ৈয়জক্ট (Object) ২। ক্লাস (Class)
৩। ফ্ময়সজ (Message)
৪। পনলমারনফজম (Polymorphism) ৫। ইিয়হনরয়র্ন্স (Inheritance)
৬। এিকযাপসুয়লিি (Encapsulation)
Object Oriented Programming −OOP
১। অ্ৈয়জক্ট (Object):
অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমংয়ের িাষাে ফ্কায়িা ৈস্তু নকংৈা ঘর্িার ফ্রাগ্রানমং সংস্করর্ হয়লা
অ্ৈয়জক্ট। ফ্েমি- একটি ব্যাংক একাউন্টয়ক একাউন্ট িম্বর, একাউন্ট র্াইপ এৈং ব্যায়লন্স দ্বারা
নিনদ ণষ্ট্ করা ফ্েয়ৈ পায়র। এয়ক্ষয়ে ব্যাংক একাউন্ট হয়লা একর্া অ্ৈয়জক্ট। রনৈটি অ্ৈয়জয়ক্টর ফ্েমি- attributes (একাউন্ট িম্বর, একাউন্ট র্াইপ এৈং ব্যায়লন্স) থাকয়ৈ পায়র ফ্ৈমনি
behaviors (োর মােয়ম সংনিষ্ট্ Object এর কাজ উপস্থাপি করা হে) থাকয়ৈ পায়র।
ফ্রাগ্রায়ম attributes -ফ্ক চলয়কর মােয়ম এৈং behaviors -ফ্ক ফাংিয়ির মােয়ম উপস্থাপি
করা হে।
২। ক্লাস (Class):
Class হয়লা একই ধরয়ির অ্য়িকগুয়লা ৈস্তু নকংৈা ঘর্িার logical representation এৈং
Object হয়লা ফ্রাগ্রায়ম ৈার physical representation। অ্ৈয়জক্ট ওনরয়েয়ন্টি
ফ্রাগ্রানমংয়ে ফ্কায়িা Object-ফ্ক ফ্রাগ্রায়ম উপস্থাপয়ির পূয়ৈ ণ Class বৈনর করয়ৈ হে।
Object Oriented Programming −OOP
৩। ফ্ময়সজ (Message):
অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমংয়ে এক Object-এর ৈথ্য ৈা Message আয়রক Object-এ পাঠায়িা োে। এয়ক্ষয়ে সংনিষ্ট্ Objectগুয়লার Class-ফ্ক এমিিায়ৈ বৈনর করা হে োয়ৈ
Message নিয়ে উিে Object-ই ঠিকমৈ কাজ করয়ৈ পায়র।
৪। পনলমারনফজম (Polymorphism):
পনলমারনফজম (Polymorphism) মায়ি হয়লা many forms. অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমং
এই নফচায়রর মােয়ম ফ্রাগ্রায়ম Polymorphic object বৈনর করা োে। Polymorphic
object হয়লা এমি ধরয়ির object োর মােয়ম নিন্ন নিন্ন গঠি পাওো সম্ভৈ।
Object Oriented Programming −OOP
৫। ইিয়হনরয়র্ন্স (Inheritance):
অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমং পদ্ধনৈয়ৈ একর্া class-ফ্ক extend কয়র িতুি আয়রকটি
class সৃনষ্ট্ করায়ক ইিয়হনরয়র্ন্স ৈয়ল। এর ফয়ল িতুি class-এ পূয়ৈ ণর class-এর গুর্াৈনল ৈজাে
ফ্রয়ে িতুি িতুি গুর্াৈনলর সমন্বে ঘর্য়ৈ পায়র। এোয়ি ফ্ে class-ফ্ক inherit করা হে ৈায়ক
ৈয়ল base class এৈং ফ্ে class অ্ন্য class -ফ্ক inherit কয়র ৈায়ক ৈয়ল derived
class। এয়ক্ষয়ে base class--এর সৈ attributes এৈং behaviors-ফ্ক derived class- এ রয়োজি অ্নুসায়র ব্যৈহার করা োে এৈংderived class-এ ৈাড়নৈ নকছু attributes এৈং
behaviors থাকয়ৈ পায়র।
৬। এিকযাপসুয়লিি (Encapsulation):
Object-এর attributes এৈং behaviors-ফ্ক একনেৈ কয়র class বৈনর করায়ক
Encapsulation ৈয়ল। উদাহরর্ : C++, Java, Simula
C িাষার বৈনিষ্ট্য
১। রনৈটি C ফ্রাগ্রায়ম একটিমাে main() Function থাকয়ৈ। main() Function ফ্থয়ক ফ্রাগাম নিৈ ণাহ করা
শুরু হয়ৈ।
২। রনৈটি ফাংিয়ির নিৈ ণাহ শুরু হয়ৈ নদ্বৈীে ৈন্ধিী ’{’ দ্বারা এৈং নিৈ ণাহ ফ্িষও হয়ৈ নদ্বৈীে ৈন্ধিী ’}’ দ্বারা।
৩। C িাষাে ফ্রাগ্রাম নলো হে ফ্ ার্ হায়ৈর অ্ক্ষর দ্বারা ৈয়ৈ Symbolic name এৈং output string সাধারর্ৈ ৈড় হায়ৈর অ্ক্ষয়র নলো হে।
৪। রনৈটি লাইয়ির রনৈটি িব্দ অ্ৈশ্যই কমপয়ক্ষ একটি ফ্স্পস ৈা ট্যাৈ ৈা ফ্কায়র্িি নচহ্ন দ্বারা আলাদা কয়র নলেয়ৈ হয়ৈ।
৫। রনৈটি ফ্রাগ্রানমং ফ্ের্য়মন্ট ফ্িষ করয়ৈ হয়ৈ ফ্সনময়কালি দ্বারা।
৬। রনৈটি চলক ব্যৈহায়রর পূয়ৈ ণই ৈায়দর ফ্ির্া র্াইপ উয়েে করয়ৈ হয়ৈ।
৭। ফ্হিার ফাইলগুয়লা #include দ্বারা যুক্ত করয়ৈ হয়ৈ।
৮। ফ্কায়িা লাইয়রেরনর ফাংিি ব্যৈহার করয়ল অ্ৈশ্যই ৈার ফ্হিার ফাইল যুক্ত করয়ৈ হয়ৈ।
৯। define এৈং include এর ফ্িয়ষ ফ্সনময়কালি ব্যৈহার করয়ৈ হয়ৈ িা।
১০। # নচহ্নটি Compiler derivative এৈং এটি অ্ৈশ্যই রথম কলায়ম নলেয়ৈ হয়ৈ।
১১। ৈন্ধিী শুরু করয়ল অ্ৈশ্যই ৈা ফ্িষ করয়ৈ হয়ৈ।
১২। ফ্রাগ্রায়মর ময়ে ফ্ে ফ্কায়িা জােগাে মন্তব্য যুক্ত করা োয়ৈ এৈং ৈা /* এৈং */ এর ময়ে যুক্ত করয়ৈ হয়ৈ।
Compiling of C Program
C ফ্রাগ্রাময়ক কম্পাইল করার জন্য চার ধরয়ির ফাইয়লর দরকার হে- ১। Source code ফাইল:
এই ফাইয়ল নৈনিন্ন রকম ফাংিি ব্যৈহার কয়র ফ্রাগ্রাম নলো হে। এই ফাইয়লর এক্সয়র্িিি হয়লা ".c" । ৈৈণমায়ি
অ্নধকাংি ফ্ক্ষয়েই C++ এর এনির্র ব্যৈহার করা হে। ফ্স ফ্ক্ষয়ে ফাইয়লর এক্সয়র্িিি হয়ৈ ".cpp" । ফ্েমি- lab1.cpp।
২। Header ফাইল:
Source code ফাইয়ল ফ্ে সকল ফাংিি ব্যৈহার করা হে ৈা ফ্ে ফাইয়ল থায়ক ৈায়ক Header ফাইল ৈলা হে।
এই ফাইয়লর এক্সয়র্িিি হয়লা ".h"। ফ্েমি- math.h।
৩। Object ফাইল:
এই ফাইল কম্পাইলায়রর আউর্পুর্। এর্া ৈাইিানর ফয়মণ থায়ক। এই ফাইল নিয়জ নিয়জ নিৈ ণাহ হয়ৈ পায়র িা।
অ্পায়রটিং নসয়েয়মর সাহায়ে নিৈ ণাহ হে। এই ফাইয়লর এক্সয়র্িিি হয়লা ". obj"। ফ্েমি- lab1.obj । ৪। Binary executables ফাইল:
এই ফাইলয়ক ৈলা হে " linker “। এই linker একানধক object file-এর ময়ে সংয়োগ কয়র ৈাইিানর ফাইল বৈনর কয়র ো সরাসনর নিৈ ণাহ হয়ৈ পায়র। Unix অ্পায়রটিং নসয়েয়ম এই ফাইয়লর ফ্কায়িা এক্সয়র্িিি থায়ক িা, Windows অ্পায়রটিং নসয়েয়ম এর এক্সয়র্িিি হয়লা ".exe"। lab1.exe ।
Structure of C Program
)Program Title, Author Name etc List of Header File
List of Symbolic constant List of Global Variable
Main Function
Sub-Program Function
G‡mv wb‡R‡K hvPvB Kwi: ˆbe©¨w³K cÖkœ
১। ফ্কািটি স্ট্রাকচার ফ্রাগ্রানমংয়ের বৈনিষ্ট্য?
ক. ফ্রাগ্রায়মর ফ্ের্য়মন্টগুয়লা নিন্ন নিন্ন ফ্েনর্য়ৈ নৈিক্ত। ে. একানধক রধাি ৈা মূল মনিউল থায়ক।
গ. রনৈটি ফ্েনর্ একসায়থ একই ধরয়ির কাজ কয়র। ঘ. রনৈটি ফ্েনর্র ফ্ের্য়ময়ন্টর সংখ্যা নিনদ ণষ্ট্।
২। ফ্কািটি অ্ৈয়জক্ট ওনরয়েয়ন্টি ফ্রাগ্রানমং িে?
ক. Ruby ে. C গ. Java ঘ. Python
৩। C++ ফ্রাগ্রানমং িাষা-
i. Structured Programming ii. Visual Programming
iii. Object Oriented Programming
ফ্কািটি সঠিক?
ক. i, ii ে. i, iii গ. ii, iii ঘ. i, ii, iii
৪। ফ্রাগ্রাম কম্পাইয়লিয়ি ফ্কাি ফাইল ব্যৈহার হে িা?
ক. ফ্সাস ণ ফ্কাি ফাইল ে. অ্ৈয়জক্ট ফাইল গ. সাৈয়জক্ট ফাইল ঘ. ৈাইিানর ফাইল ৫। নস ফ্রাগ্রায়মর নলংক ফ্সকিয়ির কী থায়ক?
ক. ফ্রাগ্রাম নিয়রািাম ে. ফ্লাৈাল চলক গ. ফ্হিার ফাইল ঘ. নসম্বনলক কিসট্যান্ট