ஃபயர் பேஸ்-4-தொடர்

நிகழ்வுகளின் வகைகள்(Events Types)
ஃபயர் பேஸானது பல்வேறு நிகழ்வுகளின் வகைகளை பயன்படுத்தி தரவுகளை படித்தறிவதற்கான வாய்ப்பினை தயாராக வைத்துள்ளது அவைகளுள் பெரும்பாலும் அனைவராலும் பயன்படுத்துபவைகள் பின்வருமாறு
value என்பதே ஃபயர் பேஸினுடைய முதல் நிகழ்வாகும் இதனை எவ்வாறு பயன்படுத்தி கொள்வது என கடைசி பகுதியில் பார்ப்போம் பொதுவாக இந்த வகையான நிகழ்வானது தரவுகள் ஒவ்வொருமுறையும் மாறிடும்போதும் அதனை தூண்டிவிட்டு கொண்டே(triggering) இருக்கும் மேலும் இது துனைத்தரவுகளுடன் சேர்த்து அனைத்து தரவவுகளையும் மீள எடுத்தாளுகின்றது
child_added என்பது ஃபயர் பேஸின் இரண்டாவது நிகழ்வுகளின் வகையாகும் இது நம்முடைய தரவுகளுடன் ஒவ்வொருமுறையும் (முந்தைய பகுதியில் பார்த்துவந்த எடுத்துகாட்டுகளின் பட்டியல்) புதிய விளையாட்டு வீரரை சேர்த்திடும்போதும் ஒவ்வொரு விளையாட்டு வீரரின் பெயரையும் தூண்டிவிட்டுகொண்டே இருக்கும் இவ்வாறு தூண்டிவிடுதல் எனும் செயலானது பட்டியலான தரவுகளை நாம் படித்தறிய உதவுகின்றது ஏனெனில் இதன் வாயிலாக இந்த விளையாட்டு வீரர்களின் பட்டியலில் தற்போது புதியதாக சேர்ந்த விளையாட்டு வீரருடைய பெயரையும் முந்தைய விளையாட்டு வீரர்களின் பெயர்களையும் எளிதாக அனுகமுடியும்
இந்த நிகழ்வின் வகைகளுக்காக பின்வரும் எடுத்துகாட்டினை காண்க
var playersRef = firebase.database().ref(“players/”);
playersRef.on(“child_added”, function(data, prevChildKey) {
var newPlayer = data.val();
console.log(“name: ” + newPlayer.name);
console.log(“age: ” + newPlayer.age);
console.log(“number: ” + newPlayer.number);
console.log(“Previous Player: ” + prevChildKey);
});
இந்த குறிமுறைவரிகளை செயல்படுத்தியவுடன் அதன் விளைவுகளை பட்டியலாக திரையில் நாம் பெறமுடியும்
அதனை தொடர்ந்து இந்த விளையாட்டு வீரர்களின் பட்டியலில் Bob எனும் விளையாட்டு வீரரை சேர்த்தால் இந்த தரவுகளின் பட்டியலானது நிகழ்நிலைபடுத்தப்பட்டு நாம் புதியதாக சேர்த்த Bob எனும் விளையாட்டு வீரரின் பெயருடன் புதியபட்டியலானது கிடைக்கும்
child_changedஎனும் அடுத்த நிகழ்வுகளின் வகையானது தரவுகள் மாறுதல்அடையும் போதுஅதனை தூண்டிவிடுகின்றது
இந்த நிகழ்வின் வகைகளுக்காக பின்வரும் எடுத்துகாட்டினை எடுத்து கொள்வோம்
var playersRef = firebase.database().ref(“players/”);
playersRef.on(“child_changed”, function(data) {
var player = data.val();
console.log(“The updated player name is ” + player.name);
});
ஃபயர் பேஸின் தரவுகளின் பட்டியலிலுள்ள Bob எனும் விளையாட்டு வீரருக்கு பதிலாக Maria எனும் விளையாட்டு வீரரின் பெயரை மாற்றியமைத்திட்டால் தரவுகளின் பட்டியலானது உடன் நிகழ்நிலைபடுத்தப்பட்டு நாம் மாற்றியமைத்திட்ட விளையாட்டு வீரரின் பெயருடன் புதிய பட்டியலை காண்பிக்கும் மேலும்
child_removed எனும் அதற்கடுத்த நிகழ்வுகளின் வகையானது ஃபயர்பேஸில் தேவையற்ற தரவுகளை நீக்கம் செய்தபின்னர் நிகழ்நிலைபடுத்தி தரவுகளின் பட்டியலை திரையில் காண்பிக்க செய்கின்றது
உதாரணமாக
var playersRef = firebase.database().ref(“players/”);
playersRef.on(“child_removed”, function(data) {
var deletedPlayer = data.val();
console.log(deletedPlayer.name + ” has been deleted”);
});
இந்த குறிமுறைவரிகளை செயல்படுத்தியவுடன் அதன் விளைவாக தற்போது இந்த விளையாட்டு வீரர்களின் பட்டியலிலிருந்து Maria எனும் விளையாட்டு வீரரின் பெயரை நீக்கம் செய்திடுகின்றது அதனை தொடர்ந்து நாம் ஃபயர்பேஸிலிருந்து அதற்கான அறிவிப்பு ஒன்றினை பெறுவோம்

ஃபயர்பேஸில் -மீள் அழைப்புகளை பிரித்தெடுத்தல்(Detach Callbacks)
Detach Callbackஎன்பதும் ஃபயர்பேஸின் நிகழ்வுகளின் ஒருவகையாகும்
உதாரணமாக valueஎனும் நிகழ்வு வகையுடன் ஏதேனும் ஒரு செயலிக்காக ஒருமீளஅழைத்தலை பிரித்தெடுத்திட விரும்புவதாக கொள்க அதற்கானஎடுத்துகாட்டு பின்வருமாறு
var playersRef = firebase.database().ref(“players/”);
ref.on(“value”, function(data) {
console.log(data.val());
}, function (error) {
console.log(“Error: ” + error.code);
});
இங்குநமக்கு off()எனும்வழிமுறை தேவையாகும் ஏனெனில் இந்த off()எனும் வழிமுறையானது valueஎனும் நிகழ்வு வகையுடன் சேர்ந்து
playersRef.off(“value”);
என்றவாறான கட்டளைவரியின் வாயிலாக அனைத்து மீள் அழைப்புகளையும் அறவே நீக்கம்செய்துவிடுகின்றது ஆனால் நாம் அனைத்து மீளஅழைப்புகளையும் பிரித்திடவே விரும்புகின்றோம் அதனால் இந்த கட்டளை வரியில்valueஎனும் நிகழ்வு வகையை தவிர்த்து
playersRef.off();
என்றவாறான கட்டளைவரியின் வாயிலாக அனைத்து மீள் அழைப்புகளையும் பிரித்திடுமாறு செய்திடலாம்
ஃபயர் பேஸில் வினா எழுப்புதல்
ஃபயர் பேஸானது பல்வேறு வழிகளில் தரவுகளை ஒழுங்குபடுத்தி வரிசைபடுத்திடும் வாய்ப்பினை நமக்கு வழங்குகின்றது முந்தைய பகுதியின் எடுத்துகாட்டுகளில் பயன்படுத்திவந்த அதே தரவுகளை கொண்டு எளிய வினாவின் வாயிலாக தரவுகளை எவ்வாறு ஒழுங்குபடுத்திவரிசைபடுத்திடுவது என இப்போது காண்போம்
Order by Childஎனும்வினாவினை கொண்டு தரவுகளைபெயரின் அடிப்படையில் ஒழுங்குபடுத்தி வரிசைபடுத்திடலாம் அதற்காக பின்வருமாறான குறிமுறைவரிகளை பயன்படுத்தி கொள்க
var playersRef = firebase.database().ref(“players/”);
playersRef.orderByChild(“name”).on(“child_added”, function(data) {
console.log(data.val().name);
});
இந்த குறிமுறைவரிகளை செயல்படுத்தியவுடன் ஃபயர் பேஸின்தரவுகளானது அகரவரிசைபடி ஒழுங்குபடுத்தப்பட்டு திரையில் பட்டியலிடப்பட்டிருப்பதை காணலாம்
Order by Keyஎனும்வினாவினை கொண்டு தரவுகளை ஏதேனும் திறவுச்சொற்களின் அடிப்படையில் ஒழுங்குபடுத்தி வரிசைபடுத்திடலாம் அதற்காக பின்வருமாறான குறிமுறைவரிகளை பயன்படுத்தி கொள்க
var playersRef = firebase.database().ref(“players/”);
playersRef.orderByKey().on(“child_added”, function(data) {
console.log(data.key);
});
இந்த குறிமுறைவரிகளை செயல்படுத்தியவுடன் ஃபயர் பேஸின்தரவுகளானது நாம் பயன்படுத்திய திறவுசொற்களின் அடிப்படையில் ஒழுங்குபடுத்தப்பட்டு வரிசை-படுத்தப்பட்ட தரவுகளின்வெளியீட்டினை திரையில் காணலாம்

Order by Value எனும்வினா உதாரணமாக ஃபயர்பேஸில் மதிப்பீட்டு தொகுப்பினை நாம் சேர்ப்பதாக கொள்க இதற்காக Order by Value எனும்வினாவினை கொண்டு தரவுகளை அதன் மதிப்பின் அடிப்படையில் ஒழுங்குபடுத்திவரிசைபடுத்திடலாம் அதற்காக பின்வருமாறான குறிமுறைவரிகளை பயன்படுத்தி கொள்க

var ratingRef = firebase.database().ref(“ratings/”);
ratingRef.orderByValue().on(“value”, function(data) {
data.forEach(function(data) {
console.log(“The ” + data.key + ” rating is ” + data.val());
});
});
இந்த குறிமுறைவரிகளை செயல்படுத்தியவுடன் ஃபயர் பேஸின் மதிப்பீட்டு தொகுப்பானது நாம் பயன்படுத்திய திறவுசொற்களின் அடிப்படையில் ஒழுங்கு-படுத்தப்பட்டு வரிசை-படுத்தப்பட்ட பட்டியலின்வெளியீட்டினை திரையில் காணலாம்
தரவுகளைவடிகட்டுதல்(Filtering the Data)
ஃபயர்பேஸானது தரவுகளை வடிகட்டிடுவதற்காக பல்வேறு வழிமுறைகளை நமக்கு வழங்க தயாராக இருக்கின்றது அவைகள் பின்வருமாறு
Limit to First and Lastஎனும் வழிமுறை
முதலில்இந்த வழிமுறையின் உண்மையான அர்த்தத்தை நாம் தெரிந்து கொள்வோம் அதன்பின்னர் இதனை எவ்வாறு பயன்படுத்தி கொள்வது என காண்போம்
Limit to Firstஎனும் வழிமுறையானது பட்டியலின் முதலில் இருப்பதை போன்று துவங்கும் குறிப்பிட்ட தரவுகளனைத்தையும் நமக்கு திருப்பிவிடுகின்றது
Limit to Last எனும் வழிமுறையானது பட்டியலின் கடைசியாக இருப்பதை போன்று துவங்கும் குறிப்பிட்ட தரவுகளனைத்தையும் நமக்கு திருப்பிவிடுகின்றது
இதனை எடுத்துகாட்டுகளுடன் இப்போது காண்போம் நம்முடைய தரவுதளத்தில்இரண்டு விளையாட்டு வீரர்கள் மட்டும் இருப்பதாக கொள்க நாம் ஒரு விளையாட்டு வீரருக்கு வினாதொடுப்பதாக கொள்க இதற்காக பின்வருமாறான குறிமுறைவரிகளை பயன்படுத்தி கொள்க
var firstPlayerRef = firebase.database().ref(“players/”).limitToFirst(1);
var lastPlayerRef = firebase.database().ref(‘players/’).limitToLast(1);
firstPlayerRef.on(“value”, function(data) {
console.log(data.val());
}, function (error) {
console.log(“Error: ” + error.code);
});
lastPlayerRef.on(“value”, function(data) {
console.log(data.val());
}, function (error) {
console.log(“Error: ” + error.code);
});
இந்த குறிமுறைவரிகளை ஃபயர் பேஸில் செயல்படுத்தியவுடன் நம்முடைய பணியகமானது முதல் வினாவிலிருந்து முதல் விளையாட்டு வீரரை நிலையாக இணைத்து பூட்டிவிடுவதையும் இரண்டாவது விளையாட்டு வீரரை இரண்டாவது வினாவிலிருந்து நிலையாக இணைத்து பூட்டிவிடுவதையும் காணலாம்
மற்ற வடிகட்டிகள்
startAt(), endAt() , equalTo(),orderByChild()ஆகிய இதர வடிகட்டிகளின் வழிமுறைகளை ஒழுங்குபடுத்தி வரிசைபடுத்திடும் வழிமுறைகளுடன் ஒன்றாக இணைத்து பயன்படுத்தி தரவுகளை வடிகட்டி பட்டியலாக வெளியிடசெய்திடலாம் இவற்றுள்
orderByChild() எனும்வினாவினை கொண்டு தரவுகளை எவ்வாறு இந்த வடிகட்டிடும் வழிமுறையுடன் ஒழுங்குபடுத்திவரிசைபடுத்திடலாம் என இப்போது காண்போம் அதற்காக பின்வருமாறான குறிமுறைவரிகளை பயன்படுத்தி கொள்க
var playersRef = firebase.database().ref(“players/”);
playersRef.orderByChild(“name”).startAt(“Amanda”).on(“child_added”, function(data) {
console.log(“Start at filter: ” + data.val().name);
});
playersRef.orderByChild(“name”).endAt(“Amanda”).on(“child_added”, function(data) {
console.log(“End at filter: ” + data.val().name);
});
playersRef.orderByChild(“name”).equalTo(“John”).on(“child_added”, function(data) {
console.log(“Equal to filter: ” + data.val().name);
});
playersRef.orderByChild(“age”).startAt(20).on(“child_added”, function(data) {
console.log(“Age filter: ” + data.val().name);
});

இந்த குறிமுறைவரிகளை செயல்படுத்தியவுடன் ஃபயர் பேஸின்தரவுகளானது வடிகட்டிடும் வழிமுறையுடன் ஒழுங்குபடுத்தப்பட்டு வரிசைபடுத்தப்பட்ட பட்டியலின் வெளியீட்டினை திரையில் காணலாம்
அதாவது முதல் வினாவானது பெயரின் அடிப்படையில் அதன் உறுப்புகளை ஒழுங்குபடுத்தி வரிசைபடுத்தி Amandaஎனும் விளையாட்டு வீரரின் பெயருடன் விளையாட்டு வீரர்களின் பெயர்பட்டியலை வடிகட்டிடச்செய்கின்றது உடன் நம்முடைய பணியகமானது இரண்டு விளையாட்டு வீரர்களின் பெயர்களை நிலையாக பூட்டிவிடுகின்றது இரண்டாவது வினாவானது Amandaஎனும் பெயருடன்நாம் வினாவினை தொடுத்துள்ளதால் இதனை நிலையாக பூட்டிவிடுகின்றது மூன்றாவது வினாவானது Johnஎனும் பெயரை இந்த பட்டியலில்தேடுவதால் அதனை நிலையாக பூட்டிவிடுகின்றது நான்காவது வினாவில் வயது(age) எனும் மதிப்புடன் இந்த பெயரை எவ்வாறு ஒன்றினைத்திடுவது என காண்பிக்கின்றது இங்கு இந்த வயதினை குறிப்பிடுவதற்காக எழுத்துகளுக்கு பதிலாக எண்களை startAt()எனும் வழிமுறையின் வாயிலாக இதற்குள் கொண்டுசெல்லுமாறு செய்யப்படுகின்றது ஏனெனில் வயது எப்போதும் எண்களில் மட்டுமே இருக்கும்

போனி எனும் கணினிமொழி ஒரு அறிமுகம்

மிக விரைவாகவும், பாதுகாப்பானதாகவும், திறனுடையதாகவும் ஆன மிகச் சிறந்த நிரல்தொடர்களை எளிதாக உருவாக்க உதவுவதே போனி எனும் கணினிமொழியாகும்
தற்போதுள்ள பெரும்பாலான கருவிகளைக் கொண்டு இவ்வாறான கணினிமொழி பொதுமக்களின் பயன்பாட்டிற்கு கிடைக்காது ஆனால் போனி எனும் மொழி அவ்வாறான கூற்றினை பொய்யாக்கி பொதுமக்களும் அவ்வாறான எளிதாக கையாளும் போனிமொழியாக நாம் பயன்படுத்தி கொள்ளதயாராக இருக்கின்றது இந்த போனி எனும்கணினிமொழியானது வகைகளில் -பாதுகாப்பானது ,நினைவகபயன்பாட்டில்-பாதுகாப்பானது, விதிவிலக்குகளில்-பாதுகாப்பானது,தரவுஓட்டத்தில் விரைவானது ,இதனை எதனாலும் முடக்கமுடியாது கூடுதலாக, இது திறமையான சொந்த குறியீட்டிற்காக தொகுக்கப்பட்டுள்ளது , மேலும் இது இரண்டு-பிரிவு BSD உரிமத்தின் கீழ் கட்டற்ற வகையில் நாம் பயன்படுத்த தயாராக உள்ளது.
இந்த போனி எனும் கணினிமொழியானது நம்மை பாதுகாப்பான, திறமையான, மிகவும் உற்சாகமான ஆகிய நான்கு இலக்குகளை எளிதாக அடையுமாறு செய்துவிடுகின்றது
பொருள் நோக்கு நிரலாக்க பொருட்களில் உள்ள பொருட்கள் + ஒத்திசைவு வழிமுறைகள் + ஒத்திசைவற்றநெறி வழிமுறைகள் ஆகியவை அனைத்தும் ஒன்றிணைந்த actor model என்பதன் வாயிலாகவே அனைத்து செயல்களையும் இந்த கணினிமொழி செயல்படுத்திடுகின்றது அதனால்இது மிகச்சிறந்த கணினிமொழியாக விளங்குகின்றது மேலும் இது கணினியின் மையசெயலகத்தை மிகத்திறனுடன் விரைவாக கையாளுகின்றது இதன் விளைவாக, போனியின் நிரல்தொடர்கள் மிகவும் சீரான செயல்திறன் மற்றும் கணிக்க முடியாத நிலைத்தன்மைகளுடன் உருவாகின்றன இது தனியாக தரவு பாதுகாப்பு பகுதியை உருவாக்குகிறது. அதனால் நம்முடைய நிரல்தொடர் பாதுகாப்பானதாக விளங்குகின்றதுநம்முடைய குறிமுறைவரிகள் மிகவிரைவாகவும் எதனாலும் முடக்க முடியாததாகவும் அமைக்கின்றது
ஒருசிக்கலானபிரச்சினைகளை தீர்வுசெய்வதற்கான அல்லது கடினமான பணியைதீர்வுசெய்வதற்கான நிரல்தொடரைமிகஎளிதாக இதில்உருவாக்கிடலாம்
இந்த போனி எனும்கணினிமொழியை அறிந்து கொள்ள விரும்பினால் https://www.ponylang.org/learn/ எனும் இணைய பக்கத்திற்குசெல்க

வாட்ஸ் அப்பில் WhatsApp Payments எனும்புதிய வசதி வரவிருக்கின்றது

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

மிக பாதுகாப்பானகடவுச்சொற்களை மிகஎளிதாக கோஎனும் கணினிமொழியில் உருவாக்கலாம்


ASCII எழுத்துருக்களைகொண்டு யாராலும் எளிதில் யூகிக்கமுடியாத கடவுச்சொற்களை இந்த கோஎனும் கணினிமொழியை கொண்டு உருவாக்கிடலாம் இதற்காக கோ எனும் கணினி-மொழியானது ASCII எழுத்துருக்களின் அட்டவணையைபயன்படுத்தி கொள்கின்றது மேலும்எண்களில்33 முதல்126 மட்டும் பயன்படுத்தி கொள்கின்றது அடுத்து இதனை செயல்படுத்திடுவதற்காக பின்வரும் கட்டளைவரிகளைகொண்ட random.goஎனும் செயலியை பயன்படுத்தி கொள்க
funcrandom(min,maxint)int{
returnrand.Intn(max-min)+min
}
இதில் rand.Intn()எனும் கட்டளைவரியானது [0,n);இல் உள்ளவாறு நேர்மறை எண்களை மட்டும் பயன்படுத்தி கொள்கின்றது எதிர்மறை எண்களைஅன்று என்ற செய்தியை கவணத்தில் கொள்க இந்த செயலியை செயல்படுத்தினால் random.goஎனும் செயலியின் வெளியீடு பின்வருமாறு இருக்கும்
$ go build random.go
$ ./random
Usage: ./random MIX MAX TOTAL
$ ./random 1 3 10
2 2 1 2 2 1 1 2 2 1
இதனடிப்படையில் இதனைதொடர்ந்து பின்வரும் கட்டளைவரிகளைகொண்ட .randomPass.goஎனும் செயலியை பயன்படுத்தி கொள்க
for{
myRand:=random(MIN,MAX)
newChar:=string(startChar[0]+byte(myRand))
fmt.Print(newChar)
ifi==LENGTH{
break
}
i++
}

இதில் கடவுச்சொற்களில் எண்களின் குறைந்தபட்ச மதிப்பு 0 ஆகவும்அதிகபட்சமதிப்பு 94 ஆகவும் !என்பதற்கு அடுத்தும் ~எனும் எழுத்துகளுக்கும்முன்பும் குறைந்தபட்ச மதிப்பைவிட அதிகமாகவும் அதிகபட்சமதிப்பைவிட குறைவாகவும் ஏதேவொன்று உருவாக்கபட்டு ASCII எழுத்துருக்களாக இயல்புநிலையில்எட்டு எழுத்துருக்களுக்கு மிகாமல் உருமாற்றம் செய்கின்றது இதனை செயல்படுத்தினால்அதன் வெளியீடுபின்வருமாறு இருக்கும்
$ go run randomPass.go 1
Z
$ go run randomPass.go 10
#Cw^a#IwkT
$ go run randomPass.go
Using default values!
[PP8@’Ci
கடைசியாக இவ்வாறு கடவுச்சொற்களை உருவாக்கிடுமுன் rand.Seed()என்ற கட்டளையை பயன்படுத்தி 0 நிலையில் அமைத்தபின்னர் இவ்வாறான கடவுச்சொற்களை உருவாக்கிடுக என்ற ஆலோசனையை கவணத்தில் கொண்டு செயல்படுக

அமேஸானின் மெய்நிகர் உதவியாளர் மென்பொருள் பொறியாளர்களுக்கான உதவியாளராக மாறுவிருக்கின்றார்

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

லினக்ஸ் இயக்கமுறைமையைபயன்படுத்திடும் ஒவ்வொருவரும் அறிந்திருக்க வேண்டிய முக்கியகட்டளைவரிகள்

இணைய பயன்பாடுகளின் சேவையாளர்கணினிகள்ஏறத்தாழ 90சதவிகிதம் லினக்ஸ் சேவையாளராகவே உள்ளன மேலும் 3.74 பில்லியன் இணைய பயனாளர்கள் லினக்ஸையே பயன்படுத்திடுகின்றனர் நாம் பயன்படுத்திடும் ஆண்ட்ராய்டு கைபேசி இந்த லினக்ஸின் அடிப்படையிலேயே உருவாக்கப்பட்டது உலகின் முதன்மையான 500 அதிவேககணினிகள் இந்த லினக்ஸ் இயக்கமுறைமையிலேயேசெயல்படுகின்றன என்பதன் அடிப்படையில் லினக்ஸ் இயக்கமுறைமையை எங்கெங்கும் நீக்கமற நிறைந்துள்ள இன்றையநிலையில் நாம் பயன்படுத்திவரும் எந்தவொரு நிகழ்வின் பின்புலத்திலும் இந்த லினக்ஸ் இயக்கமுறைமையே இயங்கிவருகின்றது என்ற செய்தியை கவணத்தில் கொள்க அதனால் பின்வரும் முக்கிய கட்டளைகளை கருத்தில் கொள்க
1. lsஎனும்கட்டளையானது கணினியில் கோப்புகள் கோப்பகங்கள் இயக்ககங்களை காண உதவுகின்றது
2. cd எனும்கட்டளையானது கோப்பகங்களுக்கிடையே இடம்மாறி செல்லவும் இயக்ககங்களுக்கிடையே இடம்மாறிசெல்லவும்பயன்படுகின்றது
3. mv எனும்கட்டளையானது கோப்புகளை கோப்பகங்களுக்கிடையே இடமாற்றம் செய்திட உதவுகின்றது
4. mkdir எனும்கட்டளையானதுபுதிய கோப்பகங்களை அல்லது இயக்ககங்களை உருவாக்க பயன்படுகின்றது
5. touch எனும்கட்டளையானதுபுதிய கோப்புகளை உருவாக்க பயன்படுகின்றது
6. at எனும்கட்டளையானது குறிப்பிட்ட நேரம்வரை லினக்ஸ் இயக்கமுறைமையை செயல்படசெய்திடுமாறு கட்டளையிட பயன்படுகின்றது
7. rmdir எனும்கட்டளையானது நமக்கு தேவையில்லாத கோப்பகங்களை அல்லது இயக்ககங்களை நீக்கம்செய்திட பயன்படுகின்றது
8. rm எனும்கட்டளையானதுதேவையற்ற கோப்புகளை நீக்கம் செய்திட பயன்படுகின்றது
9. locate எனும்கட்டளையானது குறிப்பிட்ட பெயர்அல்லது சொல் எந்தஇடத்தில்அல்லது கோப்பில்உள்ளது என கண்டுபிடித்திட பயன்படுகின்றது

பைத்தான் மொழியினுடையசெயலியின் மூலக்குறிமுறைவரிகளைஎவ்வாறு திரும்பெறுவது


ஒருசில நேரங்களில் பைத்தானின் ஒரு சிலசெயலிகளின் மூலக்குறிமுறைவரிகள் எவ்வாறு அமைந்திருக்கும் என நாம் அறிந்து கொள்ள விழைவோம் அல்லது அவை எங்கிருக்கும் என அறிந்து கொள்ளவிழைவோம் அல்லது அந்த மூலக்குறிமுறைவரிகளை எழுத்துசரங்களாக மாற்றியமைத்திடுவதற்கு விரும்புவோம் இவ்வாறான நிலையில் இந்த பைத்தானின் செயலிகளின் மூலக்குறிமுறைவரிகளைஎப்படியாவது திரையில் கொண்டுவந்து காண ஆவலாக இருப்போம் நிற்க இதற்காக இந்த கணினிமொழியின்inspect எனும்முன்கூட்டியே கட்டமைக்கப் பட்ட சொந்த செந்தர நூலகமும் dillஎனும்மூன்றாவது நபரின் நூலகமும் உதவுகின்றன பொதுவாக நம்முடையகணினியில் பைத்தான் மொழியை நிறுவுகை செய்திடும் போதே inspect எனும் செந்தர நூலகமும் நிறுவுகைசெய்யப்பட்டுவிடும் இதிலுள்ள modules, classes, methods, functions, tracebacks, frame objects, code objects போன்ற பயனுள்ள செயலிகள் பல்வேறு வகையான தகவல்களைபெறத்தயாராக இருக்கின்றன அதைவிட இவைகளை கொண்டு குறிப்பிட்டசெயலியின் மூலக்குறிமுறைவரிகளை கூட கொண்டுவந்து திரையில் காண்பிக்குமாறு செய்திடமுடியும்
In [1]: importpandas
importinspect
In [3]: source_DF=inspect.getsource(pandas.DataFrame)
print(type(source_DF))
<>
In [4]: print(len(source_DF))
218432
In [5]: print(source_DF[:200])
class DataFrame(NDFrame):
“””Two-dimensional size-mutable, potentially heterogeneous tabulardata
structurewith labeled axes (rows and columns). Arithmetic operations
align on both row a
In [6]: source_file_DF=inspect.getsourcefile(pandas.DataFrame)
print(source_file_DF)
D:\Users\dengdong\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\frame.py
In [7]: sourcelines_DF=inspect.getsourcelines(pandas.DataFrame)
print(type(sourcelines_DF))
print(len(sourcelines_DF))
print(type(sourcelines_DF[0]))

2

மேலும் பின்வரும் Ipythonஅல்லதுJupyterதுனையுடன் பைத்தானின் மூலக்குறிமுறை-வரிகளை கொண்டு வந்து திரையில் காண்பிக்குமாறு செய்திடுகின்றது
In [9]: deftest(x):
returnx*2
print(inspect.getsource(test))
def test(x): return x*2
In [10]: print(inspect.getsourcefile(test))

In [11]: print(inspect.getsourcelines(test))
([‘def test(x):\n’, ‘ return x*2\n’], 1)
பின்வரும்dillஎன்பது பைத்தானினஅ மூலக்குறிமுறைவரிகளைகொண்டுவந்து திரையில் காண்பிக்குமாறு செய்திடுகின்றது
In [6]: importdill
source_DF=dill.source.getsource(pandas.DataFrame)
print(type(source_DF))
print(len(source_DF))
print(source_DF[:200])
source_file_DF=dill.source.getsourcefile(pandas.DataFrame)
print(source_file_DF)
sourcelines_DF=dill.source.getsourcelines(pandas.DataFrame)
print(type(sourcelines_DF))
print(len(sourcelines_DF))
print(type(sourcelines_DF[0]))

195262
classDataFrame(NDFrame):
“”” Two-dimensional size-mutable, potentially heterogeneous tabular data
structure with labeled axes (rows and columns). Arithmetic operations
align on both row a
/Users/XD/anaconda/lib/python2.7/site-packages/pandas/core/frame.py

2

சாதரான பைத்தான் குறிமுறைவரிகளை கொண்டு மூலக்குறிமுறைவரிகளை கொண்டுவர இந்த dillஎன்பது பெரிதும்பயன்படுகின்றது

Previous Older Entries