দীর্ঘ-ধরে রাখা, ভুল প্রোগ্রামিং অনুমান [বন্ধ]


281

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

আপনার দীর্ঘকালীন অনুমানটি কী ছিল যা শেষ পর্যন্ত সংশোধন করা হয়েছিল?

উদাহরণস্বরূপ, আমি ভুল বুঝেছি যে একটি পূর্ণসংখ্যার আকার কোনও মান নয় এবং পরিবর্তে ভাষা এবং লক্ষ্যের উপর নির্ভর করে। রাষ্ট্র বিবৃতিতে কিছুটা বিব্রতকর, তবে তা রয়েছে।

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


উত্তর:


545

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

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

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


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

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

47
আমি যে স্টাফ সম্পর্কে পড়তে এবং শিখতে সময় পাই না তার সম্পর্কে আমি প্রতিদিন নেশা করি। এটি কখনও কখনও অপরাধবোধের ভয়াবহ অনুভূতি নিয়ে আমাকে ছেড়ে যায়।
ব্র্যাড

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

4
+1 ভাল জিনিস আমি এটি পড়েছি। আমি ভেবেছিলাম আমি একমাত্র।
রেন্ডেল

308

লোকেরা জানত যে তারা কী চায়।

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

সম্পাদনা: আমি বেশিরভাগ মন্তব্যের সাথে একমত। এটি কোনও প্রযুক্তিগত উত্তর নয় এবং প্রশ্নকর্তা যা খুঁজছিলেন তা নাও হতে পারে। এটি শুধুমাত্র প্রোগ্রামিংয়ের ক্ষেত্রে প্রযোজ্য নয়। আমি নিশ্চিত এটি আমার দীর্ঘমেয়াদী অনুমান নয়, তবে এটি 10 ​​টি স্বল্প বছরে আমি শিখেছি এটি সবচেয়ে আকর্ষণীয় বিষয়। আমি নিশ্চিত যে এটি আমার পক্ষে নিখুঁত ছিল তবে আমার মস্তিষ্ক যেভাবে ওয়্যার্ড হয়েছিল / ব্যবসায়ের জগতে প্রবেশের আগে আমার যে শিক্ষা এবং অভিজ্ঞতা ছিল তা আমাকে বিশ্বাস করেছিল যে আমি যে উত্তর দিয়েছি তা করব! জনগণের সমস্যা সমাধানের জন্য আমি কোড এবং কম্পিউটার ব্যবহার করতে সক্ষম হব।

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

সম্পাদনা করুন: এই উত্তরটি এখন আমার সম্প্রদায়-উইকি হয়ে উত্তরটি দিয়ে জনগণকে সন্তুষ্ট করার জন্য উত্তরটি দেবে rep


9
বা পূর্বে যা চেয়েছিল তা দেখার পরে তারা যা চায় তা পরিবর্তন করুন। মানুষ তাদের মত পরিবর্তন করতে পছন্দ করে। আমি জানি, কিউজ আমি একটি মানুষ
জে। পলফার

13
আপনি তাদের যা চেয়েছিলেন তা দিয়েছিলেন, যা চান তা নয়।
ব্রেন্ট বাইসলি

47
বিরক্তিকর বিতর্কিত নো-উত্তরগুলি কেন এত বেশি ভোট দেওয়া যায় ?!
nes1983

39
কি দারুন. কারও কাছে আলিঙ্গন লাগার মতো মনে হচ্ছে।
bzlm

24
আমার @শ্বর @ লোকেরা অভিযোগ করছেন, স্ট্যাকওভারফ্লো প্রতিনিধিত্ব কোনও প্রতিযোগিতা নয়। আপনি যদি উত্তরটি উপভোগ করেন তবে উপভোট করুন, ডাউনভোট করবেন না কারণ আপনি হিংসা করছেন আপনি এটি পোস্ট করেন নি।
দিমিত্রি ফারকভ

292

আমি জানি যে প্রোফাইলিং ছাড়াই পারফরম্যান্সের সমস্যা কোথায়


10
আমি মনে করি এই কারণেই অকাল অপটিমাইজেশন এত সাধারণ জায়গা।
হাও ওউই লিম

10
+1 বাহ, কেউ এমন একটি উত্তর অন্তর্ভুক্ত করেছে যা তুচ্ছ বা অফ-বিষয় ছিল না।
মার্ক রজার্স

3
আমার কাছে কিছু ট্যাবলেট রয়েছে যা অকাল অপ্টিমাইজেশনে সহায়তা করতে পারে ...
অ্যান্ডি

232

যে কোনও ফাংশন / পদ্ধতি থেকে আমার কেবল একটি প্রস্থান পয়েন্ট থাকা উচিত।


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

24
এই পথ দিয়ে কে এলো? এটি একটি প্রোগ্রামিং শহুরে কিংবদন্তির মতো।
ব্র্যাড

49
যে লোকেরা অন্য ব্যক্তির কোডটি ডিবাগ করতে হয় তারা হ'ল যারা এটি নিয়ে এসেছিল।
গেটারফ্যাক্স

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

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

228

আমি যে বিষয়ে কথা বলছি তা নন-প্রোগ্রামাররা বুঝতে পারে।


243
বুঝতে / যত্ন ..
নিক 15

8
আমার মাঝে মাঝে এটি এখনও আছে ... আমি ভেবেছিলাম কমপক্ষে আমার স্ত্রী এখন
অবধি

3
ওহে প্রিয়, আমি ভয় করি আমি এখনও এটি শিখতে পারি না!
thatismatt

3
হ্যাঁ, মাঝে মাঝে আমি আমার শ্রোতাদের ভুলে যাই এবং আমার দিকে সিঁড়ি বুলানো মুখের দিকে ফাঁকা দেখতে চাই তবে লোকেরা আগ্রহ দেখায় এটা খুব ভাল
পিটি বি

3
পেশা নিয়ে এটি আমার সবচেয়ে বড় হতাশা।
অ্যান্ড্রেস জান ট্যাক

219

যে বাগফ্রি সফ্টওয়্যার সম্ভব ছিল।


35
+1, যদিও নাসা এটি প্রায় পরিচালনা করেছিল
প্যাট্রিক ম্যাকডোনাল্ড

55
হ্যাঁ তবে "প্রায়" এর জন্য কয়েক মিলিয়ন ডলার ব্যয় হয়েছে :)
জেমস

15
@ ট্রাইঙ্কো আপনার "সম্ভাব্য" এবং @ জারেডপারের "সম্ভাব্য" এক নয়। তত্ত্ব ও অনুশীলন তত্ত্বের ক্ষেত্রে একই হতে পারে তবে অনুশীলনে খুব আলাদা।
উইলহেমটেল

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

9
@ রাসেলএইচ, না। আপনি কোনও রিটার্ন মান নির্দিষ্ট করতে ব্যর্থ হয়েছেন এবং ফলস্বরূপ প্রক্রিয়া এলোমেলো আবর্জনা স্মৃতি ফিরে আসবে।
জেয়ার্ডপাড়

199

প্রাইভেট সদস্য ভেরিয়েবলগুলি ক্লাসের নয়, উদাহরণ হিসাবে ব্যক্তিগত ছিল।


192
আমি এখন পর্যন্ত ... এই ধারণাকে ধরে রেখেছি।
দ্য মিসিংলিংকি

9
@ ব্রাউন আমি সমান () পদ্ধতি লেখার সময় সাধারণত এটি দরকারী মনে করি
ডেভ ওয়েব

12
তারা রুবিতে আছেন।
মাইক কুসেরা

17
এটি আমার পক্ষে এতটাই স্বাভাবিক যে এই উত্তরটি আমি প্রথম কয়েকবার পড়ার কোনও অর্থ দেয়নি। এখন আমি রুবি শিখতে চাই যাতে এটি আমাকে অন্যভাবে বিভ্রান্ত করতে পারে। :)
jmucchiello

16
@ কিউইক যদি আপনার ক্লাসের ভিতরে মাইভার নামে একটি প্রাইভেট সদস্য ভেরিয়েবল থাকে তবে আপনি অন্য কোডটি অন্য কোডের উদাহরণ হিসাবে সরাসরি কোডে রেফারেন্স করতে পারেন। আমি ধরে নিয়েছিলাম কারণ এটি "ব্যক্তিগত" হওয়ায় আপনাকে ক্লাসের মধ্যেও অন্যান্য .getMyVar () ব্যবহার করতে হয়েছিল।
ডেভ ওয়েব

166

আমি ভেবেছিলাম স্থির টাইপিংটি আপনার কীবোর্ডে খুব শান্ত বসে আছে sitting


53
আন্তরিক হোক বা না হোক, এটি দীর্ঘ দিনের কাজের শেষে আমাকে খুব হাসিখুশি করেছে। : পি
অলিভিয়ার ট্রাম্বলে

5
++ ভাল হাসির জন্য। আমার (অ-প্রযুক্তিগত) স্বামী নিয়ে এমন কিছু মনে হচ্ছে।
জেস

11
+1 টি! আমি ভেবেছিলাম হাঁসের টাইপিং টাইপিংয়ের সাথে জড়িত। বা হাঁস অথবা উভয়.
স্ক্ল্যাসিডিড

162

আপনি বিকাশ শুরু করার আগে আপনি কোনও সমস্যা পুরোপুরি বুঝতে পারবেন।


32
এটি, আমার বন্ধুটি হওয়া উচিত: "আপনি কোনও সমস্যা পুরোপুরি বুঝতে পারবেন।" তবে এটা সত্যি। এবং স্বতঃস্ফূর্তভাবে বুঝতে বা গ্রহণ করার জন্য একটি শক্ত ধারণা।
কার্লপি

4
আপনি "সম্পূর্ণরূপে" সমস্যাটি বুঝতে পারবেন না তবে আপনি বিকাশ শুরু করার আগে অবশ্যই সমস্যাটি (কিছুটা ডিগ্রী) বুঝতে হবে। বিট.ইলি
অস্কাররাইজ

কখনও কখনও সমস্যা বুঝতে আপনার বিকাশ শুরু করতে হবে। এবং / অথবা, সমস্যাটি আপনার বিকাশকে আরও পরিবর্তন করে।
ইভান প্লেস

158

স্মার্ট লোকেরা আমার চেয়ে সর্বদা স্মার্ট।

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

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

গল্পের নৈতিকতা: আপনি টেবিলে কী আনতে পারেন তা কখনই অল্প মূল্য করবেন না


ভাল একটা! আমি বর্তমানে এমন কোনও সহকর্মীর সাথে কাজ করছি যারা। নেট বিকাশ সম্পর্কে সত্যই জানে। গ্রাহকদের কী প্রয়োজন তা বোঝার জন্য আমি আরও ভাল realize
ট্রেব

58
এবং অন্যদিকে, আমি অন্যান্য লোকদের চেয়ে বেশি জানি। দেখা যাচ্ছে যে তারা কেবল বিভিন্ন জিনিস জানেন। অন্য নৈতিক: অন্য কেউ টেবিলে কী নিয়ে আসতে পারে তা কখনই ভাবেন না।
বৃহস্পতিবার

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

1
দুর্দান্ত পর্যবেক্ষণ - আমার সংস্করণটি আরও বেশি নেতিবাচক "প্রত্যেক ব্যক্তি এখন এবং পরে বোকা হয়"। কিছুটা সম্পর্কিত "বোজো বিটটি ফ্লিপ করবেন না" সম্পর্কিত।
পিটারচেন

2
আপনার কেবল তখনই চিন্তা করতে হবে যখন বোকা লোকেরা আপনার চেয়ে বেশি স্মার্ট are
ব্র্যাড গিলবার্ট

131

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


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

2
পুরোটাই। আমি "এটি কখনই ঘটে না" থেকে " এই চাকরি ব্যতীত কখনই ঘটে না " থেকে "প্রতিটি জায়গার খারাপ কোড রয়েছে" তে চলে গিয়েছি ।
রায়ান লুন্ডি

1
হ্যাকিং হ'ল আদর্শ। প্রকৌশল প্রকৃত প্রতিযোগীতার পরিধি। যদি কোনও সফটওয়্যার ইঞ্জিনিয়ারের সাথে দেখা হয় তবে আমি আপনাকে জানাব।
Corlettk

3
@ করলেটিক: আপনার মানে বানর-কোডিং হ'ল আদর্শ, না? হ্যাকিং একটি শিল্প, একটি উচ্চ স্তরের শিল্প আপনাকে মনে রাখে যে আমি অর্জন থেকে অনেক দূরে।
হেসেন

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

113

আমি ভেবেছিলাম আমার যতটা সম্ভব বিমূর্ত করার দিকে এগিয়ে যাওয়া উচিত। কার্যকারিতা খুব জড়িত সামান্য বিট কারণে আমি এই সঙ্গে মাথাতে আঘাত পেয়েছি।

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

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


26
ডিকপলড = সত্য বিমূর্ততা। নিজের স্বার্থের জন্য বিমূর্তি ... অকাল অপ্টিমাইজেশন।
জ্যারেড আপডেটিকে

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

5
অ্যাবস্ট্রাকশন এবং জেনারালাইজেশন হ'ল শক্তিশালী সরঞ্জাম, দু: খজনকভাবে একক প্রয়োগের সাথে একটি বিমূর্ত ব্যবহারের ক্ষেত্রে সাধারণকরণ করার জন্য ব্যবহৃত হয়। মজার বিষয় হ'ল যখনই বাস্তবায়ন পরিবর্তনের প্রয়োজন হয়, বিমূর্ততা এবং সাধারণীকরণগুলিও খুব বদলাতে হয় ...
কার্লপি

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

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

103

যে মহিলারা কম্পিউটার প্রোগ্রামারদের সেক্সি খুঁজে পান ...


70
এক সেকেন্ড অপেক্ষা কর???
ğağdaş টেকিন

4
সে সে সে .. ওকে, আমি সারা দিন আমার হাসি রাখার জন্য কিছু খুঁজছিলাম। আমি মনে করি এটি খুঁজে পেয়েছি !!! :)
অস্কারলাইজ

17
"ওহ, বাবু! হ্যাঁ, বলুন 'যদি' - আমাকে কিছু ব্যতিক্রম ছুঁড়ে দিন .. হ্যাঁ, আপনি কীভাবে আমি এটি চাই তা জানেন": পি
cwap

5
কি? প্রোগ্রামাররা কি ধনী? কখন এটা ঘটেছে?
ফিলিপ নাভারা

3
কিছু মহিলা (সঠিক ধরণের) অন্তর্দৃষ্টিপূর্ণ বুদ্ধিমান ছেলেদের প্রতি আকৃষ্ট হন। প্রিনোটাইপিকাল ঘাড়-দাড়ি এবং সসেজ-অন্ত্রটি বিয়োগ, যা প্রোগ্রামারদের বেশ সাধারণ বৈশিষ্ট্য। স্ব-প্রতিচ্ছবি / স্বাস্থ্যবিধি এবং মাঝে মাঝে রোমাঞ্চ / চরম ক্রীড়াগুলির উত্তেজনার জন্য কিছুটা উদ্বেগ ছড়িয়ে দিন এবং আপনি আপনার পথে ভাল well
ইভান প্লেস

100

যে সফ্টওয়্যার এর মান আরও বেশি বিক্রয় হতে পারে। কখনও কখনও এটি কিন্তু সর্বদা না।


37
সফটওয়্যার বিক্রি? এটি তাই 1999.
bzlm

প্রচুর সাবস্ক্রিপশন ভিত্তিক ওয়েবসাইটগুলি এখন
অ্যাড করছে

11
মাইক্রোসফ্ট নিশ্চিতভাবেই এটিকে হত্যা করেছে।
বিল মার্টিন

এটাকে ভালবাসতে হবে, তাই সত্য।
ড। মন্দ

18
আমি চাই যে আমাদের সফ্টওয়্যারটির গুণমান / পারফরম্যান্সটি কোনও বৈশিষ্ট্য হিসাবে গণ্য করা
টম লেজ

82

সমস্ত ভাষা সমানভাবে তৈরি হয়েছে (বেশিরভাগ ক্ষেত্রে)।

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

কাজের জন্য সঠিক ভাষা নির্বাচন করা অন্য একক প্রকল্পের সিদ্ধান্তের মতোই গুরুত্বপূর্ণ / সমালোচনামূলক।


13
আমি অনুভব করি যে সঠিক লাইব্রেরিগুলি বেছে নেওয়া গুরুত্বপূর্ণ। এটা ঠিক তাই ... প্রায়ই আছে ভাষা এবং লাইব্রেরি মধ্যে একটি 1 টু 1 চিঠিপত্রের ঘটবে
কেভিন মংটরোজ়

7
তবে দুটি প্রোগ্রামিং ল্যাঙ্গুয়েজ যদি উভয়ই ট্যুরিং সম্পূর্ণ হয় তবে পার্থক্য কী? যে কোনও ভাষায় আপনি যে কোন প্রোগ্রাম লিখতে পারেন! ;)
বিল করুন

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

13
ব্রেনফু ** অজগর যেমন হয় তেমন ট্যুরিং সম্পূর্ণ।
হেসেন

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

81

একটি বড় মন্তব্য / কোড অনুপাত একটি ভাল জিনিস।

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


1
আমি সম্মত মধ্যে প্রকৃত কোড ... javadoc মন্তব্য (অথবা সমতুল্য) ব্যতীত।
Corlettk

11
+1, এমনকি আমি 10 টি লাইন ফাংশনগুলির জন্য
লিখতাম

এটি যুক্ত করতে পূর্ববর্তী অবস্থা / পোস্টকন্ডিশন ডকুমেন্ট করার চেয়ে একটি দৃsert় () স্টেটমেন্ট ভাল। .NET 4 কোড চুক্তিগুলিও স্বয়ংক্রিয়ভাবে ডকুমেন্টেশনে রূপান্তরিত হতে পারে!
রবার্ট ফ্রেজার

66

প্রোগ্রামিং অসম্ভব।

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

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

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


7
আমেন! তবে, আরে, ছাদ থেকে এই দৃশ্যটি প্রচার করবেন না। আমরা চাই না যে সবাই জানুক প্রোগ্রামিং মজাদার, এখন আমরা কি করি? ;); পি
পিটার পেরে

9
মাস্টারপেটর: তারা যখন এখানে প্রশ্ন জিজ্ঞাসা করে আসে তখন আমাদের প্রতিনিধি বাড়ানোর জন্য আমাদের আরও বেশি চਾਰਾ দেয়।
TheTXI

4
আমি যা বলতে চাই প্রোগ্রামিং হয় কঠিন অধিকার করতে । এটি অবশ্য সম্ভব, যা আপনার পয়েন্ট বলে মনে হচ্ছে।
স্টিভ এস

4
@ ওলাফুর: আপনি কেন প্রশ্নটি উইকি হতে চান তবে আপনার উত্তরটি নয়?
gnovice

2
এটি আমার অভিজ্ঞতাকে আয়না করে দেয়। আমি আশা করি আমি খুব শীঘ্রই শুরু করেছি: পি
স্কিলড্রিক

65

"অন ত্রুটি পুনঃসূচনা পরবর্তী" হ'ল এক ধরণের ত্রুটি পরিচালনা


6
আমি আপনাকে অনুভব করি ... তবে ভিবিএসক্রিপ্টে (উদাহরণস্বরূপ), এটি কেবলমাত্র "ত্রুটি পরিচালনা" বিকল্প ছিল যা সঠিকভাবে ত্রুটি ঘটেছে কিনা তা বিচারের সাথে মিলিত করার জন্য এবং ন্যায্য পরিমাণ প্রার্থনা combined
ফ্ল্যাটলাইন

2
হ্যাঁ ... এটি এক ধরণের ... কেবল এক ধরনের যা আমরা দূরে থেকে খুশি
ম্যাথু হোয়াইট

6
আমরা হব?! কিন্তু এটা হয়। আপনি নিজের ত্রুটি-পরিচালনা পরিচালনা ব্লকটি অন ত্রুটি পুনঃসূচনা পরবর্তী দিয়ে শুরু করুন, কিছু চেষ্টা করুন, এবং তারপরে (err.number <> 0) এরপরে
jpinto3912

এটি কি একমাত্র ভিবিএসক্রিপটকে ট্রাই ক্যাচের সমতুল্য নয়?
জেমস

-1: এটি এক ধরণের ত্রুটি পরিচালনা করা। এটা ঠিক যে মার্জিত না।
জনএফএক্স

64

প্রোগ্রামিং সফ্টওয়্যারটির উচ্চতর গণিতে একটি শক্তিশালী ভিত্তি প্রয়োজন।

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

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


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

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

12
আমি মনে করি গণিতের উপর জোর দেওয়া হ'ল সমালোচনামূলক চিন্তাভাবনা এবং সমস্যা সমাধানের বিষয়টি শেখানো যা আপনি প্রতিদিন কম্পিউটার প্রোগ্রামিংয়ে ব্যবহার করবেন as
জ্যাক

14
উন্নত গণিতটি বোঝার জন্য আপনার যে ধরণের বিমূর্ততা প্রয়োজন তা সফ্টওয়্যার তৈরির জন্য আপনার বিমূর্ততার অনুরূপ similar
অস্কারআয়েজ

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

63

এটি অনুকূলকরণ == সমাবেশ ভাষায় পুনর্লিখন।

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


8
পিক এবং পোকে আপনার বন্ধুরা :)
ম্যাথু হোয়াইট

4
বিকৃত করা! সেটা বিচারকের কাছে বলুন!
শালম ক্রিমার

1
এখানে জটিলতা তত্ত্ব আসে Assembly আপনার অ্যালগরিদমের সময় জটিলতা আরও ছোট করা যেখানে গতি অর্জন করা হয়।
পিটটি

@ স্ক্রাইমার: অভিনবতা আপনাকে এখানে দেখে, আমি কখনই এটির আশা করতাম না ;-)
রবার্ট এস বার্নেস

@ ম্যাথু - "উঁকি দেওয়া এবং পোকে আপনার বন্ধুরা :)": ** অত্যন্ত jeর্ষানুসারে আমি প্রথমে এটি লিখিনি।
ফাস্টএল

63
  • কোম্পানির এক্সিকিউটিভরা কোডের মানের বিষয়ে যত্নশীল।
  • যে কম লাইন ভাল।

2
তারা যত্নশীল তবে আপনাকে শিল্পী-দক্ষতা কর্মী-দক্ষতার সাথে একত্রিত করতে হবে। প্রতিটি অ্যালগোরিট ক্যান্টও শিল্পের এক টুকরো হতে পারে। এটির কিছু হ্রাসকারী হবে, সুতরাং "কম ব্যবহৃত" পুনরায় ব্যবহার করুন। পুরানো 80/20 নিয়ম মনে রাখবেন। 80% প্রোগ্রামটি 20% সময় ব্যবহৃত হয়। সুতরাং 20% কোডের উপর 80% ফোকাস করুন এবং সেই আর্টের বাস্তব পিস করুন! : ওপি
বার্গগ্রিনডিকে

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

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

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

17
যদি আপনার লাইনটি এর শেষ হয়))))) এবং আপনি লিস্প লিখছেন না, আপনার খুব কম লাইন রয়েছে।

58

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


1
এটিই একমাত্র উত্তর যা আমি উত্সাহিত করব, যদিও এটি একটি সিডব্লিউ তাই কোনও ব্যাপার নয় ...
ড্যান রোজনস্টার্ক

4
আইআইআরসি systems০ এর দশকে কিছু সিস্টেম ফিরে এসেছে এবং সম্ভবত's০ এর শুধুমাত্র একটি ডিজিট ব্যবহৃত হয়েছে কারণ এতে কম স্মৃতি ব্যবহার করা হয়েছে। আমি এমনকি কাগজের ফর্মগুলি দেখেছি যেখানে "196_" এবং "197_" প্রিন্ট করা হয়েছিল।
কিছু

3
আমি এখনও 200_ সহ ফর্মগুলি দেখতে পাচ্ছি এবং সম্ভবত বেশিরভাগ এখন 201_ মুদ্রিত রয়েছে।
মাচা

5
দুঃখের বিষয়টি হ'ল ... ইউনিক্স এর 2038 এ দ্বিতীয় দফা হবে
ইভান প্লেস

4
@ বিলি কেবল কারণ মেশিনের আর্কিটেকচারের পরিবর্তনের অর্থ ডেটা ফর্ম্যাট হবে না will 2 টি অঙ্কের রেজোলিউশন ইন্ট ফর্ম্যাটে সংরক্ষণ করা বাইট (8 বিট) তারিখের ফর্ম্যাট তৈরি করবে এবং তবুও এটি 2 ক-তে 32 বিট হার্ডওয়ার আর্কিটেকচার মেশিনকে প্রভাবিত করবে। আপনি নিম্ন স্তরের হার্ডওয়্যার ছেলেদের কেন ডেটা ফর্ম্যাট নির্দিষ্ট করতে দিচ্ছেন না তার এটি আরও একটি উদাহরণ। সুদূর ভবিষ্যতে একটি তফসিলী এসএনএএফইউ থাকবে তা এই জ্ঞানের সাথে তারা বিটগুলি টানিয়ে দেয়।
ইভান প্লেইস

57

সন্নিবেশ / বুদ্বুদ সাজানোর ব্যতীত অন্য যে কোনও কিছু ছিল অন্ধকার যাদু।


হাহাহা, আমি এটি পছন্দ করি, যেমন এটি বাড়ির কাছাকাছি চলে আসে। এন-স্কোয়ারড সময়ের চেয়ে দ্রুত বাছাই করুন ?? Unpossible!
রস

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

74
আমি অ্যালগরিদম বাছাইয়ের একজন গবেষক! এবং তারা এখনও অন্ধকার যাদু মত মনে হয়।
এসপি ওয়ার্লি

14
আমার প্রোগ্রামে একবার আমার কোডের একটি লাইন ছিল যা একটি দীর্ঘ এবং জটিল ছিল এবং আমি এটিকে ভেঙে ফেলা বা এটি ব্যাখ্যা করার মতো মনে করি না (এটি কিছু জটিল আলোক সূত্র ছিল), তাই আমি এগুলি সমস্তই এক লাইনে রেখেছি এবং # ডেফাইন ' এটি ডার্ক_ম্যাগিক হতে হবে, এবং কেবলমাত্র মন্তব্যটি ছিল অন্ধকার ম্যাজিকের রহস্য উন্মোচন করার চেষ্টা করার বিরুদ্ধে একটি সতর্কতা
অ্যালেক্স

2
বোগোসর্ট এগুলির মধ্যে সবচেয়ে রহস্যময়।
অ্যালেক্স বিয়ার্ডসলে

50

এই এক্সএমএলটি সত্যই আন্তঃব্যবহারযোগ্য এবং মানব পাঠযোগ্য ডেটা ফর্ম্যাট হবে।


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

4
এটি একটি আন্তঃ অপারেবল সিনট্যাক্স, এটি সম্পর্কে কোনও সন্দেহ নেই। এটি ঠিক যে বাক্য গঠন প্রায়শই কোনও সমাধানের ন্যূনতম গুরুত্বপূর্ণ দিক।
সাইমন গিবস

2
+1, আপনি ইচ্ছামত তালিকাতেও ছোট এবং দ্রুত যুক্ত করতে পারেন।
মার্কজে

1
সত্য তবে সিএসভি এবং নির্দিষ্ট দৈর্ঘ্যের চেয়ে উন্নতি যেখানে ডকুমেন্টেশন ছাড়াই আপনাকে স্ক্রু করা হয়েছে।
পিটটি

7
আমি মানককরণের জন্য এটি ডেটা ফর্ম্যাটে নিয়ে আসে এবং অক্ষর এনকোডিংগুলি সঠিকভাবে পরিচালনা করার জন্য এক্সএমএলকে পছন্দ করি love তবে কখনও কখনও এক্সএমএল ব্যবহার করে যা করা হয় তা আমি ঘৃণা করি ।
জোছিম সউর

48

সেই সি ++ অন্য কোনও ভাষার চেয়ে অভ্যন্তরীণভাবে ভাল ছিল।

এটি কলেজে আমার কয়েক বছর আগে একটি বন্ধুর কাছ থেকে পেয়েছি। আমি এটি বিব্রতকরভাবে দীর্ঘ সময় ধরে আমার কাছে রেখেছি (আমি এখনই লজ্জা দিচ্ছি)। এটির সাথে 2 বছর বা তার বেশি সময় কাজ করার পরে আমি তার কিছুর জন্য ফাটল দেখতে পাচ্ছিলাম।

কেউ - এবং কিছুই - নিখুঁত নয়, সবসময় উন্নতির জন্য জায়গা থাকে।


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

@ জেপি: আমি আমার পছন্দের শব্দের সাথে খুশি :)
বাইনারি ওয়ারিয়ার

উত্পাদনশীলতা ব্যবসায়িক অ্যাপ্লিকেশনগুলির বিশ্বে আরও গুরুত্বপূর্ণ। অবশ্যই, কিছু কুলুঙ্গি রয়েছে যা সি ++ প্রয়োজনীয় এবং একমাত্র বিকল্প।
শো

7
আমি সবসময় ধরে নিয়েছি যে সি ++ সরাসরি এএনএসআই সি এর চেয়েও খারাপ, কারণ আমি সি ++ প্রোগ্রামারদের যে ধরণের সমস্যার মুখোমুখি হতে দেখেছি তা সি প্রোগ্রামারদের getুকতে দেখেছি তার চেয়ে অনেক জটিল।
নোসরেডনা

1
প্রকৃতপক্ষে, যে ভাষাটি অন্য সকলের চেয়ে ভাল সেগুলি হ'ল সাধারণ লিস্প। যদিও সি ++ খারাপ নয়।
ডেভিড থর্নলি

47

আমি বিশ্বাস করি যে প্রোগ্রামগুলি তৈরি করা ক্লাসে যেমন শেখানো হয়েছিল ঠিক তেমনই হবে ... আপনি একদল লোকের সাথে বসবেন, কোনও সমস্যার মুখোমুখি হন, সমাধান নিয়ে আসেন ইত্যাদি। পরিবর্তে, আসল বিশ্ব "এখানে আমার সমস্যা, আমার এটি সমাধান হওয়া দরকার, যান "এবং দশ মিনিট পরে আপনি অন্যটি পান, আপনাকে সমাধানের দক্ষতার সাথে পরিকল্পনা করার কোনও সত্যিকার সময় না রেখে।


24
আমার মনে হয় এটাকে জীবন বলা হয়।
রবিন ডে

9
হুমম..এই সময় আপনি সেই কোম্পানিকে জামিন দিবেন। ..
jpinto3912

8
@ jpinto3912: না। কারণ পরবর্তী সংস্থাটিও জীবনের একটি অংশ হয়ে উঠবে (পূর্ববর্তী মন্তব্য দেখুন)।
ট্রেব

42

আমি ভেবেছিলাম মূলধারার ডিজাইনের ধরণগুলি দুর্দান্ত ছিল, যখন সেগুলি কোনও সিএস শ্রেণিতে প্রবর্তিত হয়েছিল। আমি এর আগে আমি প্রায় 8 বছর শখ হিসাবে প্রোগ্রাম করেছিলাম এবং ভাল বিমূর্ততা কীভাবে তৈরি করা যায় তার সম্পর্কে আমার সত্যিই দৃ understanding় বোধ ছিল না।

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

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


"অনেকগুলি নিদর্শনগুলি কেবল বয়লারপ্লেট বা অতিরিক্ত জটিলতা ছিল, কারণ ভাষাটি যথেষ্ট পরিমাণে প্রকাশযোগ্য ছিল না" এক্সপ্রেশনিটিজ হ'ল সহজ ভাষায় বয়লারপ্লিট কোড hard
অজানা

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

38

প্রথম কয়েক বছর যাবত আমি প্রোগ্রামিং করছিলাম আমি 1 কেবিট প্রযুক্তিগতভাবে 1024 বাইট, 1000 নয় এটি ধরতে পারি নি data থাকা.


114
হার্ড ড্রাইভ প্রস্তুতকারকরা এখনও
মাইকেল মায়ার্স

10
@ মাইয়ার্স আমার মনে হয় আপনি হার্ড ড্রাইভের বিপণনকারীকে ঠিক বলেছেন? নাকি ড্রাইভগুলি আসলে এর মতো নির্মিত?
ইনস্ট্যান্টসপ

16
আরে, কবি ঘৃণা বন্ধ কর। মেবি এবং কিবি কমপক্ষে আনবম্বিগুবস।
bzlm

21
কিলো মানে 1000, মেগা মানে 1000000, গিগা 1000000000। এটি র‌্যাম এবং ওএস নির্মাতারা ভুল পেয়েছে, ড্রাইভ নির্মাতারা নয়।
মার্ক র্যানসম

39
কেউ এটা করতে যাচ্ছে না? সিরিয়াসলি? ঠিক আছে, আমি এটি করব ... xkcd.com/394
এরিক ফোর্বস

36

এই অবস্থাটি চেক করে:

if (condition1 && condition2 && condition3)

একটি অনির্দিষ্ট ক্রমে সঞ্চালিত হয় ...


15
কোন ভাষায়? সি / সি ++, জাভা এবং পাইথনের মতো ভাষা গ্যারান্টি দেয় যে শর্তগুলি বাম থেকে ডানে মূল্যায়ন করা হয় এবং মূল্যায়নটি প্রথম শর্তে থামিয়ে দেয় যা মিথ্যা প্রত্যাবর্তন করে। এটি ল্যাঙ্গেজ অনুমানের অংশ। আমি ধরে নিয়েছি যে বেশিরভাগ অন্যান্য ভাষা একই গ্যারান্টি দেয়।
ক্লিন্ট মিলার

44
@ ক্লিন্ট: হ্যাঁ, সুতরাং "যা ভুল হিসাবে প্রমাণিত হয়েছে"।
bzlm

হ্যাঁ, এটি দুর্দান্ত। এটি কব্জি স্টাফকে এমন করে তোলে (মাইলিস্ট! = নাল & অ্যান্ড মাইলিস্ট। অ্যাকাউন্ট> = 0) stuff স্টাফ করুন (); easier অনেক সহজ
জ্যাক

4
প্রকৃতপক্ষে, এটি ভাষার উপর নির্ভর করে এবং & সমস্ত শর্ত (শর্টকাট নয়) মূল্যায়ন করবে। আমি দেখা করেছি অনেক মানুষ ব্যবহার করুন এবং (&) AndAlso পরিবর্তে ভিবি (&&) এ
লুকাস

2
। । । আসলে এটি VB.net এও ক্র্যাশ হয়ে যাবে যদি না আপনি AndAlso re Lucas এর মন্তব্য ব্যবহার করেন
বাইনারি

35

আমার প্রোগ্রামিংটি যদি আমি একা সম্পাদন করি তবে দ্রুত এবং উন্নত হবে।


তবে এটি পেয়ার-প্রোগ্রামিংয়ের মতো কুৎসিত হতে পারে না :-) সম্ভবত আপনার কোড ব্যতীত
ডিম

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