একক প্রোগ্রামারটির জন্য সফটওয়্যার বিকাশে সেরা / সুপরিচিত অনুশীলনের নূন্যতম উপসেটটি কী? [বন্ধ]


16

আমি দীর্ঘদিন ধরে আমার কাজের একাকী প্রোগ্রামার হয়েছি। সাধারণত আমি সম্পর্কে নিবন্ধ এবং পোস্ট পড়েছি

  • সংস্করণ নিয়ন্ত্রণ সিস্টেম
  • অবিচ্ছিন্ন একীকরণ / বিতরণ
  • বিকাশের পদ্ধতিগুলি: স্ক্রাম, জলপ্রপাত, ভি-মডেল, এগিল, এক্সপি ইত্যাদি
  • সফ্টওয়্যার প্রকল্প পরিচালনা

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

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

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


আপনি বন্যে কতগুলি রিলিজ পেয়েছেন যার জন্য আপনাকে বাগ ফিক্সগুলি করতে হবে?

উত্তর:


17

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

তবে, আমি যদি আপনার অবস্থানে থাকি তবে আমি নিম্নলিখিতগুলি দৃ strongly়ভাবে প্রয়োগ করব:

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

চতুর এবং প্রকল্প পরিচালনার জন্য +2 তবে পরীক্ষামূলক বৈশিষ্ট্যগুলির জন্য আমি সাধারণত একটি ভার্চুয়াল-চিত্র তৈরি করি (যা শাখা প্রশাখার সমতুল্য হবে) এবং অবশেষে আমার পরিবেশের অন্য একটি উদাহরণ খুলি। আপনার উত্তরের জন্য ধন্যবাদ।
ব্যবহারকারী 869097

16

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

মূলত এটি আপনাকে বোকা বিষ্ঠা থেকে বাঁচায় আপনি যখন কাজে ঝুলতে থাকবেন তখন।


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

2
প্লাস 1 কারণ এটি আমার শিকারী মস্তিষ্ককে এতবার বাঁচিয়েছে।
নিকোলাস স্মিথ

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

1
আপনি দরকারী চেক-ইন মন্তব্যগুলি লিখেছেন বলে ধরে নেওয়া, এটি আপনাকে সময় মতো ফিরে যাওয়ার দুর্দান্ত উপায় দেয় "এই জাঙ্কটির গাদা লিখেছিলাম তখন আমি কী ভাবছিলাম?"
নেড

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

6

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

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


2

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


2

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

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

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