محركات بحث الأكواد البرمجية
كتبت بواسطة ChArLoK_16 على 2009/07/01
يحتاج الكثير من المطورين والمبرمجين إلى أكواد مصدرية كمثال.
أو أن يعلمو كيف يفكر ويبرمج ويكتب المطورون الآخرون الذين سبقوهوم بكتابة برامج تقوم بوظيفة شبيهة.
وهنا تأتي أهمية محركات بحث الأكواد البرمجية حيث تمكن المطور من الحصول على الكود بوسائل أكثر دقةً من وسائل البحث العادية.
الفرق الأساسي بين محركات البحث العادية ومحركات الأكواد: أن محرك بحث الكود يفهم اللغة المكتوب بها الكود كما يفهم الفرق بين التعليق والكود والكثير من الميزات التي تجعله أفضل عند البحث عن أكواد.
سأحاول هنا أن أعرض لأشهر أربعة محركات بحث أكواد مصدرية مفتوحة وأقارن بينها وأعرض ميزات كلٍ منها.

محرك بحث koders يعد من أفضل محركات البحث عن الأكواد المصدرية المفتوحة:
يمكنك من خلاله البحث عن عدة لغات: C, C++, C#, JAVA, Python, Ruby, Perl الخ… كذلك في ترخيصات متعددة مثل GPL, LGPL, BSD الخ..
يبحث المحرك حتى الآن في حوالي بليونين (مليارين) ونصف من الأسطر البرمجية المفتوحة (حتى كتابة هذه الأسطر الرقم في الصفحة الرئيسية 2,449,889,519)
عندما تتعامل معه ستعرف مدا سهولته وجودة تنسيق صفحته مع سرد لملفات المشروع الذي وجد فيه ما تطلب والربط بينها بشكل جيد والتنقل بينها بسهولة.
ويمكن بالإضافة لما سبق اختيار اسم ملف البحث أو الـclasses والعديد من الخيارات التي تسهل البحث
من المزايا الجميلة أنك أثناء تصفح الكود يمكنك البحث عن أي مرجع في اللغة مثلاً في جملة ” System.out.println(var) ” في لغة جافا يمكنك الضغط على System أو out أو println أو var ليبحث المحرك عنها
والجميل فيه أنه يمكنك تحميل إضافة plugin لـEclipse أو لـVisual Studio من أجل البحث أثناء الكتابة وهي ميزة جيدة (انظر هنا).
وبالطبع يمكنك إضافة محرك البحث إلى قائمة محركات البحث في Firefox.
تم إيجاد العديد من النتائج باللغة العربية على هذا المحرك وبشكل جيد.

خدمة Code Search المقدمة من Google هي خدمة البحث عن الأكواد المصدرية المفتوحة
ويمكنك كذلك كما في koders البحث عن كود في لغة معينة أو ترخيص معين كذلك ويتم ذلك عن طريق google dorks
مثلاً lang:c printf أو license:GPL وهكذا
يمكنك محرك البحث كذلك من رؤية مسار الملف داخل ملفات المشروع مجتمة
المميز في هذا المحرك أنه محجوب في سوريا من قبل Google
“We’re sorry, but Code Search is not available in your country.”
شأنه في ذلك شأن أكثر مشاريع Google المبرمجة من قبلها أو التي ترعاها.
تم كما في سابقه إيجاد نتائج باللغة العربية وبشكلٍ جيد.

محرك بحث krugle أيضاً هو محرك بحث عن أكواد مصدرية مفتوحة قوي.
كما في المحركين السابقين يتمكن krugle من البحث عن لغة محددة في مكان محدد من الكود وفي مشروع محدد إن أردت.
عندما جربت krugle قام بالعديد من الأخطاء ولم يبحث بشكل جيد (يبدو أن بعض أجزائه مبرمجة بالـPerl كما اتضح من بعض رسائل الأخطاء) كما أنه يعاني من مشكلة البطئ في التنفيذ ولا أنصح به مستخدمي الإنترنت بالسرعة المنخفضة.
حاولت البحث عن نتائج باللغة العربية لكنني لم أفلح.

محرك بحث Codase محرك تجريبي جديد يبحث في 250 مليون سطر برمجي حتى كتابة هذه الأسطر
المحرك يبحث حتى الآن في أكواد ثلاث لغات برمجية فقط C, C++, JAVA وإضافة باقي اللغات ضمن الخطة ويمكن كذلك البحث في ثلاث منصات مختلفة Linux, Windows, JAVA كما أنه يقوم بعرض المشاريع التي وجدت فيها الأكواد واللغات كذلك
يمكن البحث في أي مكان في الكود كما في السابق (class, comment الخ…)
المحرك كما هو واضح لا يرقى لينافس المحركات السباقة (حتى الآن على الأقل).
لم أتمكن من إيجاد تنائج باللغة العربية.
بقي هناك برنامج gonzui وهو برنامج ياباني كان يهدف إلى جمع مبرمجي المصادر المفتوحة وتقريب البحث إليهم.
البرنامج متوقف منذ عام 2005.
تخبرنا صفحة مواقع تستخدم gonzui أن هناك موقعين يستخدمانه لكن بمحاولة الدخول إليهما تبين أن أحدهما معطل والآخر استبدل الخدمة بخدمة البحث عن الأكواد من Google
طالما أن المشروع متوقف فلاحاجة بنا إلى التعرض بذكره ولا إلى وضع صور عنه.














Ahmad . M . G قال
إذا فليست غوغل الوحيدة في هذا المجال
الأمجد توفيق قال
لكن غوغل لا تسمح للأجهزة التي تظهر أنها من سورية باستخدام محرك بحثها للأكواد. لذلك أظن أن على الجميع أن يتنبه إلى ضرورة محاولة إيجاد استقلال في المجال التقني، حتى من قبل البرمجيات المفتوحة المصدر والحرة، لأنها، حتى هي، تخضع للمنظومة الكاملة التي تستهدفنا.
ChArLoK_16 قال
عزيز أمجد،
المشكلة أن غووغل أصبحت الآن تظهر -في نظري على الأقل- كأنها خدعة فهي تدعم المصادر المفتوحة مع ذلك تحاول (ابتلاع) العالم الافتراضي.
للأسف وهي من كبار الشركات التي تطبق السياسة الأمريكية بكل صرامة وليت الأمر توقف عند حد محرك بحث الأكواد المصدرية بل وفي صفحات المشاريع التي تستضيفها (وإن لم تكن تدعمها) وفي المواقع التي تستضيفها كذلك.
شكراً على مرورك وتعليقك