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

தற்போது இணையபக்கத்தினை அல்லது கட்டற்ற பயன்பாட்டினை உருவாக்க விரும்பு-வோர்களில் பெரும்பாலானவர்களின் முதல்விருப்பமாக .Electron என்பது விளங்குகின்றது
இது ஜாவாஸ்கிரப்ட் ஹெச்டிஎம்எல் சிஎஸ்எஸ் ஆகிய இணைய தொழில்-நுட்பங்களை பயன்படுத்தி நம்முடைய சொந்த பயன்பாட்டினை நாமே உருவாக்கி கொள்ள இந்த வரைச்சட்டம் பேருதவியாய் விளங்குகின்றது இது hromium , Node.js ஆகியவற்றை கொண்டு ஜாவாஸ்கிரப்ட் ஹெச்டிஎம்எல் சிஎஸ்எஸ் ஆகிய இணைய தொழில்நுட்பங்களைஎளிதாக கையாளுகின்றது இது ஒரு கட்டற்ற வரைச்சட்டமாகும் இது விண்டோ லினக்ஸ் ஆகிய அனைத்து இயக்கமுறைமைகளிலும் செயல்படும் திறன்மிக்கது பெரும்பாலானலின்கஸ் பயன்பாடுகள்இந்த .Electron வரைச்சட்டத்தின் வாயிலாகவே உருவாக்கி வெளியிடபட்டதுஎன்ற செய்தியை மனதில் கொள்க இந்த Electron வரைச்சட்டமானது இணைய பயன்பாட்டை கொண்டு சமநிலை சிறப்பம்சமாக கணினியின் வாடிக்கையாளர் கொண்டு செயல்படுத்துகிறது.கணினி பயன்பாட்டில் பயன்பாடுகளையும் பாதுகாப்பினையும் மேம்படுத்திடுகின்றது நம்முடைய சொந்த மின்னஞ்சல் பயன்பாட்டினை நாமே இதன்வாயிலாக உருவாக்கி மேம்படுத்தி கொள்ளமுடியும் மிகமுக்கியமாகஇவ்வாறு மென்பொருள் உருவாக்கிடும் குழுஉறுப்பினர்கள் மிககுறைந்த அளவில் இருந்தாலும் தேவையான பயன்பாடுகளை விரைவாக உருவாக்கி கொள்ளமுடியும் அதனால் சிறியநிறுவனங்கள்கூட இதனைகொண்டு மிகசிறந்த பயன்பாட்டினை எளிதாக உருவாக்கிமேம்படுத்தி கொள்ளமுடியும் மேலும் விவரங்களுக்கு https://electronjs.org/ எனும் முகவரிக்கு செல்க

இணையத்தினடிப்படையிலான பல்லூடகத்திற்கு பயன்படும் GStreamerஇனுடைய WebRTC ஒரு அறிமுகம்

Gstreamer என்பது கட்டற்ற அனைத்து தளங்களிலும் செயல்படும் ஒரு பல்லூடக வரைச்சட்டமாகும்
பொருட்களுக்கான இணையம் , போக்குவரத்து வாகணங்களின் தகவல், தொலைபேசி, தொலைகாட்சிபெட்டி ஆகியவற்றில் உட்பொதிந்த கானொளி காட்சி/ இசை இயக்கிகள்,கானொளிகாட்சி பதிவுசெய்தல், கானொளிகாட்சி கூட்டம், இணைய உலாவி, VoIP வாடிக்கையாளர்ஆகியவற்றில் கணினிபோன்றும் மறையாக்கம் குறியாக்கம் செய்தல், கானொளி காட்சிகூட்டம் பேச்சொலிகூட்டம் ,ஆகியவற்றில் சேவையாளர் போன்றும் செயல்படுகின்றது,மேலும் எந்தவொரு சாதனத்திலும் செயல்படும்திறன்கொண்டது அதுமட்டுமல்லாது மிகவும் நெகிழ்வுதன்மையுடனும் எளிதாகவும் அவைகளுக்கிடையே இதற்கான தரவுகளை எளிதாக பரிமாறி கொள்ளஉதவிடவும் பல்லூடகங்களை செயலபடச்செய்திடவும் பதிவுசெய்திடவும் ஆனதாகும் இவ்வாறான பல்வேறு வசதி வாய்ப்புகளை பல்லூடகங்களில் செயல்படுத்திடுவதற்காக சிக்கலான ஆயிரகணக்கான குறிமுறைகளை அதனுடைய pipeline அடிப்படையிலான மாதிரிகளை கொண்டு API வடிவமைப்பில் எளிதாக செயல்படுத்திடுகின்றது

WebRTC என்பது நடப்பிலிருக்கும் RTP, RTCP, SDP, DTLS, ICE, RTC ஆகியவற்றின் விளக்ககுறிப்புகளில் கட்டமைவுசெய்து ஜாவஸ்கிரிப்ட் இணையஉலாவியை பயன்படுத்தி அனுகுவதற்கு API வரையறுத்திடுகின்றது பொதுமக்கள் IPஇன்நிகழ்வுநேர தகவல்தொடரபுகளை செயற்படுத்திடுவதற்கான மரபொழுங்குகளை இது கட்டமைவுசெய்திடுகின்றது இந்த WebRTC ஆனது பயனாளரின் சொந்த கணினி பயன்பாடுகளுக்கும் இணையபயன்பாடுகளுக்கும் இடையில் ஒரு பாளம் போன்று ஒரு செந்தர நெகிழ்வுதன்மையுடனான நம்பிக்கையற்ற ஜாவாஸ்கிரிப்ட் குறிமுறை முறைவரிகளுக்கு நம்பிக்கையானதாக செயல்படுகின்றது எல்லா இடங்களிலும் பயன்படுத்தி கொள்ளப்படும் PeerConnection API எனும் இணைய பயன்பாட்டினை இந்தWebRTC JS adapte ஆனது எளிதாக கையாளுகின்றது பல்லூடகங்களைசொந்த வடிகட்டுதல்களின் கட்டளைகளை கொண்டு மிகவும் சிரமத்துடன் கையாளுவதற்கு பதிலாக இந்த WebRTC கொண்டுஎளிதாக கையாளலாம்
Gstreamer இல் WebRTC ஆனது ஒன்றிணையும்போது இணையத்தில் பல்லூடகங்களை கையாளும் பணி மிகஎளிதாகஆகின்றது

Flutterஎனும் பயனாளர் இடைமுகப்ப வரைச்சட்டத்தை பயன்படுத்தி கைபேசி பயன்பாடுகளை மிகவிரைவாகஉருவாக்கலாம்

ஒரேகுறிமுறைவரிகளைகொண்டு ஆண்ட்ராய்டு, ஐஓஎஸ் ஆகியவற்றின் சொந்த பயன்-பாடுகளை போன்று .Flutterஎனும் பயனாளர் இடைமுகப்பு வரைச்சட்டத்தை பயன்படுத்தி மிகவிரைவாகஉருவாக்கலாம் இந்த Flutterஎனும் பயனாளர் இடைமுகப்பு வரைச்-சட்டமானது கட்டற்றதும் கட்டணமற்றதாகும் இந்த Flutterஎனும் பயனாளர் இடைமுகப்பு வரைச்சட்டத்தை பயன்படுத்தி பயன்பாடுகளை உருவாக்குவதற்காகவென தனியாக அனுபவம் எதுவும் தேவையில்லை புதியவர்கள்கூட மிகஎளிதாக உருவாக்கலாம் Android Studio, VSCode, IntelliJஆகிய பல்வேறு IDEக்களை இது ஆதரிக்கின்றது ஆண்ட்ராய்டு ஐஓஎஸ் ஆகிய இரண்டு தளங்களிலும் வெவ்வேறு வகைகளில் உருவப்படங்கள் எழுத்துருக்கள் வழிகாட்டுதல்கள் ஆகியவை இருந்தாலும் இவ்விரண்டு கைபேசிகளுக்கென தனித்தனியாக குறிமுறைவரிகளை கொண்டு பயன்பாடுகளை உருவாக்காமல் ஒரேகுறிமுறைவரிகளை கொண்டு இவைகளின்சொந்த பயன்பாடுகளை போன்று இந்தFlutterஇன் வாயிலாக கட்டமைத்திடலாம் இது பயனாளர் இடைமுகப்பிற்கான நெகிழ்வுதன்மை கொண்டது அசைவூட்டங்கள் போன்ற நவீண வசதிகளையும் இதன்வாயிலாக கொண்டுவரமுடியும் இதில் உருவாகும் பயன்பாடுகளை வாடிக்கையாளர் விரும்பியவாறு மாற்றியமைத்து-கொள்ளமுடியும் இந்த Flutterஎனும் பயனாளர் இடைமுகப்பு வரைச்சட்டத்தை பயன்-படுத்தி கொள்வதற்காக கூடுதல் இணைப்பாக Dartஎனும் கணினிமொழி தேவையாகும் (https://www.dartlang.org/) மேலும் c++கணினிமொழியின் பொறியை இது இயங்குவதற்காக பயன்படுத்தி கொள்கின்றது கூகுளானது தம்முடைய பெரும்பாலான செயல்திட்டங்களுக்கு இந்தFlutterஎனும் பயனாளர் இடைமுக வரைச்சட்டத்தையே பயன்படுத்தி கொள்கின்றது அதுமட்டுமல்லாது அலிபாபா, அப் ட்ரீ, அப்பே ரோட்,ஹாமில்டன் மியூஸிக்கல் போன்றவை இந்தFlutterஎனும் பயனாளர் இடைமுக வரைச்சட்டத்தை பயன்படுத்திடும் மிகமுக்கிய வாடிக்கையாளர்களாவார்கள்
இந்தFlutterஐ பயன்படுத்தி கைபேசி பயன்பாடுகளை உருவாக்குவதற்காக பின்வரும் கட்டமைவை நிறுவுகை செய்திடுக 1.Flutter SDKஇதில் Flutter பொறி,கருவிகள் பொருட்கள் Dart SDKஆகியவை கொண்டதாகும் 2. IDE இதில்Android Studio, VSCode, IntelliJ ஆகிய பல்வேறு IDEக்களை கொண்டதாகும் 3.Plugin இதில் கூடுதல் இணைப்பாக Flutterஉம் Dart உம் கூடுதல்இணைப்புPluginகளாக இதனுடைய குறிப்பிட்ட IDEகொண்டதாகும்

1
வழக்கம்போன்று நம்முடைய முதன்முதலான “அனைவருக்கும் வணக்கம்” எனும் கைபேசி பயன்பாடுகளை இதன் வாயிலாக உருவாக்கிடுவோம்
import ‘package:flutter/material.dart’;
void main() => runApp(new MaterialApp(
title: ‘First Flutter App’,
home: MyApp(),
));
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(‘Demo App’),
),
body: Center(
child: Text(‘அனைவருக்கும் வணக்கம்!’),
),
);
}
}
இந்த குறிமுறைவரிகளில் import ‘package:flutter/material.dart’ எனும் வரியானது இந்த பயன்பாட்டிற்கு தேவையான தோற்றத்தை வழங்கக்கூடிய முன்கூட்டியே வரையறுக்-கப்பட்ட கோப்பின் கட்டுகளை பயன்பாட்டிற்குள் கொண்டுவருகின்றது இதிலிருந்து பொருட்களை பயன்படுத்தி நமக்கு தேவையானவாறு உருவாக்கி கொள்ளலாம்
MaterialApp எனும் வரிhome route ஆகியவை சேர்ந்த இதுனுடைய அளவு-கோல்களாகும்
Scaffold எனும் வரி முதன்மையான உள்ளடக்கங்களுக்கான புறவமைப்பாக செயல்-படுகின்றது
StatelessWidget எனும் வரி பெற்றோர் மதிப்புகளை தேக்கி வைத்துகொள்கின்றது புதிய பயன்பாட்டினை உருவாக்குவதற்காக அந்த மதிப்பினை பயன்படுத்தி கொள்கின்றது
MaterialApp என்பது நமக்கு தேவையானபயன்பாட்டினைமெய்நிகர் சாதனம் அல்லது உண்மையான சாதனத்தில் வழக்கமான ஆண்ட்ராய்டு அல்லது ஐஓஎஸ் பயன்பாடுகளை உருவாக்கி இயங்கசெய்கின்றது இதனை செயல்படுத்தியவுடன் படத்தில் உள்ளவாறு தோற்றம் அமைந்திடும்.

2
பொருட்கள் Text , Stack , Container, Gesture(தாவுதல்,இருமுறை தாவுதல,நீண்டநேரம் அழுத்துதல், நெடுவரிசையில் இழுத்துசெல்லுதல் ,கிடைவரிசையில் இழுத்து செல்லுதல் ஆகிய செயல்களுக்கானது), Image, Icon,Rise Button போன்ற பல்வேறு பொருட்களை (Widgets) உருவாக்குவதற்கான குறிமுறைவரிகளை https://flutter.io/widgets/basics/ .என்ற தளத்திற்கு சென்றுஅறிந்து பயன்படுத்திகொள்க.
பின்வரும் குறிமுறைவரிகள்StatelessWidget என்பதற்கு எடுத்துகாட்டாகும்
class Demo extends StatelessWidget {
const Demo({ Key key }) : super(key: key);
@override
Widget build(BuildContext context) {
return new Column();
}
}
இதற்குமறுதலையாக மாறக்கூடிய நிலையிலான பொருட்களுக்கு பின்வரும் குறிமுறைவரிகள் StatefulWidgetஎன்பதற்கு எடுத்துகாட்டாகும்
class Demo extends StatefulWidget {
const Demo({ Key key }) : super(key: key);
@override
_DemoState createState() => new _DemoState();
}
class _DemoState extends State {
@override
Widget build(BuildContext context) {
return new Column();
}
}
Flutterஐ பயன்படுத்தி ஆண்ட்ராய்டு சாதனத்திற்கான பயன்பாடுகளை உருவாக்குதல்
1.Android Views எந்தவொருளிற்குமான பயன்பாடுகளிலும் இந்த Views அடிப்படை-யானதுதான் FlutterView ஆனது ஆண்ட்ராய்டு View இற்கு சமமானதாகும் ஆயினும் பயனாளர் இடைமுகத்திற்கு ஏற்றவாறு உண்மை தோற்றத்தை இது உருமாற்றி அமைக்கின்றது
2.MaterilaLibraryஆண்ட்ராய்டில் பயன்படுத்திடுவதையே இந்தFlutterஉம் பயன்படுத்தி கொள்கின்றது
3.Draw/paint இதற்காக ஆண்ட்ராய்டானது Canvas, Drawableஆகியவற்றை பயன்படுத்தி கொள்கின்றது Flutterஆனது அதற்காக Canvas APIஐ பயன்படுத்தி கொள்கின்றது 4.Navigationஆண்ட்ராய்டானது செயல்களுக்கிடையேவழிகாட்டிட Intentsஎன்பதை பயன்படுத்தி கொள்கின்றது Flutterஆனது திரைகளுக்கு இடையே வழிகாட்டிட Navigator, Routes என்பவைகளை பயன்படுத்தி கொள்கின்றது மேலும் விவரங்களுக்கு https://flutter.io/flutter-for-android/ என்ற இணையதளத்திற்கு சென்றறிந்து பயன்படுத்தி கொள்க
Flutterஐ பயன்படுத்தி ஐஓஎஸ் சாதனத்தின் பயன்பாடுகளை உருவாக்குதல்
1.IOSUIView எந்தவொருளிற்குமான பயன்பாடுகளிலும்இந்த Views அடிப்படையானதுதான் ஆயினும் பயனாளர் இடைமுகத்திற்கு ஏற்றவாறு உண்மை தோற்றத்தை FlutterView ஆனது உருமாற்றி அமைக்கின்றது
2.MaterilaLibrary இங்குFlutterஆனது பொருட்களின் வடிவமைப்பு வழிகாட்டியை பயன்-படுத்தி ஐஓஎஸ் பொருத்தமாக அமைந்துமாறு செய்கின்றது
3.Opacity ஐஓஎஸ்இல் எந்தவொன்றையும் .Opacityஅல்லது.alphaஆக பயன்படுத்தி கொள்கின்றது ஆனால்Flutterஆனது Wrapஎன்பதை Opacity ஆக பயன்படுத்தி கொள்கின்றது
4.Navigationஐஓஎஸ்இல் UI Navigation Controllerஎன்பதை காட்சியை கட்டுபடுத்துபவராக பயன்படுத்தி கொள்கின்றது Flutterஆனது திரைகளுக்கு இடையே வழிகாட்டி Navigator, Routesஎன்பவைகளை பயன்படுத்தி கொள்கின்றது
மேலும் விவரங்களுக்கு https://flutter.io/flutter-for-ios/ என்ற இணையதளததிற்கு சென்றறிந்து பயன்படுத்தி கொள்க
3

இயந்திரகற்றலும்(Machine Learning),திறன்பேசியும் (Smartphone) ஒன்றிணைந்தால் மிக சிறந்த பயனை நாம் அடையமுடியம்

அது எவ்வாறு என்பதுதான் நம்மனைவரின் முன்உள்ள மிகப்பெரியகேள்வியாகும் இயந்திரகற்றல்(Machine Learning) என்பது கணினியை மனிதனை போன்று மேம்படுத்துவதாகும் திறன்பேசி (Smartphone) என்பது கையடக்க கருவியாகும் இவையிரண்டையும் ஒன்றிணைப்பது எவ்வாறு கவலையே படவேண்டாம் இதற்காக பின்வரும் இருவாய்ப்புகள் நமக்காக பயன்பட காத்திருக்கின்றன
1கைபேசிகளில் உள்ளிடுதல் வெளியிடுதல் மட்டும் செய்தல் தேவையான உள்ளீடுகளை மட்டும்கைபேசி வாயிலாக பெற்று இயந்திரகற்றல்(Machine Learning) இற்கான சேவையாளர் கணினிக்கு அனுப்பி முடிவுகளை கைபேசிவாயிலாக பெறுவது .
2 இயந்திரகற்றல்(Machine Learning) இற்கான சிறப்பு அமைவு இதற்கான கட்டமைப்பை கைபேசிகளிலேயே அமைவுசெய்து பயன்படுத்தி கொள்ளலாம்
இவையிரண்டிலும் நன்மையும் தீமையும் உண்டு பொதுவான குறைபாடுகளானவை
1.பேச்சொலியை அறி்ந்தேற்பு-செய்தல்,
2.உருவப்படங்களை அறி்ந்தேற்புசெய்தல்,
3.பொருட்களை கண்டுபிடித்து சுட்டிக்காட்டுதல்,
4. பயனாளர்களை அறி்ந்தேற்புசெய்தல்,
5. பேசும் மொழியை மொழிமாற்றம் செய்தல்
போன்றவைகளை சரிசெய்து மேம்படுத்தினால் போதும் திறன்பேசியையும் இயந்திரகற்றலிற்காக பயன்படுத்தி கொள்ளமுடியும்.
பின்வரும் இரு வரைச்சட்டங்கள் திறன்பேசிகளில் இயந்திர கற்றலை வலுப்படுத்துகின்றன
1. TensorFlow முதலில் ஆண்ட்ராய்டு ஸ்டுடியோவை இதற்கான தளத்திலிருந்து பதிவிறக்கம்செய்து நிறுவுகை செய்து கொள்க அவ்வாறே TensorFlowஎன்பதை
https://githup.com/tensorflow/ எனும்இணையமுகவரியிலிருந்து பதிவிறக்கம்செய்து நிறுவுகை செய்து கொள்க தொடர்ந்து
allprojects {
repositories {
jcenter()
}
}
depedencies {
compile ‘org.tensorflow:tensorflow-android:+’
}
எனும் குறிமுறைவரிகளை கொண்டு tensorflowஐஆண்ட்ராய்டு பயன்பாடாக சேர்த்து கொண்டு செயல்படுத்திடுக.மேலும் செயல்முறை விளக்கபயன்பாடுகளை(Demo) பதிவிறக்கம் செய்து செயல்படுத்திபார்த்து அறிந்து கொள்க அல்லது முழுவிளக்கம் வேண்டு- மெனில் https://codelabs.developers.google.com/codelabs/tensorflow-forpoets-2-tflite/#0. என்ற தளத்திற்கு சென்று அறிந்து கொண்டு பயன்படுத்திடுக
2. Bender இதுஒரு நவீண இயந்திரகற்றலின் வரைச்சட்டமாகும் இது ஐஓஎஸ் பயன்பாடுகளிலும் இயற்கையான வலைபின்னலுடன் செயல்படும் தன்மைகொண்டது இதனை 1.நடப்பிலுள்ளTensorFlowஎன்பதை பயன்படுத்தியும் செயல்படுத்திடலாம்.
2. Metal PerformanceShaders(MPS) ஐ பயன்படுத்தி வரைகலைசெயலகமாக பயன்படுத்தி கொள்ளலாம் 3.நேரடியாக Benderஐ பதிவிறக்கம்செய்து பயன்படுத்தி கொள்ளலாம்
மேலும் விவரங்களுக்கு https:github.com/xmartlabs/Bender/ என்ற இணையதளத்திற்குசெல்க.