1. सभी मोबाइल ऐप्स में समस्या

CodeGym के छात्र लंबे समय से एक मोबाइल ऐप की मांग कर रहे हैं। और हम समझते हैं कि क्यों - आज की दुनिया में, IntelliJ IDEA स्थापित डेस्कटॉप कंप्यूटर की तुलना में एक फोन अधिक आसानी से उपलब्ध है। 1-2 घंटे सीधे पढ़ने के लिए बैठने की तुलना में दिन में कई बार 15 मिनट अलग करना बहुत आसान है।

CodeGym पर सीखना कहीं अधिक प्रभावी होगा यदि हम यह पता लगा लें कि हमारे सामने आने वाले प्रत्येक अवसर का पूरी तरह से उपयोग कैसे किया जाए। लेकिन अपने फोन पर आईडीई कैसे लगाएं?

लंबे समय तक हमने नहीं सोचा था कि यह संभव है। हमारे प्रतिस्पर्धियों द्वारा इसकी बार-बार पुष्टि की गई थी: प्रोग्रामिंग सीखने के लिए उनके सभी ऐप्स में कोड लिखने की सुविधा नहीं थी और इसे परीक्षणों से बदल दिया गया था।

लेकिन फिर जैसे ही 2019 शुरू हुआ, हमने सफलता हासिल की। बड़े पैमाने पर आईडीई की नकल करने के बजाय, हमने कोड लिखते समय उपयोगकर्ताओं के सामने आने वाली चुनौतियों पर ध्यान केंद्रित करने का फैसला किया। हमारा समाधान कुछ सरल सिद्धांतों पर आधारित था:

  • कोड लिखने से ज्यादा जरूरी कोड पढ़ना है
  • आपके द्वारा दर्ज किया गया कोड आपके द्वारा दर्ज किए जाने के तरीके से अधिक महत्वपूर्ण है
  • कर्सर का प्रबंधन सरल और सहज होना चाहिए
  • किसी कार्य को सही ढंग से हल करने का कोई एक और एकमात्र तरीका नहीं है।

2. हमारा समाधान

हम इन सभी सिद्धांतों का पालन करने वाला एक सुंदर समाधान बनाने में कामयाब रहे।

देखने का कोड

पहले, हमने कोड और संपादन कोड देखने के लिए अलग-अलग मोड बनाने का निर्णय लिया। कोड देखने के मोड में, स्वाइप करने से कर्सर ले जाने के बजाय टेक्स्ट स्क्रॉल हो जाएगा। साथ ही, जब कीबोर्ड आधी स्क्रीन नहीं ले रहा हो तो कोड देखना अधिक सुविधाजनक होता है।

संकेत (सुझाए गए शब्द)

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

उपयोगकर्ता को समाधान का अपना संस्करण लिखने की अनुमति देने के लिए पर्याप्त सुझाव होने चाहिए। लेकिन इतने भी नहीं कि अनावश्यक शब्द ही बीच में आ जाएं। यदि बहुत सारे सुझाए गए शब्द हैं, तो उन्हें समूह होना चाहिए; यदि कुछ हैं, तो उन्हें एक साथ प्रदर्शित किया जाना चाहिए।

और निश्चित रूप से, सुझाए गए शब्द प्रत्येक कार्य के लिए अद्वितीय होने चाहिए । CodeGym पर मौजूद 1500 कार्यों में से प्रत्येक के लिए। हमने संकेत उत्पन्न करने के लिए एल्गोरिथम को परिष्कृत करने में दो महीने बिताए। फिर भी, हमें अभी भी प्रत्येक कार्य के लिए सुझावों को मैन्युअल रूप से संसाधित करना पड़ा।

परिणाम प्रभावशाली है, हालांकि मुझे लगता है कि हम उन्हें सुधारना जारी रखेंगे।

जावा कोर्स एंड्रॉइड 1

कर्सर

कर्सर को प्रबंधित करना अपनी अलग कहानी का हकदार है। अपनी उंगली से कर्सर को हिलाना बेहद असुविधाजनक है। सबसे पहले, आपकी उंगली कोड को अस्पष्ट करती है। दूसरा, कर्सर के साथ सबसे लगातार क्रिया इसे 1-2 वर्णों को पीछे या आगे ले जाना है।

हमने एक विशेष जॉयस्टिक इंटरफ़ेस बनाया है जो आपको कोड को कवर किए बिना कर्सर को नियंत्रित करने देता है। हमने कर्सर को एक बार में एक वर्ण ले जाने के लिए विशेष बटन भी जोड़े हैं । और यह सब इसलिए कि आप उस कोड के बारे में सोच सकते हैं जिसे आप दर्ज कर रहे हैं बल्कि उस कोड को दर्ज करने की प्रक्रिया के बारे में!


3. मोबाइल ऐप का अवलोकन

आज मोबाइल ऐप में 4 सेक्शन हैं:

  • जावा कोर्स
  • कार्य
  • मदद
  • समूह

और यहाँ उनमें से प्रत्येक के बारे में कुछ और विवरण हैं।

जावा कोर्स

"Java पाठ्यक्रम" अनुभाग सभी CodeGym स्तरों की एक सूची प्रदर्शित करता है, जिन्हें अन्वेषणों में समूहीकृत किया गया है। प्रत्येक स्तर संबंधित पाठ प्रदर्शित करता है। आप "प्रारंभ/जारी रखें" बटन का उपयोग करके आसानी से नवीनतम पाठ पर जा सकते हैं।

जावा कोर्स android

कार्य

यह खंड उपयोगकर्ता के लिए उपलब्ध सभी कार्यों को प्रदर्शित करता है। उन्हें तीन सूचियों में विभाजित किया गया है: "नए कार्य", "कार्य प्रगति पर" और "पूर्ण कार्य"

जावा पाठ्यक्रम Android कार्य

किसी स्पेसिफिक टास्क पर क्लिक करने के बाद MobileIDE ओपन हो जाता है। यह वह जगह है जहां आप कार्य की स्थिति, आवश्यकताओं और कोड को देख सकते हैं और अपना समाधान भी बना सकते हैं। आप केवल 1 क्लिक में सत्यापन के लिए कार्य भी सबमिट कर सकते हैं।

मदद

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

आप कार्यों के बारे में अपने प्रश्न भी पूछ सकते हैं। आपका कोड आपके प्रश्न में स्वचालित रूप से जुड़ जाएगा — आपको कहीं भी कुछ भी कॉपी करने की आवश्यकता नहीं है।

समूह

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