আমি ফ্লেক্সেলিন্ট (পিসি-লিন্টের ইউনিক্স সংস্করণ) ব্যবহার করার চেষ্টা করেছি এবং কিছুটা মিশ্র ফলাফল পেয়েছি। এটি সম্ভবত কারণ আমি খুব বড় এবং নোটি কোড বেসে কাজ করছি। আমি অবহেলিত হিসাবে প্রতিবেদন করা প্রতিটি ফাইল সাবধানতার সাথে পরীক্ষা করার পরামর্শ দিচ্ছি।
প্রধান উদ্বেগ মিথ্যা ইতিবাচক। একই শিরোনামের একাধিকগুলি অবিবাহিত শিরোনাম হিসাবে রিপোর্ট করা হয়। এটি খারাপ কারণ ফ্লেক্সেলিন্ট আপনাকে শিরোনামটি কোন লাইনে অন্তর্ভুক্ত করা হয়েছে বা এটি আগে কোথায় অন্তর্ভুক্ত ছিল তা আপনাকে জানায় না।
স্বয়ংক্রিয় সরঞ্জামগুলি এটিকে ভুল করতে পারে তার মধ্যে একটি:
এএইচপ্পিতে:
class A {
// ...
};
বিএইচপি তে:
#include "A.hpp
class B {
public:
A foo;
};
সি সি পি পি তে:
#include "C.hpp"
#include "B.hpp" // <-- Unneeded, but lint reports it as needed
#include "A.hpp" // <-- Needed, but lint reports it as unneeded
আপনি যদি ফ্লেক্সেলিন্টের বার্তাগুলি অন্ধভাবে অনুসরণ করেন তবে আপনি আপনার # অন্তর্ভুক্তি নির্ভরতাগুলি আপ করবেন। আরও প্যাথলজিকাল কেস রয়েছে তবে মূলত আপনাকে সর্বোত্তম ফলাফলের জন্য শিরোনামগুলি নিজেই পরীক্ষা করতে হবে।
আমি ভিতরে থেকে ব্লগ গেমস থেকে শারীরিক কাঠামো এবং সি ++ এই নিবন্ধটি সুপারিশ করছি । তারা # অন্তর্ভুক্ত জগাখিচির পরিষ্কার করার জন্য একটি বিস্তৃত পদ্ধতির প্রস্তাব দেয়:
নির্দেশিকা
এখানে লাকোসের বইয়ের একটি পাতিত গাইডলাইন সেট সেট রয়েছে যা ফাইলগুলির মধ্যে শারীরিক নির্ভরতার সংখ্যা হ্রাস করে। আমি বছরের পর বছর ধরে এগুলি ব্যবহার করে আসছি এবং ফলাফলগুলি নিয়ে আমি সর্বদা খুশি।
- প্রতিটি সিপিপি ফাইলের নিজস্ব শিরোনাম ফাইলটি প্রথমে অন্তর্ভুক্ত থাকে। [স্নিপ]
- একটি শিরোনাম ফাইল অবশ্যই পার্স করার জন্য প্রয়োজনীয় সমস্ত হেডার ফাইল অন্তর্ভুক্ত করে। [স্নিপ]
- একটি শিরোনাম ফাইলে পার্স করার জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক হেডার ফাইল থাকতে হবে files [স্নিপ]