# ரூபி ஆன் ரெயில்ஸ்



**ரெயில்ஸ்** அல்லது **RoR** எனப் பெரும்பாலும் சுருக்கப்படும் **ரூபி ஆன் ரெயில்ஸ்** என்பது ரூபி நிரலாக்க மொழிக்கான ஒரு திறந்த மூல வலைப் பயன்பாட்டுக் கட்டமைப்பு ஆகும். இது இணைய உருவாக்குநர்களின் துரிதமான உருவாக்கத்துக்காக பயன்படுத்தப்படும் அகைல் உருவாக்க முறைமையுடன் பயன்படுத்தப்படுவதற்காக வடிவமைக்கப்பட்டது.  

## வரலாறு
37சிக்னல்ஸின் (தற்போது வலைப் பயன்பாட்டு நிறுவனமாக இருக்கிறது) திட்டப்பணி மேலாண்மைக் கருவியான பேஸ்கேம்ப்பில் டேவிட் ஹெய்னமேயர் ஹான்சன் தனது பணியின் போது ரூபி ஆன் ரெயில்ஸை வடிவமைத்தார்.  
2004 ஆம் ஆண்டு ஜூலை மாதத்தில் ரெயில்ஸை திறந்த மூலமாக முதன் முதலில் ஹெய்னமேயர் ஹான்சன் வெளியிட்டார். ஆனால் 2005 ஆம் ஆண்டு பிப்ரவரி மாதம் வரை திட்டப்பணிக்கான இசைவு உரிமைகள் பங்கீட்டை வழங்கியிருக்கவில்லை.  
2006 ஆம் ஆண்டு ஆகஸ்ட் மாதத்தில் ஆப்பிள் அதன் மேக் OS X v10.5 "லியோபார்ட்" உடன் ரூபி ஆன் ரெயில்ஸை அனுப்புவதாக அறிவித்தது இந்த கட்டமைப்புக்கு ஒரு மைல்கல்லாக அமைந்தது.  
அது 2007 ஆம் ஆண்டு அக்டோபர் மாதம் வெளியானது.  
**பதிப்பு வரலாறு**

| 1.0 | டிசம்பர் 13, 2005 | 1.8.6 |  |
| --- | --- | --- | --- |
| 1.2 | ஜனவரி 19, 2007 | 1.8.6 |  |
| 2.0 | டிசம்பர் 7, 2007 | 1.8.6 |  |
| 2.1 | ஜூன் 1, 2008 | 1.8.6 |  |
| 2.2 | நவம்பர் 21, 2008 | 1.8.7 பரிந்துரைக்கப்படுகறிது; 1.8.6 சாத்தியம் |  |
| 2.3 | மார்ச் 16, 2009 | 1.8.7 பரிந்துரைக்கப்படுகறிது; 1.8.6 and 1.9.1 சாத்தியம் |  |
| 3.0 | ஆகஸ்டு 29, 2010 | 1.9.3 பரிந்துரைக்கப்படுகறிது; 1.8.7 and 1.9.2 சாத்தியம் |  |
| 3.1 | ஆகஸ்டு 31, 2011 | 1.9.3 பரிந்துரைக்கப்படுகறிது; 1.8.7 and 1.9.2 சாத்தியம் |  |
| 3.2 | ஜனவரி 20, 2012 | 1.9.3 பரிந்துரைக்கப்படுகறிது; 1.8.7 and 1.9.2 சாத்தியம் |  |
| 4.0 | ஜூன் 25, 2013 | 2.0 விரும்பப்படுகிறது; 1.9.3 அ புதிது தேவை |  |
| 4.1 | ஏப்ரல் 8, 2014 | 2.0 விரும்பப்படுகிறது; 1.9.3 அ புதிது தேவை |  |
| 4.2 | டிசம்பர் 19, 2014 | 2.0 விரும்பப்படுகிறது; 1.9.3 அ புதிது தேவை |  |
| 5.0 | ஜூன் 30, 2016 | 2.2.2 அ புதிது |  |
| 5.1 | மே 10, 2017 | 2.2.2 அ புதிது |  |
| 5.2 | ஏப்ரல் 9, 2018 | 2.2.2 அ புதிது |  |
| 6.0 | ஆகஸ்டு 16, 2019 | 2.5.0 அ புதிது |  |
| 6.1 | டிசம்பர் 9, 2020 | 2.5.0 அ புதிது |  |
| **7.0** | டிசம்பர் 15, 2021 | 3.0 விரும்பப்படுகிறது; 2.7.0 அ புதிது |  |
| 7.1 | <sup>[*தீர்மானிக்கப்படவுள்ளது*]</sup> | 3.1 விரும்பப்படுகிறது; 2.7.0 அ புதிது | } |

## தொழில்நுட்பக் கண்ணோட்டம்
பல வலைக் கட்டமைப்புகளைப் போலவே பயன்பாட்டு நிரலாக்கத்தைச் சீரமைக்க மாதிரி-பார்வை-கட்டுப்படுத்தி (MVC) கட்டமைப்பு அமைப்பை ரெயில்ஸ் பயன்படுத்துகிறது.  

ரூபி ஆன் ரெயில்ஸ் பொதுவான மேம்பாட்டுப் பணிகளை "பெட்டியின் வெளியே" எளிதாக்கும் ஸ்கேஃபோல்டிங் போன்ற கருவிகளை உள்ளடக்கியிருக்கிறது. அதனால் அடிப்படை வலைத்தளத்துக்குத் தேவையான சில மாதிரிகள் மற்றும் பார்வைகளைத் தானாகவே உருவாக்க முடியும். மேலும் ஒரு எளிமையான ரூபி வெப் சர்வரான வெப்ரிக் மற்றும் ஒரு உருவாக்க அமைப்பான ரேக் ஆகியவற்றையும் உள்ளடக்கியிருக்கிறது. ரெயிட்ஸுடன் ஒன்றிணைந்து இந்தக் கருவிகள் அடிப்படை மேம்பாட்டுச் சூழலை வழங்குகின்றன.  

ரூபி ஆன் ரெயில்ஸ் அதனை இயக்குவதற்கு இணைய சேவையகத்தை சார்ந்திருக்கிறது. மோங்க்ரெல் பொதுவாக எழுதப்படும் நேரத்தில் வெப்ரிக்கை முதன்மையாகத் தேர்ந்தெடுக்கிறது ஆனால் இதனை லைட்டிபிடி, அபிஸ், அபாச்சி (எடுத்துக்காட்டாக பேசஞ்சர் கூறாகவோ அல்லது CGI, ஃபாஸ்ட்CGI மூலமாக அல்லது மோட் ரூபி ஆகவோ) மற்றும் மற்றவை மூலமாகவும் இயக்க முடியும். 2008 ஆம் ஆண்டு முதல் பேசஞ்சர் இணைய சேவையகம் மாற்றப்பட்டு பெரும்பாலும் பயன்படுத்தப்படும் இணைய சேவையகமாக மோங்க்ரல் ஆனது. சமீபத்தில் யூனிகார்ன் இணைய சேவையகம் புதிதாக நிறுவப்பட்டத்தில் விருப்பமான இணைய சேவையகமாக உள்ளது.  

அஜாக்ஸுக்கான ஜாவாஸ்கிரிப்ட் லைப்ரரிகள் உருமாதிரி மற்றும் Script.aculo.us ஆகியவற்றின் விரிவுபடுத்தப்பட்ட பயன்பாட்டிற்காக குறிப்பிடத்தக்க மதிப்புடையதாகவும் ரெயில்ஸ் உள்ளது. ரெயில்ஸ் முதலில் இணைய சேவைகளுக்காக லைட்வெயிட் SOAP ஐப் பயன்படுத்தியது; அது பின்னர் ரெஸ்ட்ஃபுல் இணைய சேவைகளாக மாற்றப்பட்டது.  

பதிப்பு 2.0 முதல் ரூபி ஆன் ரெயில்ஸ் விருப்பிருப்பான வெளியீட்டு வடிவங்களாக HTML மற்றும் XML இரண்டையும் வழங்குகிறது. இதில் XML ஆனது ரெஸ்ட்ஃபுல் வெப் சேவைகளுக்கான வசதி ஆகும்.  

## கட்டமைப்பு அமைப்புமுறை
ரூபி ஆன் ரெயில்ஸ் ஆக்டிவ்ரெகார்ட் (தரவுத்தள அணுகலுக்கான பொருள்-தொடர்புடைய முகப்பு அமைப்பு), ஆக்டிவ்ரிசோர்ஸ் (வெப் சேவைகளை வழங்குகிறது), ஆக்சன் பேக், ஆக்சன்சப்போர்ட் மற்றும் ஆக்சன் மெயில் போன்ற பெயர்களிலான பல்வேறு தொகுப்புக்களினுள் பிரிக்கப்படுகிறது. பதிப்பு 2.0 க்கு முன்பு, ரெயில்ச் ஆக்சன் வெப் சேவைத் தொகுப்பையும் உள்ளடக்கி இருந்தது. அது தற்போது ஆக்டிவ் ரிசோர்ஸ் மூலமாக மாற்றப்பட்டுள்ளது. பொதுவானத் தொகுப்புக்களைத் தவிர்த்து டெவலப்பர்கள் ஏற்கனவே உள்ள தொகுப்புக்களை விரிவுபடுத்தி பிளக்கின்களை உருவாக்க முடியும்.  

## தத்துவம் மற்றும் வடிவமைப்பு
ரூபி ஆன் ரெயில்ஸ் *கன்வென்சன் ஓவர் கான்ஃபிகரேசன்* (CoC) மற்றும் துரித மேம்பாட்டுக் கொள்கையான *டோன்'ட் ரிபீட் யுவர்செல்ஃப்* (DRY) ஆகியவற்றை வலியுறுத்துவதற்கு குறிப்பிடப்படுகிறது.  

"கன்வென்சன் ஓவர் கான்ஃபிகரேசன்" என்பது பயன்பாட்டின் வழக்கத்திற்கு மாறான அம்சங்களை டெவலப்பர் மட்டுமே குறிப்பிட வேண்டும் என்று பொருள்படும். எடுத்துக்காட்டாக மாதிரியில் *சேல்* என்ற கிளாஸ் இருந்தால் விருப்பிருப்பாக தரவுத்தளத்தில் அது தொடர்புடைய *சேல்ஸ்* என்ற அட்டவணை இருக்கும். "புராடக்ஸ் சோல்ட்: என்ற அட்டவணையை அழைத்தம் போன்று இந்த நடைமுறையில் இருந்து ஒருவர் விலகினால் மட்டும் உருவாக்குநர் இந்தப் பெயர்கள் தொடர்புடைய குறியீட்டை எழுத வேண்டியிருக்கும். பொதுவாக இது குறைவான குறியீடு மற்றும் குறைவான திரும்ப நிகழ்தலுக்கு வழிவகுக்கிறது.  

"டோன்'ட் ரிபீட் யுவர்செல்ஃப்" என்பது தகவல், ஒற்றைத் தெளிவான இடத்தில் இடம்பெற்றிருப்பதைக் குறிப்பிடுகிறது. எடுத்துக்காட்டாக ரெயில்ஸின் ஆக்டிவ்ரெகார்ட் கூறைப் பயன்படுத்தும் போது டெவலப்பர் கிளாஸ் வரையறைகளில் தரவுத்தள அணிவரிசைப் பெயர்களைக் குறிப்பிட வேண்டிய அவசியம் இல்லை. மாறாக ரூபி ஆன் ரெயில்ஸ் இந்தத் தகவலை தரவுத்தளத்தில் இருந்து கிளாஸ் பெயர் சார்ந்து பெறுகிறது.  

## பயன்படுத்தல்

ரூபி ஆன் ரெயில்ஸ் பொதுவாக ரூபியுடன் உள்ளடக்கியிருக்கும் ரூபிஜெம்ஸ் என்ற தொகுப்பு நிர்வகிப்பவரைப் பயன்படுத்தி நிறுவப்படுகிறது. பல லினக்ஸ் விநியோகங்களும் அவற்றின் இயல்பான தொகுப்பு மேலாண்மை அமைப்பின் வழியாக ரெயில்ஸையும் மற்றும் அதன் சார்புடையவைகளையும் நிறுவுவதற்கு ஆதரவு அளிக்கின்றன.  

ரூபி ஆன் ரெயில்ஸ் பொதுவாக MySQL போன்ற தரவுத்தள சர்வர் மற்றும் அபாச்சி போன்ற வெப்சர்வர் ஆகியவற்றுடன் ஒருங்கிணைக்கப்பட்டிருக்கிறது. மனித ஆற்றலால் நிறுவுவதற்கு ஒரு மாற்றாக ஒரு முன்-ஒருங்கிணைக்கப்பட்ட டர்ன்கீ ரெயில்ஸ் துணை உபகரணத்தை பயன்பாட்டுக்குத் தயாரான சர்வராகப் பயன்படுத்துவதற்குப் பயன்படுத்தலாம்.  

எஞ்ஜின் யார்ட் மற்றும் ஹெரோகு போன்ற ரெயில்ஸ் ஹோஸ்டிங் வழங்குநர்கள், ரூபி ஆன் ரெயில்ஸ் பயன்பாடுகளை கிளவுட் சேவையாகப் பயன்படுத்துவதற்கு ஆதரவு அளிக்கிறார்கள்.  

## சமீபத்திய மேம்பாடுகள்
மார்ச் 15, 2009 அன்று ரெயில்ஸ் பதிப்பு 2.3 வெளியிடப்பட்டது. ரெயில்ஸில் முக்கிய புதிய மேம்பாடுகள் டெம்ப்லேட்டுகள், எஞ்ஜின்கள், ரேக் மற்றும் உட்பொதிவு மாதிரி வடிவங்கள் ஆகியவற்றை உள்ளடக்கியதாகும்.  

- டெம்ப்லேட்டுகள், விருப்பமை ஜெம்ஸ் மற்றும் அமைவடிவத்துடன் ஸ்கெல்டன் பயன்பாடுகளை உருவாக்குவதற்கு உருவாக்குனரை ஏதுவாக்குகின்றன.
- எஞ்ஜின்கள், இதில் ரூட்ஸ், வியூ பாத்ஸ் மற்றும் மாதிரிகள் ஆகியவற்றுடன் பயன்பாட்டுத் துண்டுகளின் நிறைவை ஒருவர் மீண்டும் பயன்படுத்தலாம்.
- ரேக் வெப் சேவை இடைமுகம் மற்றும் மெட்டல், இது ஆக்சன்கண்ட்ரோலரைச் சுற்றியுள்ள ரூட்டாக இருக்கும் குறியீடின் உகந்த துண்டுகளை எழுதுவதற்கு அனுமதிக்கிறது.

டிசம்பர் 23, 2008 அன்று மற்றொரு வலை பயன்பாட்டுக் கட்டமைப்பான மெர்ப் மற்றும் ரெயில்ஸ் இரண்டும் ஒன்றினைந்து பணியை மேற்கொள்ளப் போவதாக அறிவித்தன. ரெயில்ஸ் குழு அவர்களது மெர்ப் திட்டப்பணியில் "மெர்பின் சிறந்த உத்திகளை" ரெயில்ஸ் 3 இல் கொண்டு வருவதற்காக பணியாற்றுவதாக அறிவித்தனர். இதன் விளைவாக இரண்டு சமூகங்களிலும் "தேவையற்ற படியெடுத்தலைத்" தவிர்க்க முடியும்.  

## வணிகக் குறியீடுகள்
2007 ஆம் ஆண்டு மார்ச் மாதம் டேவிட் ஹெய்னமேயர் ஹான்சன், அமெரிக்காவின் -இல் மூன்று ரெயில்ஸ் தொடர்புடைய வணிகக் குறியீட்டு பயன்பாடுகளைப் பதிந்தார். இந்தப் பயன்பாடுகள் "ரூபி ஆன் ரெயில்ஸ்" என்ற சொற்றொடர் "ரெயில்ஸ்" என்ற வார்த்தை மற்றும் அதிகாரப்பூர்வ ரெயில்ஸ் முத்திரை ஆகியவை தொடர்பானதாக இருந்தன. அதன் தொடர்ச்சியாக 2007 ஆம் ஆண்டு கோடை காலத்தில் ஏபிரஸ்ஸுக்கு சில அதிகாரம்பெற்ற சமூக உறுப்பினர்களால் எழுதப்பட்ட புதிய ரெயில்ஸ் புத்தக அட்டையில் ரெயில்ஸ் முத்திரையைப் பயன்படுத்துவதற்கு ஹான்சன் அனுமதி மறுத்தார். அந்தப் பகுதி ரெயில்ஸ் சமூகங்களில் பணிவான எதிர்ப்பை ஏற்படுத்தியது. அந்த விமர்சனத்திற்கு பதிலளித்த ஹான்சன் பின்வரும் கோரிக்கையை விடுத்தார்: இந்த விமர்சனங்கள் 2007 மற்றும் 2008 ஆம் ஆண்டுகளில் பல்வேறு டுவிட்டர் வெளிப்பாடுகளில் குறிப்பிடப்பட்டிருந்தது. அது ட்விட்டரின் பகுதியளவு நிலைமாற்றத்தை அவர்களின் வரிசை அமைப்பு மற்றும் மற்ற மிடில்வேருக்காக ஸ்காலாவுக்கு (இது ஜாவா வெர்ச்சுவல் மெசினில் இயங்குகிறது) மாறத் தூண்டியது. தளத்தின் வாடிக்கையாளர்-காணும் அம்சங்கள் தொடர்ந்து ரூபி ஆன் ரெயில்ஸில் இயக்கப்பட்டன.  

## உருவாக்கத்தில் ரெயில்ஸ்

ரூபி ஆன் ரெயில்ஸ் வலை மேம்பாட்டு கட்டமைப்பை உருவாக்கச் சூழல்களில் பயன்படுத்தும் பிரபலமான வலைத்தளங்கள் பின்வருமாறு:  

- பேஸ்கேம்ப்
- க்ரன்ச்பேஸ்
- கிட்ஹப்
- அசெம்ப்ளா
- ஹூலு
- பென்னி ஆர்கேட்
- ஸ்ரைப்ட்
- ஸ்பைச்வொர்க்ஸ்
- டுவிட்டர்
- அர்பன் டிக்ஸ்னரி
- Whitepages.com
- ஜிங்க்
- Yellowpages.com