পাইথন প্রোগ্রামিং জিরো টু হিরো: ওয়েব ডেভেলপমেন্ট, এআই এবং অটোমেশন (পার্ট ৩)

লিখেছেন: টিম Daily Tech News

ওয়েবসাইট: Dailynewsepaper26.site

ওয়েবসাইট (ব্যাকআপ): Dailynewsepaper26.blogspot.com

​বিগত দুটি পর্বে আমরা পাইথনের বেসিক থেকে শুরু করে অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং (OOP), অ্যাডভান্সড ফিচার এবং ডাটাবেজ কানেক্টিভিটি সম্পর্কে বিস্তারিত জেনেছি। এই পর্বে আমরা জানবো কীভাবে পাইথনকে বাস্তব দুনিয়ায় বড় বড় প্রজেক্টে ব্যবহার করা হয় যেমন ওয়েব ডেভেলপমেন্ট, ডেটা সায়েন্স, আর্টিফিশিয়াল ইন্টেলিজেন্স (AI) এবং অটোমেশন।

​১৫. ওয়েব ডেভেলপমেন্টের গভীরে (Deep Dive into Web Development with Django)

​পাইথনের অ্যাডভান্সড ফিচার এবং ডাটাবেজ জানার পর আপনার সামনে সবচেয়ে বড় যে ক্যারিয়ারের দরজাটি খোলে, তা হলো ওয়েব ডেভেলপমেন্ট। বর্তমান বিশ্বে পাইথনের দুটি অত্যন্ত জনপ্রিয় ওয়েব ফ্রেমওয়ার্ক রয়েছে: Flask (যা ছোট ও কাস্টমাইজড অ্যাপের জন্য উপযোগী) এবং Django (যা বড় ও জটিল এন্টারপ্রাইজ লেভেলের ওয়েবসাইটের জন্য ব্যবহৃত হয়)।

​জ্যাঙ্গোর MVT আর্কিটেকচার (MVT Architecture)

​সাধারণত অন্যান্য ভাষার ফ্রেমওয়ার্কগুলো MVC (Model-View-Controller) প্যাটার্ন ব্যবহার করলেও, জ্যাঙ্গো চলে MVT (Model-View-Template) প্যাটার্নে।

  1. Model (মডেল): এটি আপনার ডাটাবেজের লেআউট বা টেবিল ডিজাইন করে। এখানে পাইথন কোড লিখলেই ব্যাকএন্ডে স্বয়ংক্রিয়ভাবে SQL টেবিল তৈরি হয়ে যায়।
  2. View (ভিউ): এটি হলো আপনার ওয়েবসাইটের মস্তিষ্ক। ইউজার যখন কোনো লিংকে ক্লিক করে, তখন ভিউ সেই রিকোয়েস্টটি প্রসেস করে এবং ডাটাবেজ থেকে তথ্য এনে আউটপুট তৈরি করে।
  3. Template (টেমপ্লেট): এটি হলো ফ্রন্টএন্ড অংশ (HTML, CSS, JavaScript), যা ইউজার তার ব্রাউজারে দেখতে পায়।
ইউজার রিকোয়েস্ট (URL) ──► View (লজিক) ◄──► Model (ডাটাবেজ)
                              │
                             ▼
Template (HTML পেজ) ──► ইউজারের স্ক্রিন

জ্যাঙ্গো দিয়ে আপনার প্রথম ওয়েব অ্যাপ

​টার্মিনাল বা কমান্ড প্রম্পটে গিয়ে মাত্র কয়েকটি কমান্ডের মাধ্যমে জ্যাঙ্গো প্রজেক্ট শুরু করা যায়:

# জ্যাঙ্গো ইনস্টল করা

pip install django

# একটি নতুন প্রজেক্ট তৈরি করা

django-admin startproject mywebsite

# প্রজেক্টটি সার্ভারে রান করা

python manage.py runserver

এই কমান্ডগুলো দেওয়ার পর আপনার কম্পিউটারে একটি লোকাল সার্ভার [http://127.0.0.1:8000/](http://127.0.0.1:8000/) চালু হয়ে যাবে, যেখানে আপনি আপনার তৈরি ওয়েবসাইটটি লাইভ দেখতে পাবেন।

A block diagram illustrating the workflow of Django MVT pattern including Model, View, Template, and User HTTP request.
A block diagram illustrating the workflow of Django MVT pattern including Model, View, Template, and User HTTP request.

​১৬. ডেটা সায়েন্স এবং মেশিন লার্নিং (The Era of AI & Data Science)

​        বিঃদ্রঃ পাইথনের অ্যাডভান্সড ফিচার ও ক্যারিয়ার গাইড নিয়ে ২য় পার্ট পড়তে এখানে ক্লিক করুন

আপনি যদি ওয়েবসাইট তৈরি করতে না চান, তবে পাইথনের দ্বিতীয় এবং সবচেয়ে ডিমান্ডিং সেক্টর হলো আর্টিফিশিয়াল ইন্টেলিজেন্স (AI) এবং ডেটা সায়েন্স। এই লাইনে কাজ করতে হলে পাইথনের ৪টি কোর লাইব্রেরি আপনার হাতের তালুর মতো চেনা থাকতে হবে।

​১. NumPy (Numerical Python)

​পাইথনের সাধারণ লিস্টের চেয়ে NumPy অ্যারে (Array) প্রায় ৫০ গুণ দ্রুত কাজ করতে পারে। বড় বড় গাণিতিক হিসাব এবং ম্যাট্রিক্সের কাজের জন্য এটি অপরিহার্য।

import numpy as np

# একটি ২-মাত্রিক অ্যারে তৈরি

matrix = np.array([[1, 2], [3, 4]])

print(matrix * 2# আউটপুট: [[2, 4], [6, 8]]

২. Pandas (Data Analysis)

​হাজার হাজার বা লাখ লাখ লাইনের এক্সেল (Excel) বা CSV ফাইল এক ক্লিকে এনালাইসিস করার জন্য পান্ডাস ব্যবহার করা হয়। এর প্রধান দুটি উপাদান হলো Series এবং DataFrame

import pandas as pd

# একটি CSV ফাইল রিড করা

data = pd.read_csv("sales_data.csv")

print(data.head()) # প্রথম ৫টি লাইনের ডাটা দেখা

৩. Matplotlib & Seaborn (Data Visualization)

​উপাত্ত বা ডেটা শুধু সংখ্যার মাধ্যমে দেখলে সাধারণ মানুষ বুঝবে না। পাইথনের এই লাইব্রেরিগুলো দিয়ে আপনি ডেটাকে বার চার্ট, পাই চার্ট কিংবা লাইনে লাইনে গ্রাফ আকারে ফুটিয়ে তুলতে পারবেন।

​৪. Scikit-Learn (Machine Learning)

​এটি এমন একটি লাইব্রেরি যা দিয়ে আপনি কম্পিউটারকে অতীত ডেটা দিয়ে ট্রেন (Train) করতে পারবেন, যাতে সে ভবিষ্যৎ বাণী বা Prediction করতে পারে (যেমন: একটি বাড়ির সাইজ এবং লোকেশন দেখে তার দাম কত হতে পারে তা অনুমান করা)।

[অগোছালো ডেটা] ──► Pandas (ডেটা ক্লিনিং) ──► Matplotlib (গ্রাফ অ্যানালাইসিস) ──► Scikit-Learn (AI মডেল তৈরি)

A laptop screen showing Jupyter Notebook with python code displaying statistical graphs and clean tabular data frames.
A laptop screen showing Jupyter Notebook with python code displaying statistical graphs and clean tabular data frames.

​১৭. অটোমেশন এবং ওয়েব স্ক্র্যাপিং (Automation Scripting)

​আপনার কি প্রতিদিন পিসি অন করে নির্দিষ্ট ৫টি ওয়েবসাইট ম্যানুয়ালি ওপেন করতে হয়? কিংবা প্রতিদিন এক্সেল ফাইলের ডাটা দেখে দেখে কোনো সরকারি পোর্টালে ইনপুট দিতে হয়? এই বোরিং কাজগুলো পাইথন স্ক্রিপ্ট দিয়ে মাত্র ১ সেকেন্ডে ব্যাকএন্ডে স্বয়ংক্রিয়ভাবে করিয়ে নেওয়া সম্ভব। একেই বলে অটোমেশন

​Selenium দিয়ে ব্রাউজার অটোমেশন

​সেলেনিয়াম (Selenium) লাইব্রেরি ব্যবহার করে আপনি এমন একটি কোড লিখতে পারেন যা নিজে নিজেই গুগল ক্রোম ব্রাউজার ওপেন করবে, ফেসবুকের ইউজারনেম-পাসওয়ার্ড লিখে লগইন বাটনে ক্লিক করবে এবং আপনার হয়ে স্ট্যাটাস পোস্ট করে দেবে!

from selenium import webdriver

from selenium.webdriver.common.keys import Keys

# ক্রোম ব্রাউজার ওপেন করা

driver = webdriver.Chrome()

# গুগলে যাওয়া

driver.get("https://www.google.com")

# সার্চ বক্স খুঁজে বের করা এবং টাইপ করা

search_box = driver.find_element("name", "q")

search_box.send_keys("Python Programming Bangla Guide")

search_box.send_keys(Keys.RETURN)

ওয়েব স্ক্র্যাপিং (Web Scraping)

​ধরে নিন, আপনি একটি ই-কমার্স সাইটের ১ হাজার প্রোডাক্টের নাম এবং দামের তালিকা চান। হাত দিয়ে কপি-পেস্ট করতে আপনার ৩ দিন লেগে যাবে। কিন্তু পাইথনের BeautifulSoup এবং requests লাইব্রেরি দিয়ে ৩ লাইনের একটি কোড লিখে মাত্র ৫ সেকেন্ডে সব ডাটা এক্সেল শিটে নিয়ে আসা সম্ভব।

Conceptual imagery representing web automation and data scraping with Python programming tools.
Conceptual imagery representing web automation and data scraping with Python programming tools.

১৮. কোড গুছিয়ে লেখার নিয়ম (Writing Clean Code: PEP 8)

​আপনি কোড লিখতে পারেন মানেই আপনি ভালো প্রোগ্রামার নন। একজন "হিরো" ডেভেলপার সবসময় এমনভাবে কোড লেখেন যা অন্য যেকোনো ডেভেলপার দেখলেই এক নজরে বুঝে ফেলতে পারে। পাইথনে কোড গুছিয়ে লেখার জন্য একটি অফিশিয়াল গাইডলাইন আছে, যার নাম PEP 8 (Python Enhancement Proposal 8)

​PEP 8 এর মূল নিয়মাবলী:

​১. ইন্ডেন্টেশন (Indentation): পাইথনে সবসময় ৪টি স্পেস (বা একটি ট্যাব) ব্যবহার করে ইন্ডেন্টেশন করতে হবে। স্পেস এবং ট্যাব কখনো একসাথে মিলিয়ে ফেলা যাবে না।

২. ভেরিয়বলের নাম: ভেরিয়বল এবং ফাংশনের নাম সবসময় ছোট হাতের অক্ষরে লিখতে হবে এবং একাধিক শব্দ থাকলে আন্ডারস্কোর (_) দিতে হবে। একে snake_case বলে। যেমন: user_login_count = 5।

৩. ক্লাসের নাম: ক্লাসের নাম লেখার সময় প্রতিটি শব্দের প্রথম অক্ষর বড় হাতের হতে হবে। একে PascalCase বলে। যেমন: UserAccountInfo

৪. কমেন্ট (Comments): কোডের জটিল লাইনের উপরে # দিয়ে ছোট করে লিখে রাখুন লাইনটি কেন লিখেছেন।

৫. ফাঁকা লাইন: দুটি বড় ফাংশন বা ক্লাসের মাঝে সবসময় ২টি ফাঁকা লাইন (Blank Lines) রাখা উচিত।

​১৯. গিট এবং গিটহাব (Git & GitHub for Developers)

​আপনি যখন কোনো সফটওয়্যার কোম্পানিতে চাকরি করবেন, তখন আপনি একা কোড করবেন না। আপনার সাথে আরও ১০ জন ডেভেলপার একই প্রজেক্টে কাজ করবে। সবার কোড একসাথে মেলানো এবং কোডের ব্যাকআপ রাখার জন্য Git (ভার্সন কন্ট্রোল সিস্টেম) এবং GitHub (কোড হোস্ট করার ওয়েবসাইট) ব্যবহার করা বাধ্যতামূলক।

​গুরুত্বপূর্ণ গিট কমান্ডস (Git Cheatsheet)

  1. ​git init : আপনার লোকাল ফোল্ডারে একটি নতুন গিট বাধ্যতামুলক রিপোজিটরি তৈরি করে।
  2. ​git add . : আপনার করা সমস্ত পরিবর্তন বা নতুন কোড ট্র্যাক করার জন্য প্রস্তুত করে।
  3. ​git commit -m "Your Message" : আপনার কোডের একটি স্ন্যাপশট বা ব্যাকআপ তৈরি করে।
  4. ​git push origin main : আপনার কম্পিউটার থেকে কোডটি সরাসরি গিটহাবের সার্ভারে আপলোড করে দেয়।
Workflow diagram of Git version control showing files moving from Working Directory to Staging Area and Local Repository to GitHub Cloud.
Workflow diagram of Git version control showing files moving from Working Directory to Staging Area and Local Repository to GitHub Cloud.

​২০. বোনাস: পাইথন শেখার সেরা ফ্রি রিসোর্স

​আপনার এই জিরো টু হিরো যাত্রাকে আরও সহজ করতে নিচে কিছু বিশ্বমানের ফ্রি রিসোর্স শেয়ার করা হলো:

​ইউটিউব চ্যানেল (YouTube Channels):

  1. Programming Hero (Bangla): একদম সহজ ও মজার ছলে পাইথন বেসিক শেখার জন্য দারুণ।
  2. Anisul Islam (Bangla): পাইথনের খুঁটিনাটি খুব সুন্দরভাবে প্লেলিস্ট আকারে সাজানো আছে।
  3. Corey Schafer (English): আপনি যদি পাইথনের ইন্টারমিডিয়েট এবং ওওপি (OOP) গভীরভাবে শিখতে চান, তবে এর চেয়ে ভালো চ্যানেল পুরো ইউটিউবে নেই।
  4. FreeCodeCamp (English): এখানে ৪ থেকে ১০ ঘণ্টার কমপ্লিট পাইথন ও জ্যাঙ্গো কোর্স ফ্রিতে পাওয়া যায়।
​পাইথন প্রোগ্রামিংয়ের এই দীর্ঘ জার্নিটি হয়তো আজ আপনার কাছে অনেক বড় মনে হচ্ছে, কিন্তু বিশ্বাস করুন একবার আপনি প্রথম ১ মাস ধৈর্য ধরে পার করতে পারলে কোডিংয়ের আসল মজা পেয়ে যাবেন। তখন কোড করা কোনো পড়ালেখা মনে হবে না, মনে হবে আপনি কম্পিউটারের স্ক্রিনে কোনো পাজল বা গেম মেলাচ্ছেন।

​প্রোগ্রামিংয়ে কোনো "শেষ" বলে শব্দ নেই, প্রতিদিন নতুন নতুন প্রযুক্তি আসবে এবং আপনাকে প্রতিনিয়ত শিখতে হবে। কিন্তু পাইথনের যে লজিক ও বেসিক আপনি এই গাইড থেকে শিখলেন, তা আপনাকে আজীবন একজন দক্ষ থিংকার ও প্রবলেম সলভার হিসেবে টিকিয়ে রাখবে।

​পিছিয়ে না পড়ে আজই আপনার প্রথম কোড print("Hello World") রান করুন। শুভকামনা আপনার পাইথন হিরো হওয়ার এই রোমাঞ্চকর যাত্রায়!

ধন্যবাদান্তে,

টিম Daily Tech News

ইউআরএল: Daily Tech News

ইউআরএল: Tech News 24

© ২০২৬ - আপনার অনলাইন দুর্গের পাহারাদার

      বিঃদ্রঃ পাইথন প্রোগ্রামিং জিরো টু হিরো: মেমোরি ম্যানেজমেন্ট, কনকারেন্সি ও প্রো টিপস নিয়ে ৪র্থ পার্ট পড়তে এখানে ক্লিক করুন