পিএইচপি ফ্রেমওয়ার্কঃ MVC সম্পর্কে কিছু কথা

বন্ধুরা কেমন আছেন সবাই। অনেক দিন পর আজ লিখতে বসলাম, আশা করি ভুলে যাননি । 🙂 আসলে ব্যস্ততা আর অলসতা দুটোই যখন একজন মানুষের ঘাড়ে চেপে বসে, তখন সম্ভব অনেক কিছুকেই অসম্ভব মনে সাময়িকভাবে হলেও। অবশ্য ব্যস্ততা পরবর্তী অবসরকে অলসতায় স্থান না দেয়ার মত মানুষ মনে হয় কমই আছে।

বন্ধুরা পিএইচপি নিয়ে আমি এর আগে বেশ কিছু লেখা লিখেছি, আজ আমি আলোচনা করব পিএইচপি এর একটি ফ্রেম ওয়ার্ক সম্পর্কে।

ফ্রেম ওয়ার্ক কি ?

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

কোন ফ্রেমওয়ার্ক আপনি ব্যবহার করবেনঃ

ফ্রেমওয়ার্ক বাছাই করার ক্ষেত্রে কোনো বাধ্যবাধকতা নেই । আপনি যে ফ্রেমওয়ার্কে স্বাচ্ছন্দ্যবোধ করেন সেটাই ব্যবহার করতে পারেন। তবে সেক্ষেত্রে খেয়াল রাখতে হবে যে ফ্রেমওয়ার্ক আপনি ব্যবহার করছেন সেটি কতটা সহজবোধ্য মনে হয় আপনার কাছে। ব্যক্তিগতভাবে , কোডইগনিটার আমার কাছে অনেকটা সহজ বোধ্য মনে হয়। তাছাড়া এর ডকুমেন্টেশান বা ইউজার গাইডটি অনেকটা ব্যখ্যামূলক অন্যান্য ফ্রেমওয়ার্কের তুলনায়।

ডাউনলোড ও ইন্সটলেশানঃ

খুবই সহজ। গুগলে সার্চ দিলেই আপনি পেয়ে যাবেন ডাউনলোড লিঙ্ক ডাউনলোড করার পরে একটি জিপ ফাইল পাবেন তা থেকে  আনজিপ করা ফোল্ডার টি নিয়ে কপি করুন আপনার সার্ভার ডিরেক্টরিতে ( xampp এর ক্ষেত্রে তা htdocs ফোল্ডার )। ব্যস হয়ে গেল ডাউনলোড ও ইন্সটলেশান।

MVC :

MVC বলতে মূলত বোঝানো হয় যথাক্রমে model, view এবং controller কে । codeigniter এর আনজিপ করা ফোল্ডারে অবস্থিত application ফোল্ডারে এই তিন নামে তিনটি ফোল্ডার থাকে। এছাড়াও থাকে config সহ আরো কিছু ফোল্ডার নিচের মত।

কিভাবে কাজ করবেনঃ

MVC তে controller থেকে কোনো পেজকে দেখানোর জন্য ইন্সট্রাকশান দেয়া হয়। আপনি যেই পেজটি দেখাবেন তা থাকবে view ফোল্ডারে।

আর পেইজে ডাটাবেস থেকে কোনো ডাটা দেখাতে হলে সেই ডাটাকে model সেকশানের মাধ্যমে ডাটাবেস থেকে নেয়া হয় এবং সেই ডাটা পাঠানো হয় controller সেকশানে। controller উক্ত ডাটা পাওয়ার পরে ও ডাটা পাঠায় view সেকশানের পেইজে এবং সেই পেইজ সাইটে প্রদর্শণ করে। মূলত এটাই হল MVC ফ্রেমওয়ার্কের মূলনীতি।

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

সহজ একটি উদাহরণ

প্রথমে controller ফোল্ডারে একটি ফাইল খুলে তা .php এক্সটেনশান দিয়ে সেভ করুন। মনে করুন, ফাইলটির নামে anyname.php

এখন ফাইলটিতে নিচের কোডটি লিখুন।

<?php

class anyname extends CI_cobtroller{

function index(){

$this->load->view('home');

}

}

?>

এই কোডের মাধ্যমে anyname নামের ক্লাস ডিক্লেয়ার করা হয়ে যার প্রপার্টি এবং মেথড CI_controller এর প্রপার্টি এবং মেথড।  এতে একট মেথড তৈরি করা হয়েছে index() নামে যার মাধ্যমে home নামের কোনো পেইজ ব্রাউজারে প্রদর্শন করার ইন্সট্রাকশান দেয়া হয়েছে।

এক্ষেত্রে home নামের কোনো পেজ থাকতে হবে view ফোল্ডারে।

ধরুন আপনার আনজিপ করা codeigniter ফোল্ডার আপনি সেভ করেছেন code নামে তাহলে ব্রাউজারে localhost/index.php/code/index লিখে ব্রাউজ করলেই আপনি আপনার home পেইজটি দেখতে পাবেন।

পরিশেষে কিছু কথাঃ

আসলে MVC ফ্রেমওয়ার্ক নিয়ে আলোচনা এক পোষ্টে করা সম্ভব নয়। এখানে আমি MVC ফ্রেমওয়ার্ক তথা codeigniter সম্পর্কে আপনাদের একটি ধারণা দিতে চেষ্টা করেছি। কারণ অনেক সময় দেখা যায়, অনেক কিছুকেই কঠিন মনে করে শুরুই করা হয় না, তাই একটি সাধারণ ধারণার মাধ্যমে চেষ্টা করেছি, আপনার এই ভয়টি দূর করার । উপরের উদাহর দেখে কিছু না বুঝলেও হতাশ হওয়ার কিছু নেই। পিএইচপি শিখতে থাকুন । ক্লাস এবং অবজেক্ট সম্পর্কে ধারণা হলেই উপরের উদাহরণটি আপনার কাছে সহজ হয়ে যাবে। আর সেই সাথে ফ্রেমওয়ার্কের সাথে থাকা ডকুমেন্টশানটিও অনুসরন করবেন। তাহলেই আশা করি আপনার ধারণা আরো পরিষ্কার হবে।

পূর্ব প্রকাশিতঃ http://www.techspate.com

আমার প্রজেক্ট গ্যালারিঃ http://tutocraze.wordpress.com

ফেসবুকে আমিঃ https://www.facebook.com/mithu.quayium?ref=tn_tnmn

google+ এ আমিঃ https://plus.google.com/u/0/111071687832924600516

পিএইচপি চেইন টিউনঃ https://www.techtunes.io/chain-tunes/php-coaching

ফটোশপ চেইন টিউনঃ https://www.techtunes.io/chain-tunes/photoshop-zone

Level 0

আমি MITHU। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 13 বছর 5 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 88 টি টিউন ও 1232 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 3 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

Level 0

Thank you dear article writer for you nice posting it most important mater for website creation I am really benefited for following your regular article .Hello every body who can help me for my problem.San Francisco Limousine Service

Level 0

darun post MITHU vhai. ami php mvc te khub interested. ami akhon asp.net mvc te kaj kori… apanr kas thake codeigniter er tutorial niya chain tune asha korchi.

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

ভাই, লারাভেল, কোহানা, সিম্ফনি ইত্যাদি সম্পর্কে ও কিছু বিস্তারিত লিখেন