সিএসকে মুখস্থ করতে শেখানো হয় কেন? [বন্ধ]


23

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

ব্যবহারিকভাবে, আমি কল্পনা করি অনেকগুলি (সমস্ত না থাকলে) প্রোগ্রামিং জবগুলি আপনাকে ডকুমেন্টেশনের মাধ্যমে ফ্লিপ করতে, অতীতের কোড এবং অন্যদের কোড পর্যালোচনা করতে অনুমতি দেবে, যা মূলত আমার শিক্ষক "প্রতারণা" হিসাবে বিবেচনা করবেন doing

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

ডকুমেন্টেশন, নমুনা কোড, ডিবাগার এবং এই জাতীয় ব্যবহার এবং ব্যাখ্যা কীভাবে কার্যকর দক্ষতা শেখানোর বিপরীতে সিএস কোড এবং ফাংশনগুলির মুখস্থের দিকে মনোনিবেশ কেন শেখানো হয় ?


34
সিএস কোড এবং ফাংশনগুলির মুখস্থকরণ সম্পর্কে নয়। আপনি কোথায় সিএস পড়ছেন? আমি কি আসলে সমস্যাটি বলতে পারি যে আপনি যে কোর্সটি নিচ্ছেন তা হ'ল বাজে?
আন্দ্রেস এফ।

1
@AndresF। ওপিতে অ্যাডভান্সড প্লেসমেন্ট কম্পিউটার সায়েন্স রয়েছে যা উচ্চ বিদ্যালয়ের (বিশ্ববিদ্যালয়ের পূর্বে) কোর্স দেওয়া হয়।

3
@ গ্লেননেলসন উফ! আমি এটা ভুল লিখেছি। ঠিক আছে, সেই ক্ষেত্রে: এসেসিউউ : আপনি বিশ্ববিদ্যালয় স্তরে জেনে স্বস্তি পেয়ে যাবেন, সিএস (বেশিরভাগ ক্ষেত্রে) কোড মুখস্ত করার বিষয়ে নয়। আপনাকে প্রচুর পরিমাণে পড়তে হবে, যদিও;) একটি সিএস শিক্ষা চাকরি সন্ধানের বিষয়েও অগত্যা নয় (আপনি সম্ভবত এটি হতাশ হবেন যদি আপনি হতাশ হবেন)
আন্দ্রেস এফ

1
আপনার জানা উচিত এটি বেশিরভাগ কলেজগুলিতে এটি নয়। আমার স্কুলে, প্রতিটি একক কম্পিউটার বিজ্ঞানের পরীক্ষায় খোলা নোট / খোলা বই ছিল।
ক্যাসি প্যাটন

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

উত্তর:


37

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

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


9
আপনি বাছাই করা অ্যালগরিদমগুলির মৌলিক প্রকৃতিটি জানা উচিত তবে আমার প্রায় 15 বছর হয়েছে যখন আমি বুদ্বুদ সাজানোর ব্যতীত অন্য কিছু লেখার উপলক্ষ পেয়েছি। (খুব ছোট এন এর জন্য এটি কখনও কখনও আরও ভাল উত্তর হয়))
লরেন পেচটেল 8'12

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

2
উদাহরণ হিসাবে, আপনি যদি কোনও অভিধানে কোনও শব্দ সন্ধান করতে পারেন, তাত্ত্বিকভাবে আপনার নিবন্ধটি বোঝানো উচিত । তবে আমাদের মস্তিষ্ক কেবল সীমিত সংখ্যক নেস্টেড বোধগম্যতা পরিচালনা করে।
বেনজল

1
এবং অবাক - আমার টাইম টেবিলগুলি মুখস্ত করে রাখা আমার কাছে একেবারেই কোনও কাজে আসেনি। গড় সফ্টওয়্যার ইঞ্জিনিয়ার বাছাই করা অ্যালগরিদমগুলি প্রয়োগ করতে কত সময় ব্যয় করে? ওহ অপেক্ষা করুন - সম্ভবত প্রায় 0 । এমনকি পরিবেশ-সরবরাহিত সাজানো আপনার পক্ষে যথেষ্ট ভাল না হওয়ার পক্ষে, আপনার পক্ষে আরও উপযুক্ত অ্যালগরিদম লেখার জন্য কেবল একজন লোকের প্রয়োজন and এবং তিনি উইকিপিডিয়া জাতীয় কিছুতে বাছাইযোগ্য তথ্য ব্যবহার করতে বাছাই করতে এবং প্রয়োগ করতে পারেন অনুকূল অ্যালগরিদম- এবং তারপরে আপনি এটিকে বাকি সময়টির জন্য পুনরায় ব্যবহার করতে পারেন।
ডেডজিএম

2
@ কেএডিডি: এবং রেফারেন্স মুখস্থ করে রাখলে এটি সামান্য কিছুতেই সহায়তা করবে না। এটি কোনও ধারণা তৈরির সাথে জড়িত নয়, এটি কেবল একটি অনুলিপি। মেমরি থেকে উত্তর দেওয়া এবং উইকিপিডিয়া থেকে অনুলিপি-পেস্ট করার মধ্যে পার্থক্য কেবলমাত্র একটি র‍্যামে সংরক্ষণ করা হয় এবং একটি আপনার মস্তিস্কে সঞ্চিত থাকে। এটি এখনও একটি অনুলিপি-পেস্ট।
ডেড এমজি

14

এটি প্রায়শই এইভাবে শেখানো হয় কারণ শিক্ষকরা সাধারণত বোঝার পরীক্ষার কোনও উপায় জানেন না। আপনার অনুভূতিগুলি সম্পূর্ণরূপে সঠিক যে এ জাতীয় শেখানো উচিত নয়। মানুষ যেভাবে সাধারণভাবে শিক্ষিত তা হ'ল সংশোধনের প্রয়োজন মরিয়া!

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

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


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

... আমার এমন শিক্ষার্থী ছিল যারা খুব স্মার্ট এবং মুখস্ত করার ক্ষেত্রে খুব ভাল ছিল। আমি জানাতে পারার আগে তাদের দু'একটি পরীক্ষা লাগবে যে আপনাকে প্রোগ্রামিং শেখার জন্য প্রোগ্রাম লিখতে হবে, স্টাফ মুখস্ত করে নয়।
মাইক ডুনলাভে

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

10

স্কুল পড়াশুনা আপনার পড়াশুনায় হস্তক্ষেপ করবেন না।

-- মার্ক টোয়েন

আমি মেক্সিকান এবং আপনাকে এটি বলছি কারণ মেক্সিকোতে কমপক্ষে সরকারী শিক্ষায় শিক্ষার (কোনও স্তরের) জন্য ঠিক ভাল জায়গা নয়।

ঠিক আছে, আমার ক্যারিয়ারের মাঝামাঝি (সিএস) আপনি ঠিক একইভাবে অনুভব করছেন ঠিক একইভাবে, তাই আমি নিজে থেকেই শিখতে শুরু করি এবং আমি এক বছর অ্যালগরিদম, লিনাক্স, স্ক্রিপ্টিং, আমার কম্পিউটার কীভাবে কাজ করে তা শিখি, কিছুটা সম্পর্কযুক্ত ডাটাবেস, এইচটিএমএল, সিএসএস, ইত্যাদি (সমস্ত কিছু সম্পর্কে)। এবং অবশ্যই, আমাকে ক্লাসগুলি * এড়িয়ে চলতে হয়েছিল, আমার গ্রেড * নামিয়ে দিতে হয়েছিল এবং এক বছর পর * স্নাতক হতে হয়েছিল, সবই শিখতে।

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

পাঠ: জিনিসগুলি ঘটতে দেবেন না, জিনিসগুলি ঘটান। আপনি যেভাবে শিখছেন তাতে যদি আপনি সন্তুষ্ট না হন তবে এটি পরিবর্তন করুন!

* আমি যে বুদ্ধিমান সিদ্ধান্ত নিয়েছি তা নয়।


4
"জিনিসগুলি যেন না ঘটে, ঘটনাগুলি ঘটায় না", - যদি কখনও বাঁচার শব্দ থাকত তবে সেগুলি!
গ্র্যান্ডমাস্টারবি

উদ্ধৃতিটির জন্য +1। আমাকে <সর্বশেষে> বাকী উত্তরটি পড়তে হয়নি
চ্যানি

3

এটি আপনি মুখস্ত করার চেষ্টা করছেন তার উপর নির্ভর করে ...

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

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

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


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

3

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

আপনি অবাক হতে পারেন যে আপনি যদি প্রায়শই এপিআই রেফারেন্সে যেতে না হয় বা অনেকগুলি ডিবাগার কমান্ড সন্ধান না করতে হয় তবে আপনি কতটা দক্ষ হয়ে উঠতে পারেন।

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


2
অনুশীলনের মাধ্যমে এপিআই সন্ধান না করা, আনুষ্ঠানিক শিক্ষা হিসাবে এপিআইকে শেখানো নয়।
ডেড এমজি

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

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

2

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

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

যদি কোনও শিক্ষার্থী এটি করতে না পারে তবে তারা সেই বিষয়টির উপর দক্ষতা অর্জন করবে না, কেবল সম্ভবত একটি উত্তীর্ণ পরিচয়।


-১: সমস্ত হাতের বাক্যকে সিন্ট্যাক্টিক্যালি সঠিক কোড আপনাকে জানায় যে ব্যক্তি কোনও সংকলনযোগ্য একটি প্রোগ্রাম লেখার পক্ষে সক্ষম (সম্ভবত ধীরতম কম্পিউটারের চেয়ে প্রায় দশ মিলিয়ন গতি কম) - এটি উদ্দেশ্য অনুযায়ী কাজ করতে পারে না। সবচেয়ে খারাপ কথা, তাদের সবেমাত্র একটি ভাল স্মৃতি রয়েছে এবং যদি জিজ্ঞাসা করা হয় তবে সম্ভবত শেক্সপ্রে তেলাওয়াত করতে পারে। এটি একজন বিকাশকারী হিসাবে ব্যক্তির দক্ষতার ইঙ্গিত করার খুব সামান্যতম পথ।
mattnz

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

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

-2

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

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

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

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


2
ঘি, বলছি, বিরক্ত করবেন না ব্যাখ্যা আপনার downvotes বা যে মত কিছু ....
DeadMG

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

@ ডেভিড: হিপসোর্ট কীভাবে কাজ করে তা আপনার জানতে হবে না। যে কোনও ধরণের অ্যালগরিদম ব্যবহার করে একটি বাস্তবায়ন ঠিক হবে।
ডেড এমজি

যে বিশেষ ক্ষেত্রে না, এটি না। এটি এমন একটি সিস্টেমে প্রায়শই প্রচুর ইভেন্টগুলি হ্যান্ডেল করতে হয়েছিল যা ইতিমধ্যে অতিরিক্ত চাপ দেওয়া হতে পারে। এই প্রকল্পের জন্য, আমাদের দক্ষতার প্রয়োজন ছিল এবং আমরা এটি পেয়েছি। প্রসঙ্গে, এটি একটি দীর্ঘ দীর্ঘ ক্যারিয়ারে একবার হয়েছিল, এবং আমার দীর্ঘ সময়ের জন্য বাছাই করা সমস্ত এসকিউএল ORDER BYএবং সি ++ এর std::sortপরিবারের মতো ছিল।
ডেভিড থর্নলে

@ ডেভিড: অতএব, আমি পরামর্শ দিয়েছি যে এটি খুব কমই প্রতিটি প্রোগ্রামারকে প্রয়োজন।
ডেড এমজি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.