ভোক্তা অ্যাপগুলিতে খারাপ পারফরম্যান্সের কারণ কী? [বন্ধ]


32

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

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

এর পিছনে কী? এটি কোনও প্রযুক্তিগত সমস্যা, না সামাজিক? কে বা কী দায়ী?

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

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

সুতরাং, কোন মুহুর্তে এই পণ্যগুলির জন্য জিনিসগুলি ভুল হয়ে গেছে? প্রোগ্রামার হিসাবে আমরা আমাদের গ্রাহকদের এই ব্যথা এড়াতে কী করতে পারি?


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

3
@ মিশেল: এটি "এই ডিভাইসগুলি কেনার ক্ষেত্রে আমার দোষ", বা আরও সাধারণভাবে "এই স্তরের স্তূপতাকে মেনে নেওয়ার জন্য ভোক্তা হিসাবে আমাদের দোষ" সাথে সামঞ্জস্য করে বলে মনে হচ্ছে।
ক্র্যাশ ওয়ার্কস

3
@ ক্র্যাশ ওয়ার্কস: হ্যাঁ, বেশ অনেকটা। আমরা ক্রপওয়্যারটি ক্রয় না করে রাখলে লোকেরা বিক্রি চালিয়ে যায় না।
ম্যাসন হুইলারের

4
এগুলি আধুনিক, আবর্জনা -হীন সংগ্রহ করা কর্পোরেশনগুলিতে উন্নত ছিল।

2
"এর বদলে কি এগুলি সব পরিচালিত, আবর্জনা-সংগ্রহী ভাষায় লিখিত ছিল?" আমি পড়েছি "এটি কি কারণ এগুলি সমস্ত পরিচালকদের দ্বারা নির্বাচিত আবর্জনা ভাষায় লেখা হয়েছিল?"
কার্লোস ক্যাম্পাদ্রেসের

উত্তর:


27

ভাল প্রশ্ন. আমি প্রতিদিন যা দেখি তা হ'ল এটি।

লোকেরা ভাল-আকারের অ্যাপগুলিতে কাজ করে। তারা যখন কাজ করে, পারফরম্যান্সের সমস্যাগুলি বাগের মতোই ক্রেপ হয়। পার্থক্যটি হ'ল - বাগগুলি "খারাপ" - তারা "আমাকে সন্ধান করুন এবং আমাকে ঠিক করুন" বলে চিৎকার করে। পারফরম্যান্স সমস্যা কেবল সেখানে বসে আরও খারাপ হয় get প্রোগ্রামাররা প্রায়শই ভাবেন "আচ্ছা, আমার কোডটিতে পারফরম্যান্সের সমস্যা হবে না Rather পরিবর্তে, পরিচালনার জন্য আমাকে একটি নতুন / বড় / দ্রুত মেশিন কিনতে হবে।"

আসল বিষয়টি হ'ল, যদি বিকাশকারীরা পর্যায়ক্রমে পারফরম্যান্স সমস্যার জন্য অনুসন্ধান করেন (যা আসলে খুব সহজ ) তবে তারা কেবল এগুলি পরিষ্কার করতে পারত।

পরিবর্তে, "শিল্পের রাজ্য" হ'ল:

  1. "এসিচিউ অকাল অপ্টিমাইজেশন" এবং 90/10 হু-হা এর মতো এফোরিজমের উপর নির্ভর করুন।
  2. প্রোফাইলিং সম্পর্কে সাহসের সাথে কথা বলুন এবং প্রায়শই এটি চেষ্টা করে দেখুন, প্রায়শই হতাশাব্যঞ্জক ফলাফল সহ, আপনি এটি সম্পর্কে সমস্ত এসও প্রশ্নের মধ্যে দেখতে পান।
  3. অভিজ্ঞতা এবং জ্ঞানের ছদ্মবেশ ধারণ করে ভাল পুরানো অনুমানের উপর ফিরে পড়ুন।

তবে সত্যই, এটি নেতিবাচক। ইতিবাচক হওয়ার জন্য, এই পদ্ধতিটি প্রায় সব সময় কাজ করে, এবং এটি সহজ হতে পারে না। এখানে একটি বিস্তারিত উদাহরণ


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

@ ক্র্যাশওয়ার্কস: এটি মজাদার হবে। আপনি যদি গুরুতর হন তবে আমাকে একটি লাইন ফেলে দিন।
মাইক ডুনলাভে

@ মাইক শিওর, তবে গ্রীষ্মের পরে, আমি মনে করি - আমি ইতিমধ্যে জিডিসি, # অলতাডব্লগএডে এবং আমার নিজের নিয়োগকর্তার কাছে articlesণী নিবন্ধ এবং কাগজপত্রগুলির একটি বিশাল ব্যাকলগ পেয়েছি!
ক্র্যাশ ওয়ার্কস

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

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

16

এটি কোনও প্রযুক্তিগত সমস্যা নয়, এটি বিপণন ও পরিচালনার সমস্যা।

আপনি এই মুহুর্তে আপনার চোখ ঘুরছেন, তবে দয়া করে আমাকে সহ্য করুন।

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

সুতরাং, আসুন আপনার Comcast ডিভিআর নেওয়া যাক। আদর্শভাবে, জিনিসগুলি এইভাবে কাজ করবে:

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

অবশ্যই, প্রচুর জিনিস ভুল হতে পারে:

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

আপনি কি সেখানে সমস্ত ফেকলেস প্রোগ্রামার দেখতে পেয়েছেন? কিছু ছিল না।

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

তবে সত্যই, যদি পণ্য পরিচালনা এবং কিউএ স্টাফরা সকলেই চাকাতে ঘুমিয়ে থাকে তবে আমরা প্রোগ্রামাররা এটি তৈরি করতে পারব না।


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


+1 - শেষ পণ্যগুলির সাথে সমস্যাগুলি (বাগ বা কার্য সম্পাদন) কোনওভাবেই প্রোগ্রামারদের জন্য দোষ দেওয়া যায় না। যদি কোনও পণ্য প্রয়োজনীয় একাধিক স্তরের পরীক্ষার জন্য পাস করে থাকে তবে প্রোগ্রামার তার কাজটি সঠিকভাবে করেছে। যদি কোনও পণ্য পরীক্ষায় উত্তীর্ণ হয় এবং এর সাথে সমস্যা থাকে তবে পরীক্ষার / নির্দিষ্টকরণটিকে দোষ দেওয়া যায়।
কিওয়ারকি

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

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

11

কারণ প্রোগ্রামারগুলি নিখুঁত হয় না।

আমি এম্বেড করা জিনিসগুলির একটি প্রোগ্রামার। আমার কিছু কোড নিখুঁত নয়। আমার এম্বেডেড কোডের বেশিরভাগই দ্রুত।

প্রকল্পের শেষে পারফরম্যান্সের সমস্যাগুলি সমাধান করা খুব শক্ত।

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

কখনও কখনও আপনার এম্বেড থাকা ডিভাইসে একটি প্রক্রিয়া শিডিয়ুলার থাকে যা ব্যবহারকারী হিসাবে আপনি যা চান তা করেন না। এম্বেডড ডেভেলপার হিসাবে ঠিক করা কঠিন n

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

আমি যুক্তি দিচ্ছি যে বিকাশকারীরা কোনও বুদ্ধিমান পায় না, তাই একে অপরকে হত্যার বৈশিষ্ট্যগুলি রোধ করতে দ্রুত হার্ডওয়্যার বিমূর্তগুলিতে শোষিত হয়। (বা না, আপনার আইফোনের ক্ষেত্রে)

ডিজাইনের অগ্রগতির সাথে সাথে আপনি পরীক্ষার জন্য ইউআই পারফরম্যান্সের প্রয়োজন।

যদি এটি নির্দিষ্ট না করা হয় তবে বিকাশকারী এটির অভ্যস্ত হয়ে যাবেন। আমরা সকলেই এটি করি। "আমার বাচ্চা কুৎসিত নয়"

এবং এটি জিসি ভাষা নয়; এম্বেড করা রিয়েলটাইম জাভা এত তাড়াতাড়ি এটি ভীতিজনক। (অন্যদিকে এম্বেড পাইথন মোট কুকুর)

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

কিছু ডিভিডি প্লেয়ার ইজেক্ট করতে কেবল "ইজেক্ট" স্ক্রিপ্ট চালায়। আপনি ডিভিআর বিকাশের ব্যয়কে বদ্ধমূল রাখতে এই পদ্ধতি গ্রহণ করেছেন। তারপরে আপনি সিপিইউ বা র‍্যাম এড়িয়ে যান এবং এটি সফল হয়।


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

3

এগুলি কি এই কারণে যে স্থানীয় কোডের পরিবর্তে সবগুলি পরিচালিত, আবর্জনা-সংগৃহীত ভাষায় লেখা হয়েছিল?

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

এই ডিভাইসগুলির জন্য সফ্টওয়্যারটি লিখেছেন এমন স্বতন্ত্র প্রোগ্রামাররা কি?

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

এই সমস্ত ক্ষেত্রে অ্যাপ্লিকেশন বিকাশকারীরা ঠিক কী হার্ডওয়্যার প্ল্যাটফর্মটি তারা টার্গেট করছে এবং এর ক্ষমতাগুলি কী তা জানত; তারা কি তা আমলে নেয়নি?

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

সমস্যার অংশটি হ'ল সফ্টওয়্যার সম্ভবত হার্ডওয়্যারে বিকাশিত নয়, এটি এমুলেটরগুলিতে সম্পন্ন হয়। এটি যথাযথ ডিভাইস কর্মক্ষমতা জন্য অ্যাকাউন্ট করতে অসুবিধা তৈরি করে এমনকি যদি অনুকরণকারীরা 100% নির্ভুল হয় - যা সেগুলি নয়।

অবশ্যই এটি মুক্তির আগে যথাযথ প্রোটোটাইপ হার্ডওয়্যারটির অপর্যাপ্ত পরীক্ষার সত্যতা প্রমাণ করে না। এই দোষটি সম্ভবত দেব / কিউ নিয়ন্ত্রণের বাইরে।

এই লোকটিই কি "অপটিমাইজেশন সমস্ত মন্দের মূল" এর পুনরাবৃত্তি করে, তিনি কি তাদেরকে বিপথগামী করেছিলেন?

না, আমি বেশ নিশ্চিত যে তারা যাই হোক না কেন তাঁর কথায় কান দেয় না; অন্যথায় তিনি এতবার ভুল জিজ্ঞাসা করা হবে না (এটি " অকাল অপ্টিমাইজেশন ..." বলে মনে করা হয় )। :-D

এটি আরও বেশি সম্ভাবনা রয়েছে যে প্রচুর প্রোগ্রামাররা শুভেচ্ছা অপ্টিমাইজেশান সহ 2 টির একটি চরম গ্রহণ করে।

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

এই সমস্ত মিলি সেকেন্ড কয়েক মিনিট অবধি যোগ না হওয়া পর্যন্ত প্রতিবার "ওহ এটি কেবল একটি অতিরিক্ত 100 মিমি" এর মানসিকতা ছিল?

সম্ভবত। স্পষ্টতই যদি Sleep(100)কোনও বিচ্ছিন্ন অঙ্গের রক্তপাতকে ধীর করতে ব্যবহৃত টিস্যু পেপারের সমতুল্য হিসাবে ব্যবহার করা হয় - তবে সমস্যাগুলি আশা করা যায়। তবে আমি সন্দেহ করি যে সমস্যাটি তার থেকে আরও সূক্ষ্ম।

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

  • প্রথমটি হ'ল প্রোগ্রামাররা যে কাজগুলি কম্পিউটার খুব দ্রুত করে তা নিয়ে অযথা চিন্তিত। (এটি এমনটি ঘটে যে এটি কেবল এমন উদ্বেগ ছিল যে " প্রতি সেকেন্ডে 300 গুণ মূল্য বৃদ্ধি করা " যা আমাকে এখানে প্রথম স্থানে নিয়ে গেছে।)
  • দ্বিতীয়টি হ'ল যখন বিষয়গুলি খুব দীর্ঘ সময় নেয় (কম্পিউটারের টাইমস্কেলে) তখন তারা কখনও কখনও উদ্বেগ প্রকাশ করতে ব্যর্থ হয়। তাই:
    • যদি তারা কোনও নেটওয়ার্কে বা স্টোরেজ ডিভাইসের সাথে যোগাযোগ করার সময় বিলম্বের প্রভাবগুলি উপেক্ষা করে;
    • যদি তারা থামানো কোনও থ্রেডের প্রভাব উপেক্ষা করে এবং অন্য থ্রেডের জন্য অপেক্ষা করে;
    • যদি তারা এটি ভুলে যায় যে কম্পিউটারগুলি এত তাড়াতাড়ি কাজ করে তবে বিকাশকারী কোনও সমস্যা সম্পর্কে অবহিত না হয়ে এটি অনেক বেশি বার কোনও কাজ পুনরাবৃত্তি করতে সক্ষম is
    • ... যদি এই জাতীয় ওভারসাইটগুলির কোনও সংমিশ্রণ ঘটে তবে একটি রুটিন অপ্রত্যাশিতভাবে খুব ধীরে চলবে (কম্পিউটিং টাইমস্কেলে)। কয়েকটি পুনরাবৃত্তি এবং এটি মানুষের দ্বারা এমনকি লক্ষণীয় হয়ে উঠবে - তবে এটি নিখুঁত করতে জটিল হতে পারে কারণ শতগুলি আন্তঃসংযুক্ত জিনিসগুলি সমস্তগুলি নিজেরাই দ্রুত চলছে।

প্রথমে এই পণ্যগুলি কেনার জন্য এটি কি আমার দোষ?

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

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

কিন্তু তারা তা করে না, তাই আমরা নেই; এবং প্রতি বছর নতুন সেল ফোন দ্রুত হার্ডওয়্যারে ধীর গতিতে চলে।

(প্রশ্ন জিজ্ঞাসা করা হয়নি।)

  • বিপণন কি মানুষকে দোষ দিচ্ছে? আংশিক। তাদের মুক্তির তারিখ দরকার। এবং যখন তারিখটি তাঁত হয়, "এটিকে কাজ করুন" এবং "এটি দ্রুত তৈরি করুন" এর মধ্যে পছন্দটি কোনও মস্তিষ্কের নয়।
  • বিক্রয় মানুষ কি দোষ দেয়? আংশিক। তারা চেকলিস্টে আরও বৈশিষ্ট্য চায়। তারা বৈশিষ্ট্য তালিকা হাইপ আপ এবং কর্মক্ষমতা উপেক্ষা। তারা (কখনও কখনও) অবাস্তব প্রতিশ্রুতি দেয়।
  • পরিচালকরা কি দোষ দিচ্ছেন? আংশিক। অনভিজ্ঞ ম্যানেজাররা অনেকগুলি ভুল করতে পারে তবে খুব অভিজ্ঞ পরিচালকরা অন্যদের উদ্বেগের পক্ষে পারফরম্যান্সের সমস্যাগুলি সমাধান করার জন্য (যথেষ্ট সঠিকভাবে) ত্যাগ করতে পারেন।
  • বিশেষ উল্লেখ কি দোষ? আংশিক। যদি কিছু নির্দিষ্টকরণ থেকে বাদ যায় তবে পরে এটি সম্পর্কে "ভুলে যাওয়া" এত সহজ easier এবং যদি এটি নির্দিষ্টভাবে বলা হয় না, লক্ষ্য কী? (যদিও আমি ব্যক্তিগতভাবে বিশ্বাস করি যে কোনও দল যদি এর কাজ নিয়ে গর্ব করে তবে তারা নির্বিশেষে পারফরম্যান্স নিয়ে চিন্তিত হবে।)
  • শিক্ষাকে কি দোষ দেওয়া যায়? হতে পারে. শিক্ষা সম্ভবত সর্বদা পিছনে থাকবে back আমি অবশ্যই "শিক্ষাব্যবস্থা" অস্বীকার করি যা একটি পর্যাপ্ত বোঝার সফ্টওয়্যার বিকাশ দিয়ে দ্রুত প্রাথমিকভাবে মন্থর করে। তবে, যে তত্ত্বটি তত্ত্বের সাথে ব্যাক আপযুক্ত এবং শিক্ষার সংস্কৃতি জাগিয়ে তোলে তা খারাপ হতে পারে না।
  • আপগ্রেডকে কি দোষ দেওয়া যায়? আংশিক। নতুন সফ্টওয়্যার, পুরানো হার্ডওয়্যার সত্যিই ভাগ্যের লোভনীয়। এক্স সংস্করণ প্রকাশের আগেই, এক্স + 1 পরিকল্পনা রয়েছে। নতুন সফ্টওয়্যারটি সামঞ্জস্যপূর্ণ তবে পুরানো হার্ডওয়্যারটি কি যথেষ্ট দ্রুত? এটি পরীক্ষা করা হয়েছিল? একটি বিশেষ পারফরম্যান্স ফিক্স নতুন সফ্টওয়্যারটিতে রোল করা যেতে পারে - একটি অসুস্থ-পরামর্শযুক্ত সফ্টওয়্যার আপগ্রেডকে উত্সাহিত করে।

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

সুতরাং, কোন মুহুর্তে এই পণ্যগুলির জন্য জিনিসগুলি ভুল হয়ে গেছে?

আইএমএইচএও আমরা সত্যই কোনও একক পয়েন্ট সনাক্ত করতে পারি না। অনেক অবদানকারী কারণ রয়েছে যা সময়ের সাথে সাথে বিকশিত হয়েছিল।

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

প্রোগ্রামার হিসাবে আমরা আমাদের গ্রাহকদের এই ব্যথা এড়াতে কী করতে পারি?

আমার কাছে কয়েকটি পরামর্শ (প্রযুক্তিগত এবং অ-প্রযুক্তিগত উভয়) রয়েছে যা সাহায্য করতে পারে:

  • সাফ হিসাবে এটি সম্ভব - আপনার নিজের পণ্য ব্যবহার করুন। বিশ্রী, ধীর বা অসুবিধাগ্রস্থ বিষয়গুলি প্রকাশ করতে প্রথম হাতের অভিজ্ঞতার মতো কিছুই নেই। তবে "অভ্যন্তরীণ জ্ঞানের" কারণে আপনার সচেতনভাবে ঘাটতিগুলি অতিক্রম করতে হবে। উদাহরণস্বরূপ আপনার যদি যোগাযোগগুলি সিঙ্ক করতে সমস্যা না হয় কারণ আপনি এটি ব্যাকডোর পাইথন স্ক্রিপ্ট দিয়ে করেন - আপনি "পণ্য" ব্যবহার করছেন না। যা পরের বিষয়টি নিয়ে আসে ...
  • আপনার ব্যবহারকারীদের শুনুন (প্রথমে প্রথম দিকে, তবে সমর্থনের মাধ্যমে কমপক্ষে দ্বিতীয় হাত)। আমি জানি প্রোগ্রামাররা (সাধারণত) লুকিয়ে থাকা এবং মানুষের মিথস্ক্রিয়া এড়াতে পছন্দ করে; তবে এটি আপনার পণ্য ব্যবহার করার সময় অন্যান্য লোকেরা যে সমস্যাগুলি অনুভব করে তা আবিষ্কার করতে আপনাকে সহায়তা করে না। উদাহরণস্বরূপ আপনি খেয়াল করতে পারেন না যে মেনু বিকল্পগুলি ধীর, কারণ আপনি সমস্ত শর্টকাট জানেন এবং সেগুলি একচেটিয়াভাবে ব্যবহার করেন। এমনকি ম্যানুয়াল সমস্ত শর্টকাট পুরোপুরি নথিভুক্ত করলেও কিছু লোক এখনও মেনুগুলিকে পছন্দ করবে - অবিশ্বাস্যভাবে ধীর হয়েও।
  • অবিচ্ছিন্ন ভিত্তিতে আপনার কৌশল দক্ষতা এবং জ্ঞান উন্নত করার চেষ্টা করুন। আপনি যা কিছু শিখেন তার সমালোচনা বিশ্লেষণ করার দক্ষতা বিকাশ করুন। আপনার জ্ঞানের নিয়মিত মূল্যায়ন করুন। কিছু ক্ষেত্রে, আপনি যা ভেবেছিলেন তা আপনি ভুলে যেতে প্রস্তুত থাকুন। যা সামনে আসে ...
  • কিছু প্রযুক্তি / কৌশল খুব কৌতুকপূর্ণ হতে পারে যার ফলে সূক্ষ্ম ভুল বোঝাবুঝি এবং ভুল বাস্তবায়ন হয়। সাধারণ জ্ঞান বা উপলব্ধ সরঞ্জামগুলির বিবর্তনের মাধ্যমে অন্যরা অনুকূলে বা আছড়ে পড়ে (যেমন সিঙ্গলেটন)। কিছু বিষয় এতটাই জটিল যে তারা "হোকস-পোকাস পন্ডিত" একগুচ্ছ প্রজনন করে যা একটি বিশাল সংখ্যক ভুল তথ্য প্রচার করে। আমার একটি বিশেষ বাগবারি মাল্টি থ্রেডিংয়ের চারপাশে ভুল তথ্য রয়েছে। একটি ভাল মাল্টি-থ্রেড বাস্তবায়ন ব্যবহারকারীর অভিজ্ঞতা উল্লেখযোগ্যভাবে উন্নত করতে পারে। দুর্ভাগ্যক্রমে মাল্টি-থ্রেডিংয়ের অনেক ভুল তথ্যপ্রযুক্তি কার্য সম্পাদনকে উল্লেখযোগ্যভাবে হ্রাস করবে, ত্রুটিযুক্ত বাগগুলি বৃদ্ধি করবে, মৃত-লক ঝুঁকি বাড়িয়ে দেবে, ডিবাগিং জটিল করবে So তাই মনে রাখবেন: একজন "বিশেষজ্ঞ" বলেছিলেন, এটি সত্য করে তোলে না।
  • মালিকানা নিন। (কোনও গুরুত্বের সাথে নয়, আমি বোর্ডরুমের বিঙ্গো খেলছি না)) কিছু চেকলিস্ট আইটেমকে প্রাধান্য দিয়ে পারফরম্যান্স বৈশিষ্ট্যগুলির জন্য পরিচালক, পণ্য মালিক, বিক্রয় লোকদের সাথে আলোচনা করুন। আরও ভাল স্পেসিফিকেশন চাহিদা। শিশুসুলভ নয়, এমন প্রশ্ন জিজ্ঞাসা করে যা লোকেরা কর্মক্ষমতা সম্পর্কে চিন্তাভাবনা করে।
  • বিচক্ষণ ভোক্তা হন। এমন বৈশিষ্ট্যযুক্ত ফোনটি চয়ন করুন যা কম বৈশিষ্ট্যযুক্ত তবে দ্রুত। (দ্রুত সিপিইউ নয়, দ্রুত ইউআই)) তারপরে এটি নিয়ে বড়াই করুন ! ভোক্তারা যত বেশি পারফরম্যান্সের দাবি করতে শুরু করবেন, তত শিম কাউন্টারগুলি এর জন্য বাজেট শুরু করবে।

এটি সত্যিই পুরোপুরি, সুচিন্তিত উত্তর! কাকতালীয়ভাবে, আমি এই টিম মিটিং থেকে ফিরে আসার পরে এই অধিকারটি পড়েছিলাম যেখানে থিমটি ছিল "# 1 এ-অগ্রাধিকার এই চক্রটি: ত্রুটিটি> 60 মিমি, এটি 33 মিমি, জুমজ 1 হতে হবে!"
ক্র্যাশ ওয়ার্কস

1

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

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

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

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


2
আমার আইফোন নম্বরগুলি অতিরঞ্জিত নয়; আমার নিজের ফোনটি ব্যবহার করার সময় আমি জোরে সেকেন্ডে গণনা করে সেগুলি পেয়েছি। Youtube.com/watch?v=Pdk2cJpSXLg- তে এই সমস্যার একটি হাস্যকর (কম চরম থাকলে) চিত্র রয়েছে । এছাড়াও, আমার ফোনটি যখন কিনেছিলাম তখন ঠিক ছিল! ফোন বেছে নেওয়ার সময় আমি যত্ন সহকারে পারফরম্যান্স মূল্যায়ন করেছি। তবে এটি অ্যাপল থেকে ক্রমাগত প্রতিটি ফার্মওয়্যার আপডেটের সাথে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে হয়ে ওঠে unus আমি মনে করি অ্যাপলের আপডেটগুলি ইনস্টল করার জন্য এটি আমার দোষ হতে পারে।
ক্রশ ওয়ার্কস

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

1

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

আপনার যদি আইফোন 3 জি থাকে তবে অ্যাপল কয়েকটি নতুন ওএস আপডেট প্রকাশ করেছে যা কেবলমাত্র নতুন ডিভাইসের জন্য অনুকূলিত হয়েছিল। পরে থ্রিজির জন্য ওএস আপডেটগুলি থ্রিজিতে কিছুটা আরও ভাল পারফরম্যান্স সরবরাহ করতে পারে।


1
"অকাল অপটিমাইজেশন কখনও কখনও খারাপ হয়, তবে যখন ভাল ব্যবহারকারীর অভিজ্ঞতার প্রয়োজন হয় না" তবে এটি অকালীন অপটিমাইজেশন নয়
কার্লোস ক্যাম্প্ডারস

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

0

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


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

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

-2

আমি মনে করি এর কারণ হ'ল বেশিরভাগ ভোক্তা নির্দেশিত অ্যাপ্লিকেশনগুলি এমন লোকেদের দ্বারা নিয়ন্ত্রিত এবং বিপণন করা হয় যারা সফ্টওয়্যার সম্পর্কে কিছুই জানেন না এবং তাদের প্রকৃত দক্ষতা এবং জ্ঞানের বিপরীতে তাদের জীবনবৃত্তান্ত বা কিছু নন ম্যানেজারের সুপারিশের ভিত্তিতে বিকাশকারীদের নিয়োগ দেয় ire ।


2
কোনও ব্যাখ্যা ছাড়াই, অন্য কেউ যদি বিপরীত মতামত পোস্ট করে তবে এই উত্তরটি অকেজো হতে পারে। উদাহরণস্বরূপ, কেউ যদি "দ্য গ্রেট ডেভলপারদের ভাড়া করে এমন অ্যাপ্লিকেশনগুলি নিয়ন্ত্রণ ও বিপণন করে" এমন একটি দাবি পোস্ট করে , তবে এই উত্তরটি কীভাবে পাঠককে দুটি বিরোধী মতামত বাছাই করতে সহায়তা করবে? বিবেচনা করুন সম্পাদন করা একটি ভাল আকৃতি সেটিকে ing
মশা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.