পাইথন দিয়ে কী কী করা যায় এবং কোথায় কোথায় পাইথন ব্যবহার করে?

1 Answers   2 K

Answered 2 years ago

কম্পিউটার দিয়ে কাজ করাতে গেলে কম্পিউটার বুঝতে পারে, এমন ভাষায় তাকে নির্দেশ দিতে হয়। এটাই প্রোগ্রামিং ভাষা। প্রোগ্রামিং ভাষা অনেক রয়েছে এবং নিত্যনতুন তৈরি হচ্ছে। তবে অল্প কয়েকটি ভাষাই প্রোগ্রামারদের কাছে জনপ্রিয় হতে পেরেছে। তেমন একটি প্রোগ্রামিং ভাষা হচ্ছে পাইথন। এর জনক গুইডো ভন রুযাম। ১৯৮৯ সালের ডিসেম্বর মাসে বড়দিনের ছুটিতে তিনি পাইথন তৈরি করা শুরু করেন। তবে পাইথন বেশি জনপ্রিয় হয়ে ওঠে ২০০০ সালে, ২.০ সংস্করণ চালু হওয়ার পরে। বর্তমানে পাইথনের ২.৭ এবং ৩.৪ সংস্করণ চালু রয়েছে।

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


প্রশ্নকারীর প্রধান প্রশ্ন পাইথন দিয়ে কি করা যায় ও কোথায় ব্যবহার করা হয়?


GUI ভিত্তিক সফটওয়্যার ডেভেলেপমেন্ট


কোন সফটওয়্যার এর কথা মাথায় আসলেই আমাদের চোখে প্রথমেই ভেসে আসে একটি Graphical user interface বা GUI. সর্বসাধারণের ব্যবহার উপযোগী কোন সফটওয়্যার তৈরি করতে গেলে গ্র্যাফিক্যাল ইন্টারফেসের কোন বিকল্প নেই। সাধারণ ব্যবহারকারীরা কখনোই command line interface বা CLI ব্যবহার করে কোন সফটওয়্যার ব্যবয়ার করতে উৎসাহী হবে না।


পাইথনে বেশ কিছু API এবং লাইব্রেরি আছে যার মাধ্যমে খুব সহজেই GUI অ্যাপ্লিকেশন ডেভেলপ করা যায়। এর জন্য বাড়তি কিছুর দরকার নেই, শুধু ঐ API বা লাইব্রেরির ফাংশন গুলো জানলেই হয়। নিচে কিছু জনপ্রিয় API এর তালিকা দেওয়া হল –


Tkinter

Kivy

PyQT

WxPython

PySide

PyGUI

PyGTK ইত্যাদি

ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্ট (Web Application Development)


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


Django

Flask

Pyramid

Web2Py

Bottle

TurboGears

CherryPy

Dash

Sanic ইত্যাদি।

সিস্টেম প্রোগ্রামিং (System Programming)


পাইথনের বিল্ট-ইন ইন্টারফেস দিয়ে সিস্টেম প্রোগ্রামিং এর মত জটিল কাজও করা যায়। থ্রেডিং (Threading), শেল কমান্ড (Shell command), ফাইল হ্যান্ডলিং (File Handling), ইত্যাদির মত জটিল কাজগুলোও পাইথনে খুব সহজেই করা যায়।


ডাটাবেজ প্রোগ্রামিং (Database Programming)


যুগোপযোগী ও ডাইনামিক (Dynamic) অ্যাপ্লিকেশন তৈরির জন্য ডাটাবেজের কোন বিকল্প নেই। আর তাই সকল জনপ্রিয় রিলেশনাল ডাটাবেজ সিস্টেম (Relational Database System) যেমন MySQL, Oracle, SQLite, ODBC, PostgreSQL ইত্যাদির জন্য পাইথনের ইন্টারফেস আছে, আর এই ইন্টারফেস ব্যবহার করে খুব সহজেই এগুলোকে হ্যান্ডল করা যায়।


পাইথনে পোর্টেবল ডাটাবেজ (Portable Databse) API আছে যার মাধ্যমে ডাটাবেজগুলো্র কোন পরিবর্তন না করেই বিভিন্ন প্ল্যাটফর্মে ব্যবহার করা যায়।


সাইন্টিফিক প্রোগ্রামিং (Scientific Programming)


নিউমেরিক এবং সাইন্টিফিক প্রোগ্রামিং এর জন্য ম্যাটল্যাব এর কোন জুড়ি নেই। কিন্তু এই স্থানটি পাইথন খুব দ্রুতই দখল করে নিয়েছে। যেকোন ধরনের সাইন্টিফিক এবং নিউমেরিক গণনার জন্য পাইথনে আছে বিভিন্ন ধরনের লাইব্রেরি। নিচে কিছু জনপ্রিয় লাইব্রেরির নাম উল্লেখ করা হল –


Numpy

SciPy

Pandas

SymPy

PIL

Astropy

ScientificPython ইত্যাদি

মেশিন লার্নিং ও ডিপ লার্নিং (Machine Leaning and Deep Learning)


বেশ কয়েক বছর ধরেই কৃত্তিম বুদ্ধিমত্তা বা Artificial Intelligent এর জয়জয়কার অবস্থা। আর পাইথন নিজেও এই জয়ের সঙ্গী হয়েছে। বর্তমান সময়ে যতগুলো ভাল ভাল লাইব্রেরি, ফ্রেমওয়ার্ক বা API আছে তার সবগুলোতেই পইথনের সাপোর্ট রয়েছে। অর্থাৎ এই ফ্রেমওয়ার্কগুলো দিয়ে আপনি খুব সহজেই যেকোন ধরনের মডেল ডিজাইন করতে পারেন। গিটহাবেও আছে অসংখ্য কোড। নিচে কিছু কিছু API এবং ফ্রেমওয়ার্ক এর নাম উল্লেখ করা হল –


TensorFlow

Pytorch

Keras

MXNet

Sonnet

DL4J ইত্যাদি।

পাইথন দিয়ে করা যায়না এমন কিছু খুজে পাওয়াই দুষ্কর, অর্থাৎ পাইথন দিয়ে যেকোন ধরনের অ্যাপ্লিকেশন তৈরিই সম্ভব।


Imtiyaz Ahmed
imtiyazahmed
433 Points

Popular Questions