निंजा आईडीई: पायथन के लिए बनाया गया एक आईडीई

अंत में किसी ने लिखने की ठानी पायथन के लिए लोगों की तरह एक आईडीई कि कोई भी सामान्य नागरिक लिनक्स में समस्याओं के बिना उपयोग कर सकता है। हां, पायथन सहित विभिन्न भाषाओं में प्रोग्रामिंग के लिए कई आईडीई हैं, लेकिन यह अपनी आस्तीन ऊपर कुछ छोटी चाल है...

NINJA-IDE की शुरुआत कैसे हुई?

NINJA- आईडीई यह PyAr को भेजे गए कुछ ईमेल द्वारा पैदा हुआ था, जिसका विषय आमतौर पर काफी बार सुना जाता है: "पायथन के लिए मैं किस अच्छे आईडीई का उपयोग कर सकता हूं?", "पायथन के लिए एक आईडीई क्यों नहीं है जिसमें यह या वह विशेषता है?", और इन ईमेलों की प्रतिक्रियाएँ हमेशा कमोबेश एक जैसी ही रहती हैं, क्योंकि मौजूदा IDEs जो हमें उपलब्ध है, अधिकांश भाग के लिए, पायथन के लिए डिज़ाइन नहीं किया गया था, लेकिन इसे प्लगिन के माध्यम से और इस तरह से शामिल करने का विकल्प पेश किया गया यह अन्य प्रयोजनों के लिए डिज़ाइन किए गए बहुत भारी आईडीई का उपयोग करता था, जहां पायथन के लिए समर्थन वास्तव में न्यूनतम था, और जो कि पायथन के लिए थे, एक विशिष्ट फ्रेमवर्क के लिए बहुत उन्मुख होते थे या स्वतंत्र नहीं थे। इसलिए, इस चुनौती का प्रतिनिधित्व करते हुए और मेलिंग सूची में उठाए गए दिलचस्प विचारों से प्रेरित होकर, हमने ध्यान केंद्रित करके इस परियोजना को अपनाने का फैसला किया "पायथन प्रोग्रामर के लिए एक अच्छी IDE की क्या विशेषताएं होनी चाहिए".

इसे ध्यान में रखते हुए हमने NINJA-IDE का विकास शुरू किया, जिसका नाम पुनरावर्ती संक्षिप्त नाम का व्युत्पन्न है: "निंजा सिर्फ एक और आईडीई नहीं है"। आईडीई के पास मुश्किल से दो महीने से अधिक का विकास है, लेकिन प्रोग्रामिंग की इच्छा और घंटों के लिए धन्यवाद जो हम इसे समर्पित कर रहे हैं, हमारे पास पहले से ही लागू की गई कई कार्यक्षमताओं के साथ आईडीई हो सकती है, एनजेजेए के विकास को जारी रखने में सक्षम होने के बिंदु पर- NINJA-IDE का उपयोग कर IDE, जो बदले में हमें बग्स को खोजने और अनुप्रयोग की प्रयोज्यता और व्यावहारिकता में सुधार करने में मदद करता है, अनुभव और इसके निरंतर उपयोग के माध्यम से।

परियोजना को मुफ्त GPL लाइसेंस के तहत विकसित किया गया है और कोड इसके माध्यम से प्राप्त किया जा सकता है:

IDE की कुछ वर्तमान विशेषताएं हैं:

  • फाइलें, टैब, स्वचालित इंडेंटेशन, जूम इन एडिटर आदि से निपटने के लिए किसी भी आईडीई की विशिष्ट कार्यक्षमताएं।
  • पायथन में लिखा जा रहा है और PyQt का उपयोग कर रहा है, यह क्रॉस-प्लेटफ़ॉर्म है और लिनक्स, मैक ओएस एक्स और विंडोज सिस्टम पर परीक्षण किया गया था।
  • सिंटेक्स हाइलाइटिंग विभिन्न प्रकार की भाषाओं के लिए (हालांकि यह पायथन पर केंद्रित है, यह प्रोग्रामर की सुविधा के लिए अन्य भाषाओं के लिए सिंटैक्स हाइलाइटिंग प्रदान करता है)।
  • एक ही आईडीई से पायथन कंसोल का उपयोग करने की संभावना।
  • यह आईडीई में परियोजनाओं के प्रबंधन की अनुमति देता है, उन्हें पायथन प्रोजेक्ट्स के रूप में मान्यता देता है और आईडीई के माध्यम से नई फाइलें और फ़ोल्डर्स बनाने, मौजूदा फ़ाइलों को हटाने, उस मॉड्यूल के भीतर जानकारी के साथ "__in__" फाइलों के स्वचालित निर्माण आदि।
  • यह सभी इंटरफ़ेस पैनलों को बहुत सरल तरीके से छिपाने और स्थानांतरित करने की अनुमति देता है, जिससे यह उपयोगकर्ता के स्वाद के अनुकूल हो सकता है।
  • एक ही समय में एक से अधिक संपादक लंबवत या क्षैतिज रूप से देखें।
  • प्लगइन्स के अतिरिक्त (जो सादगी के लिए NINJA-IDE प्लगइन का उपयोग करके बनाया जा सकता है) के माध्यम से एक्स्टेंसिबल।
  • यह आईडीई सत्रों का प्रबंधन करता है, यह याद रखने के लिए कि कौन सी फाइलें और परियोजनाएं खुली थीं जब इसे बंद कर दिया गया था और फिर से इसका उदाहरण खोलने पर उन्हें पुनर्प्राप्त करता है।
  • स्वतः-पूर्णता के लिए सहायता (जिस वस्तु तक पहुँचा जा रहा है उसका एक विशिष्ट ऑटो-पूरा होना)।
  • स्वचालित अद्यतन।
  • और कई और सुविधाएँ!

NINJA-IDE कौन विकसित करता है?

NINJA-IDE को सैंटियागो मोरेनो और डिएगो सरमेंटेरो द्वारा विकसित किया जाना शुरू किया गया था, और इस परियोजना को शुरू करने के 2 सप्ताह के भीतर इसे विकसित करने के लिए पहले से ही इसका इस्तेमाल किया जा रहा था। PyAr List, Blogs आदि पर लोगों का धन्यवाद। बहुत ही कम समय में, इस परियोजना के प्रसार का अर्थ था कि हम उपयोगकर्ताओं द्वारा की जाने वाली बग रिपोर्ट, NINJA मेलिंग सूची पर सुझाव और यहां तक ​​कि उपयोगकर्ताओं और सहयोगियों द्वारा कोड योगदान के साथ गिनती कर सकते हैं, जिनमें से कुछ बन गए। एनआईटीजेए-आईडीई का हिस्सा कमिटर्स की भूमिका में है, जैसा कि इस मामले में है: मार्टीन एल्डरेट, जुआन कैबरल और माटीस हेरानज।

यह मजबूत सहयोग और भागीदारी जो हम समुदाय से प्राप्त कर रहे हैं, NINJA-IDE को हर दिन बढ़ने की अनुमति देता है, उपयोगकर्ताओं को उन सुविधाओं को सुधारना और कार्यान्वित करना। बदले में, हम वर्तमान में NINJA-IDE का उपयोग करने वाले लोगों से प्राप्त टिप्पणियां, हमें इस उपकरण पर कड़ी मेहनत जारी रखने के लिए प्रेरित करते हैं, जिसके साथ हम पायथन अनुप्रयोगों के विकास को और सरल बनाना चाहते हैं।

आपने कैसे तय किया कि किन विशेषताओं को जोड़ना है?

परियोजना की शुरुआत में, एक संरचना पर विचार किया गया था जो इसे समय के साथ कार्यात्मकता को विकसित करने और शामिल करने की अनुमति देगा, जिसमें दो मुख्य कारक होंगे: कोड संपादक और परियोजना प्रबंधन। इन दो मूलभूत स्तंभों की देखभाल करने और बाद में नई सुविधाओं को शामिल करने की सुविधा प्रदान करने के लिए एक अच्छा आधार बनाने के लिए आवेदन का निर्माण शुरू किया गया। प्रोजेक्ट अलग-अलग चरणों से गुजरा, सिंटैक्स हाइलाइटिंग के साथ एक अच्छे संपादक के साथ शुरू हुआ, प्रोजेक्ट फ़ाइलों के प्रबंधन के साथ जारी रहा, जब तक कि प्लगइन फीचर्स, ऑटो-पूर्णता, सत्र प्रबंधन आदि को जोड़ना। पायथन को अक्सर एक ऐसी भाषा के रूप में देखा जाता है जिसमें कोड के बारे में जानकारी प्रदान करने में अधिक कठिनाइयां होती हैं जो कि लिखा जा रहा है क्योंकि यह गतिशील टाइपिंग, आदि के कारण प्रोग्रामिंग के समय वस्तुओं से कोई निष्कर्ष नहीं निकाल सकता है।

कुछ मामलों में, यह सच है कि एक स्पष्ट टाइपिंग होने से सरल और अधिक विस्तृत विश्लेषण किए जा सकते हैं, लेकिन यह भी सच है कि वर्तमान में पायथन के लिए कई उपकरण और पुस्तकालय हैं जो इस वर्जना को खत्म करने में मदद करते हैं कि एक आईडीई होना संभव नहीं है जो कोड उत्पन्न हो रहा है उस पर वास्तविक सहायता प्रदान करता है। यही कारण है कि NINJA-IDE उन प्रोग्रामरों को अनुमति देने का प्रयास करता है जो अपने कार्यक्रमों को विकसित करने के लिए पायथन का उपयोग करते हैं, वही सुविधाएं और एड्स हैं जो जावा या .NET में विकसित होने पर प्राप्त होते हैं, जिनमें से कुछ आईडीई के साथ वर्तमान में उन भाषाओं के लिए जाना जाता है। अन्य भाषाओं के लिए आईडीई से प्राप्त परिणामों और अनुभवों को लेते हुए, इसका उद्देश्य पायथन के लिए डिज़ाइन किए गए आईडीई को प्राप्त करना है जो इसका उपयोग करते समय समान संतुष्टि उत्पन्न करता है।

NINJA-IDE में नई सुविधाओं के सुझाव, निर्णय और निगमन के लिए, मेलिंग सूची का उपयोग आमतौर पर उन सदस्यों द्वारा सामूहिक निर्णय लेने के लिए किया जाता है जो परियोजना बनाते हैं, इस सुविधा का उद्देश्य क्या है, यह जानने के लिए कुछ भी नहीं। किस चरण को शामिल किया जाना चाहिए और अन्य विवरण। कई बार ये विशेषताएं किसी अन्य आईडीई में देखी गई कुछ दिलचस्प कार्यक्षमता से प्रेरित होती हैं, जो एक विचार समूह के सदस्यों या सुझावों में से एक विचार है। इस तरह, कोई भी, उपयोगकर्ता और डेवलपर, दोनों प्रस्ताव कर सकते हैं कि वे किन चीजों को NINJA-IDE में कार्यान्वित देखना चाहते हैं और प्रोजेक्ट आर्किटेक्चर के आधार पर यह परिभाषित किया जा सकता है कि क्या यह आईडीई के हिस्से के रूप में या एक प्लगइन के रूप में शामिल करना आवश्यक है, अनुमति देता है उसी समय, जानिए कि किन विचारों पर काम किया जा रहा है और कार्य समूह को समकालिक रखने के लिए कौन उन पर नियंत्रण रखता है।

NINJA-IDE से हम क्या उम्मीद कर सकते हैं?

NINJA-IDE एक ऐसी जरूरत को कवर करने के लिए पैदा हुआ था जो हमारे लिए महत्वपूर्ण लग रहा था, और हमने यह भी देखा कि IDEs के लिए वर्तमान दृष्टिकोण आवश्यक कवरेज प्रदान नहीं करता था।

इस परियोजना को शुरू करने के पीछे हमारा उद्देश्य पायथन अनुप्रयोगों के विकास पर केंद्रित वातावरण बनाना था, लेकिन हमेशा इस बात का ध्यान रखना चाहिए कि उपयोगकर्ताओं का एक समुदाय होना चाहिए जो हमें इस उपकरण का उपयोग करने के अनुभव को बेहतर बनाने की अनुमति दे, और वर्तमान में हमें बहुत खुश करता है NINJA-IDE समुदाय पर भरोसा करने में सक्षम होने के लिए, उपयोगकर्ताओं के अनुभव और सामूहिक ज्ञान के लिए धन्यवाद, यह संभव है, कि उनके सुझावों से परियोजना का विकास तेजी से आगे बढ़ सकता है और कई विवरणों को एक दूसरे से ध्यान में रखा जाता है। आकार की अनदेखी की जा सकती है।

भविष्य की योजनाएं

वर्तमान में हम जो निरंतर विकास प्राप्त कर रहे हैं, हम NINJA-IDE के संस्करण 1.0 की रिलीज़ के करीब हैं, जिसे 'कुनाई' नाम प्राप्त होगा। इस पहले संस्करण में, पहले बताई गई कई विशेषताएं मौजूद होंगी, जो डेवलपर को एक मजबूत और व्यावहारिक आईडीई की अनुमति देंगी, जाहिर है, किसी भी परियोजना में, सुधार और नई सुविधाओं को लागू करने के लिए उभरेगी। भविष्य के संस्करणों में NINJA-IDE में शामिल होने का इरादा रखने वाली कुछ चीजें हैं:

  • ग्राफिक डिबगर
  • रेखांकन (ब्लूजे पर आधारित) के मॉड्यूल और कक्षाओं की नौगम्यता और संबंध देखने में सक्षम होने के लिए
  • समर्थन कोड संस्करण उपकरण।
  • किसी दस्तावेज़ के सहयोगी संपादन की अनुमति दें।
  • Qt और Gtk इंटरफ़ेस डिज़ाइनर IDE में एकीकृत है।
  • चौखटे समर्थन जैसे:
  • Django
  • Google App Engine
  • और यह सिर्फ शुरुआत है!

NINJA-IDE किन उपकरणों का उपयोग करता है?

IDE को ग्राफ़िकल इंटरफ़ेस और कुछ अन्य फ़ंक्शंस से निपटने के लिए PyQt फ्रेमवर्क का उपयोग करके विकसित किया गया है, हालाँकि NINJA-IDE को अन्य फ़्रेमवर्क में पोर्ट करने के लिए कुछ कार्यों को जितना संभव हो सके अनुमति देने के लिए संभव हो सके। Gtk। क्यूटी को एक ठोस और उच्च विन्यास योग्य इंटरफ़ेस की अनुमति है, जिसने इसके व्यवहार को संशोधित करने और आईडीई की जरूरतों के लिए इसे अनुकूलित करने के लिए आवश्यक प्रत्येक तत्व का विस्तार करना संभव बना दिया है।

सिंटैक्स हाइलाइटिंग के बारे में, NINJA-IDE Qt फंक्शंस का उपयोग करके अपने स्वयं के सिंटैक्स हाइलाइटिंग सिस्टम का उपयोग करता है, और इस हाइलाइटिंग सिस्टम को एक सरल एलएसएन फ़ाइल के निर्माण के साथ NINJA-IDE में आसानी से एक्स्टेंसिबल बनाने की अनुमति देता है जो वर्णन करता है भाषा को शामिल किया जाना है। यह विधि प्रदर्शन में सुधार प्रदान करती है, लेकिन उन भाषाओं को कवर करने के लिए जिन्हें इस प्रणाली के माध्यम से मान्यता प्राप्त नहीं है, पाइएक्ट्स का उपयोग विभिन्न प्रकार की भाषाओं के सिंटैक्स हाइलाइटिंग के लिए शामिल किया गया था। हालांकि वर्तमान में प्रदर्शन कारणों से जीएनयू हाईलाइट द्वारा प्रतिस्थापित किए जाने वाले पिगमेंट की संभावना बढ़ रही है।

स्वतः पूर्णता, रीफ़ैक्टरिंग और कोड इंफ़ेक्शन का संदर्भ देने वालों के लिए, रोप का उपयोग किया जाता है, जो एक उत्कृष्ट पुस्तकालय है, जो इस प्रकार की स्थिति के लिए बहुत ही पूर्ण है। रस्सी एक उपकरण है जो टाइप किए गए भाषाओं के आईडीई की पायथन विशेषताओं के लिए एक आईडीई लाने की अनुमति देता है। वर्तमान में हम Pep8 लाइब्रेरी के उपयोग से कोड की जाँच पर भी काम कर रहे हैं, Pep8 मानकों के संबंध में कोड की स्थिति के बारे में जानकारी प्रदान करने के लिए ठीक है।

NINJA-IDE तानाना

NINJA-IDE में एक पूर्णतया प्लग इन प्रणाली है जो इन प्लगइन्स के मूल तत्व के रूप में एकीकरण की अनुमति देता है। प्लगइन लेखन काफी सरल है और आप NINJA-IDE प्लग इन को NINJA-IDE प्लगइन्स (पुनरावर्ती?) लिखने के लिए भी उपयोग कर सकते हैं। यह प्लगिन «प्लगइन्स लिखने के लिए» आपको यह तय करने की अनुमति देता है कि आईडीई के किन हिस्सों के साथ नया प्लगइन संबंधित होने जा रहा है और स्वचालित रूप से प्लगिन डिस्क्रिप्टर के साथ मिलकर आवश्यक प्रोजेक्ट संरचना बनाता है, ताकि NINJA-IDE इसकी व्याख्या कर सके और बेस क्लास यह प्लगइन उन विधियों के साथ है, जिन्हें फिर से लागू करने की आवश्यकता होगी, बदले में, जब हम प्लगिन लिखना समाप्त करते हैं, तो यह हमें इसे पैकेज करने और फिर वितरित करने की अनुमति देता है। वर्तमान में NINJA-IDE के लिए 3 प्लगइन्स उपलब्ध हैं:

  • पास्टबिन: जो आपको pastebin.com पर कोड भेजने की अनुमति देता है और उस कोड को साझा करने के लिए परिणामी लिंक देता है।
  • प्लगइन: जैसा कि हमने उल्लेख किया NINJA-IDE के लिए प्लगइन्स प्रोजेक्ट बनाने के प्रभारी व्यक्ति।
  • कक्षाकंपनी: पायथन कोड लिखते समय कुछ संरचनाएं अपने आप पूरी हो जाती हैं, जैसे: पेरेंट क्लासेस जो आवश्यक हैं, कॉल करके स्वचालित रूप से निर्माण करें।

NINJA-IDE के लिए प्लगइन विकसित करने के तरीके के बारे में अधिक जानकारी के लिए, आप निम्नलिखित विकी पर जा सकते हैं: http://ninja-ide.org/plugins/

संपर्क

मुक्ति

निंजा आईडीई अब डीईबी और आरपीएम पैकेज में उपलब्ध है। शेष दुनिया, निश्चित रूप से, हमेशा स्रोत कोड डाउनलोड कर सकती है और इसे संकलित कर सकती है। 🙂

इस उत्कृष्ट IDE को हम सभी के साथ साझा करने के लिए धन्यवाद डिएगो सरमेंटेरो!

अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।

  1.   पेट्रीसियो अर्गुएलो कहा

    मैं वास्तव में बेहतर PyCharm पसंद है। हालांकि अच्छा काम बधाई और सादर। @ पटरूगू

  2.   रिकार्डो 3284 कहा

    समुदाय को बधाई मैं अजगर में प्रोग्रामिंग का प्रशंसक हूं, आईडीई बहुत अच्छा है लेकिन मेरे कंप्यूटर पर मेरे पास उबंटू 10.10 है और मैं उन विशेषताओं के साथ काम नहीं कर सकता हूं जो आप आंकड़ा 4 में देखते हैं, वह छवि जहां कमांड या कक्षाएं या विधियां दिखाई जाती हैं। एक पायथन ऑब्जेक्ट से, यह सुविधा कम से कम मेरे लिए बहुत महत्वपूर्ण है क्योंकि सभी कमांड नहीं सीखे जाते हैं और साथ ही यह हमें प्रोग्रामर को और अधिक सीखने की अनुमति देता है, लेकिन यह कार्यक्षमता मेरे उबंटू में नहीं आती है।

    मुझे उम्मीद है कि समुदाय का कोई व्यक्ति मेरी मदद कर सकता है, मेरा ईमेल है riccardo3284@gmail.com

  3.   मार्कोसिपे कहा

    मैंने इसे गलत पढ़ा, git के लिए समर्थन अभी तक लागू नहीं किया गया है, लेकिन यह पहले से ही एक प्लगइन के रूप में है कि वे 🙂 को लागू करने की योजना बनाते हैं

  4.   एलेक्स कहा

    ^ ^, मैंने विकास टीम के एक सदस्य के रूप में शुरुआत की :), लेकिन अंत में मेरे पास समय या पर्याप्त ज्ञान नहीं था और मुझे पद छोड़ना पड़ा :(! लेकिन मुझे बहुत खुशी है कि अंत में Njaja ​​IDE आगे बढ़ गया और ऐसे अच्छे परिणामों के साथ।

  5.   मार्कोसिपे कहा

    मैं पहले से ही यह कोशिश करता हूं 😀
    उम्मीद है कि यह अच्छा है, लेकिन जब से मैं अजगर और क्यूटी का उपयोग करता हूं मुझे एक्सडी पसंद है
    मुझे लगता है कि वह इरिक पोंछता है, और मैंने देखा और यह git के लिए समर्थन है we're मुझे लगता है कि हम साथ जा रहे हैं

  6.   डैनियल कहा

    मुझे लगता है कि यह उत्कृष्ट है, केवल नकारात्मक बात यह है कि स्पेनिश-भाषी होने के नाते, वे अंग्रेजी में इंटरफेस बनाते हैं, उन्हें उन्हें स्पेनिश में बनाना चाहिए, अंग्रेजी में आईडीईएस बहुत सारे क्यों नहीं हैं जो हम सभी को अंग्रेजी समझ में नहीं आते हैं, अन्यथा मुझे कोई समझ नहीं है लेकिन उन्हें बधाई।

    सादर

  7.   युगीनु ताम्बुर कहा

    मुझे यह पसंद है, लेकिन फिलहाल यह कुछ हरा है, मैंने इसका परीक्षण किया है और यह मुझे स्तब्ध कर देता है, और यह विंडोज़ एक्सप्लोरर को लगातार और अधिक त्रुटियों को पुनरारंभ करता है, लेकिन जैसे ही वे इसे ठीक करते हैं और यह कुछ अधिक स्थिर होता है, यह निस्संदेह बहुत सफल होगा।

  8.   डैनियल dcs कहा

    उत्कृष्ट काम "अर्जेंटीना में बनाया" !!!! पूरी विकास टीम को हार्दिक बधाई !!!!

  9.   नीयर कहा

    सभी को शुभकामनाएं, बहुत अच्छा काम, आईडीई उपयोग करने के लिए काफी आरामदायक है, ग्राफिकल यूजर इंटरफेसेस के संपादक को शामिल करना बहुत दिलचस्प होगा, यह आकर्षक भी होगा यदि यह आपको प्रोजेक्ट प्रलेखन (शायद Javadocs की शैली में) उत्पन्न करने की अनुमति देता है।

    बढ़ा चल।