Tuesday, September 10, 2013

রুবি অন রেইলস টিউটরিয়াল পর্ব ২: First application, File/directory structure, MVC

লিনাক্সে রুবি অন রেইলস কিভাবে ইন্সটল দিতে হবে তা আমার ব্লগের আগের পোস্টে দেখিয়েছিলাম। ভাবলাম রেইলসের উপর একটি মোটামুটি পূর্ন টিউটরিয়াল তৈরি করি। তাই পরবর্তী অংশ লেখা শুরু করলাম। রেইলস শেখার আগে Book of Ruby বইয়ের ১-১২ চাপ্টার পর্যন্ত পড়া থাকলে সব চেয়ে ভাল হয়।

First application Rails: টার্মিনাল খুলে নিচের কমান্ডগুলো চালান -

$mkdir rails_projects   // rails prকরলাম।ojects নামে ফোল্ডার ক্রিয়েট করলাম। mkdir মানে make directory.

$cd rails_projects    // cd মানে চেঞ্জ ডায়রেক্টোরি। rails project ঢুকালাম।
$rails new first_app // first app নামে আমাদের এপ্লিকেশনটি তৈরি করলাম।

এন্টার চাপুন। নিচের মত প্রিভিউ আসবে।


বান্ডিলগুলো ইন্সটল হতে একটু টাইম নিবে। রেইলস অটোমেটিক তার ফাইল স্টার্কচার তৈরি করে নিবে।

Rails File Stracture: 

app/ : এপ্লিকেশনের কোর ফাইল, মডেল, কনট্রোল এবং ভিউস গুলো এখানে থাকে।
config/ : এপ্লিকেশনের কনফিগারেশন ফাইল
db/ : ডাটাবেজকে ব্যবহার করার জন্য ফাইল থাকে।
doc/ : এপ্লিকেশনের ডকুমেন্টশন থাকে।
lib/ : লাইব্রেরী মডিউল।
log/ : এপ্লিকেশনের লগ ফাইল।
public/ : যেসব ফাইলগুলো ভিজিটোর এক্সেস করতে পারবে। যেমন css, images থাকে।
script/rails : কোড জেনারেট করার জন্য স্ক্রিপ্ট থাকে।
test/ : এপ্লিকেশনের টেস্ট । যেমন বিভিন্ন spec টুলস দিয়ে করা যায়।
tmp/ : টেম্পরারি ফাইল।
vendor/ : থার্ড পার্টি প্লাগিন বা মডিউল।
README : এপ্লিকেশনের বিস্তারিত বর্ননা।
Rakefile : রেইক কমান্ডের সাহায্যে থাকে।বিভিন্ন কাজ করার জন্য রেইক ফাইলটি ব্যবহার করা হয়।
Gemfile : এপ্লিকেশনটি চলার জন্য যে যে জেম ফাইলের প্রয়োজন হয় তার লিস্ট থাকে।
config.ru : রেইক মিডলওয়্যারের জন্য কনফিগারেশন ফাইল।
.gitignore: গিটহাবে যেসব ফাইলগুলো আপলোড করতে চান না তার লিস্ট থাকে।

এখানে কিছু বেসিক জিনিস জানা প্রয়োজন।

*** ফাইলে কমেন্ট করার জন্য # ব্যবহার করা হয়।
*** Bundle ইন্সটল হওয়ার সময় জেম ফাইলগুলো ডাউনলোড হয়। তখন সাধারনত লেটেস্ট ভার্সনগুলো রেইলস ডাউনলোড করে। অনেক সময় কোন কোন ভার্সন কোন কোন অপারেটিং সিস্টেমের ক্ষেত্রে ঝামেলা করে। তখন আমাদের স্পেসিফিক ভার্সন উল্লেখ করে দিতে হয় জেম ফাইলে। যেমন sqlite এর নির্দিষ্ট ভার্সন 1.2.5 ডাউনলোড করাতে চাইলে -
gem 'sqlite3-ruby', :require => 'sqlite3' এর পরিবর্তে

gem 'sqlite3-ruby', '1.2.5', :require => 'sqlite3' এভাবে লিখতে হবে।


Rails Server:
যাই হোক, এখন আমরা রেইলসের সার্ভারটি অন করে ব্রাউজারে প্রিভিউ দেখব। কমান্ড চাপুন -
$ rails server

এবং ব্রাউজারে পিং করুন - http://localhost:3000 লিখে।



MVC :  রেইলস মডেল ভিউ এবং কনট্রোলার প্যাটার্ন অনুসারে কাজ করে। রেইলস এপ্লিকেশনে এক্সেস করতে গেলে ব্রাউজার একটি রিকোয়েস্ট পাঠায়। ওয়েব সার্ভার এটি গ্রহন করে এবং রেইলস কনট্রোলারের কাছে পৌছে দেয়। কনট্রোলার view ফাইলটিকে জেনারেট করে এবং ওয়েব পেজটি ভিজিটরকে দেখায়। ডায়নামিক সাইটের ক্ষেত্রে কনট্রোলার মডেলের সাথে কানেক্ট হয়। মডেল ডাটাবেজ থেকে ডাটা কালেক্ট করে কনট্রোলারে পাঠায় এবং শেষে view ফাইলটিকে জেনারেট করে।

আজকে এই পর্যন্তই। আগামীতে এর সম্পর্কে আরো বর্ননা করা হবে।

রুবি অন রেইলস টিউটরিয়াল পর্ব ৩: যেভাবে রেইলস এপটি সার্ভারে আপলোড করবেন

No comments:

Post a Comment

এখানে আপনি আপনার মূল্যবান মতামতটি প্রকাশ করতে পারেন।