আপনার জায়গা কোডে রাখার জন্য ভাল কৌশলগুলি কী কী?


21

আমি আপনার কোডের একক পয়েন্ট মনে রাখতে বুকমার্ক ব্যবহার করে বুঝতে পারি using তবে, তারা তদন্ত করছে এমন কোডের প্রবাহের কীভাবে কোনও নজর রাখে ? উদাহরণস্বরূপ: একাধিক বুকমার্ক এবং সেগুলি তৈরি করার ক্রম।

উদাহরণ:

  1. বাগ রিপোর্ট: "সংঘর্ষগুলি দেয়ালের কোণে কাজ করছে না"

    1. বাগের পুনরুত্পাদন এটিকে নির্দিষ্ট বহুভুজের সংঘর্ষে না নেমে রাখে।
    2. সংঘর্ষের কোডটি একটি অনুপলব্ধ দেব লিখেছিলেন। সুতরাং তদন্তে কিছু যায়:

একটি প্রবাহের স্কিমা

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

কোডটিতে কারও নিজের অবস্থান ট্র্যাক করার উপায় সরবরাহ করার জন্য কৌশল বা সরঞ্জামগুলির সংস্থান থাকা কার্যকর হবে।


সম্পাদনা : উপরের উদাহরণটি একটি সম্ভাব্য চিত্র হিসাবে বোঝানো হয়েছে, আসল সমস্যা হিসাবে নয় যার উত্তর দেওয়া দরকার।

এই প্রশ্নের বাক্যটির আরেকটি উপায় হ'ল:

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

উত্তর:


14

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


এটি সমস্যার জন্য একটি বাস্তব এবং প্রস্তুত সমাধান হিসাবে এটি +1। (এটি সামান্য কিছুটা দুর্দান্তও!)
জেস টেলফোর্ড

কয়েক বছর আগে আমি আমার মাথায় যে জিনিসগুলির উদ্ভাবন করেছি তার মধ্যে একটি মাত্র এটি ইতিমধ্যে বিদ্যমান রয়েছে তা খুঁজে পেতে :( +1
ফ্রেস্নেল

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

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

12

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


হ্যাঁ, হ্যাঁ. এখন পর্যন্ত সেরা উত্তর।
প্যাট্রিক হিউজেস

10

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


1
খুব ব্যবহারিক। আমি এইভাবে উত্স নিয়ন্ত্রণ ব্যবহার করার কথা ভাবি নি।
জেস টেলফোর্ড

কোন সম্পাদক এবং ডিবাগার?
জন গেইনস জুনিয়র

ভিম এবং গ্রিন হিলের মাল্টি ডিবাগার।
কার্ল বিলেফেল্ড

ভিজ্যুয়াল স্টুডিওতে এটি ফিরে যেতে CTRL + - এবং এগিয়ে যেতে সিটিআরএল + =।
VitalyB

গ্রহণ একটি পৃথক প্যানেলে কার্সারের অধীনে বর্তমান প্রতীকটির সংজ্ঞাটি প্রদর্শন করতে পারে।

3

আমি একাধিক উপায়ে ট্র্যাক রাখি:

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

1

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


এই পদ্ধতির সমস্যাটি হ'ল আপনি কীভাবে একাধিক চিন্তা / গবেষণার শাখাগুলি ট্র্যাক করবেন?
জেস টেলফোর্ড

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

1

একটি বাস্তব বিকাশকারী সরঞ্জাম / আইডিই পান, যা আপনাকে অভিনব করে তোলে। ষষ্ঠ, এ গিয়ে Emacs, অন্ধকার বা যাই হোক না কেন (পছন্দ arguements যার উপর উত্তম মত বৃহৎ, কিন্তু অন্য সমস্যা thats), এবং এটি ব্যবহার শিখতে সঠিকভাবে । অনেকের মতো না, সিনট্যাক্স হাইলাইটিংয়ের সাথে নোটপ্যাডের মতো ব্যবহার করুন। হটকি ব্যবহার করতে শিখুন এবং সাধারণ ক্রিয়াকলাপের জন্য মাউসের উপর নির্ভর করবেন না (এটি খুব ধীর)। একটি বড় পর্দা (1920x1200 সর্বনিম্ন) বেনিফিশিয়াল।

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

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


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

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

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

@ জেস: চিহ্নগুলি স্থানীয়ভাবে বাফার করা হয় না। বড় বড় অক্ষর ব্যবহার করে চিহ্নিত চিহ্নগুলি বিশ্বব্যাপী।
ডেভ কার্বি

@ ডেভকির্বি অসাধারণ - আমি ভিম সম্পর্কে নতুন জিনিস শিখতে পছন্দ করি: ডি
জেস টেলফোর্ড

1

ভিজ্যুয়াল স্টুডিওর সাথে, কোনও ডিবাগ সেশনে, আপনি কোড কল প্রবাহের উপর নজর রাখতে 'কল স্ট্যাক' উইন্ডোটি (আপনি এটিতে Debug / Windows / Call Stackবা শর্টকাটের সাহায্যে সক্ষম করতে পারেন) ব্যবহার করতে পারেন Ctrl+Alt+c


1
বেশিরভাগ ডিবাগারদের মতোই। আপনার কোড বেসের বাইরের গবেষণা সহ ম্যানুয়ালি আপনার কোডটি ব্রাউজ করার সময় প্রশ্নটি আরও বেশি।
জেস টেলফোর্ড

1

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


0

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

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

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