1. সমস্ত মোবাইল অ্যাপের সমস্যা

কোডজিমের শিক্ষার্থীরা দীর্ঘদিন ধরে একটি মোবাইল অ্যাপ চাচ্ছে। এবং আমরা বুঝতে পারি কেন — আজকের বিশ্বে, IntelliJ IDEA ইনস্টল করা একটি ডেস্কটপ কম্পিউটারের চেয়ে একটি ফোন আরও সহজলভ্য৷ 1-2 ঘন্টা ধরে অধ্যয়নের জন্য বসে থাকার চেয়ে দিনে কয়েকবার 15 মিনিট আলাদা করে রাখা অনেক সহজ।

CodeGym-এ শেখা অনেক বেশি কার্যকর হবে যদি আমরা বুঝতে পারি যে কীভাবে আমাদের কাছে নিজেকে উপস্থাপন করে এমন প্রতিটি সুযোগকে পুরোপুরি ব্যবহার করা যায়। কিন্তু কিভাবে আপনার ফোনে একটি IDE লাগাবেন?

দীর্ঘদিন ধরে, আমরা ভাবিনি যে এটি সম্ভব। এটি আমাদের প্রতিযোগীদের দ্বারা বারবার নিশ্চিত করা হয়েছে: প্রোগ্রামিং শেখার জন্য তাদের সমস্ত অ্যাপ্লিকেশন কোড লেখার সাথে বিতরণ করা হয়েছে এবং এটি পরীক্ষা দিয়ে প্রতিস্থাপিত হয়েছে।

কিন্তু তারপর 2019 শুরু হওয়ার সাথে সাথে আমরা একটি অগ্রগতি অর্জন করেছি। বৃহৎ IDE-এর প্রতিলিপি করার পরিবর্তে, আমরা কোড লেখার সময় ব্যবহারকারীরা যে চ্যালেঞ্জগুলির মুখোমুখি হয় তার উপর ফোকাস করার সিদ্ধান্ত নিয়েছি। আমাদের সমাধান কয়েকটি সহজ নীতির উপর ভিত্তি করে ছিল:

  • কোড লেখার চেয়ে কোড পড়া বেশি গুরুত্বপূর্ণ
  • আপনি যে কোডটি প্রবেশ করেন তা আপনি যেভাবে প্রবেশ করেন তার চেয়ে বেশি গুরুত্বপূর্ণ
  • কার্সার পরিচালনা সহজ এবং স্বজ্ঞাত হতে হবে
  • একটি কাজ সঠিকভাবে সমাধান করার কোন এক এবং একমাত্র উপায় নেই।

2. আমাদের সমাধান

আমরা একটি বরং সুন্দর সমাধান তৈরি করতে পেরেছি যা এই সমস্ত নীতিগুলি মেনে চলে।

দেখার কোড

প্রথমে, আমরা কোড দেখার এবং কোড সম্পাদনার জন্য আলাদা মোড তৈরি করার সিদ্ধান্ত নিয়েছি। কোড দেখার মোডে, সোয়াইপ করলে কার্সার সরানোর পরিবর্তে পাঠ্য স্ক্রোল করা হবে। এছাড়াও, যখন কীবোর্ড অর্ধেক স্ক্রীন নেয় না তখন কোড দেখা আরও সুবিধাজনক।

ইঙ্গিত (প্রস্তাবিত শব্দ)

প্রতিটি কাজের জন্য, আমরা কীওয়ার্ডের একটি সেট প্রস্তুত করেছি যা ব্যবহারকারী একটি সমাধান লিখতে ব্যবহার করতে পারে। এখন আপনাকে অক্ষরে অক্ষরে শব্দ টাইপ করতে হবে না। আপনি সঠিক ক্রমে প্রস্তাবিত শব্দগুলিতে ক্লিক করুন এবং আপনার কাজ শেষ। এটি বলেছে, আপনি সর্বদা কীবোর্ডে অক্ষর দ্বারা অক্ষর টাইপ করে কোড প্রবেশের স্বাভাবিক উপায়ে যেতে পারেন।

ব্যবহারকারীকে একটি সমাধানের নিজস্ব সংস্করণ লিখতে অনুমতি দেওয়ার জন্য যথেষ্ট পরামর্শ থাকা উচিত। তবে এত বেশি নয় যে অপ্রয়োজনীয় শব্দগুলি কেবল পথে বাধা হয়ে দাঁড়ায়। যদি অনেকগুলি প্রস্তাবিত শব্দ থাকে, তাহলে সেগুলিকে গ্রুপ করা উচিত; যদি কিছু থাকে, তাহলে সেগুলি একসাথে প্রদর্শন করা উচিত।

এবং, অবশ্যই, প্রস্তাবিত শব্দ প্রতিটি কাজের জন্য অনন্য হতে হবে । CodeGym-এ বিদ্যমান 1500টি কাজের প্রতিটির জন্য। আমরা ইঙ্গিত তৈরি করার জন্য অ্যালগরিদম পরিমার্জন করতে দুই মাস কাটিয়েছি। তারপরও, আমাদের প্রতিটি কাজের জন্য ম্যানুয়ালি পরামর্শগুলি প্রক্রিয়া করতে হয়েছিল।

ফলাফল চিত্তাকর্ষক, যদিও আমি মনে করি আমরা তাদের উন্নতি করতে থাকব।

জাভা কোর্স অ্যান্ড্রয়েড 1

কার্সার

কার্সার পরিচালনা করা তার নিজস্ব আলাদা গল্পের যোগ্য। আপনার আঙুল দিয়ে কার্সার সরানো খুব অসুবিধাজনক। প্রথমত, আপনার আঙুল কোডটি অস্পষ্ট করে। দ্বিতীয়ত, কার্সারের সাথে সবচেয়ে ঘন ঘন ক্রিয়া হল এটিকে 1-2 অক্ষর পিছনে বা সামনে নিয়ে যাওয়া।

আমরা একটি বিশেষ জয়স্টিক ইন্টারফেস তৈরি করেছি যা আপনাকে কোড কভার না করেই কার্সার নিয়ন্ত্রণ করতে দেয়। আমরা কার্সারকে এক সময়ে একটি অক্ষর সরানোর জন্য বিশেষ বোতামগুলিও যোগ করেছি । এবং এই সমস্ত তাই আপনি যে কোডটি প্রবেশ করাচ্ছেন সেই কোডটি প্রবেশ করার প্রক্রিয়াটি সম্পর্কে চিন্তা করতে সক্ষম হন!


3. মোবাইল অ্যাপের ওভারভিউ

আজ মোবাইল অ্যাপটিতে 4টি বিভাগ রয়েছে:

  • জাভা কোর্স
  • কাজ
  • সাহায্য
  • গোষ্ঠী

এবং এখানে তাদের প্রতিটি সম্পর্কে আরও কয়েকটি বিশদ রয়েছে।

জাভা কোর্স

"জাভা কোর্স" বিভাগটি সমস্ত কোডজিম স্তরের একটি তালিকা প্রদর্শন করে, যেগুলি অনুসন্ধানের মধ্যে গোষ্ঠীভুক্ত করা হয়েছে৷ প্রতিটি স্তর সংশ্লিষ্ট পাঠ প্রদর্শন করে। আপনি "শুরু/চালিয়ে যান" বোতামটি ব্যবহার করে সহজেই সাম্প্রতিক পাঠে যেতে পারেন।

জাভা কোর্স অ্যান্ড্রয়েড

কাজ

এই বিভাগটি ব্যবহারকারীর জন্য উপলব্ধ সমস্ত কাজ প্রদর্শন করে। তারা তিনটি তালিকায় বিভক্ত: "নতুন কাজ", "প্রগতিতে কাজ" এবং "সম্পূর্ণ কাজ"

জাভা কোর্স অ্যান্ড্রয়েড কাজ

একটি নির্দিষ্ট টাস্কে ক্লিক করার পরে, MobileIDE খোলে। এখানে আপনি টাস্ক শর্ত, প্রয়োজনীয়তা এবং কোড দেখতে পারেন এবং আপনার সমাধান রচনা করতে পারেন। আপনি শুধুমাত্র 1 ক্লিকে যাচাইকরণের জন্য একটি টাস্ক জমা দিতে পারেন।

সাহায্য

এই বিভাগে কাজ সম্পর্কে প্রশ্ন দেখায়. আপনি অন্যান্য ব্যবহারকারীদের জিজ্ঞাসা করা প্রশ্ন দেখতে পারেন, তাদের কোড পরীক্ষা করতে পারেন এবং তাদের পরামর্শ ও সুপারিশ দিতে পারেন। এটি ওয়েবসাইটের মতো এখানে এটি করা প্রায় ততটাই সহজ৷

আপনি কাজ সম্পর্কে আপনার নিজের প্রশ্ন জিজ্ঞাসা করতে পারেন. আপনার কোড স্বয়ংক্রিয়ভাবে আপনার প্রশ্নের সাথে যোগ করা হবে — আপনাকে কোথাও কিছু কপি করতে হবে না।

গোষ্ঠী

"গ্রুপ" বিভাগে, আপনি নির্দিষ্ট বিষয়ের জন্য নিবেদিত গ্রুপগুলিতে যোগ দিতে পারেন, এবং নিবন্ধগুলি পড়তে এবং প্রকাশ করতে পারেন৷ আপনার ফোনে টাইপ করা সত্যিই সুবিধাজনক নয়, তাই এই বিভাগটি বর্তমানে ওয়েব সংস্করণের মাধ্যমে পোস্ট করা সামগ্রী পড়ার উপর দৃষ্টি নিবদ্ধ করে৷