Difference between revisions of "Ruby/C3/Object-Oriented-Programming-Methods/Bengali"

From Script | Spoken-Tutorial
Jump to: navigation, search
 
Line 10: Line 10:
 
|-  
 
|-  
 
| |  00:07
 
| |  00:07
| | এখানে ব্যবহার করা শিখব:
+
| | এখানে ব্যবহার করা শিখব
  
 
|-
 
|-
Line 22: Line 22:
 
|-
 
|-
 
| | 00:14
 
| | 00:14
| |  অ্যাক্সেসর মেথড
+
| |  অ্যাক্সেসর মেথড। এখানে আমরা ব্যবহৃত করছি উবুন্টু সংস্করণ 12.04
 
+
|-
+
| | 00:15
+
| | এখানে আমরা ব্যবহৃত করছি উবুন্টু সংস্করণ 12.04
+
  
 
|-
 
|-
Line 110: Line 106:
 
|-
 
|-
 
| | 01:58
 
| | 01:58
| |এর আগে আমরা রুবিতে methods তৈরী করা শিখেছি।
+
| |এর আগে আমরা রুবিতে methods তৈরী করা শিখেছি।
  
 
|-
 
|-
Line 122: Line 118:
 
|-
 
|-
 
| | 02:11
 
| | 02:11
| | এখানে, আমি একটি প্রোডাক্ট অবজেক্ট ইনিসিয়েলাইজ করে এর নাম দেই product_object_1.
+
| | এখানে, আমি একটি প্রোডাক্ট অবজেক্ট ইনিসিয়েলাইজ করে এর নাম দেই product_object_1
  
 
|-
 
|-
Line 154: Line 150:
 
|-
 
|-
 
| | 03:02
 
| | 03:02
| |যেমন, ল্যাপটপ এবং 35,000.
+
| |যেমন, ল্যাপটপ এবং 35,000
  
 
|-
 
|-
Line 162: Line 158:
 
|-
 
|-
 
| | 03:12
 
| | 03:12
| |এই অবজেক্টের নাম দিন product_object_2.
+
| |এই অবজেক্টের নাম দিন product_object_2
  
 
|-
 
|-
Line 198: Line 194:
 
|-
 
|-
 
| | 04:09
 
| | 04:09
| |এই মেথডস ক্লাসের ইনস্ট্যান্স এ উপলব্ধ নয়।
+
| |এই মেথডস ক্লাসের ইনস্ট্যান্স এ উপলব্ধ নয়।
  
 
|-
 
|-
Line 278: Line 274:
 
|-
 
|-
 
| | 05:37
 
| | 05:37
| | এখন এখানে দেখানো ক্লাস মেথডস ইন্ভোক করি।
+
| | এখন এখানে দেখানো ক্লাস মেথডস ইন্ভোক করি।
  
 
|-
 
|-

Latest revision as of 14:30, 23 February 2017

Time Narration
00:01 Ruby তে Object Oriented Programming Methods এর টিউটোরিয়ালে আপনাদের স্বাগত।
00:07 এখানে ব্যবহার করা শিখব
00:09 ইনস্ট্যান্স মেথড
00:11 ক্লাস মেথড
00:14 অ্যাক্সেসর মেথড। এখানে আমরা ব্যবহৃত করছি উবুন্টু সংস্করণ 12.04
00:19 Ruby1.9.3
00:22 টিউটোরিয়ালটি অনুসরণ করতে আপনার কার্যকর ইন্টারনেট সংযোগ প্রয়োজন।
00:27 আপনার লিনাক্স কমান্ড, টার্মিনাল এবং টেক্সট এডিটর সম্পর্কে জানা দরকার।
00:31 না হলে প্রাসঙ্গিক টিউটোরিয়াল জন্য আমাদের ওয়েবসাইটে যান।
00:36 শুরু করার পূর্বে, পূর্বে নির্মিত “ttt” ডাইরেক্টরি পুনরায় কল করি।
00:41 সেই ডাইরেক্টরিতে যাই।
00:44 তারপর রুবি টিউটোরিয়ালে।
00:47 oop-methods মানে একটি ডাইরেক্টরি তৈরী করুন এবং এটিতে cd রাখুন।
00:54 ইনস্ট্যান্স মেথড কি?
00:56 ইনস্ট্যান্স মেথড সেই মেথড যা ক্লাসের সকল ইনস্ট্যান্সে উপলব্ধ।
01:03 পূর্বে আমরা শিখেছি যে ক্লাসের অবজেক্ট বা ইনস্ট্যান্স কিভাবে তৈরী করে।
01:09 বেসিক লেভেল রুবি টিউটোরিয়ালে প্রদর্শিত gedit এ একটি নতুন ফাইল তৈরী করুন।
01:14 এর নাম দিন instance_methods.rb
01:19 আমার কাছে ইনস্ট্যান্স মেথড বাস্তবায়নের একটি উদাহরণ রয়েছে।
01:24 আপনি টিউটোরিয়াল থামাতে পারেন এবং পরে কোড লিখতে পারেন।
01:29 আমি এই উদাহরণে Product নামে ক্লাস সঙ্গায়িত করেছি।
01:33 আমি ইনস্ট্যান্স ভ্যারিয়েবল "name" এবং "price" ইনিসিয়েলাইজ করতে initialize মেথড কল করি।
01:41 এছাড়াও "name" এবং "price" নামে ইনস্ট্যান্স মেথড সঙ্গায়িত করেছি।
01:47 তাদের প্রত্যেকটি যথাক্রমে "name" এবং "price" ইনস্ট্যান্স ভ্যারিয়েবল ফেরৎ দেয়।
01:54 ইনস্ট্যান্স ভ্যারিয়েবল একটিস্বাভাবিক মেথডের মত সংজ্ঞায়িত হয়েছে।
01:58 এর আগে আমরা রুবিতে methods তৈরী করা শিখেছি।
02:02 শীঘ্রই, এই মেথড সকল ইনস্ট্যান্স এ কিভাবে উপলব্ধ তা দেখবো।
02:07 এখন আমাদের কাছে থাকা যুক্তি বাস্তবায়িত করি।
02:11 এখানে, আমি একটি প্রোডাক্ট অবজেক্ট ইনিসিয়েলাইজ করে এর নাম দেই product_object_1
02:18 আমি এটি name ভ্যালু এবং price ভ্যালু হিসাবে ইনিসিয়েলাইজ করেছি।
02:24 ইনিসিয়েলাইজর ব্লক ভ্যালু ইনস্ট্যান্স ভ্যারিয়েবল @name এবং @price এ পাস করে।
02:31 এখন এই প্রোডাক্ট ইনস্ট্যান্স বা অবজেক্ট ইনস্ট্যান্স মেথড name এবং price ব্যবহার করতে পারে।
02:37 এই পদ্ধতি ইন্ভোক করে, আমরা ইনস্ট্যান্স ভ্যারিয়েবলে সংরক্ষিত মান পাই।
02:43 এখন কোড এক্সিকিউট করি।
02:46 টার্মিনালে যান এবং লিখুন ruby instance_methods.rb এবং আউটপুট দেখতে এন্টার টিপুন।
02:56 আপনি দেখতে পারেন যে এটি অবজেক্টের সাথে ইনিসিয়েলায়জ করা মান প্রিন্ট করবে।
03:02 যেমন, ল্যাপটপ এবং 35,000
03:07 এরপর, অন্য ইনস্ট্যান্স বা অবজেক্ট ইনিসিয়েলাইজ করা।
03:12 এই অবজেক্টের নাম দিন product_object_2
03:18 এখন, name এবং price এর জন্য ভিন্ন সেটের মান দিন।
03:23 এখন এই অবজেক্টের জন্য "name" এবং"price" ইনস্ট্যান্স মেথড কল করি।
03:35 এরপর টার্মিনাললে ফিরে যাই এবং আগের মতই কোড এক্সিকিউট করি।
03:41 আপনি লক্ষ্য করবেন যে এটি সফলভাবে এক্সিকিউট করে এবং এটি নতুন মান প্রিন্ট করে।
03:48 এটি প্রমান করে যে ইনস্ট্যান্স মেথড ক্লাস প্রোডাক্টের সকল অবজেক্টে উপলব্ধ।
03:55 এখন আপনার নিজের ইনস্ট্যান্স মেথড লিখতে সক্ষম হওয়া উচিত।
03:59 এরপর দেখি যে ক্লাস মেথড কি।
04:04 Class মেথডস হল সেই মেথড যা শুধুমাত্র ক্লাসে উপলব্ধ।
04:09 এই মেথডস ক্লাসের ইনস্ট্যান্স এ উপলব্ধ নয়।
04:14 আপনি ক্লাস মেথডস ভিন্ন উপায়ে সঙ্গায়িত করতে পারেন।
04:16 একটি উদাহরণ দেখি।
04:18 বেসিক লেভেল রুবি টিউটোরিয়ালে প্রদর্শিত gedit এ একটি নতুন ফাইল তৈরী করি।
04:24 এর নাম দিন class_methods.rb
04:28 আমার ক্লাস মেথডসের কার্যরত উদাহরণ রয়েছে।
04:32 আপনি টিউটোরিয়াল এবং পরে এই কোড লিখতে পারেন।
04:36 আমি আগের মতই একটি প্রোডাক্ট ক্লাস সঙ্গায়িত করেছি।
04:40 আমি আগের মতই একটি ইনিসিয়েলাইজর কল করেছি।
04:44 যদিও, এই সময় আমি description নামে একটি অতিরিক্ত আর্গুমেন্ট যোগ করেছি।
04:48 আমি ইনস্ট্যান্স ভ্যারিয়েবলের মত ভ্যালু ধরে রাখতে আগে ক্লাস ভ্যারিয়েবলও ব্যবহার করছি।
04:55 এই ক্লাস আপনাকে ক্লাস মেথড সঙ্গায়িত করার 3 টি বিভিন্ন উপায় প্রদর্শন করবে।
05:01 name এর জন্য ক্লাস মেথড ডিক্লারেশন যাচাই করুন।
05:06 এখানে এটি ক্লাস নেম Product ব্যবহার করে সংজ্ঞায়িত হয়েছে।
05:10 তারপর, দ্বিতীয় ক্লাস মেথড ডিক্লারেশন যাচাই করুন।
05:14 এখানে আমি self কীওয়ার্ড ব্যবহার করেছি।
05:18 এরপর ক্লাস মেথডস সঙ্গায়িত করার তৃতীয় উপায় যাচাই করি।
05:23 এখন এই ক্লাস মেথডস বাস্তবায়িত করি।
05:27 প্রথমে আগের মত Product এর অবজেক্ট ইনিসিয়েলাইজ করি।
05:32 এই সময় আমরা বর্ণনের জন্য একটি মান ও প্রদান করছি।
05:37 এখন এখানে দেখানো ক্লাস মেথডস ইন্ভোক করি।
05:42 এখন কোড এক্সিকিউট করি এবং আউটপুট দেখি।
05:47 টার্মিনালে ফিরে যাই এবং আগের মতই কোড এক্সিকিউট করি।
05:54 আপনি লক্ষ্য করবেন যে এটির নাম, প্রাইস এবং ডেসক্রিপশনের মান প্রিন্ট করবে।
05:59 এখন আপনি আপনার নিজের ক্লাস মেথডস লিখতে সক্ষম হবেন।
06:03 এরপর আমরা দেখব accessor মেথডস কি।
06:07 রুবি ক্লাসে সংজ্ঞায়িত ডেটা অ্যাক্সেস করতে accessor মেথডস ব্যবহার করে।
06:13 accessor মেথডস setter মেথডস এবং getter মেথডস দ্বারা নির্মিত।
06:18 setter মেথডস ভ্যালু সেট করে।
06:22 Getter methods সেই ভ্যালু প্রাপ্ত করে।
06:24 রুবি এই মেথড ঘোষিত করতে attr_accessor শব্দ ব্যবহার করে।
06:31 এখন accessor মেথডস এর উদাহরণ দেখি।
06:35 বেসিক লেভেল রুবি টিউটোরিয়ালে প্রদর্শিত gedit এ একটি নতুন ফাইল তৈরী করুন।
06:39 এর নাম দিন accessor_methods.rb
06:43 আমার কাছে accessor মেথডস বাস্তবায়নের কার্যরত উদাহরণ রয়েছে।
06:47 আপনি টিউটোরিয়াল থামাতে পারেন এবং পরে কোড লিখতে পারেন।
06:52 আমি এই উদাহরণে, Product নামে ক্লাস সঙ্গায়িত করেছি।
06:56 আমি name এবং price এর জন্য attr_accessor ঘোষিত করেছি।
07:01 এটি এই ধরনের মেথডস ব্যবহার করার প্রয়োজনীয় উপায়।
07:05 এখন এটি নিয়ে কাজ করি।
07:07 আমি একটি Product অবজেক্ট ইনিসিয়েলাইজ করেছি।
07:10 তারপর, আমি Product অবজেক্টের নাম এবং প্রাইস সেট করেছি।
07:14 এটি সম্ভব কারণ Attr_declaration, ডিফল্টরূপে, মান নির্ধারণের জন্য মেথডস তৈরী করে।
07:22 name এবং price এর জন্য getter মেথডস ব্যবহার করে তারপর মান প্রিন্ট করার চেষ্টা করেছি।
07:28 এই getter মেথডস ও attr_accessor ঘোষিত করে উত্পন্ন করা হয়েছে।
07:35 এখন আগের মতই কোড এক্সিকিউট করি।
07:40 আপনি লক্ষ্য করবেন যে এটি সেট করা মান প্রিন্ট করে।
07:44 এখন, আপনি আপনার নিজের accessor মেথড লিখতে সক্ষম হবেন।
07:50 উল্লেখ্য যে accessor মেথড ডিফল্টরূপে ইনস্ট্যান্স মেথডস।
07:55 এইভাবে তারা Product ক্লাসের ভিন্ন ইনস্ট্যান্স দ্বারা এক্সেস করা যেতে পারে।
08:00 এই টিউটোরিয়ালে আমরা শিখেছি: ইনস্ট্যান্স মেথডস, ক্লাস মেথডস এবং অ্যাক্সেসর মেথডস।
08:06 নির্দেশিত কাজ হিসাবে: Temperature নামে ক্লাস সঙ্গায়িত করুন।
08:10 রুবির অ্যাক্সেসর মেথড সিনট্যাক্স ব্যবহার করে একটি ইনস্ট্যান্স মেথড লিখুন।
08:15 এই মেথডের প্রদত্ত ফারেনহাইটের জন্য সেলসিয়াস নিরূপণ করা উচিত।
08:20 এই লিঙ্কে উপলব্ধ ভিডিওটি দেখুন।
08:23 এটি প্রকল্পকে সারসংক্ষেপে বোঝায়।
08:26 ভাল ব্যান্ডউইডথ না থাকলে ভিডিওটি ডাউনলোড করে দেখুন।
08:30 স্পোকেন টিউটোরিয়াল প্রকল্প দল
08:31 কর্মশালার আয়োজন করে।
08:34 অনলাইন পরীক্ষা পাস করলে প্রশংসাপত্র দেয়।
08:38 বিস্তারিত তথ্যের জন্য contact@spoken-tutorial.org তে ইমেল করুন।
08:44 স্পোকেন টিউটোরিয়াল প্রকল্প Talk to a Teacher প্রকল্পের অংশবিশেষ।
08:48 এটি ভারত সরকারের ICT, MHRD এর জাতীয় শিক্ষা মিশন দ্বারা সমর্থিত।
08:55 এই বিষয়ে বিস্তারিত তথ্য এই লিঙ্কে প্রাপ্তিসাধ্য।
09:03 আমি কৌশিক দত্ত এই টিউটোরিয়ালটি অনুবাদ করেছি। অংশগ্রহণের জন্য ধন্যবাদ।

Contributors and Content Editors

Kaushik Datta