வரலாறு மற்றும் தத்துவம்¶
BeeWare திட்டம் ஒரு எளிய கேள்வியுடன் தொடங்கியது: நாம் தினசரி பயன்படுத்தும் மற்ற தொழில்நுட்பங்களைப் போலவே, பைத்தான் டெவலப்பர்களாக நாம் பயன்படுத்தும் கருவிகளும் ஏன் அதே வேகத்தில் மேம்படவில்லை?
பைத்தான் ஒரு மிகவும் திறமையான மொழி என்பதை நிரூபித்துள்ளது - இது புதியவர்களுக்கு அணுகக்கூடியதாகவும், ஆனால் நிபுணர்களின் கைகளில் சக்திவாய்ந்ததாகவும் உள்ளது. பைத்தான் தரவு பகுப்பாய்வு, அறிவியல் கணக்கீட்டு, மற்றும் வலை உருவாக்கத் துறையில் ஒரு முக்கிய அங்கமாக வேகமாக மாறி வருகிறது. மேலும், டஜாங்கோ கேர்ள்ஸ் போன்ற முயற்சிகள், நிரலாக்க அனுபவம் இல்லாதவர்களுக்கு பைத்தானை அறிமுகப்படுத்தும் வகையில், ஒரு நாள் பயிற்சிப் பாடநெறிகளை வழங்க முடியும் என்பதை நிரூபித்துள்ளன; மேலும், ஒரு நாளின் முடிவில், பங்கேற்பாளர்கள் தரவுத்தள ஆதரவு பெற்ற ஒரு டைனமிக் வலைத்தளத்தை உருவாக்கி, பொதுவில் காணக்கூடிய சர்வரில் வரிசைப்படுத்தியுள்ளனர்.
இருப்பினும், பைத்தான் எழுதும் ஒருவருக்கான டெவலப்பர் அனுபவம், புதிய மில்லினியத்தை விட 90-களின் முற்பகுதியை அதிகம் பிரதிபலிக்கிறது. பைத்தானின் இயல்புநிலை மேம்பாட்டுச் சூழல் இன்னும் 80x25 கன்சோல் சாளரமாகவே உள்ளது. விண்டோஸ் அல்லது ஆப்பிள் சூழல்களில் இருந்து வரும் பயனர்கள், மிகவும் விரிவான, நன்கு வடிவமைக்கப்பட்ட வரைகலை இடைமுகங்களுக்குப் பழகியிருப்பதால், இந்த 30 ஆண்டு கால பழைய நினைவு அவர்களுக்கு முற்றிலும் அந்நியமான அனுபவமாக இருக்கக்கூடும்.
ஆம், குறியீடு எழுதுவதற்கு ஒரு நேட்டிவ் செயலி அனுபவத்தை வழங்கும் ஐடிஇ-கள் (ஒருங்கிணைந்த மேம்பாட்டுச் சூழல்கள்) உள்ளன. ஆனால் அந்தக் கருவிகள், ஒரு திட்டத்தைப் பார்ப்பதில் ஐடிஇ-யின் அணுகுமுறையை நீங்கள் முழுமையாக ஏற்றுக்கொள்ள வேண்டும் எனக் கோருகின்றன. அவை, தீர்ப்பதைப் போலவே, மேம்பாட்டுச் செயல்முறைக்கு அதே அளவு தலைவலிகளையும் அறிமுகப்படுத்துகின்றன.
எனவே, கன்சோல் சாளரத்தில் யூனிக்ஸ் மேம்பாட்டின் "பழைய வழி"க்கும், அனைத்தையும் உள்ளடக்கிய ஐடிஇ-களின் "புதிய வழி"க்கும் இடையே ஒரு சுவாரஸ்யமான பிளவு நமக்கு எஞ்சியுள்ளது.
யூனிக்ஸ் தத்துவம்¶
இருப்பினும், அது அப்படி இருக்க வேண்டிய அவசியமில்லை. யூனிக்ஸ் தத்துவத்தின் முக்கியக் கொள்கை, "ஒவ்வொரு கருவியும் ஒரு வேலையைச் சிறப்பாகச் செய்ய வேண்டும்" என்பதாகும். இது மிகவும் சக்திவாய்ந்த ஒரு தத்துவமாகும், மேலும் இது மிகவும் கவனமாக வடிவமைக்கப்பட்ட, சுதந்திரமான கருவிகளின் தொகுப்பை ஒன்றிணைப்பதன் மூலம், மிகவும் சக்திவாய்ந்த கருவித்தொகுப்புகளை உருவாக்க உதவுகிறது.
துரதிர்ஷ்டவசமாக, பெரும்பாலான யுனிக்ஸ் கருவிகள் இதை "அனைத்துக் கருவிகளும் ஒரு கன்சோல் இடைமுகத்தைப் பயன்படுத்த வேண்டும்" என்றும் பொருள் கொள்ளும்படி செய்துவிட்டன. இருப்பினும், கருவிகள் கன்சோல் இடைமுகத்தைப் பயன்படுத்த வேண்டும் என்று யுனிக்ஸ் தத்துவத்தில் எதுவும் கூறவில்லை - அது அப்படி நிகழ்ந்துவிட்டது.
BeeWare திட்டம், நாம் இரு உலகங்களின் சிறந்த அம்சங்களையும் பெற முடியும் என்ற கருதுகோளுடன் தொடங்கப்பட்டது. ஒவ்வொன்றும் ஒரு செயலை சிறப்பாகச் செய்யும், ஒன்றோடொன்று இணைக்கக்கூடிய கருவிகளின் ஒரு தொடரை நம்மால் கொண்டிருக்க முடியும். ஆனால் அந்தக் கருவிகள், ஒரு வளமான வரைகலைப் பயனர் இடைமுகத்தைப் பயன்படுத்தித் தங்களின் செயல்பாடுகளையும் வெளிப்படுத்த முடியும்.
குறியீட்டை விட மேலானது¶
இருப்பினும், இது வெறும் குறியீட்டை விட மேலானது. ஒரு வெற்றிகரமான மென்பொருள் திட்டத்திற்கு ஆவணங்கள், வடிவமைப்புத் திறன்கள், கருத்துகள் மற்றும் பிழை அறிக்கைகள் தேவை. BeeWare சமூகம் அனைத்து பங்களிப்புகளும் முக்கியமானவை என்பதை அங்கீகரிக்கிறது - கூகித்ஹப்பில் புல் ரிக்வெஸ்ட் வடிவில் வரும் பங்களிப்புகள் மட்டுமல்ல.
அப்படியிருந்தாலும், ஒரு திட்டத்தை ஒரு வெற்றிடத்தில், அனைத்து பங்களிப்புகளின் கூட்டுத்தொகையாக நினைப்பது எளிது. ஆனால் அது ஒருபோதும் உண்மையல்ல. ஒரு திறந்த மூலத் திட்டம் என்பது சமூகம் பற்றியது.
பன்முகத்தன்மை மற்றும் உள்ளடக்கம்¶
பன்முகத்தன்மை கொண்ட சமூகம் ஒரு வலிமையான சமூகம். இதன் பொருள், அனைத்து அனுபவ நிலைகளிலும், அனைத்துப் பின்னணிகளிலிருந்தும், அனைத்து இனங்கள், மதங்கள், பாலியல் நாட்டங்கள் மற்றும் வெளிப்பாடுகளைச் சேர்ந்த மக்களை ஏற்றுக்கொள்வதாகும். BeeWare திட்டம், அனைவரையும் உள்ளடக்கிய, பன்முகத்தன்மை கொண்ட மற்றும் வரவேற்கும் ஒரு சமூகத்தை உருவாக்கிப் பேணுவதில் உறுதியாக உள்ளது.
இதை ஆதரிக்கும் வகையில், பங்களிப்பாளராக ஈடுபட விரும்பும் எவருக்கும் வழிகாட்ட நாங்கள் ஒரு திறந்த வாய்ப்பை வழங்குகிறோம், மேலும் கடுமையாக அமல்படுத்தப்படும் ஒரு நடத்தை விதிமுறைகள் எங்களிடம் உள்ளது. அந்த நடத்தை விதிமுறைகளை மீறும் எந்தவொரு புகாரும் - மூத்த சமூக உறுப்பினர்களால் செய்யப்பட்டாலும் கூட - மரியாதையுடன் கையாளப்பட்டு, பொருத்தமாக நடவடிக்கை எடுக்கப்படும்.
ஆரோக்கியமான மற்றும் நீடித்த¶
சமூகம் அணுகக்கூடியதாகவும், நீடித்ததாகவும் இருப்பதை உறுதி செய்வதும் முக்கியம். துரதிர்ஷ்டவசமாக, "உண்மையான" திறந்த மூலத் திட்டங்கள் முழுமையாகத் தன்னார்வலர்களால் உருவாக்கப்பட வேண்டும் என்பது திறந்த மூலக் கலாச்சாரத்தில் ஏற்றுக்கொள்ளப்பட்ட ஒரு பகுதியாக மாறிவிட்டது. இது பல குழுக்களுக்கு ஒரு நுழைவுத் தடையாகச் செயல்படுகிறது - தங்கள் ஓய்வு நேரத்தைத் தன்னார்வப் பணியில் செலவிடக்கூடியவர்கள், ஓய்வு நேரம் உள்ள நபர்களாக மட்டுமே இருக்கிறார்கள்.
இது பங்களிப்பாளர்களிடையே அடிக்கடி சோர்வு மற்றும் பிற மனநலப் பிரச்சினைகளுக்கும் வழிவகுக்கிறது. மென்பொருள் மேம்பாட்டு சமூகங்களில் மனச்சோர்வு, பதட்டம் மற்றும் சோர்வு ஆகியவை மிகவும் பொதுவானவை என்பதால், அதை ஒரு பெருமையாகவோ அல்லது ஒரு மேம்பாட்டுக் குழு எவ்வளவு அர்ப்பணிப்புடன் இருக்க முடியும் என்பதற்கான வெளிப்பாடாகவோ கருதக்கூடாது. இது நேரடியாகச் சமாளிக்கப்பட வேண்டிய ஒரு பிரச்சினை, மேலும் ஒரு மென்பொருள் பிழை சரிசெய்யப்படுவதைப் போலவே இதுவும் சரிசெய்யப்பட வேண்டும் - உடனடித் தீர்வுகளுடனும், பிரச்சினையின் அமைப்பு ரீதியான காரணத்தை நீக்குவதற்கான நீண்ட காலத் திட்டங்களுடனும்.
தன்னார்வலர்களின் பங்களிப்புகளுக்கு நாங்கள் பெரும் மதிப்பளித்தாலும், ஆரோக்கியமான மற்றும் நீடித்த சமூகத்தை உருவாக்க தன்னார்வ முயற்சிகள் மட்டும் போதுமானவை அல்ல என்பதையும் நாங்கள் அறிவோம். அந்தக் காரணத்திற்காக, BeeWare திட்டத்தின் செயல்பாட்டில் நிதி நிலைத்தன்மை ஒரு முக்கிய கருத்தாக உள்ளது. ஒரு சமூகமாக, மக்கள் பங்களிக்கத் தொடங்கவும், தொடர்ந்து பங்களிக்கவும் தேவையான வளங்களை வழங்குவதில் பணத்தின் பங்கை நாங்கள் புறக்கணிக்கவில்லை. ஓப்பன் சோர்ஸ் மேம்பாட்டின் இலட்சியங்களைப் பாதிக்காமல், தனிநபர்கள் தங்கள் பணிகளை அர்த்தமுள்ள வழிகளில் பணமாக்கிக்கொள்ள, ஒரு சமூகமாக நாங்கள் ஏற்றுக்கொள்ளப்பட்ட வழிமுறைகளை வழங்குவோம், மேலும் முடிந்தவரை, மக்களுக்கு அவர்களின் பணிக்காக ஊதியம் வழங்குவோம்.
குறி¶
BeeWare திட்டத்தின் இறுதி இலக்கு: ஜாங்கோ வலை மென்பொருளுக்காகச் செய்த அதே வேலையை, மொபைல் மற்றும் டெஸ்க்டாப் பயனர்-சார் மென்பொருளுக்கும் செய்வதாகும் - அதாவது, பயனர்கள் செழுமையான, நேட்டிவ் பயனர் இடைமுகங்களை உருவாக்கி, அவற்றைத் தங்கள் சாதனங்களில் நிறுவ உதவும் கருவிகள் மற்றும் நூலகங்களை அவர்களின் கைகளில் ஒப்படைப்பதாகும். இதில் அடங்குபவை:
- பைத்தானை வெவ்வேறு சாதனங்களில் இயக்க உதவும் கருவிகள்
- அந்தச் சாதனங்களில் இயங்குவதற்காக ஒரு பைத்தான் திட்டத்தை தொகுக்கும் கருவிகள்,
- சாதனங்களின் உள்ளார்ந்த விட்ஜெட்டுகள் மற்றும் திறன்களை அணுகும் நூலகங்கள்
- இந்தத் திட்டங்களை உருவாக்க, பிழைதிருத்தம் செய்ய, பகுப்பாய்வு செய்ய உதவும் கருவிகள்.
இந்தக் கருவிகளின் தொகுப்பு, ஜாங்கோ கேர்ள்ஸ் போன்ற ஒரு அமைப்பில் முற்றிலும் புதியவர்கள் பயன்படுத்தும் அளவுக்கு எளிமையாகவும், அதே சமயம் அடுத்த இன்ஸ்டாகிராம், பின்டரெஸ்ட் அல்லது டிஸ்கஸ் போன்ற தளங்களை உருவாக்கப் போதுமான அளவு சக்திவாய்ந்ததாகவும் இருக்க வேண்டும் என்பதே இதன் நோக்கம்.
மிக முக்கியமாக, இது அனைத்தையும் ஒரு திறந்த மூல சமூகமாகச் செய்ய இலக்கு கொண்டுள்ளது. திறந்த மூல மேம்பாட்டுச் செயல்முறை, வலுவான மற்றும் நம்பகமான மென்பொருளை உருவாக்குவதற்கான மிகவும் நம்பகமான வழியாகத் தன்னை நிரூபித்துள்ளது. மேலும், யார் வேண்டுமானாலும் மென்பொருளை அணுக முடியும் என்பதால், ஒருவர் நிபுணராக இருந்தாலும் சரி அல்லது ஆர்வமுள்ள தொடக்கநிலையாளராக இருந்தாலும் சரி, அனைவரும் ஒரே சிறந்த கருவிகளுடன் தொடங்க முடியும்.
எல்லா இடங்களிலும் பைத்தான்¶
ஒரு நவீன கணினித் திட்டம், கடந்த 10 ஆண்டுகளில் கணினித் துறையில் ஏற்பட்ட மிகப்பெரிய வளர்ச்சியைப் புறக்கணிக்க முடியாது. பைத்தான் ஒரு கிராஸ்-பிளாட்ஃபார்ம் மொழி என்பதில் பெருமை கொள்கிறது. 10 ஆண்டுகளுக்கு முன்பு, கிராஸ்-பிளாட்ஃபார்ம் என்பது விண்டோஸ், மேகோஸ் மற்றும் லினக்ஸில் கிடைப்பதைக் குறித்தது. இப்போதெல்லாம், மொபைல் கணினிப் பயன்பாடு மிகவும் முக்கியமானது. இருப்பினும், மொபைல் தளங்களில் பைத்தான் நிரலாக்கத்திற்கு நல்ல தேர்வுகள் அதிகம் இல்லை, மேலும் குறுக்கு-தள மொபைல் கோடிங் இன்னும் கைகூடவில்லை.
BeeWare, மொபைல் மற்றும் பிற வளர்ந்து வரும் தளங்களை (கடிகாரங்கள் மற்றும் செட்-டாப்-பாக்ஸ்கள் போன்றவை) கணினி சூழலமைப்பின் முதன்மையான அங்கமாக ஏற்றுக்கொள்கிறது - ஏனென்றால், மக்களிடம் இந்தச் சாதனங்கள் இருக்கும்போது, அவர்கள் அவற்றுக்காக பைத்தானில் மென்பொருள் எழுத ஏன் முடியாது?
எல்லா இடங்களிலும் பூர்வீகமான¶
பல்வேறு தளங்களில் இயங்குவதை அடைய தீம்களைப் பயன்படுத்துவது எளிது. இருப்பினும், தீம்களைப் பயன்படுத்தி உருவாக்கப்பட்ட செயலிகளை எளிதில் கண்டறியலாம் - அவை மற்ற எந்த செயலியைப் போலவும் சரியாக நடந்துகொள்ளாது. விட்ஜெட்டுகள் சரியாகத் தெரியாது, அல்லது OS X செயலியில் ஒரு சாளரத்தில் ஒரு மெனு பட்டி இருக்கும். தீம்கள் இதை மிகவும் நெருக்கமாகச் செய்ய முடியும் - ஆனால் எப்போதும் சில வெளிப்படுத்தும் அறிகுறிகள் இருக்கும்.
மேலும், உள்ளூர் விட்ஜெட்டுகள் ஒரு தீம் செய்யப்பட்ட பொதுவான விட்ஜெட்டை விட எப்போதும் வேகமானவை. எல்லாவற்றிற்கும் மேலாக, நீங்கள் ஒரு பொதுவான விட்ஜெட்டின் மீது அடுக்கப்பட்ட வரைதல் இயந்திரத்தை அல்ல, மாறாகச் செம்மைப்படுத்தப்பட்டு உகந்ததாக்கப்பட்ட உள்ளூர் அமைப்புத் திறனைப் பயன்படுத்துகிறீர்கள்.
தீம்கள் நேட்டிவ் தளங்களின் அணுகல்தன்மை நன்மைகள் பலவற்றையும் தவறவிடுகின்றன. நவீன OS உருவாக்குநர்கள், இயக்கத்திறன், பார்வை அல்லது அறிவாற்றல் குறைபாடு உள்ளவர்களுக்காகப் பல நேரத்தைச் செலவிட்டு, பயன்பாட்டுக்கான வசதிகளைச் செம்மைப்படுத்துகிறார்கள். நீங்கள் நேட்டிவ் விட்ஜெட்களைப் பயன்படுத்தினால், இந்த வசதிகளை நீங்கள் பொதுவாக இலவசமாகப் பெறுவீர்கள். ஒரு தீம் மூலம் விட்ஜெட்களை மீண்டும் செயல்படுத்தினால், அந்த வசதிகளையும் நீங்கள் மீண்டும் செயல்படுத்த வேண்டும்.
BeeWare, செயல்தள மேம்பாட்டிற்கு கருப்பொருள் அடிப்படையிலான அணுகுமுறையைப் பயன்படுத்துவதற்குப் பதிலாக, உள்ளூர் விட்ஜெட்டுகளையும் உள்ளூர் செயல்பாடுகளையும் பயன்படுத்துகிறது.
பைத்தான் பூர்வீகம்¶
BeeWare என்பது தயக்கமின்றி "பைத்தானுக்கு முதலிடம்" கொடுக்கும் ஒரு கட்டமைப்பு ஆகும். நாங்கள் பைத்தானை விரும்புகிறோம். அது தோற்றமளிக்கும் விதத்தையும், அது செயல்படும் விதத்தையும் நாங்கள் விரும்புகிறோம். ஒரு குறிப்பிட்ட தளத்தில் பைத்தான் ஒரு முதன்மையான தேர்வாகக் கிடைக்கவில்லை என்றால், பைத்தானை ஒரு மேம்பாட்டு மொழியாகக் கிடைக்கச் செய்யத் தேவையான அனைத்தையும் நாங்கள் செய்வோம். மேலும், ஒரு API அல்லது வடிவமைப்புக்காக பைத்தானின் சொற்றொடர்களைப் பயன்படுத்தும் வாய்ப்பு கிடைக்கும்போது, நாங்கள் அதைத்தான் செய்யப் போகிறோம். அதாவது, குறுக்கு-தள செயலி உருவாக்கத்திற்காக சிறந்த பைத்தான்-உள்ளூர் API-ஐ வழங்குவதற்காக, ஜெனரேட்டர்கள், கான்டெக்ஸ்ட் மேனேஜர்கள், yield from ஒத்திசைவற்ற அழைப்புகள் மற்றும் பலவற்றை நாங்கள் பயன்படுத்தப் போகிறோம்.
நாங்கள் எதிர்காலத்தையும் நோக்குகிறோம் - இதன் பொருள் நாங்கள் பிரத்தியேகமாக பைத்தான் 3-ஐ ஆதரிக்கிறோம்.
உள்ளூர் அனுபவம்¶
எந்தவொரு கருவியைப் பயன்படுத்துவதற்கான அனுபவமும் அதன் நிறுவல் செயல்முறையில்தான் தொடங்குகிறது. பீவேயரின் "எல்லா இடங்களிலும் நேட்டிவ்" தத்துவத்தின் ஒரு பகுதி, நிறுவலுக்குப் பொருத்தமான நேட்டிவ் வழிமுறைகளை ஏற்றுக்கொள்வதாகும். நீங்கள் ஒரு பயனர்-இடம் கருவியைப் பயன்படுத்தினால், அது வேறு எந்தக் கருவியையும் நிறுவுவது போலவே - அதாவது ஒரு செயலிக் கடை, ஒரு நிறுவி அல்லது ஒரு எளிய செயல்படுத்தக்கூடிய தொகுப்பு வழியாக - நிறுவப்பட வேண்டிய ஒரு தொகுப்பாக உங்களுக்கு வழங்கப்பட வேண்டும். நீங்கள் அந்தச் செயலியை பைத்தானில் எழுதியிருக்கிறீர்கள் என்பதை இறுதிப் பயனர்கள் அறிந்துகொள்ளக் கூடாது.