ত্রুটি কোড এবং অন্তত বিস্ময়ের আইন

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

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

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

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

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

ডেস্কটপ সিস্টেম বা ওয়েবসাইটগুলিতে সত্যিই কোন অজুহাত নেই। যাইহোক, আপনি ক্ষুদ্র এমবেডেড সিস্টেম ক্ষমা করতে পারেন। না! আমি সম্প্রতি একটি Anet A8 বোর্ডে 3D প্রিন্টার ফার্মওয়্যার মার্লিনকে পোর্ট করেছি – একটি 8-বিট প্রসেসর সামান্য মেমরির সাথে – যা অনেক বছর ধরে রেপেটায়ার ফার্মওয়্যারটিতে ছিল। প্রথমবার আমি একটি অটলভেল প্রোব করার চেষ্টা করার চেষ্টা করেছি আমি বার্তা পেয়েছি: Probing ব্যর্থ হয়েছে। এটাই.

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

ইউনিট Global_Error = 0;
void do_something (অকার্যকর) {
global_error = 1;
যদি (প্রসেস 1 () == ব্যর্থ) ফেরত;
global_error ++;
যদি (process2 () == ব্যর্থ) ফেরত;
। । ।

global_error = 0;
ফিরে যাও;
}
এই অনেক জায়গা নিতে না। এখন আপনি প্রোবিং ব্যর্থ হওয়ার মতো কিছু প্রতিবেদন করতে পারেন (8) এবং আমি অন্তত কোডটিতে যেতে পারি এবং 8 ম পদক্ষেপটি ব্যর্থ হয়েছে তা নির্ধারণ করতে পারে। আমি নিশ্চিত কেউ কেউ কোডের একটি তালিকা এবং তারা যে মত একটি ক্ষেত্রে নির্দেশিত হবে তা নিশ্চিত।

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

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

আমরা আগে বলেছি, “খুব বেশি তথ্যের মতো কোন জিনিস নেই।” সিস্টেম ত্রুটিগুলির বিরুদ্ধে রক্ষার পাশাপাশি, আপনি ব্যবহারকারীদের নিজেদেরকে হতাশ না করতে সহায়তা করতে পারেন।

চিত্র ক্রেডিট: [এলিস Ventur] USSPLASH.COM এর মাধ্যমে

Leave a Reply