বিভিন্ন ফ্রেমওয়ার্ক সহ পিএইচপি এবং মাইএসকিউএল শেখার গাইডলাইন

0 139

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

বিভিন্ন ধরণের ফ্রেমওয়ার্ক সহ জাভাস্ক্রিপ্ট শেখার গাইডলাইন

অনেকই মনে করেন যে প্রোগ্রামিং শিখতে হলে মানুষের সবচেয়ে বেশি যেটা প্রয়োজন তা হল ধৈর্য এবং তারা এইরকমটি উপদেশও দিয়ে থাকেন। কিন্তু যেখানে ভালোলাগা বা আনন্দের ব্যাপারটি থাকে না সেখানে ধৈর্য সহ্যসীমার দরজা দিয়ে পালিয়ে যায়। আমি মনে করি ধৈর্যের একমাত্র উৎস হল আনন্দ। যদি কোনো কাজ ভালো না লাগে যতোই ধৈর্যশক্তির অধিকারী হোন না কেন কাজটিতে আপনি মন বসাতে পারবেন না, আর সফলতা হবে তখন অসম্ভব কোনো একটা ব্যাপার। তাই প্রোগ্রামিং শিখতে হলে ধৈর্যের আগেও আমাদের যেটা প্রয়োজন হবে তা হল আগ্রহ। কারণ আগ্রহ না থাকলে শুধুমাত্র মনের জুড়ে আপনি বেশি দূর এগুতে পারবেন না। যারা প্রোগ্রামিং ক্যারিয়ারকে শুধুমাত্র একটা স্মার্ট প্রফেশন মনে করে প্রোগ্রামিং শিখতে চাচ্ছেন তাদের জন্য আমার দুটি কথা। প্রথমত মনে রাখবেন পৃথিবীর সকল বৈধ প্রফেশনই আসলে স্মার্ট প্রফেশন, কোনো বৈধ প্রফেশনকেই ছোট করে দেখার কারণ নেই। আর দ্বিতীয়ত আপনি যদি মানসিকতার পরিবর্তন না করতে পারেন তাহলে বলব আপনি অযথাই কয়েকটা দিন নষ্ট করছেন কারণ অল্প কিছুদিনের মধ্যেই আপনাকে হতাশ হতে হবে এবং আপনার প্রোগ্রামিং অধ্যায়ের যবনিকা ঘটবে। অনেক সময় এইরকম হয় যে মানুষ বুঝতে পারে না তার একটা নির্দিষ্ট বিষয়ে আদৌ কোনো আগ্রহ আছে কি নেই। যেমন যাদের প্রোগ্রামিং সম্পর্কে খুব একটা ধারণা নেই তারা কিভাবে বুঝবেন তাদের এই শাখাটির প্রতি আগ্রহ আছে কিনা? এইরকম পরিস্থিতিতে আপনাকে আগে কয়েকটা দিন প্রোগ্রামিং নিয়ে ঘাটাঘাটি করতে হবে, তারপর নিজেকে জিজ্ঞেস করবেন এই জগত কি আপনার জন্য? এতে কি আপনার শতভাগ আগ্রহ আছে? যদি আগ্রহ না থাকে তাহলে এখানেই থেমে যান কারণ আরও অনেক আনন্দময় কাজের জগত হয়তো আপনার জন্য অপেক্ষা করছে। আর যদি ঘাঁটাতে ঘাঁটাতে প্রোগ্রামিঙের প্রতি আপনার ভিতরে সুপ্ত কোনো প্রবৃত্তি জাগ্রত হয় তখনই কেবল আপনি এর সাথে সন্ধি করতে পারেন এবং সামনে এগুতে পারেন।

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

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

পিএইচপি শেখার কয়েকটা টিপস নিচে পয়েন্ট আকারে দেয়া হলঃ

## আসলে প্রথম ল্যাঙ্গুয়েজ হিসেবে পিএইচপি তেমন উপযোগী নয় কারণ পিএইচপি হচ্ছে একটি হাই এফিসিয়েন্ট সারভার সাইড অবজেক্ট ওরিয়েন্টেড স্ক্রিপ্টিং ল্যাঙ্গুয়েজ। তাই পিএইচপি শেখার আগে আপনার উচিত হবে আগে যেকোনো একটা প্রসিডিউর বা অ্যাকশান ওরিয়েন্টেড ল্যাঙ্গুয়েজ শিখে ফেলা কারণ আপনি যদি প্রথমেই পিএইচপি শিখতে শুরু করেন তাহলে প্রোগ্রামের লজিক বা এলগরিদম আপনি ঠিকমত বুঝতে পারবেন না, আর লজিক বা এলগরিদম ঠিকঠাক বুঝতে না পারলে কেউ ভালো প্রোগ্রামার হতে পারবে না। যেকোনো একটা প্রসিডিউর ল্যাঙ্গুয়েজে আপনার মোটামুটি মানের দক্ষতা থাকলে পিএইচপি আপনার জন্য অনেক সহজ হয়ে যাবে। প্রসিডিউর ল্যাঙ্গুয়েজের মধ্যে সর্বোত্তম হচ্ছে সি(C), এটি একই সাথে আপনার এলগরিদমের কনসেপ্টটাও ভালো করে তুলবে। একজন প্রোগ্রামারের জন্য এলগরিদমের গুরুত্ব যে কতটুকু তা আমি আপনাকে বলব না, আপনি নিজেই বুঝতে পারবেন। এতক্ষণ যা বললাম তা এখন একটু সহজ করেই বলি। আপনি যদি প্রথমে সি দিয়ে শুরু করেন তাহলে তা শিখতে আপনার সময় লাগতে পারে ৩-৬ মাস। সি শেখার পর পিএইচপি শুরু করলে আপনি অল্প কয়েকদিনের মধ্যেই একজন পিএইচপি প্রোগ্রামারের খেতাব লাগাতে পারবেন। কিন্তু কেউ যদি প্রথমেই পিএইচপি শিখতে শুরু করে তাহলে এক বছর সময় নিয়েও সে তা ভালোভাবে আয়ত্তে আনতে পারবে না কিনা সন্দেহ। এখন ভেবে দেখুন আপনি সকল প্রোগ্রামিং ল্যাঙ্গুয়েজের মা মানে সি দিয়ে শুরু করবেন, না পিএইচপি দিয়ে। কারও মনে হয়তো প্রশ্ন জাগতে পারে যে পিএইচপি তো একটি সারভার সাইড ল্যাঙ্গুয়েজ যেটা কিনা সারভারে রান করে, তাহলে সি শিখে কি লাভ হবে? এর উত্তর পেতে হলে আগে জানতে হবে সারভারটা আসলে কি। আসলে সারভার হচ্ছে একটা অথবা কয়েকটা কম্পিউটারের সমষ্টি যেগুলো দিন-রাত ২৪ ঘন্টা চালু থেকে ক্লায়েন্টদের সেবা প্রদান করে। তাই সারভার সাইট কিনা তা নিয়ে না ভেবে শুধু প্রোগ্রামিঙের বেসিক কনসেপ্টটা ক্লিয়ার করুন, তাহলেই দেখবেন এতো এতো প্রোগ্রামিং ল্যাঙ্গুয়েজ আপনাকে কোনো জটিলতায় ফেলবে না কারণ সকল ল্যাঙ্গুয়েজই প্রথমে মেশিন ল্যাঙ্গুয়েজ বা বাইনারি কোডে রূপান্তরিত হয়ে তারপর কাজ করে অর্থাৎ সকল ল্যাঙ্গুয়েজরই কাজ করার ধরণ ইমপ্লিসিটলি একই। মনে রাখবেন কম্পিউটার শুধু একটা ভাষাই বুঝে আর তা হল যন্ত্র ভাষা (মেশিন ল্যাঙ্গুয়েজ)।

## প্রথম অবস্থায়(১৯৯৫) পিএইচপির শুরু অবজেক্ট ওরিয়েন্টেড ল্যাঙ্গুয়েজ হিসেবে না হলেও পরবর্তীতে এর চতুর্থ সংস্করণে একে প্রায় অবজেক্ট ওরিয়েন্টেড এবং পঞ্চম সংস্করণে পুরুপুরি অবজেক্ট ওরিয়েন্টেড ল্যাঙ্গুয়েজে রূপান্তরিত করা হয়। এখন কথা হচ্ছে সি তো অবজেক্ট ওরিয়েন্টেড কোনো ল্যাঙ্গুয়েজ না, তাই আপনাকে সি এর পাশাপাশি অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং সম্পর্কে মোটামুটি একটা ধারণা নিয়ে রাখতে হবে। অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং শেখার জন্য আপনার উচিত হবে সি শেখার পর সি++ নিয়ে কয়েকটা দিন স্টাডি করা। আপনি চাইলে জাভা অথবা অন্য যেকোনো অবজেক্ট ওরিয়েন্টেড ল্যাঙ্গুয়েজ নিয়েও স্টাডি করতে পারেন, কিন্তু যেহেতু আপনার উদ্দেশ্য পিএইচপি শেখা এবং আপনি শুধু অবজেক্ট ওরিয়েন্টেডের বেসিক ধরণা নিয়ে রাখতে চাচ্ছেন তাই সি++ ই এই ক্ষেত্রে বেষ্ট হবে। সি শেখা শুরু করার জন্য Stephen Kochan এর Programming In C (3rd/4th edition) বইটা পড়তে পারেন।

## এখন আসি রিসোর্সের কথায়। পিএইচপি শেখা কিংবা এর মাস্টার হওয়ার জন্য সবচেয়ে ভালো রিসোর্স হচ্ছে https://php.net ওয়েবসাইটটি যেটা পিএইচপি এর অফিসিয়াল ডকুমেন্টেশন। যেহেতু পিএইচপি বিশাল একটা ব্যাপার এবং এর রয়েছে অসংখ্য ফাংশন বা মেথড তাই এই সাইটটিকে রেফারেন্স হিসেবে ব্যাবহার করাই উত্তম। প্রথম অবস্থায় এই ডকুমেন্টেশনটার সাথে মানিয়ে নিতে কয়েকটা দিন সময় লাগতে পারে, কিন্তু আপনি যদি একবার এই ডকুমেন্টেশনের সাথে অভ্যস্ত হয়ে উঠতে পারেন তাহলে পিএইচপির মাস্টার হওয়ার পথ আপনার জন্য অনেক অনেক সহজ হয়ে যাবে। তবে একেবারে শুরুতেই এই ডকুমেন্টেশন নির্বাচন না করে তুলনামূলক সহজ কোনো টিউটরিয়াল থেকে শেখা ভালো। সহজ রিসোর্সের মধ্যে ভিডিও টিউটরিয়ালের জন্য lynda.com, developphp.com, tutplus.com, infiniteskills.com, udacity.com, udemy.com ইত্যাদি উল্লেখযোগ্য এবং টেক্সট ভিত্তিক টিউটরিয়ালের মধ্যে w3schools.com আর developphp.com-ই উত্তম। মাইএসকিউএল: এতক্ষণ যা কিছু বললাম তা শুধু পিএইচপি নিয়েই, পিএইচপির সাথে সবচেয়ে বেশি যে শব্দটা যায় তা হল মাইএসকিউএল(MySQL)। মাইএসকিউএল শেখার টিপস দেয়ার আগে প্রথমে বলে নেয়া প্রয়োজন এটি আসলে কি এবং এর কাজটাই বা কি কারণ মাইএসকিউএল নিয়ে অনেকের মনে অনেক রকমের কনফিউশন থাকে। MySQL আসলে SQL( Structured Query Language ) এর একটি সুপারসেট ভার্সন, SQL সাধারণত ডাটাবেসের সাথে কমিউনিকেট করার জন্য ব্যবহার করা হয় অর্থাৎ SQL হচ্ছে একটি ডাটাবেস ম্যানেজমেন্ট সিস্টেম(DMS)। এসকিউএলের শুরু ষাট-সত্তরের দশকে। আর এর সাথে আলাদা অনেক ফিচার যুক্ত করে তৈরি করা হয়েছে মাইএসকিউএল। এখন প্রশ্ন হচ্ছে ডাটাবেস আসলে কি এবং ডাটাবেস ম্যানেজমেন্ট সিস্টেমই বা কি? নিচের কয়েকটি লাইনে তা ক্লিয়ার করার চেষ্টা করছি। প্রত্যেকটা ওয়েবসাইটই অসংখ্য কনটেন্টের সমন্বয়ে গঠিত আবার একটা সশ্যাল নেটওয়ার্ক ওয়েবসাইটের অসংখ্য ইউজার, প্রত্যেকের আলাদা পাসওয়ার্ড, একজন ইউজারের সাথে আরেকজন ইউজারের সম্পর্ক কিংবা বিভিন্ন টাইপের তথ্য ইত্যাদি থাকে, এই সবকিছু নিয়ন্ত্রণ করার জন্য প্রত্যেক ওয়েবসাইটের একটা ডাটারুম থাকে যেখানে ওয়েবসাইটের যাবতীয় সকল কনটেন্ট এই ডাটারুমের মধ্যে রাখা হয় এবং প্রয়োজন অনুসারে যেকোনো তথ্য কল করে নিয়ে ওয়েবসাইটের front-end বা back-endএ শো করানো হয়। উদাহারণ হিসেবে ফেসবুকের কথাই ধরা যেতে পারে। ফেসবুক তাদের অসংখ্য ইউজার, তাদের আলাদা পাসওয়ার্ড, প্রত্যেক ইউজারের মাঝে সম্পর্ক(friend system/block system) ইত্যাদি কাজ করার জন্য এক বিশাল ডাটারুম ব্যাবহার করে থাকে। আমরা যখন কোনো স্ট্যাটাস আমাদের ওয়ালে পোস্ট করি কিংবা কারও পোস্টে কমেন্ট করি কিংবা লাইক করি এইসব কিছুই ডাটাবেসের আলাদা আলাদা টেবিলে গিয়ে সঞ্চয় হয় আর এইসব কিছুর সমন্বয়ই হচ্ছে ফেসবুক, টুইটারের মত বড় বড় সশ্যাল নেটওয়ার্কের প্রাণ। ডাটারুমই হচ্ছে আসলে ডাটাবেস। একে ডাটাবেস না বলে ডাটারুম বললে ব্যপারটা আরও স্পষ্ট হয়ে উঠে। মাইএসকিউএলের এর পরিবর্তেঃ ডাটাবেস ম্যানেজমেন্ট সিস্টেমের জন্য যে শুধু MySQL-কেই বেছে নিতে হবে তা কিন্তু না। এটি ছাড়া আরও অসংখ্য DNS রয়েছে, কিন্তু MySQL-ই হবে এই ক্ষেত্রে বেষ্ট সিলেকশন কারণ প্রথমত এটি হচ্ছে ওপেন সোর্স, দ্বিতীয়ত MySQL একই সাথে কম মেমোরি এবং প্রোগ্রামের এফসিয়েন্সির নিরাপত্তা দেয়। তাছাড়া MySQL-এর মত অন্য কোনো DNS-এ আপনি প্রয়োজনীয় সকল ফিচার পাবেন না। এটির অসংখ্য graphical user interface(gui) রয়েছে। যেমন- phpmyadmin হচ্ছ MySQL-এর GUI ভার্সন এর মধ্যে সবচেয়ে বিখ্যাত এবং সর্বাধিক ব্যবহৃত। ফেসবুক তাদের ডাটারুমের(ডাটাবেস) জন্য MySQL ব্যাবহার করে থাকে। মাইএসকিউএল এবং পিএইচপির কম্বিনেশনঃ এতক্ষণ যা বললাম তাতে স্পষ্টই অনুধাবন করা যায় যে MySQL আর PHP আলাদা দুটি সেক্টর, এখন অনেকের মনেই এই প্রশ্ন জাগাটাই স্বাভাবিক যদি আলাদাই হয় তাহলে কেন এদের একই সাথে শিখতে হবে আর এই দুইটা সেক্টরের সমন্বয়টাই বা কিভাবে হবে। যদি আপনি পোস্টটা ভালোভাবে পরেন তাহলে এর উত্তর আপনার অনেক আগেই পেয়ে যাবার কথা। সহজ এবং এক কথায় বলতে গেলে পিএইচপিকে ট্রিগারের সাথে তুলনা করা যায়। বন্দুকের ট্রিগার চাপলেই এর থেকে গুলি বের হয় আর পিএইচপি ট্রিগার চাপলে এটি মাইএসকিউএল দিয়ে তৈরিকৃত ডাটাবেস থেকে স্পেসিফিক কিছু ডাটা নিয়ে আসে। যেমন আমারা ফেসবুকে কারও প্রোফাইলে ঢুকার জন্য ব্যক্তির নামে উপর ক্লিক করে ঐ ব্যক্তির প্রোফাইলে প্রবেশ করি। এখানে ক্লিক করাটা হচ্ছে ট্রিগার আর ট্রিগার চাপার সাথে সাথেই ডাটাবেস থেকে ঐ ব্যক্তির সকল তথ্য ফেচ করে নিয়ে আসে। আর এভাবেই পিএইচপি এবং মাইএসকিউএলের মধ্যে সমন্বয় সাধিত হয়। নিচে একটা চিত্র সংযোজন করা হল। আমি এই চিত্রের কোনো ব্যাখা দিব না কারণ আমি এখানে কোনো টিউটরিয়াল লিখতে বসিনি। পিএইচপি ফ্রেমওয়ার্কঃ পিএইচপি ফ্রেমওয়ার্ক সম্পর্কে বলার আগে বলে নেয়া প্রয়োজন যে ফ্রেমওয়ার্কটা আসলে কি। ফ্রেমওয়ার্ক হচ্ছে বিশেষ বা নির্দিষ্ট কোনো কাজের জন্য একটা স্বয়ংসম্পূর্ণভাবে তৈরিকৃত প্লাটফর্ম যার সাহায্যে ঐ নির্দিষ্ট কাজটা সহজে, অল্প সময়ে এবং শতভাগ কার্যকরভাবে করা যায়। যারা জাভাস্ক্রিপ্ট বা সিএসএস শিখে এসেছেন তারা হয়তো ফ্রেমওয়ার্কের ব্যপারাটা ভালভাবেই জানেন। পিএইচপি ফ্রেমওয়ার্কের কয়েকটা প্রধান সুবিধা হল অল্প কোড, এফিসিয়েন্ট কোড, অল্প মেমোরি, সহজ এবং সুন্দর কোড বিন্যাস ইত্যাদি। ফ্রেমওয়ার্ক যে ব্যবহার করতেই হবে তা কিন্তু না, ফ্রেমওয়ার্ক ইউজ করে যা তৈরি করা যায়, না করে ঐ একই জিনিস তৈরি করা সম্ভব। তাহলে অযথা কেন আপনি ফ্রেমওয়ার্ক নিয়ে টানাহিচড়ে করবেন? করবেন কারণ একজন কখনো দশজন কিংবা শতজনের চেয়ে ভালো হতে পারে না। ব্যপারটা একটু বুঝিয়ে বলছি। একটা ফ্রেমওয়ার্কের পেছনে অনেক কোডারের অনেক দিনের মেহনত থাকে, তারা এটাকে সর্বাধিক কার্যকরী এবং একই সাথে সহজে ব্যবহারযোগ্য করে তুলে। আপনি যখন একটা ফ্রেমওয়ার্কের সাহায্যে কোনো অ্যাপ্লিকেশান তৈরি করবেন তখন এর কার্যকারিতা আপনার নিজের হাতের লেখা কোড থেকে অনেক বেশি থাকবে। তাছাড়া এর কোড বিন্যাসটাও হবে সুন্দর এবং সহজর, তখন যে কেউ আপনার অ্যাপ্লিকেশান নিয়ে ডেভেলপ করতে পারবে। আর যদি আপনি নিজে কোড লিখেন তাহলে এটা ছেনাভেনা টাইপের কোড হবার সম্ভাবনাই বেশি, অনেক ক্ষেত্রে হয়তো সেটা গ্রহণযোগ্য হবে না। তবে প্রথমেই ফ্রেমওয়ার্ক নয়। কম করে হলেও ছয় মাস আপনাকে মৌলিক কোড নিয়ে কাজ করতে হবে, তা না হলে ওয়েব অ্যাপ্লিকেশান তৈরি করতে পারবে ঠিকই কিন্তু পিএইচপি কোডার হতে পারবেন না। ইন্টামিডিইয়েট পর্যায়ে আসার পর আপানার উচিত হবে যেকোনো একটা ফ্রেমওয়ার্ক শিখে ফেলা। অহংকারবশত ফ্রেমওয়ার্ককে অবহেলা করবেন না। যদি মনে করেন আপনার কারও কোডের প্রয়োজন নেই তাহলে আপনি নিজেই একটা ফ্রেমওয়ার্ক লিখে ফেলুন। চোখ কপালে তুলবেন না। আপনার হাতেই হয়তো পিএইচপির বেষ্ট ফ্রেমওয়ার্কটি তৈরি হতে যাচ্ছে। নিচে কয়েকটি সুপরিচিত এবং সর্বাধিক ব্যবহৃত ফ্রেমওয়ার্কের সাথে পরিচয় করিয়ে দেয়া হল। যদি আপনি একেবারে নতুন হন তাহলে এটা এখন আপনার কাজে নাও লাগতে পারে।

## Symfony: Symfony এর অফিসিয়াল ওয়েবসাইটে এর সম্পর্কে লেখা আছে- « Symfony is a set of PHP Components, a Web Application framework, a Philosophy, and a Community — all working together in harmony. » এর যাত্রা শুরু হয় ২০০৫ সাল থেকে। এখন এটি পিএইচপির সবচেয়ে প্রসিদ্ধ এবং সর্বাধিক জনপ্রিয় (প্রথম আর দ্বিতীয় অবস্থানের মাঝে উঠানামা করে ) একটি ফ্রেমওয়ার্ক। পিএইচপি ভালোভাবে শেখার পর প্রথমে এই ফ্রেমওয়ার্ক দিয়ে শুরু করাই শ্রেয় (আসলে এটি নিয়ে অনেকের অনেক মত আছে, তাই কোন ফ্রেমওয়ার্ক দিয়ে শুরু করবেন তা ভালোভাবে যাচাই করে সিদ্ধান্ত নিন)। আসলে বেশিরভাগ পিএইচপি কোডারই শুধুমাত্র একটা ফ্রেমওয়ার্ক নিয়ে কাজ করেন, সবগুলো ফ্রেমওয়ার্ক শেখার কোনো প্রয়োজন পড়ে না। কারণ একটা দিয়েই সবধরনের কাজ করা যায়। আর আপনার নিজের কোডের উপর শতভাগ বিশ্বাস থাকলে এবং কোড শতভাগ কার্যকর হলে ফ্রেমওয়ার্কের উপর কম নির্ভর করলেই চলে। আরেকটা কথা, Symfony কোডারের ডিমান্ড এখনকার মার্কেটপ্লেসে সবচেয়ে বেশি। লিঙ্কঃ symfony.com

## Zend Framework: একটু কঠিন, তবে নিয়মিত আপডেট হয়। এর ডকুমেন্টেশনটাও অনেক ভালো এবং এর কোডারের সংখ্যা সবচেয়ে বেশি, তাই এর কমিউনিটি অনেক বিশাল। তাই অনেকই এটাকে বেছে নেন। লিঙ্কঃ zend.com

## Laravel: Symfony দিয়ে তৈরি, ২০১২ থেকে এর যাত্রা শুরু। অনেক এডভান্সড এবং এফিসিয়েন্ট একটা ফ্রেমওয়ার্ক।

## PHPCake: এটাও অনেক জনপ্রিয়। খুব সম্ভবত ২০০৫-০৬ সালে এটি প্রথম রিলিজ হয়। ডকুমেন্টেশনটাও ভালো এবং মোটমুটি মানের কমিউনিটিও আছে। লিঙ্কঃ cakephp.org

## CodeIgniter: পিএইচপির সবচেয়ে সহজ (জরিপ মতে) ফ্রেমওয়ার্ক এটি। তবে এটি তেমন এফিসিয়েন্ট না আর এর আপডেটও হয় খুব কম। শুরু ২০০৫-০৬ সাল। লিঙ্কঃ codeigniter.com

হ্যাকিংঃ আজ এখানে থেমে যাওয়াই বোধহয় ভালো হবে। হ্যাকিং নিয়ে নাহয় আরেকদিন লিখা যাবে।

উত্তর দিন