Difference between revisions of "Ruby/C3/Object-Oriented-Programming-Methods/Gujarati"
From Script | Spoken-Tutorial
Jyotisolanki (Talk | contribs) |
Jyotisolanki (Talk | contribs) |
||
Line 1: | Line 1: | ||
+ | |||
+ | {| Border = 1 | ||
+ | | | '''Time''' | ||
+ | | | '''Narration''' | ||
+ | |||
+ | |- | ||
+ | | | 00:01 | ||
+ | | | '''Ruby''' માં '''Object Oriented Programming – Methods''' પરનાં સ્પોકન ટ્યુટોરીયલમાં તમારુ સ્વાગત છે. | ||
+ | |||
+ | |- | ||
+ | | | 00:07 | ||
+ | | | આ ટ્યુટોરીયલમાં આપણે શીખીશું : | ||
+ | |||
+ | |- | ||
+ | | | 00:09 | ||
+ | | |* '''instance methods''' | ||
+ | |||
+ | |- | ||
+ | | | 00:11 | ||
+ | | |* '''class methods''' | ||
+ | |||
+ | |- | ||
+ | | | 00:14 | ||
+ | | |* '''accessor methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 00:15 | ||
+ | | | અહી આપણે વાપરી રહ્યા છીએ: | ||
+ | * '''Ubuntu '''version '''12.04''' | ||
+ | |||
+ | |- | ||
+ | | | 00:19 | ||
+ | | |* '''Ruby 1.9.3''' | ||
+ | |||
+ | |- | ||
+ | | | 00:22 | ||
+ | | | આ ટ્યુટોરીયલ ના અનુસરણ માટે તમારી પાસે કાર્ય કરતું '''Internet ''' કનેક્શન હોવું જોઈએ. | ||
+ | |||
+ | |- | ||
+ | | | 00:27 | ||
+ | | | તમને '''Linux commands,''' '''Terminal '''અને '''Text-editor.''' નું જ્ઞાન હોવું જોઈએ. | ||
+ | |||
+ | |- | ||
+ | | | 00:31 | ||
+ | | | જો નથી, તો સંબંધિત ટ્યુટોરીયલો માટે, અમારી વેબસાઇટની મુલાકાત લો. | ||
+ | |||
+ | |- | ||
+ | | | 00:36 | ||
+ | | | શરૂઆત કરવા પહેલા, યાદ કરો કે આપણે “ttt” નામની એક ડીરેક્ટરી પહેલા બનાવી હતી. | ||
+ | |||
+ | |- | ||
+ | | | 00:41 | ||
+ | | | Let's go to that directory. ચાલો તે ડિરેક્ટરી પર જઈએ. | ||
+ | |||
+ | |- | ||
+ | | | 00:44 | ||
+ | | | પછી '''ruby-tutorial.''' પર. | ||
+ | |||
+ | |- | ||
+ | | | 00:47 | ||
+ | | |Create a directory named '''oop-methods''' નામની ડિરેક્ટરી બનાવો અને તેને cd કરો. | ||
+ | |||
+ | |- | ||
+ | | | 00:54 | ||
+ | | | '''Instance methods''' શું છે ? | ||
+ | |||
+ | |- | ||
+ | | | 00:56 | ||
+ | | | '''Instance methods ''' એ મેથડ છે જે તે ક્લાસના બધા '''instances ''' ના માટે ઉપલભ્ધ હોય છે. | ||
+ | |||
+ | |- | ||
+ | | | 01:03 | ||
+ | | | આગળ આપણે શીખ્યું હતું કે એક ક્લાસ ના '''objects ''' અથવા '''instances ''' કેવી રીતે બનાવાય, | ||
+ | |||
+ | |- | ||
+ | | | 01:09 | ||
+ | | | '''Ruby tutorials''' ના વેસિક લેવલ માં બતાવ્યા પ્રમાણે '''gedit ''' માં એક નવી ફાઈલ બનાવો. | ||
+ | |||
+ | |- | ||
+ | | | 01:14 | ||
+ | | | '''instance_methods.rb''' નામ આપો. | ||
+ | |||
+ | |- | ||
+ | | | 01:19 | ||
+ | | | મારી પાસે '''instance methods''' ને અમલીકરણનું એક કાર્યકારી ઉદાહરણ છે. | ||
+ | |||
+ | |- | ||
+ | | | 01:24 | ||
+ | | | આ ટ્યુટોરીયલ ને સમઝતી વખતે વચ્ચે અટકાવીને કોડ ટાઈપ કરી શકો છો. | ||
+ | |||
+ | |- | ||
+ | | | 01:29 | ||
+ | | | મેં આ ઉદાહરણ માં '''Product''' નામક એક ક્લાસ વ્યાખ્યાયિત કર્યો છે. | ||
+ | |||
+ | |- | ||
+ | | | 01:33 | ||
+ | | | મેં '''instance variables''', "name" અને "price" ને ઇનિશિલાઇઝ કરવા માટે ઇનિશિલાઇઝ મેથડ કોલ કર્યો છે. | ||
+ | |||
+ | |- | ||
+ | | | 01:41 | ||
+ | | | મેં '"name" અને "price"' નામક '''instance methods ''' ને પણ વ્યાખ્યાયિત કર્યો છે. | ||
+ | |- | ||
+ | | | 01:47 | ||
+ | | | તેમાંથી પ્રત્યેક '''instance variables''' ક્રમશ "name" અને "price" રીટર્ન કરે છે. | ||
+ | |||
+ | |- | ||
+ | | | 01:54 | ||
+ | | | '''Instance methods ''' સામાન્ય મેથડસ ની જેમ જ વ્યાખ્યાયિત થાય છે. | ||
+ | |||
+ | |- | ||
+ | | | 01:58 | ||
+ | | | પહેલા આપણે શીખ્યું હતું કે ''' Ruby.''' માં મેથડ કેવી રીતે બનાવે છે. | ||
+ | |||
+ | |- | ||
+ | | | 02:02 | ||
+ | | | ટૂંક સમયમાં, આપણે જોશું કે આ મેથડસ બધા '''instances.''' ના માટે કેવી રીતે ઉપલબ્ધ છે. | ||
+ | |||
+ | |- | ||
+ | | | 02:07 | ||
+ | | | હવે જે લોજીક આપણી પાસે છે તેને ઉપયોગ કરીએ. | ||
+ | |||
+ | |- | ||
+ | | | 02:11 | ||
+ | | | અહી મેં એક '''Product''' ઓબ્જેક્ટને ઇનિશિલાઇઝ કર્યું છે અને તેને "product_object_1" નામ આપ્યું છે. | ||
+ | |||
+ | |- | ||
+ | | | 02:18 | ||
+ | | | મેં અને '''name''' value અને '''price''' ના સાથે ઇનિશિલાઇઝ કર્યું છે. | ||
+ | |||
+ | |- | ||
+ | | | 02:24 | ||
+ | | | '''initializer block''' એ '''instance variables''' "@name" અને "@price" ને વેલ્યુ પાસ કરે છે. | ||
+ | |||
+ | |- | ||
+ | | | 02:31 | ||
+ | | | હવે આ '''product instance ''' અથવા '''object''' ઈન્સ્ટનસ મેથડ '''name''' અને '''price''' ને ઉપયોગ કરી શકીએ છીએ. | ||
+ | |||
+ | |- | ||
+ | | | 02:37 | ||
+ | | | આ મેથડસ ને કોલ કરવા પર આપણે '''instance variables''' માં સંગ્રહિત વેલ્યુ મેળવીશું. | ||
+ | |||
+ | |- | ||
+ | | | 02:43 | ||
+ | | | ચાલો હવે કોડ એક્ઝીક્યુટ કરીએ. | ||
+ | |- | ||
+ | | | 02:46 | ||
+ | | | ટર્મિનલ પર જાવ અને ટાઈપ કરો '''ruby instance_methods.rb ''' અને એન્ટર દબાવો. | ||
+ | |||
+ | |- | ||
+ | | | 02:56 | ||
+ | | | તમે જોશો કે તમે જે વેલ્યુ ને ઓબ્જેક્ટ ને ઇનિશિલાઇઝ કર્યું છે તેને પ્રિન્ટ કરો. | ||
+ | |||
+ | |- | ||
+ | | | 03:02 | ||
+ | | | કહેવા માટે "laptop" અને "35,000" | ||
+ | |||
+ | |- | ||
+ | | | 03:07 | ||
+ | | | આગળ એક અન્ય '''instance''' અથવા '''object''' ને ઇનિશિલાઇઝ કરો. | ||
+ | |||
+ | |- | ||
+ | | | 03:12 | ||
+ | | | હવે આ ઓબ્જેક્ટને '''product_object_2''' નામ આપીએ છીએ. | ||
+ | |||
+ | |- | ||
+ | | | 03:18 | ||
+ | | | આ વખતે '''name''' અને '''price''' ને વેલ્યુનો એક અન્ય સેટ આપીએ છીએ. | ||
+ | |||
+ | |- | ||
+ | | | 03:23 | ||
+ | | | હવે આ ઓબ્જેક્ટના માટે '''instance methods- "name" અને "price" કોલ કરીએ. | ||
+ | |||
+ | |- | ||
+ | | | 03:35 | ||
+ | | | આગળ, ચાલો ટર્મિનલ પર પાછા જાવ અને પહેલાની જેમ જ કોડ ને એક્ઝીક્યુટ કરો. | ||
+ | |||
+ | |- | ||
+ | | | 03:41 | ||
+ | | | તમે ધ્યાન આપશો કે આ સફળતાપૂર્વક એક્ઝીક્યુટ કરે છે અને આ નવી વેલ્યુને પ્રિન્ટ કરે છે. | ||
+ | |||
+ | |- | ||
+ | | | 03:48 | ||
+ | | |આ સાબિત કરે છે કે '''instance methods''' તે '''class Product''' ના બધા ઓબ્જેક્ટસ ના માટે ઉપલબ્ધ છે. | ||
+ | |||
+ | |- | ||
+ | | | 03:55 | ||
+ | | | હવે તમે પોતાના '''instance methods.''' લખવા માં સક્ષમ હોવા જોઈએ. | ||
+ | |||
|- | |- | ||
| | 03:59 | | | 03:59 | ||
− | | | | + | | | આગળ આપણે જોઈ શકીએ છીએ કે ક્લાસ મેથડ શું હોય છે. |
|- | |- | ||
| | 04:04 | | | 04:04 | ||
− | | | | + | | | ક્લાસ મેથડસ ફક્ત ક્લાસના લીધે ઉપલબ્ધ મેથડ હોય છે. |
|- | |- | ||
| | 04:09 | | | 04:09 | ||
− | | | | + | | | આ મેથડ ક્લાસના '''instances''' નમાં માટે ઉપલબ્ધ નથી. |
|- | |- | ||
| | 04:14 | | | 04:14 | ||
− | | | | + | | | તમે વિવિધ રીતે '''class methods''' ને વ્યાખ્યાયિત કરી શકીએ છીએ. |
|- | |- | ||
| | 04:16 | | | 04:16 | ||
− | | | | + | | | ચાલો ઉદાહરણ ને જોઈએ. |
|- | |- | ||
| | 04:18 | | | 04:18 | ||
− | | | | + | | | બેસિક લેવલ ના '''Ruby tutorials''' માં પ્રદશિત ની જેમ '''gedit ''' માં એક નવી ફાઈલ બનાવો. |
|- | |- | ||
| | 04:24 | | | 04:24 | ||
− | | | | + | | | '''class_methods.rb''' નામ આપો. |
|- | |- | ||
| | 04:28 | | | 04:28 | ||
− | | | | + | | |\ મારી પાસે '''class methods''' નું એક કાર્યકરી ઉદાહરણ છે. |
|- | |- | ||
| | 04:32 | | | 04:32 | ||
− | | | | + | | | તમે ટ્યુટોરીયલને સમઝતી વખતે વચ્ચે અટકાવીને કોડ ટાઈપ કરી શકો છો. |
|- | |- | ||
| | 04:36 | | | 04:36 | ||
− | | | | + | | | મેં પહેલાની જેમ '''Product class''' ને વ્યાખ્યાયિત કર્યું છે. |
|- | |- | ||
| | 04:40 | | | 04:40 | ||
− | | | | + | | | મેં પહેલાની જેમ '''initializer''', ને પણ કોલ કર્યું છે. |
|- | |- | ||
| | 04:44 | | | 04:44 | ||
− | | | | + | | |જયારે કે આ વખતે મેં '''description''' નામક એક વધુ '''argument''' ઉમેર્યું છે. |
+ | |- | ||
+ | | | 04:48 | ||
+ | | |I am also using '''class variables''' to hold the values, unlike '''instance variables''' earlier. | ||
+ | |||
+ | |- | ||
+ | | | 04:55 | ||
+ | | | This '''class''' will demonstrate to you the 3 different ways one can define '''class methods.''' | ||
+ | |||
+ | |- | ||
+ | | | 05:01 | ||
+ | | |Checkout the '''class method '''declaration for '''name'''. | ||
+ | |||
+ | |- | ||
+ | | | 05:06 | ||
+ | | |Here, it is defined using the '''class name "Product"'''. | ||
+ | |||
+ | |- | ||
+ | | |05:10 | ||
+ | | | Then, checkout the second '''class methods''' declaration. | ||
+ | |||
+ | |- | ||
+ | | | 05:14 | ||
+ | | |Here I have used the '''"self" keyword'''. | ||
+ | |||
+ | |- | ||
+ | | | 05:18 | ||
+ | | | Next, checkout the third way you can define '''class methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 05:23 | ||
+ | | | Now let us implement these '''class methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 05:27 | ||
+ | | | Let us first initialize an '''object''' of '''Product,''' like before. | ||
+ | |||
+ | |- | ||
+ | | | 05:32 | ||
+ | | |This time we are also giving a value for the '''description'''. | ||
+ | |||
+ | |- | ||
+ | | | 05:37 | ||
+ | | | Now, let us invoke the '''class methods''' as shown here. | ||
+ | |||
+ | |- | ||
+ | | | 05:42 | ||
+ | | | Now, let us execute the code and inspect the output. | ||
+ | |||
+ | |- | ||
+ | | | 05:47 | ||
+ | | | Switch to the '''terminal''' and execute the code like before. | ||
+ | |||
+ | |- | ||
+ | | | 05:54 | ||
+ | | | You will notice that it will print the values for '''name, price '''and''' description.''' | ||
+ | |||
+ | |- | ||
+ | | | 05:59 | ||
+ | | | Now, you should be able to write your own '''class methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:03 | ||
+ | | | Next we shall see what '''accessor methods''' are. | ||
+ | |||
+ | |- | ||
+ | | | 06:07 | ||
+ | | | '''Ruby''' uses '''accessor methods''' to access data, defined within '''classes'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:13 | ||
+ | | |'''Accessor methods''' comprise of '''setter methods''' and '''getter methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:18 | ||
+ | | |'''Setter methods''' set the values. | ||
+ | |||
+ | |- | ||
+ | | | 06:22 | ||
+ | | |'''Getter methods''' get those values. | ||
+ | |||
+ | |- | ||
+ | | | 06:24 | ||
+ | | |'''Ruby''' uses the word '''attr_accessor''' to declare these '''methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:31 | ||
+ | | | Let us look at an example of '''accessor methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:35 | ||
+ | | | Create a new file in '''gedit '''as shown in the basic level '''Ruby tutorials'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:39 | ||
+ | | |Name it '''accessor_methods.rb''' | ||
+ | |||
+ | |- | ||
+ | | | 06:43 | ||
+ | | | I have a working example of implementing '''accessor methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 06:47 | ||
+ | | |You can pause the tutorial and type the code as we go through it. | ||
+ | |||
+ | |- | ||
+ | | | 06:52 | ||
+ | | | I have defined a '''class''' named '''Product,''' in this example. | ||
+ | |||
+ | |- | ||
+ | | | 06:56 | ||
+ | | |I have declared '''attr_accessor '''for 'name' and 'price'. | ||
+ | |||
+ | |- | ||
+ | | | 07:01 | ||
+ | | |That is all that is required to use these types of '''methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 07:05 | ||
+ | | | Now let us put it to action. | ||
+ | |||
+ | |- | ||
+ | | | 07:07 | ||
+ | | |I have initialized a '''Product object'''. | ||
+ | |||
+ | |- | ||
+ | | | 07:10 | ||
+ | | | Then, I have set the '''name''' and '''price''' of the '''product''' object. | ||
+ | |||
+ | |- | ||
+ | | | 07:14 | ||
+ | | |This is possible because the '''attr_declaration,''' by default, creates '''methods''' for setting values. | ||
+ | |||
+ | |- | ||
+ | | | 07:22 | ||
+ | | | I have then attempted to print the values using the '''getter methods''' for 'name' and 'price'. | ||
+ | |||
+ | |- | ||
+ | | | 07:28 | ||
+ | | |These '''getter methods''' were also generated by the declaration of '''attr_accessor'''. | ||
+ | |||
+ | |- | ||
+ | | | 07:35 | ||
+ | | | Now let us '''execute''' the code like before. | ||
+ | |||
+ | |- | ||
+ | | | 07:40 | ||
+ | | | You will notice that it prints the values that were set. | ||
+ | |||
+ | |- | ||
+ | | | 07:44 | ||
+ | | | By now, you should be able to write your own '''accessor methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 07:50 | ||
+ | | | One thing to note is that '''accessor methods''' are, by default,''' instance methods.''' | ||
+ | |||
+ | |- | ||
+ | | | 07:55 | ||
+ | | |Thus they can be accessed by different '''instances''' of the '''class Product'''. | ||
+ | |||
+ | |- | ||
+ | | | 08:00 | ||
+ | | | In this tutorial, we have learnt about: '''instance methods''', '''class methods '''and '''accessor methods'''. | ||
+ | |||
+ | |- | ||
+ | | | 08:06 | ||
+ | | | As an assignment: define a '''class''' named '''Temperature'''. | ||
+ | |||
+ | |- | ||
+ | | | 08:10 | ||
+ | | | Write an '''instance method '''using Ruby's '''accessor method''' syntax. | ||
+ | |||
+ | |- | ||
+ | | | 08:15 | ||
+ | | | This '''method''' should calculate the '''Celsius '''for the given '''Fahrenheit.''' | ||
+ | |||
+ | |- | ||
+ | | | 08:20 | ||
+ | | | Watch the video available at the following link. | ||
+ | |||
+ | |- | ||
+ | | | 08:23 | ||
+ | | |It summarizes the Spoken Tutorial project. | ||
+ | |||
+ | |- | ||
+ | | | 08:26 | ||
+ | | |If you do not have good bandwidth, you can download and watch it. | ||
+ | |||
+ | |- | ||
+ | | |08:30 | ||
+ | | | The Spoken Tutorial project team: | ||
+ | |||
+ | |- | ||
+ | | | 08:31 | ||
+ | | |* Conducts workshops using spoken tutorials. | ||
+ | |||
+ | |- | ||
+ | | | 08:34 | ||
+ | | |* Gives certificates to those who pass an online test. | ||
+ | |||
+ | |- | ||
+ | | | 08:38 | ||
+ | | |For more details, please write to: | ||
+ | contact at spoken hyphen tutorial dot org. | ||
+ | |||
+ | |- | ||
+ | | | 08:44 | ||
+ | | | '''Spoken Tutorial''' project is a part of the '''Talk to a Teacher''' project. | ||
+ | |||
+ | |- | ||
+ | | | 08:48 | ||
+ | | |It is supported by the National Mission on Education through ICT, MHRD, Government of India. | ||
+ | |||
+ | |- | ||
+ | | | 08:55 | ||
+ | | |More information on this mission is available at: | ||
+ | spoken hyphen tutorial dot org slash NMEICT hyphen Intro. | ||
+ | |||
+ | |- | ||
+ | | | 09:03 | ||
+ | | | This is Anjana Nair, signing off. Thank you. | ||
+ | |||
+ | |} |
Revision as of 11:48, 10 February 2016
Time | Narration |
00:01 | Ruby માં Object Oriented Programming – Methods પરનાં સ્પોકન ટ્યુટોરીયલમાં તમારુ સ્વાગત છે. |
00:07 | આ ટ્યુટોરીયલમાં આપણે શીખીશું : |
00:09 | * instance methods |
00:11 | * class methods |
00:14 | * accessor methods. |
00:15 | અહી આપણે વાપરી રહ્યા છીએ:
|
00:19 | * Ruby 1.9.3 |
00:22 | આ ટ્યુટોરીયલ ના અનુસરણ માટે તમારી પાસે કાર્ય કરતું Internet કનેક્શન હોવું જોઈએ. |
00:27 | તમને Linux commands, Terminal અને Text-editor. નું જ્ઞાન હોવું જોઈએ. |
00:31 | જો નથી, તો સંબંધિત ટ્યુટોરીયલો માટે, અમારી વેબસાઇટની મુલાકાત લો. |
00:36 | શરૂઆત કરવા પહેલા, યાદ કરો કે આપણે “ttt” નામની એક ડીરેક્ટરી પહેલા બનાવી હતી. |
00:41 | Let's go to that directory. ચાલો તે ડિરેક્ટરી પર જઈએ. |
00:44 | પછી ruby-tutorial. પર. |
00:47 | Create a directory named oop-methods નામની ડિરેક્ટરી બનાવો અને તેને cd કરો. |
00:54 | Instance methods શું છે ? |
00:56 | Instance methods એ મેથડ છે જે તે ક્લાસના બધા instances ના માટે ઉપલભ્ધ હોય છે. |
01:03 | આગળ આપણે શીખ્યું હતું કે એક ક્લાસ ના objects અથવા instances કેવી રીતે બનાવાય, |
01:09 | Ruby tutorials ના વેસિક લેવલ માં બતાવ્યા પ્રમાણે gedit માં એક નવી ફાઈલ બનાવો. |
01:14 | instance_methods.rb નામ આપો. |
01:19 | મારી પાસે instance methods ને અમલીકરણનું એક કાર્યકારી ઉદાહરણ છે. |
01:24 | આ ટ્યુટોરીયલ ને સમઝતી વખતે વચ્ચે અટકાવીને કોડ ટાઈપ કરી શકો છો. |
01:29 | મેં આ ઉદાહરણ માં Product નામક એક ક્લાસ વ્યાખ્યાયિત કર્યો છે. |
01:33 | મેં instance variables, "name" અને "price" ને ઇનિશિલાઇઝ કરવા માટે ઇનિશિલાઇઝ મેથડ કોલ કર્યો છે. |
01:41 | મેં '"name" અને "price"' નામક instance methods ને પણ વ્યાખ્યાયિત કર્યો છે. |
01:47 | તેમાંથી પ્રત્યેક instance variables ક્રમશ "name" અને "price" રીટર્ન કરે છે. |
01:54 | Instance methods સામાન્ય મેથડસ ની જેમ જ વ્યાખ્યાયિત થાય છે. |
01:58 | પહેલા આપણે શીખ્યું હતું કે Ruby. માં મેથડ કેવી રીતે બનાવે છે. |
02:02 | ટૂંક સમયમાં, આપણે જોશું કે આ મેથડસ બધા instances. ના માટે કેવી રીતે ઉપલબ્ધ છે. |
02:07 | હવે જે લોજીક આપણી પાસે છે તેને ઉપયોગ કરીએ. |
02:11 | અહી મેં એક Product ઓબ્જેક્ટને ઇનિશિલાઇઝ કર્યું છે અને તેને "product_object_1" નામ આપ્યું છે. |
02:18 | મેં અને name value અને price ના સાથે ઇનિશિલાઇઝ કર્યું છે. |
02:24 | initializer block એ instance variables "@name" અને "@price" ને વેલ્યુ પાસ કરે છે. |
02:31 | હવે આ product instance અથવા object ઈન્સ્ટનસ મેથડ name અને price ને ઉપયોગ કરી શકીએ છીએ. |
02:37 | આ મેથડસ ને કોલ કરવા પર આપણે instance variables માં સંગ્રહિત વેલ્યુ મેળવીશું. |
02:43 | ચાલો હવે કોડ એક્ઝીક્યુટ કરીએ. |
02:46 | ટર્મિનલ પર જાવ અને ટાઈપ કરો ruby instance_methods.rb અને એન્ટર દબાવો. |
02:56 | તમે જોશો કે તમે જે વેલ્યુ ને ઓબ્જેક્ટ ને ઇનિશિલાઇઝ કર્યું છે તેને પ્રિન્ટ કરો. |
03:02 | કહેવા માટે "laptop" અને "35,000" |
03:07 | આગળ એક અન્ય instance અથવા object ને ઇનિશિલાઇઝ કરો. |
03:12 | હવે આ ઓબ્જેક્ટને product_object_2 નામ આપીએ છીએ. |
03:18 | આ વખતે name અને price ને વેલ્યુનો એક અન્ય સેટ આપીએ છીએ. |
03:23 | હવે આ ઓબ્જેક્ટના માટે instance methods- "name" અને "price" કોલ કરીએ. |
03:35 | આગળ, ચાલો ટર્મિનલ પર પાછા જાવ અને પહેલાની જેમ જ કોડ ને એક્ઝીક્યુટ કરો. |
03:41 | તમે ધ્યાન આપશો કે આ સફળતાપૂર્વક એક્ઝીક્યુટ કરે છે અને આ નવી વેલ્યુને પ્રિન્ટ કરે છે. |
03:48 | આ સાબિત કરે છે કે instance methods તે class Product ના બધા ઓબ્જેક્ટસ ના માટે ઉપલબ્ધ છે. |
03:55 | હવે તમે પોતાના instance methods. લખવા માં સક્ષમ હોવા જોઈએ. |
03:59 | આગળ આપણે જોઈ શકીએ છીએ કે ક્લાસ મેથડ શું હોય છે. |
04:04 | ક્લાસ મેથડસ ફક્ત ક્લાસના લીધે ઉપલબ્ધ મેથડ હોય છે. |
04:09 | આ મેથડ ક્લાસના instances નમાં માટે ઉપલબ્ધ નથી. |
04:14 | તમે વિવિધ રીતે class methods ને વ્યાખ્યાયિત કરી શકીએ છીએ. |
04:16 | ચાલો ઉદાહરણ ને જોઈએ. |
04:18 | બેસિક લેવલ ના Ruby tutorials માં પ્રદશિત ની જેમ gedit માં એક નવી ફાઈલ બનાવો. |
04:24 | class_methods.rb નામ આપો. |
04:28 | \ મારી પાસે class methods નું એક કાર્યકરી ઉદાહરણ છે. |
04:32 | તમે ટ્યુટોરીયલને સમઝતી વખતે વચ્ચે અટકાવીને કોડ ટાઈપ કરી શકો છો. |
04:36 | મેં પહેલાની જેમ Product class ને વ્યાખ્યાયિત કર્યું છે. |
04:40 | મેં પહેલાની જેમ initializer, ને પણ કોલ કર્યું છે. |
04:44 | જયારે કે આ વખતે મેં description નામક એક વધુ argument ઉમેર્યું છે. |
04:48 | I am also using class variables to hold the values, unlike instance variables earlier. |
04:55 | This class will demonstrate to you the 3 different ways one can define class methods. |
05:01 | Checkout the class method declaration for name. |
05:06 | Here, it is defined using the class name "Product". |
05:10 | Then, checkout the second class methods declaration. |
05:14 | Here I have used the "self" keyword. |
05:18 | Next, checkout the third way you can define class methods. |
05:23 | Now let us implement these class methods. |
05:27 | Let us first initialize an object of Product, like before. |
05:32 | This time we are also giving a value for the description. |
05:37 | Now, let us invoke the class methods as shown here. |
05:42 | Now, let us execute the code and inspect the output. |
05:47 | Switch to the terminal and execute the code like before. |
05:54 | You will notice that it will print the values for name, price and description. |
05:59 | Now, you should be able to write your own class methods. |
06:03 | Next we shall see what accessor methods are. |
06:07 | Ruby uses accessor methods to access data, defined within classes. |
06:13 | Accessor methods comprise of setter methods and getter methods. |
06:18 | Setter methods set the values. |
06:22 | Getter methods get those values. |
06:24 | Ruby uses the word attr_accessor to declare these methods. |
06:31 | Let us look at an example of accessor methods. |
06:35 | Create a new file in gedit as shown in the basic level Ruby tutorials. |
06:39 | Name it accessor_methods.rb |
06:43 | I have a working example of implementing accessor methods. |
06:47 | You can pause the tutorial and type the code as we go through it. |
06:52 | I have defined a class named Product, in this example. |
06:56 | I have declared attr_accessor for 'name' and 'price'. |
07:01 | That is all that is required to use these types of methods. |
07:05 | Now let us put it to action. |
07:07 | I have initialized a Product object. |
07:10 | Then, I have set the name and price of the product object. |
07:14 | This is possible because the attr_declaration, by default, creates methods for setting values. |
07:22 | I have then attempted to print the values using the getter methods for 'name' and 'price'. |
07:28 | These getter methods were also generated by the declaration of attr_accessor. |
07:35 | Now let us execute the code like before. |
07:40 | You will notice that it prints the values that were set. |
07:44 | By now, you should be able to write your own accessor methods. |
07:50 | One thing to note is that accessor methods are, by default, instance methods. |
07:55 | Thus they can be accessed by different instances of the class Product. |
08:00 | In this tutorial, we have learnt about: instance methods, class methods and accessor methods. |
08:06 | As an assignment: define a class named Temperature. |
08:10 | Write an instance method using Ruby's accessor method syntax. |
08:15 | This method should calculate the Celsius for the given Fahrenheit. |
08:20 | Watch the video available at the following link. |
08:23 | It summarizes the Spoken Tutorial project. |
08:26 | If you do not have good bandwidth, you can download and watch it. |
08:30 | The Spoken Tutorial project team: |
08:31 | * Conducts workshops using spoken tutorials. |
08:34 | * Gives certificates to those who pass an online test. |
08:38 | For more details, please write to:
contact at spoken hyphen tutorial dot org. |
08:44 | Spoken Tutorial project is a part of the Talk to a Teacher project. |
08:48 | It is supported by the National Mission on Education through ICT, MHRD, Government of India. |
08:55 | More information on this mission is available at:
spoken hyphen tutorial dot org slash NMEICT hyphen Intro. |
09:03 | This is Anjana Nair, signing off. Thank you. |