স্ক্র্যাচ থেকে জাভাতে কীভাবে কোড করতে হয় তা শিখতে অনেকগুলি বিষয় CodeGym-কে সেরা অনলাইন কোর্স করে তোলে (অন্তত আমাদের চোখে): সাবধানে পরিকল্পিত কোর্সের কাঠামো, অনুশীলন-প্রথম পদ্ধতি, প্রচুর সংখ্যক কাজ (1200টির বেশি), উত্তেজনাপূর্ণ এবং
মজার গল্প
বলা ,
সামাজিক বৈশিষ্ট্য ইত্যাদি। কিন্তু আমরা ভাবতে চাই যে আমাদের শিক্ষার্থীদের সফল হতে সাহায্য করার জন্য আমরা অতিরিক্ত মাইল পাড়ি দিয়ে CodeGym কে সেরা করে তোলে। আমাদের লক্ষ্য শুধু আপনাকে জাভা শিখতে এবং পরে (অথবা কোর্সের মাঝখানে থাকাকালীন) একটি কোডিং কাজ খুঁজে পেতে সাহায্য করা নয়, বরং যথাযথ জ্ঞান এবং তথ্য দিয়ে আপনার ব্যক্তিগত এবং পেশাদার উভয় ক্ষেত্রেই উন্নয়নে সহায়তা করা।
কম্পিউটেশনাল চিন্তা কি?
কম্পিউটেশনাল থিঙ্কিং (সিটি) হল একটি ধারণা যা শিল্প বিশেষজ্ঞরা একটি 'সাফল্যের জন্য কোড' এবং 'গুরুত্বপূর্ণ দক্ষতা' বলে অভিহিত করেন। যদিও এটি তুলনামূলকভাবে সহজ, CT কেবলমাত্র সফ্টওয়্যার প্রোগ্রামিংয়ের বাইরেও সহায়ক হতে পারে। শব্দটি প্রথম 1980 সালে সিমুর পেপার্ট, একজন গণিতবিদ এবং কম্পিউটার বিজ্ঞানী দ্বারা প্রস্তাবিত হয়েছিল, বিভিন্ন প্রোগ্রামিং-সম্পর্কিত সমস্যা এবং কাজগুলিকে আরও দক্ষতার সাথে সমাধান করার উপায় হিসাবে। কম্পিউটেশনাল থিংকিং হল পদ্ধতির একটি সেট যার মধ্যে একটি জটিল সমস্যা নেওয়া এবং এটিকে পরিচালনা করা সহজ, সেইসাথে একটি সমস্যার সারমর্ম এবং একটি কম্পিউটার চালানো যায় এমন উপায়ে সমাধান প্রকাশ করার মতো ছোট সমস্যাগুলির একটি সিরিজে বিভক্ত করা জড়িত। সহজ কথায়, আপনি একটি নির্দিষ্ট সমস্যা সমাধানের জন্য একটি কম্পিউটার শেখানোর জন্য কোডিং শুরু করার আগে, আপনাকে সাধারণত সমস্যাটি নিজেই বুঝতে হবে, একটি সমাধান খুঁজে বের করতে হবে, এবং শুধুমাত্র তারপর এটি মোকাবেলা করতে একটি কম্পিউটার শেখান. কম্পিউটেশনাল চিন্তাভাবনা এই প্রক্রিয়াটিকে দ্রুত এবং সহজ করার একটি পদ্ধতি, তবে এটি শুধুমাত্র প্রোগ্রামিংয়ের মধ্যে সীমাবদ্ধ নয় এবং এটি আমাদের জীবনের বিভিন্ন অংশে প্রয়োগ করা যেতে পারে। যদিও এই ধারণাটি 1980 সালে আবার চালু করা হয়েছিল, কলম্বিয়া বিশ্ববিদ্যালয়ের কম্পিউটার বিজ্ঞানের অধ্যাপক জিনেট উইং CT কে স্কুল পাঠ্যক্রমের একটি মৌলিক দক্ষতা যা সকল মানুষের অধিকারী হওয়া উচিত তার একটি অংশ করার প্রস্তাব করার পরে গণনামূলক চিন্তাভাবনা ব্যাপক মনোযোগ পেতে শুরু করেছে। .
কিভাবে কম্পিউটেশনাল চিন্তা কাজ করে?
একটি কৌশল হিসাবে কম্পিউটেশনাল থিঙ্কিং চারটি প্রধান পদ্ধতি নিয়ে গঠিত, যা হল পচন, সাধারণীকরণ/বিমূর্ততা, প্যাটার্ন স্বীকৃতি / ডেটা উপস্থাপনা এবং অ্যালগরিদম। সঠিক ক্রমে (একটি সমস্যায়) প্রয়োগ করা হলে এগুলি সমানভাবে গুরুত্বপূর্ণ এবং কার্যকর।
আপনি পচন দিয়ে শুরু করুন, যা একটি সমস্যাকে কয়েকটি ছোট সমস্যায় বিভক্ত করছে যা একে একে সমাধান করা সহজ।
তারপরে আপনি একটি নির্দিষ্ট কাজ/সমস্যার দিকে এগিয়ে যান, একচেটিয়াভাবে সেই তথ্যের উপর ফোকাস করুন যা এটি সমাধানের জন্য গুরুত্বপূর্ণ এবং বাকি সমস্ত উপেক্ষা করে।
- প্যাটার্ন স্বীকৃতি (ডেটা উপস্থাপনা)।
পরবর্তী ধাপে আপনি বর্তমানে যে সমস্যাটির উপর কাজ করছেন এবং পূর্বে সমাধান করা অন্যান্য সমস্যার মধ্যে মিল খুঁজছেন (উপলব্ধ সমাধান সহ)। লক্ষ্য হল নিদর্শনগুলি খুঁজে বের করা যা আপনার বর্তমান টাস্কে প্রয়োগ করা যেতে পারে।
এবং পরিশেষে, পূর্ববর্তী পদক্ষেপগুলি যথাস্থানে প্রয়োগ করার ফলাফল পেয়ে, আপনি একটি ধাপে ধাপে সমস্যার সমাধানের জন্য একটি অ্যালগরিদম তৈরি করেন। একটি অ্যালগরিদম তখন একটি কম্পিউটার (বা আপনার মস্তিষ্ক, যা আপনার জীবনের চূড়ান্ত কম্পিউটার সমাধানের কাজ) দ্বারা কার্যকর করা যেতে পারে।
কম্পিউটেশনাল থিংকিং ব্যবহার করে
বেশিরভাগ সফ্টওয়্যার বিকাশকারীরা নিয়মিতভাবে যে সমস্যাগুলি এবং কাজগুলি মোকাবেলা করে সেগুলি মোকাবেলা করার সময় কীভাবে CT ব্যবহার করবেন তা জানা আপনার পুরো ক্যারিয়ার জুড়ে কোডিংয়ে অত্যন্ত সহায়ক হতে পারে। "কম্পিউটার বিজ্ঞান কম্পিউটার প্রোগ্রামিং নয়। একজন কম্পিউটার বিজ্ঞানীর মতো চিন্তা করা মানে একটি কম্পিউটার প্রোগ্রাম করতে সক্ষম হওয়ার চেয়ে বেশি কিছু। এটি বিমূর্তকরণের একাধিক স্তরে চিন্তা করা প্রয়োজন। কম্পিউটেশনাল চিন্তাভাবনা পুনরাবৃত্তিমূলকভাবে চিন্তা করা হয়। এটি সমান্তরাল প্রক্রিয়াকরণ। এটি কোড হিসাবে ডেটা এবং ডেটাকে কোড হিসাবে ব্যাখ্যা করছে। এটি মাত্রিক বিশ্লেষণের সাধারণীকরণ হিসাবে টাইপ চেকিং। এটি উপনামকরণের গুণাবলী এবং বিপদ উভয়কেই স্বীকৃতি দিচ্ছে, বা কাউকে বা একাধিক নাম প্রদান করছে। এটি পরোক্ষ অ্যাড্রেসিং এবং পদ্ধতি কলের খরচ এবং শক্তি উভয়কেই স্বীকৃতি দিচ্ছে। এটি শুধুমাত্র সঠিকতা এবং দক্ষতার জন্য নয় বরং নান্দনিকতার জন্য একটি প্রোগ্রামের বিচার করছে,
কম্পিউটেশনাল চিন্তাভাবনা শেখার এবং কলেজের সকল নবীন ছাত্রদের শেখানোর গুরুত্ব সম্পর্কে 2006 সালের গবেষণাপত্রে জিনেট উইং
ব্যাখ্যা করেছেন । আপনি দেখতে পাচ্ছেন, গণনামূলক চিন্তাভাবনা শুধুমাত্র প্রোগ্রামার এবং কম্পিউটার বিজ্ঞানীদের জন্য নয়। এটি লোকেদের দ্বারা (প্রায়ই অচেতনভাবে) সমস্ত ধরণের পেশায় কাজ-সম্পর্কিত সমস্যাগুলি সমাধান করতে এবং দৈনন্দিন জীবনে উভয়ই ব্যবহৃত হয়।
কোডিং কাজ বা আপনার ব্যক্তিগত জীবনে আপনি মোকাবেলা করতে পারেন এমন কোনও গুরুতর সমস্যায় কীভাবে গণনামূলক চিন্তাভাবনা প্রয়োগ করা শুরু করবেন সে সম্পর্কে এখানে একটি দ্রুত গাইড রয়েছে ।
পচন একটি বেশ সহজ কিন্তু শক্তিশালী কৌশল, যা আপনাকে সমস্যা/কাজগুলি মোকাবেলা করতে সাহায্য করতে পারে যা প্রথম নজরে খুব জটিল বলে মনে হয় এবং এইভাবে প্রায়শই বিলম্ব এবং অন্যান্য অসুবিধা সৃষ্টি করে। এখানে মূল বিষয় হল আপনার মস্তিস্ককে নিয়মিতভাবে পচনশীলতা ব্যবহার করার জন্য প্রশিক্ষণ দেওয়া, একটি টাস্ককে কয়েকটি ছোট ছোট কাজের মধ্যে ভাগ করা যা সমাধান করা সহজ। যদিও পচন একটি খুব সহজ এবং এমনকি সুস্পষ্ট পদ্ধতির মতো মনে হতে পারে, আপনি অবাক হবেন যে কতজন লোক এটি সম্পর্কে সচেতন নয়, যা তাদের পক্ষে বড়, বিশ্বব্যাপী কাজগুলিতে কাজ শুরু করা আরও কঠিন করে তোলে (যেমন জাভা শেখা, উদাহরণ স্বরূপ).
কীভাবে বিমূর্ততা প্রয়োগ করতে হয় তা জানা একটি শক্তিশালী ক্ষমতা যদি আপনি কৌশলটি জানেন এবং আপনার মস্তিষ্ককে অজ্ঞানভাবে এটি ব্যবহার করার জন্য প্রশিক্ষণ দিয়ে থাকেন। বিমূর্ততা হল অন্য সব কিছু উপেক্ষা করে কাজটি সমাধান করার জন্য প্রয়োজনীয় তথ্যের উপর একচেটিয়াভাবে ফোকাস করা। পচনের সাথে সংমিশ্রণে ব্যবহৃত হয়, এটি মূলত আপনার জীবনের যে কোনও সমস্যা বা সমস্যার কাছে যাওয়ার পদ্ধতি। কঠোরভাবে প্রোগ্রামিং কাজগুলির সাথে মোকাবিলা করার সময়, বিমূর্ততা মনোনিবেশ করতে এবং আপনার মস্তিষ্ককে খুব দ্রুত ক্লান্ত হওয়া এড়াতে সহায়তা করে।
- প্যাটার্ন স্বীকৃতি প্রয়োগ করা হচ্ছে।
প্যাটার্ন শনাক্তকরণ কোডিং-এর ক্ষেত্রে বেশ গুরুত্বপূর্ণ একটি দক্ষতা, কারণ এটি আপনাকে আপনার মস্তিষ্কের সাথে পরিচিত এবং ব্যবহারে আরামদায়ক চিন্তার ধরণগুলি প্রয়োগ করে কাজগুলিকে আরও দ্রুত সমাধান করতে দেয়৷ এটি সাধারণ জীবনের সমস্যাগুলিতে প্রয়োগ করার জন্য একটি শক্তিশালী কৌশলও: আপনি আপনার জীবনে যে কোনও সমস্যার মুখোমুখি হচ্ছেন তা বিশ্লেষণ করার চেষ্টা করুন এবং আপনার জীবনের সেই অংশগুলি থেকে নিদর্শনগুলি সন্ধান করুন (এবং ধার) যা সন্তোষজনক কাজ করে, তাদের বর্তমান সমস্যায় স্থানান্তর করুন।
- অ্যালগরিদম প্রয়োগ করা হচ্ছে।
আপনি যখন এটি সম্পর্কে চিন্তা করেন, তখন আমাদের জীবন অ্যালগরিদম গঠনের বিষয়ে। এগুলোকে আমরা অভ্যাস বলি। আমাদের মস্তিষ্ক প্রতিদিন অভ্যাসের উপর নির্ভর করে, কারণ এটি আরও দক্ষ এবং এইভাবে ব্যবহারিক। একমাত্র সমস্যা হল আমাদের মধ্যে বেশিরভাগই অসচেতনভাবে এটি করে থাকে, যার ফলে প্রায়শই ভুল এবং ক্ষতিকারক অ্যালগরিদম তৈরি হয় (আমরা তাদের খারাপ অভ্যাস বা আসক্তি বলি)। সচেতনভাবে কীভাবে দরকারী অ্যালগরিদম গঠন করতে হয় তা জানা একটি অত্যন্ত উপকারী জীবন দক্ষতা হতে পারে, যা আপনাকে আপনার লক্ষ্য অর্জন করতে এবং সফল হতে দেয়। যখন এটি প্রোগ্রামিং আসে, সবচেয়ে দ্রুত এবং দক্ষ উপায়ে একটি নির্দিষ্ট সমস্যা সমাধানের জন্য একটি অ্যালগরিদম কীভাবে তৈরি করতে হয় তা জানা একজন ব্যক্তিকে আলাদা করে, যিনি কেবল একজন অভিজ্ঞ পেশাদার কম্পিউটার প্রোগ্রামার থেকে কোড করতে জানেন।
বিশেষজ্ঞরা কি বলেন?
উপসংহারে, এখানে কিছু স্বীকৃত কম্পিউটার বিজ্ঞান বিশেষজ্ঞদের কম্পিউটেশনাল থিঙ্কিং সম্পর্কে যা বলার আছে তা রয়েছে। জেমস লকউড এবং আইডান মুনির মতে, আয়ারল্যান্ডের মায়নুথ বিশ্ববিদ্যালয়ের অধ্যাপক এবং
'শিক্ষায় কম্পিউটেশনাল থিংকিং: কোথায় ফিট করে?'রিপোর্ট, গণনামূলক চিন্তা "একবিংশ শতাব্দীর কর্মীদের জন্য একটি গুরুত্বপূর্ণ দক্ষতা।" “যদিও স্কুলে CT এবং CS [কম্পিউটার সায়েন্স] উভয়ই শেখানোর জন্য প্রচুর গবেষণা পরিচালিত হচ্ছে, তবে তৃতীয় স্তরের অনেক শিক্ষার্থী এই ধারণাগুলির সাথে কখনই উন্মোচিত হবে না। এটি গুরুত্বপূর্ণ যে সিএস এবং নন-সিএস উভয় শিক্ষার্থীরই ভাল সমস্যা সমাধানের দক্ষতা রয়েছে এবং সিটি এটিকে ব্যাপকভাবে উপকৃত করতে পারে। অনেকগুলি ভিন্ন পদ্ধতির প্রস্তাব করা হয়েছে এবং মনে হচ্ছে সিএস এবং নন-সিএস উভয় ছাত্রদের জন্য একটি অ-বাধ্যতামূলক CT কোর্স একটি বিশেষ কার্যকর এবং দরকারী পদ্ধতি। এর জন্য প্রশাসন এবং শিক্ষণ কর্মীদের উভয়ের সমর্থন প্রয়োজন কিন্তু এই বিভাগে এবং বিভাগ 7-এ উভয় তালিকাভুক্ত সুবিধাগুলি দেখায় যে এটি জড়িত সকলের জন্য উপকারী হতে পারে। কলেজের প্রেক্ষাপটে CT শেখানোর একটি বিশাল পরিসরও রয়েছে, যদিও বেশিরভাগ ক্ষেত্রে যা মিল রয়েছে তা হল আরও ব্যবহারিক, আলোচনার নেতৃত্বে কোর্স, এবং এই পদ্ধতিগুলির বেশিরভাগই সফল বলে মনে হচ্ছে। এটা মনে করা হয় যে, সম্ভবত, সিএস শিক্ষার্থীরা এটি থেকে উপকৃত হবে কারণ এটি তাদের জন্য "ঐতিহ্যগত প্রোগ্রামিং" এ রূপান্তরকে সহজ করে তোলে, বিশেষজ্ঞরা বলছেন। কনরাড উলফ্রাম, একজন বিখ্যাত ব্রিটিশ প্রযুক্তি বিশেষজ্ঞ এবং উদ্যোক্তা, কলেজগুলিতে গণনামূলক চিন্তা শেখানোর পক্ষেও সমর্থন করেন এবং
এমনকি এটিকে 'সাফল্যের কোড'
বলে : “কম্পিউটেশনাল থিংকিং হল সাফল্যের কোড। কম্পিউটার-ভিত্তিক সমস্যা-সমাধান প্রক্রিয়া বাস্তব জীবনের চ্যালেঞ্জ মোকাবেলায় এতটাই শক্তিশালী যে এটি একটি মূল শিক্ষাগত বিষয় হওয়া উচিত। অন্তত যদি আপনি, আমার মতো, একমত হন যে শিক্ষার মৌলিক উদ্দেশ্য হওয়া উচিত যে কোনো ধরনের সমস্যার সবচেয়ে কার্যকর সমাধান খুঁজে বের করে আমাদের জীবনকে সমৃদ্ধ করা।" আপনি কি মনে করেন? কম্পিউটেশনাল থিঙ্কিং কি আপনার কাছে এমন কিছু মনে হয় যা আপনার জীবনে আরও অনুশীলন করা উচিত? নীচের মন্তব্য বিভাগে আমাদের সাথে আপনার চিন্তা শেয়ার করুন!
GO TO FULL VERSION