ភាសា RUBY គឺជា Script Language ដែលអាចដំណើរការគ្រប់ប្រព័ន្ធ ប្រតិបត្តិការដូចជា Window, Mac និង UNIX ផង ដែរ ។ លក្ខណៈរបស់វា ស្រដៀងគ្នាទៅនឹង Perl, Python និង SmartTalk ផងដែរ។ ដោយឡែក ក្នុងអត្ថបទនេះ នឹងបង្ហាញ នូវការ ប្រើប្រាស់អញ្ញត្តិ (Variable) និងរបៀបនៃការផ្តល់តំលៃ (Assignment) ទៅឲ្យអញ្ញត្តិនីមួយៗ ។ អញ្ញត្តិ (Variable) គឺជាទីតាំង Memory ដែលរក្សាទុកនូវព័ត៌មាននានា សំរាប់យកទៅប្រើ ក្នុងកម្មវិធី (Program) ។អញ្ញត្តិនៅក្នុងភាសា RUBY ត្រូវបានចែកជា ៦ ប្រភេទ ។ ជាដំបូង សូមក្រឡេកមើល កូដខាងក្រោម៖
១. Global Variable:
យោងតាមកូដខាងលើ $global_variable គឺជា Global Variable ដែលចាប់ផ្តើមដោយ $ (dollar sign) ។ Global Variable អាចត្រូវបានគេប្រើ ដើម្បីអាចទាញយក ឆ្លងកាត់ Class ឬក្នុង Class ។ ដូច្នេះ គេអាចហៅប្រើ ទាំងក្នុង ClassOne និង ClassTwo ។ សាកល្បង បន្ថែមកូដ នៅខាងក្រោម ហើយ ចូលក្នុង bin directory ហើយ run commend prompt : C://RailsInstaller/Ruby2.2.0/bin>ruby ruby_variable.rb
customer1 = ClassOne.new("123", "Chhunmeng", "Phnom Penh") customer1.print_local_var() customer1.print_global_var() customer2 = ClassTwo.new customer2.print_global_var()
ជាលទ្ធផល នឹងបង្ហាញដូចខាងក្រោម៖
instance_var_id is 123 instance_var_name is Chhunmeng instance_var_addr is Phnom Penh global_variable in ClassOne is 10 global_variable in ClassTwo is 10
២. Class Variable:
នៅក្នុង ClassOne មាន @@class_variable ជា class variable ។ class variable ត្រូវបានគេប្រកាសមុនពេលយកទៅប្រើ ក្នុង Method ផ្សេងៗ ហើយ សំគាល់ដោយ @@ ។ វាជាកម្មសិទ្ធរបស់ Class ដែលប្រកាសវា ដោយអាចប្រើវា នៅពេល បង្កើត Object ។ ជាឧទាហរណ៍ customer1 = ClassOne.new មានន័យថា បង្កើត object មួយឈ្មោះ customer1 ដើម្បីអាច ប្រើ class variable និង Method របស់ ClassOne។
customer1 = ClassOne.new("123", "Chhunmeng", "Phnom Penh") customer2 = ClassOne.new("456", "Somaly", "Kean Svay") customer3 = ClassOne.new("789", "Srey Nich", "Kandal") customer1.print_class_var()
ជាលទ្ធផល នឹងបង្ហាញដូចខាងក្រោម៖
class_variable is 3
៣. Instance Variables:
@instance_var_id, @instance_var_name និង@instance_var_addr គឺជា Instance Variable ដែលសំគាល់ដោយ @ ។ តំលៃរបស់ instance variable ប្រែប្រួលទៅតាម object នីមួយៗ នៅក្នុង Method ។
customer1 = ClassOne.new("123", "Chhunmeng", "Phnom Penh") customer2 = ClassOne.new("456", "Somaly", "Kean Svay") customer3 = ClassOne.new("789", "Srey Nich", "Kandal") customer1.print_instance_var()
ជាលទ្ធផល នឹងបង្ហាញដូចខាងក្រោម៖
instance_var_id is 123 instance_var_name is Chhunmeng instance_var_addr is Phnom Penh
៤. Constant Variables:
Constant ចាប់ផ្តើមដោយអក្សរធំទាំងអស់ ដែលអាចប្រកាសនៅក្នុង Class ឬក្នុង Module ឬខាងក្រៅ សំរាប់ទាញយកជាទូទៅ ។ ជាឧទាហរណ៍៖
customer1 = ClassOne.new("123", "Chhunmeng", "Phnom Penh") customer1.print_constant_var()
ជាលទ្ធផល នឹងបង្ហាញដូចខាងក្រោម៖
CONSTANT_VARIABLE is 100
៥. Local Variable:
Local Variable គឺជាអញ្ញត្តិ (variable) ដែលបានប្រកាស ក្នុង Method ។ គេមិនអាចទាញយកមកប្រើក្រៅ Method នោះទេ។ ជាទូទៅ Local Variable ចាប់ផ្តើមដោយអក្សរតូច ឬ _ ។ នៅក្នុងកូដខាងលើ id, name និង addr ជា Local Variable ។
៦. Pseudo Variables:
Pseudo Variable ជា variable ពិសេសមួយដែលមិនអាចផ្តល់តំលៃឲ្យ មានន័យថា វាមានតំលៃស្រាប់ រួមមាន៖
- self: object ដែលទទួលបាន របស់ Method ដែលកំពុងស្ថិតនៅ ។
- true: ជាតំលៃតំណាងឲ្យ ពិត(true) ។
- false: ជាតំលៃតំណាងឲ្យ មិនពិត(false) ៕
- nil: តំលៃមិនបានបញ្ចាក់ទុកមុន ។
- __FILE__: ឈ្មោះ source file ដែលកំពុងស្ថិតនៅ ។
- __LINE__: លេខបន្ទាត់ដែលស្ថិតនៅក្នុង source file ។