السلا م عليكم
عندي فكرة اريد طرحها وهي عمل فتح صفحة لعمل لغة برمجة بلغة JAVA صح ان الموضوع صعب
لكن نحاول لو ما يخلص الا بعد عشر سنوات المهم الأجيال القادمة يستفيدوا منها و تكون open source
ارجوا عرض الأراء على الموضوع
ارجوا ان تكون الردور غير مخدلة
السلا م عليكم
عندي فكرة اريد طرحها وهي عمل فتح صفحة لعمل لغة برمجة بلغة JAVA صح ان الموضوع صعب
لكن نحاول لو ما يخلص الا بعد عشر سنوات المهم الأجيال القادمة يستفيدوا منها و تكون open source
ارجوا عرض الأراء على الموضوع
ارجوا ان تكون الردور غير مخدلة
اخي لعمل لغه برمجة جديده لا تحتاج لعمل صفحه وانما تحتاج لفريق عمل كبير من المبرمجيين والمطوريين ذوي الخبرة وطبعا لايحتاج الامر
الى الاتصال عبر الانترنت وانما الجلوس معا والعمل كافريق يتم توزيع العمل بشكل مناسب وادارته كذلك من قبل متخصصين في ادارة المشاريع.
كذلك تحتاج الى دعم مادي كبير لتفريغ فريق العمل.......
هذا ليس تثبيط لكن صدقني الامر ليس بالسهل......
زورو موقعنا
ما تسأل عنه هو علم المترجمات و اللغات Compilers و هذا علم كبير جدا و يحتاج الى الكثير من الخبرة
تنقسم الCompiler الى مجموعة اقسام اساسية
Inpute Routine
Lexical Analyzer
Syntax Analyzer
Code Generator
Code Optimizer
Input Routine
و هو الجزء المسئول عن قراءة الحروف و الرموز من ملفات اللغة و اعطائها الى الLexical Analyzer و يكون هذا الجزء معتمدا على نوع الالة و الCharacter Encoding و غيرها.
Lexical Anaylzer
و هو المسئول عن التعرف على الكلمات داخل ال stream القادم من الinput routine بهدف تحويل الكود الى مجموعة من الTokens كل منها يمثل جزء مفهوم من اللغة مثل IF و Then و Else فكل وظيفته هي التعرف على الكلمات الاساسية في اللغة و كذلك التعرف على المتغيرات (بغض النظر اذا كان تم تعرفها ام لا) و ايضا التعرف على الثوابت و الارقام و غيرها
Syntax Analyzer
و هو المسئول عن تجميع الTokens من الLexical Analyzer و تحويلها الى جمل و تحديد اذا كانت الجمل صحيحة ام لا على اساس مجموعة من ال Production Rules التي يعرفها مسبقا و يحدد اذا كانت الجمل صحيحة و يحدد الاخطاء و اماكنها
Semantic Analyzer
و هذا الModule هو جزء من الSyntax Anaylzer و هو ينظر الى معنى الجمل اي انه مثلا يستطيع ان يتعرف على الاخطاء في الLogic الخاص بالبرنامج مثل تعريف متغير و عدم استخدامه او استخدام متغير بدون تعريف او استخدام متغير بدون قيمة ابتدائية
و يكون الOutput من الSyntax Analyzer ما يسمى Quadruples و هو مايشبة الى حد ما الAssembly و ان كان مجرد لغة وسيطة يستطيع ان يفهمها ال Code generator و يترجمها بسرعة الى لغة الالة
Code Generator
و هو الجزء الثاني الذي يعتمد على تصميم الالة فهو الذي يتولى تحويل الQuadruples الى Assembly او Machine Code
Code Optimizer
و هو الذي يتولى مسئولية تطوير الكود و ازالة التكرار الذي يؤدي الى بطء التنفيذ و يعتبر اكثر الModules في الCompilers تعقيدا و هو الذي يفرق Compiler عن اخر و يجعل Compiler رخيص و اخر غالي
Sr. Software Development Engineer
Hulu, LLC
My Blogs
هذا الموضوع مغلق.