1. অনুশীলনের উপর ভিত্তি করে শেখা

অনুশীলনের উপর ভিত্তি করে জাভা লার্নিং

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

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

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


2. কাজের ধরন

CodeGym-এ আপনার জন্য বিভিন্ন ধরনের কাজের একটি সম্পূর্ণ গুচ্ছ অপেক্ষা করছে। আসুন প্রধানগুলি তালিকাভুক্ত করা যাক:

কর্ম যেখানে আপনি একটি প্রোগ্রাম লিখুন

এগুলি কোর্সের সবচেয়ে গুরুত্বপূর্ণ কাজ। তাদের অসুবিধার মাত্রা ব্যাপকভাবে পরিবর্তিত হয়: সহজতম কাজ থেকে শুরু করে সেগুলি পর্যন্ত যা আপনাকে অনেক চিন্তা করতে হবে।

এই কাজের লক্ষ্য হল একটি প্রোগ্রাম লেখা যা নির্দিষ্ট শর্ত এবং প্রয়োজনীয়তা পূরণ করে। বেশিরভাগ কাজ এই বিভাগে পড়ে। CodeGym ছাত্রদের সুবিধার জন্য, আমরা এই কাজগুলিকে তাদের অসুবিধার স্তর অনুসারে চিহ্নিত করি: EASY , MEDIUM , HARD এবং EPIC

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

প্রকল্প

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

এই কারণেই কোডজিম প্রজেক্ট টাস্কগুলি চালু করেছে — বড় কাজগুলিকে 5-35টি সাধারণ সাবটাস্কে ভাগ করা হয়েছে। আপনি ক্রমানুসারে সমস্ত সাবটাস্ক সম্পাদন করেন এবং আপনি একটি বড় প্রোগ্রামের সাথে শেষ করেন।

লেভেল 20 এর পরে প্রতিটি স্তরের শেষে, একটি বড় প্রকল্পের কাজ রয়েছে, যা বিশটি সাবটাস্কে বিভক্ত। এছাড়াও আরও 6টি গেম টাস্ক রয়েছে, যেগুলিও প্রজেক্ট। এবং একটি অনলাইন ইন্টার্নশিপে গৃহীত হওয়ার জন্য একটি প্রকল্পের কাজ রয়েছে। মোট, পুরো কোর্সে 27টি প্রকল্পের কাজ রয়েছে।

কুইজ

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

পরবর্তীকালে, CodeGym ছাত্রদের সহজে তাদের শেখার ফাঁক শনাক্ত করার জন্য কুইজ যোগ করা হয়েছিল। প্রোগ্রামারদের জন্য তাদের পেশায় প্রতিদিন যে জিনিসগুলির সাথে কাজ করে তার সূক্ষ্মতা জানার জন্য এটি দরকারী।


3. টাস্ক স্ট্যাটাস

কোডজিমের প্রতিটি কাজের একটি বিশেষ মর্যাদা রয়েছে। আপনি কাজগুলি সমাধান করার সাথে সাথে স্থিতি পরিবর্তন হতে পারে।

প্রতিটি CodeGym টাস্ক একটি পাঠের সাথে যুক্ত। প্রাথমিকভাবে, আপনি কোনো কাজ অ্যাক্সেস করতে পারবেন না, যার মানে আপনি সেগুলি সমাধান করতে পারবেন না।

আপনি যখন পরবর্তী পাঠটি খুলবেন, পাঠের সমস্ত কাজ সমাধানের জন্য উপলব্ধ হয়ে যাবে, অর্থাৎ তাদের স্থিতি "উপলব্ধ" এ পরিবর্তিত হবে।

আপনি যদি অন্তত একবার যাচাইয়ের জন্য একটি টাস্ক জমা দিয়ে থাকেন, তাহলে সেটির স্থিতি "উপলব্ধ" থেকে "প্রগতিতে" এ পরিবর্তিত হয়।

অবশেষে, যখন আপনি সফলভাবে সমস্ত প্রয়োজনীয়তা পূরণ করেন এবং যাচাইকারী আপনার জমা গ্রহণ করেন, তখন কাজের স্থিতি "সম্পূর্ণ" এ পরিবর্তিত হয়।

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


4. প্রয়োজনীয়তা

CodeGym-এর প্রথম বছরগুলিতে, আপনি যখন প্রতিটি কাজ যাচাই করেছেন তখন আপনি একটি সহজ ফলাফল পেয়েছেন: হ্যাঁ বা না৷ প্রোগ্রামটি হয় সমস্ত পরীক্ষায় উত্তীর্ণ হয়েছে বা এটি হয়নি। অতি সহজ, কিন্তু অতি সহায়ক নয়।

মানুষ শেখার সাথে সাথে, এটা খুবই গুরুত্বপূর্ণ যে তারা বুঝতে পারে যে তারা কী ভুল করছে এবং কীভাবে এটি সঠিকভাবে করা শুরু করবে। তদনুসারে, এটি নিখুঁত বোধগম্য হয় যে যদি সার্ভার আপনার সমাধান গ্রহণ না করে, তাহলে আপনি জিজ্ঞাসা করবেন, আচ্ছা, এতে কী ভুল?

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

এজন্য আমরা CodeGym-এ সমস্ত কাজ পুনরায় লিখেছি । এখন প্রতিটি টাস্ক শুধুমাত্র টাস্ক শর্তই নয়, 5-10টি প্রয়োজনীয়তার একটি তালিকাও রয়েছে যা শর্তগুলিকে পরিপূর্ণ করে। সবচেয়ে গুরুত্বপূর্ণ, প্রতিটি প্রয়োজনীয়তা আলাদাভাবে যাচাই করা হয়।

এর মানে হল যে আপনি আজ যখন যাচাইকরণের জন্য একটি টাস্ক জমা দেবেন, আপনি একটি বর্ধিত প্রতিক্রিয়া পাবেন: প্রতিটি টাস্কের প্রয়োজনীয়তার পাশে আপনি একটি বিশেষ আইকন দেখতে পাবেন যা নির্দেশ করে যে আপনার প্রোগ্রামটি এই প্রয়োজনীয়তাটি পূরণ করে কিনা। উদাহরণ:

প্রয়োজনীয়তা

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


5. সুপারিশ

এটা কি কোনোভাবে কাজগুলো আরও ভালো করা সম্ভব? এটা কি চমৎকার হবে না, যদি প্রতিটি চেকের পরে, আপনাকে বলা হয় যে আপনার প্রোগ্রামে ঠিক কী ভুল আছে এবং কীভাবে এটি ঠিক করা যায় সে সম্পর্কে ইঙ্গিত পেয়েছেন? হ্যাঁ, এটা শান্ত হবে! আচ্ছা, অনুমান কি? আমরা CodeGym 🙂 তে এটি করি

প্রতিটি কাজের প্রয়োজনীয়তা যাচাই করে আমরা কয়েক ডজন সাধারণ ভুল ধরি। যদি আপনার প্রোগ্রামটি এমন একটি ভুল করে যা যাচাইকারী জানেন, তাহলে এটি একটি সুপারিশ করে - আপনি কীভাবে আপনার সমাধানটি ঠিক করতে পারেন তার একটি ইঙ্গিত যাতে এটি সমস্ত প্রয়োজনীয়তা পূরণ করে।

চিন্তা করুন. CodeGym-এ এখন মোটামুটিভাবে 1200টি কাজ রয়েছে, যার মোট প্রায় 10,000টি প্রয়োজনীয়তা রয়েছে। এবং প্রতিটি প্রয়োজনীয়তার সাথে যুক্ত বেশ কয়েকটি সুপারিশ রয়েছে। কিছু প্রয়োজনীয়তা তাদের কয়েক ডজন আছে. CodeGym এর যাচাইকারী ব্যবহারকারীর সমাধানের জন্য 50,000 টিরও বেশি সুপারিশ করতে প্রস্তুত।

এছাড়াও, আপনার সমাধানটি বৈধ হওয়ার সাথে সাথে এই সমস্ত ঘটে, যা বেশিরভাগ ক্ষেত্রে এক সেকেন্ডেরও কম সময় নেয়। কোনো মানুষ তা করতে পারেনি। এটি একটি বাস্তব ভার্চুয়াল পরামর্শদাতা.

সুপারিশ

6. সম্প্রদায়

CodeGym সম্পূর্ণ প্রচুর অনুশীলনের উপর ফোকাস করে , যা পুরো শিক্ষার প্রক্রিয়ার 80% এর বেশি । আমরা শেখাকে একটি বড়, আকর্ষক অনুসন্ধানে পরিণত করেছি (আসলে অনুসন্ধানের একটি সিরিজ)।

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

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

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

CodeGym-এ, আমরা বিশ্বাস করি যে ছাত্রদের মধ্যে জ্ঞান বিনিময় অত্যন্ত মূল্যবান। প্রোগ্রামাররা যেমন অন্যদের সাহায্য করে, তারা নিজেরাই বড় হয় । এবং অন্য কাউকে ব্যাখ্যা করার চেয়ে নিজে কিছু বোঝার ভাল উপায় আর নেই। এই কারণেই আমরা আমাদের ওয়েবসাইটে বিশেষ বিভাগ তৈরি করেছি যেগুলি আমাদের সমস্ত ছাত্রদের তাদের জ্ঞান ভাগ করে নেওয়ার এবং একে অপরকে শিখতে সাহায্য করার সুযোগ দেওয়ার জন্য ডিজাইন করা হয়েছে।

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


7. কাজ সম্পর্কে প্রশ্ন

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

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

এটি খুব সহজ এবং মৌলিক শোনাচ্ছে, কিন্তু এটি আসলে বেশ পরিশীলিত।

প্রথমত, প্রতিটি প্রশ্নের একটি সংশ্লিষ্ট কাজ থাকতে পারে । এর মানে হল সব প্রশ্নের মধ্য দিয়ে যাওয়ার কোন মানে নেই, যদি আপনি একটি নির্দিষ্ট কাজ সম্পর্কে প্রশ্ন করতে আগ্রহী হন। আপনি সর্বদা একটি ফিল্টার ব্যবহার করতে পারেন যাতে আপনার আগ্রহের টাস্ক সম্পর্কিত প্রশ্নগুলি সহজেই দেখতে পারেন৷ শুধু অনুসন্ধান বারে টাস্ক নাম লিখুন:

কাজ সম্পর্কে প্রশ্ন

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

সাহায্য বোতাম

তৃতীয়ত, IntelliJ IDEA প্লাগইন অনুরূপ কার্যকারিতা প্রদান করে। আপনি "সহায়তা" বোতামে ক্লিক করতে পারেন বা Ctrl+Alt+W কী সমন্বয় টিপুন, যা অবিলম্বে আপনার ব্রাউজারে সহায়তা বিভাগটি খুলবে। এবং অবশ্যই, ফিল্টারটি শুধুমাত্র আপনি IntelliJ IDEA- তে যে কাজটি সমাধান করছেন সে সম্পর্কে প্রশ্ন প্রদর্শন করবে ।

IntelliJ IDEA সাহায্য

8. একটি প্রশ্ন তৈরি করা

আপনি যদি সহায়তা বিভাগে আপনার ত্রুটির একটি ভাল বিশ্লেষণ খুঁজে না পান, তাহলে আপনি সর্বদা নিজের প্রশ্ন তৈরি করতে পারেন। এটি করা বেশ সহজ — আপনাকে কেবল "একটি প্রশ্ন জিজ্ঞাসা করুন" বোতামটি ক্লিক করতে হবে এবং প্রয়োজনীয় ক্ষেত্রগুলি পূরণ করতে হবে:

একটি প্রশ্ন তৈরি করা হচ্ছে

স্ট্যাকওভারফ্লো, কোড র‍্যাঞ্চ, ইত্যাদির মতো অন্যান্য অনেক পরিষেবার বিপরীতে, কোডজিমের জন্য আপনাকে প্রশ্নের শিরোনামে সমস্ত গুরুত্বপূর্ণ তথ্য ক্র্যাম করতে হবে না। আপনার পছন্দ মত আপনার প্রশ্ন লিখুন.

এবং যাইহোক, আপনাকে WebIDE বা IntelliJ IDEA থেকে আপনার কোড কপি করে আপনার প্রশ্নে যোগ করতে হবে না। আপনি যখন একটি টাস্ক সম্পর্কে একটি প্রশ্ন তৈরি করেন, তখন বিভিন্ন টাস্কের প্রয়োজনীয়তার স্ট্যাটাস সহ আপনার সমাধানের কোড স্বয়ংক্রিয়ভাবে এতে যোগ হয়ে যায় , অর্থাৎ আপনার সমাধানটি বর্তমানে কোনটি পূরণ করে এবং কোনটি করে না।

একটি প্রশ্ন তৈরি করা 2

এর মানে হল যে অন্যান্য CodeGym ছাত্ররা অবিলম্বে প্রশ্নকারীর সমাধান সম্পর্কে সমস্ত প্রাসঙ্গিক তথ্য দেখতে পায়, যা ভাল পরামর্শ প্রদান করা আরও সহজ করে তোলে।


9. সমাধান কোড

অনেক সাইটে, কোড সম্পর্কে একটি প্রশ্ন তৈরি করার সময়, আপনাকে হয় প্রশ্নটির সাথে প্রোগ্রাম ফাইলগুলির সাথে একটি সংরক্ষণাগার সংযুক্ত করতে হবে, অথবা এই সমস্ত ফাইলগুলি নিজেই প্রশ্নের পাঠ্যে যোগ করতে হবে। ফলাফল একটি বড় জগাখিচুড়ি যে মানুষ হয় অনিচ্ছুক বা খনন করতে অক্ষম হয়.

দ্রুত এবং দক্ষতার সাথে একটি প্রশ্ন জিজ্ঞাসা করা একটি সম্পূর্ণ শিল্প ফর্ম। নিয়মিত ওয়েবসাইটগুলিতে, আপনাকে হয় আপনার প্রশ্ন তৈরি করতে আধা ঘন্টা ব্যয় করতে হবে, অথবা কেউ আপনাকে উত্তর দেবে না এই সত্যটি স্বীকার করতে হবে। একটি টাস্ক সম্পর্কে একটি ভাল প্রশ্নে অবশ্যই নিম্নলিখিত তথ্য থাকতে হবে:

  • প্রশ্নকর্তা যে কাজটি সমাধান করছেন তার সাথে লিঙ্ক করুন
  • টাস্ক শর্ত যাতে অন্যদের কোথাও তাদের শিকার করতে যেতে হবে না
  • সমাধান কোড - এটি অনেক ফাইল অন্তর্ভুক্ত করতে পারে
  • প্রতিটি কাজের প্রয়োজনীয়তার স্থিতি, যেমন বর্তমানে কী কাজ করে এবং কী করে না।
  • প্রশ্নের পাঠ্য: এটি সাধারণত বেশ পরিষ্কার - আমার সমাধান কাজ করে না, এবং কেন আমি নিশ্চিত নই।

CodeGym এই তথ্যটি একটি বিশেষ উইজেট ব্যবহার করে প্রদর্শন করে যা WebIDE উইজেটের মতো । সর্বোপরি, এটি ইতিমধ্যে সমস্ত তথ্য প্রদর্শন করার জন্য ডিজাইন করা হয়েছে। ভাল, সম্ভবত প্রশ্ন নিজেই বাদ দিয়ে.

সমাধান কোড

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