06-15-2012، 01:44 PM
درود
افتخار میکنیم در فروم پارسی کدرز در بیشتر زبان های برنامه نویسی خودم و بچه های انجمن فعالیت داشتیم در این تایپک دارم قصد دارم با پروژه gambass برنامه نویسی در لینوکس رو پیاده سازی کنم.
عکسی از نرم افزار :
خوب این اطلاعات از همکاران گرفتم که زودتر بریم سر اصل ماجرا
گامباس چیست ؟
انتخاب سكو و ابزار برنامهنويسي تحت لينوكس، يكي از مشكلترين مراحل بسياري از پروژههاي نرمافزاري محسوب ميشود. تفاوتهاي ذاتي محيط سيستمعامل لينوكس با ويندوز، يكي از اساسيترين دلايل اين موضوع است. در واقع مستقل بودن سيستم رابط گرافيكي كاربر از سيستمعامل، موجب شده است كه نرمافزارهاي كاربردي تحت لينوكس را بتوان به سه گروه تفكيك كرد. گروه نخست شامل نرمافزارهايي است كه از ابزارهايي براي توليد آنها استفاده شده است كه از سيستم windowing مستقل خود استفاده ميكنند. مانند زبان و محيط برنامهنويسي جاوا، kylix ،TCL و غيره.
Gambas نام محيط برنامهنويسي مشابه VB اما در محيط لينوكس است. اين نرمافزار را فردي از علاقهمندان به برنامهنويسي اهل كشور فرانسه، با تلاش فراوان و در طول سه سال كار مستمر توسعه داده است.
اما بسياري از محيطهاي برنامهنويسي ديگري كه براي توسعه نرمافزار در لينوكس طراحي شدهاند، به سيستمهاي گرافيكي خارجي تكيه ميكنند و بر همين اساس بهدليل رواج و فراواني كاربرد محيطهاي گرافيكي و ميزكارهايي مانند kde يا gnome، ميتوان آنرا به دو زير گروه ديگر تقسيم كرد.
گروهي از برنامههايي كه از سيستم گرافيكي و مديريت پنجره gnome استفاده ميكنند و گروه ديگري كه بر توابع و كتابخانههايي موجود در محيط kde تكيه دارند (به همين دليل نرمافزارهايي كه براي اجرا تحت kde طراحي شدهاند، بهطور معمول حروف k را در ابتداي نام خود يدك ميكشند.
مانند kppp يا kHTML و غيره. به همين ترتيب، نرمافزارهايي كه براي كار در محيط gnome توسعه داده شدهاند، از حرف g در ابتداي نام خود استفاده ميكنند).
هر يك از اين دو ميزكار معروف لينوكس داراي ابزارهاي گوناگوني براي طراحي و توليد نرمافزار هستند. به عنوان مثال، برنامهنويسان زبان برنامهنويسي مانند C يا ++C ميتوانند بر حسب مورد و سليقه خود از كتابخانههاي نرمافزاري گوناگوني براي توليد نرمافزارهاي تحت لينوكس استفاده كنند. مثلاً مجموعه توابع كتابخانهاي (Qt (toolkit (براي توليد نرمافزارهايي كاربردي KDE) يا +GTK (براي برنامهنويسي در محيط Gnome)وجود دارند.
واقعيت آن است كه بايد اعتراف كرد كه موضوع برنامهنويسي تحت لينوكس صرف نظر از آنكه با چه ابزاري و در چه سكويي كار شود، با برنامهنويسي در محيط ويندوز تفاوت بسيار دارد. شايد اغراق نباشد اگر بگوييم كه برنامهنويسي لينوكس براي بسياري از كاربران اين سيستمعامل، همچون كابوس شبانهاي است كه سالها خواب راحت را از آنان سلب كرده است!
در اين مورد استثنايي نيز وجود دارد كه ميتواند پاياني بر كابوس برنامهنويسي تحت لينوكس باشد. در اختيار داشتن محيط برنامهنويسيي مانند ويژوال بيسيك در ويندوز، براي بسياري از كاربران لينوكس آرزويي دستنيافتني جلوه ميكرد. اما پروژهاي كه از چند سال قبل آغاز شده است، بهتازگي به مرحلهاي از بلوغ رسيده كه ميتوان به آن اميدهاي زيادي داشت. Gambas نام محيط برنامهنويسي مشابه VB اما در محيط لينوكس است (بر اساس سنت نامعلومي، نرمافزارهاي دنياي متنباز و سكوي لينوكس از اسامي و لوگوهايي بهشكل حيوانات استفاده ميكنند. Gambas هم از اين غافله عقب نمانده است و نام خود را از گونهاي از ميگو اقتباس كرده است).
نرمافزار گامباس را فردي از علاقهمندان به برنامهنويسي اهل كشور فرانسه، با تلاش فراوان و در طول سه سال كار مستمر توسعه داده است. اواخر سال 2004 اين نرمافزار به مرحلهاي رسيده بود كه خالق آن يعني، Benoit Minisini نسخه شماره 1.10 را معرفي كرد.
زماني كه اين نرمافزار را براي نخستين بار اجرا ميكنيد، باور نميكنيد كه داريد در محيط لينوكس يا kde كار ميكنيد. اما اين موضوع كاملاً حقيقت دارد و گامباس با به عاريت گرفتن تمامي جنبههاي مفيد VB (بنا بر ادعاي نويسنده آن)، پنجرهاي را پيش روي شما ظاهر ميسازد كه نمونه آن را در شكل 1 مشاهده ميكنيد. همانطور كه در اين تصوير ديده ميشود، كاربر بايد در اين مرحله، مشخص كند كه قصد كار كردن بر روي پروژه جديدي دارد و يا آنكه با يكي از پروژههاي قبلي ميخواهد ادامه دهد.
پس از اين مراحل، مشاهده خواهيد كرد، كه نرمافزار گامباس با الهام از VB، محيط توسعهاي فراهم كرده است كه شباهت زيادي به آن دارد. به عنوان مثال، در سمت چپ نمايشگر، پنجرهاي بهنام project explorer بهسبك VB ديده ميشود كه براي برنامهنويسان ابزار بسيار مفيدي تلقي ميشود. پنجره بالايي سمت راست، شامل مجموعهاي از المانهايي كه برنامهنويس ميتواند آنها را روي فرمهاي برنامههاي تحت توسعه خود، قرار دهد، وجود دارند. در واقع اين اشياي گرافيكي يا وجيتها (Widget) همان كنترلهاي برنامهنويسي محيط ويندوز هستند.
در اينجا هم، كاربر ميتواند خواص اشياي انتخابي خود را در سمت راست اين پنل ببيند. به اين ترتيب براي شروع برنامهنويسي با كامباس، كافي خواهد بود تا يكي از اين ويجتهاي گرافيكي را بر روي فرمهاي برنامه خود قرار دهيد (گامباس هم مانند VB به پنجرههاي برنامههاي تحت توسعه، فرم (form) نام ميدهد.
فرمها
براي ايجاد كردن فرمها و اعمال تغييرات بر روي آنها، در گامباس ابزار ويژهاي بهنامForm designer پيشبيني شده است. كاربران گامباس ميتوانند از اين ابزار همانند يك ابزار نقاشي، براي توليد و ويرايش فرمها كمك بگيرند. در اين ابزار نيز همانند محيط VB برنامهنويس بايد خواص اشيايي كه قصد استفاده از آنها را دارد، مشخص كند (اينكار در درون پنجره properties انجام ميشود). پنجرهاي بهنام component explorer به كاربر كمك ميكند كه خواص اشياي گرافيكي را بهتر شناسايي كند.
گامباس به درجهاي از پيشرفت رسيده است كه داراي يك ويرايشگر كامل منو نيز (Menu editor) هست.
ويرايشگر كد
اگرچه ممكن است كه ويرايشگر كد در گامباس چندان ظريف و زيبا جلوه نكند، اما داراي امكانات كاملي است كه نظر هر برنامهنويس حرفهاي را بهخود جلب ميكند. به عنوان مثال، در صورتيكه بر روي پنچره ويرايشگر كد، كليك راست كنيد، داخل فهرست پايينافتادني كه گشوده ميشود، ليست مفصل و كاملي از تمامي دستورات قابل استفاده، فهرست ميشوند. در اين ويرايشگر كد، امكاناتي از قبيل قابليت نمايش رنگي كليدواژهها و ديگر موارد نوشتاري بهصورت (Syntax Highlighting) پيشبيني شده است. علاوه بر اين موارد، كاربران گامباس ميتوانند براي عيبيابي برنامههاي خود، BreakPoint تعريف كنند و متغيرها را جهت ردگيري (trace) انتخاب كنند.
اما اين ويرايشگر پيشرفته گامباس، عليرغم تمام مزايايي كه دارد، يك اشكال و يا بهتر بگوييم، يك كمبود مهم نيز دارد. گامباس هنوز داراي قابليتي نيست كه كاربران آن بتوانند نرمافزارهاي ويرايشگر دلخواه خود را در محيط گامباس بهكار بگيرند. بهعنوان مثال، بسياري از برنامهنويسان لينوكس تمايل دارند كه از ويرايشگرهايي مانند Emacs يا vi استفاده كنند.
البته از آنجاييكه تمام فرمها و كلاسهاي برنامههاي توليد شده با گامباس در قالب فايلهاي متني ذخيره ميشوند، كاربران گامباس همچنان خواهند توانست، در خارج از محيط اين نرمافزار، از ويرايشگرهاي دلخواه خود براي اديت برنامهها استفاده كنند.
گامباس داراي يك كامپايلر سر خود نيز هست كه در زمان كامپايل، برنامهها را در صورتي كه نقصي در آنها نيابد، درون يك فايل اجرايي بستهبندي ميكند. يادآوري ميكنيم كه براي آنكه بتوانيد پروژههاي كامپايل شده گامباس را اجرا كنيد، بايد بر روي سيستم خود قبلا ً Qt را نصب كرده باشيد.
خلاصه
پروژه گامباس عليرغم آنكه هنوز بسيار جوان است، نشان داده كه پروژه بسيار قابلتوجهي است. در تمام مراحل بررسي اين ابزار، گامباس هيچگاه دچار مشكل نشد و همواره از خود چهره يك نرمافزار پايدار را بهنمايش گذاشت. علاوه بر آن برنامههاي خروجي گامباس هم بسيار سريع اجرا ميشدند و از حجم پاييني برخوردار بودند.
برنامهنويس گامباس در يكي از سايتهاي پشتيباني اين نرمافزار، به كاربران اطمينان داده است كه هيچ رويدادي در آينده نميتواند بهسادگي برنامههاي وي را براي توسعه گامباس تغيير دهد. Minisini قول داده است كه نسخههاي آتي اين نرمافزار داراي امكانات ديباگ پيشرفتهتري باشد و از ابزارهاي دسترسي به بانكهاي اطلاعاتي نيز پشتيباني نمايد.
خلاصه آنكه صرف نظر از آنكه چقدر ميتوان به يك پروژه يكنفره تكيه كرد (و زمان براي فراگيري تكنيكهايي صرف كرد كه آينده تضمينشدهاي ندارد)، مسلماً گامباس يكي از بهترين ابزارهاي برنامهنويسي تحت لينوكس است كه علاقهمندان و آماتورهاي برنامهنويسي تحت لينوكس ميتوانند گامهاي اوليه را بهكمك اين ابزار بردارند.
افتخار میکنیم در فروم پارسی کدرز در بیشتر زبان های برنامه نویسی خودم و بچه های انجمن فعالیت داشتیم در این تایپک دارم قصد دارم با پروژه gambass برنامه نویسی در لینوکس رو پیاده سازی کنم.
عکسی از نرم افزار :
خوب این اطلاعات از همکاران گرفتم که زودتر بریم سر اصل ماجرا
گامباس چیست ؟
انتخاب سكو و ابزار برنامهنويسي تحت لينوكس، يكي از مشكلترين مراحل بسياري از پروژههاي نرمافزاري محسوب ميشود. تفاوتهاي ذاتي محيط سيستمعامل لينوكس با ويندوز، يكي از اساسيترين دلايل اين موضوع است. در واقع مستقل بودن سيستم رابط گرافيكي كاربر از سيستمعامل، موجب شده است كه نرمافزارهاي كاربردي تحت لينوكس را بتوان به سه گروه تفكيك كرد. گروه نخست شامل نرمافزارهايي است كه از ابزارهايي براي توليد آنها استفاده شده است كه از سيستم windowing مستقل خود استفاده ميكنند. مانند زبان و محيط برنامهنويسي جاوا، kylix ،TCL و غيره.
Gambas نام محيط برنامهنويسي مشابه VB اما در محيط لينوكس است. اين نرمافزار را فردي از علاقهمندان به برنامهنويسي اهل كشور فرانسه، با تلاش فراوان و در طول سه سال كار مستمر توسعه داده است.
اما بسياري از محيطهاي برنامهنويسي ديگري كه براي توسعه نرمافزار در لينوكس طراحي شدهاند، به سيستمهاي گرافيكي خارجي تكيه ميكنند و بر همين اساس بهدليل رواج و فراواني كاربرد محيطهاي گرافيكي و ميزكارهايي مانند kde يا gnome، ميتوان آنرا به دو زير گروه ديگر تقسيم كرد.
گروهي از برنامههايي كه از سيستم گرافيكي و مديريت پنجره gnome استفاده ميكنند و گروه ديگري كه بر توابع و كتابخانههايي موجود در محيط kde تكيه دارند (به همين دليل نرمافزارهايي كه براي اجرا تحت kde طراحي شدهاند، بهطور معمول حروف k را در ابتداي نام خود يدك ميكشند.
مانند kppp يا kHTML و غيره. به همين ترتيب، نرمافزارهايي كه براي كار در محيط gnome توسعه داده شدهاند، از حرف g در ابتداي نام خود استفاده ميكنند).
هر يك از اين دو ميزكار معروف لينوكس داراي ابزارهاي گوناگوني براي طراحي و توليد نرمافزار هستند. به عنوان مثال، برنامهنويسان زبان برنامهنويسي مانند C يا ++C ميتوانند بر حسب مورد و سليقه خود از كتابخانههاي نرمافزاري گوناگوني براي توليد نرمافزارهاي تحت لينوكس استفاده كنند. مثلاً مجموعه توابع كتابخانهاي (Qt (toolkit (براي توليد نرمافزارهايي كاربردي KDE) يا +GTK (براي برنامهنويسي در محيط Gnome)وجود دارند.
واقعيت آن است كه بايد اعتراف كرد كه موضوع برنامهنويسي تحت لينوكس صرف نظر از آنكه با چه ابزاري و در چه سكويي كار شود، با برنامهنويسي در محيط ويندوز تفاوت بسيار دارد. شايد اغراق نباشد اگر بگوييم كه برنامهنويسي لينوكس براي بسياري از كاربران اين سيستمعامل، همچون كابوس شبانهاي است كه سالها خواب راحت را از آنان سلب كرده است!
در اين مورد استثنايي نيز وجود دارد كه ميتواند پاياني بر كابوس برنامهنويسي تحت لينوكس باشد. در اختيار داشتن محيط برنامهنويسيي مانند ويژوال بيسيك در ويندوز، براي بسياري از كاربران لينوكس آرزويي دستنيافتني جلوه ميكرد. اما پروژهاي كه از چند سال قبل آغاز شده است، بهتازگي به مرحلهاي از بلوغ رسيده كه ميتوان به آن اميدهاي زيادي داشت. Gambas نام محيط برنامهنويسي مشابه VB اما در محيط لينوكس است (بر اساس سنت نامعلومي، نرمافزارهاي دنياي متنباز و سكوي لينوكس از اسامي و لوگوهايي بهشكل حيوانات استفاده ميكنند. Gambas هم از اين غافله عقب نمانده است و نام خود را از گونهاي از ميگو اقتباس كرده است).
نرمافزار گامباس را فردي از علاقهمندان به برنامهنويسي اهل كشور فرانسه، با تلاش فراوان و در طول سه سال كار مستمر توسعه داده است. اواخر سال 2004 اين نرمافزار به مرحلهاي رسيده بود كه خالق آن يعني، Benoit Minisini نسخه شماره 1.10 را معرفي كرد.
زماني كه اين نرمافزار را براي نخستين بار اجرا ميكنيد، باور نميكنيد كه داريد در محيط لينوكس يا kde كار ميكنيد. اما اين موضوع كاملاً حقيقت دارد و گامباس با به عاريت گرفتن تمامي جنبههاي مفيد VB (بنا بر ادعاي نويسنده آن)، پنجرهاي را پيش روي شما ظاهر ميسازد كه نمونه آن را در شكل 1 مشاهده ميكنيد. همانطور كه در اين تصوير ديده ميشود، كاربر بايد در اين مرحله، مشخص كند كه قصد كار كردن بر روي پروژه جديدي دارد و يا آنكه با يكي از پروژههاي قبلي ميخواهد ادامه دهد.
پس از اين مراحل، مشاهده خواهيد كرد، كه نرمافزار گامباس با الهام از VB، محيط توسعهاي فراهم كرده است كه شباهت زيادي به آن دارد. به عنوان مثال، در سمت چپ نمايشگر، پنجرهاي بهنام project explorer بهسبك VB ديده ميشود كه براي برنامهنويسان ابزار بسيار مفيدي تلقي ميشود. پنجره بالايي سمت راست، شامل مجموعهاي از المانهايي كه برنامهنويس ميتواند آنها را روي فرمهاي برنامههاي تحت توسعه خود، قرار دهد، وجود دارند. در واقع اين اشياي گرافيكي يا وجيتها (Widget) همان كنترلهاي برنامهنويسي محيط ويندوز هستند.
در اينجا هم، كاربر ميتواند خواص اشياي انتخابي خود را در سمت راست اين پنل ببيند. به اين ترتيب براي شروع برنامهنويسي با كامباس، كافي خواهد بود تا يكي از اين ويجتهاي گرافيكي را بر روي فرمهاي برنامه خود قرار دهيد (گامباس هم مانند VB به پنجرههاي برنامههاي تحت توسعه، فرم (form) نام ميدهد.
فرمها
براي ايجاد كردن فرمها و اعمال تغييرات بر روي آنها، در گامباس ابزار ويژهاي بهنامForm designer پيشبيني شده است. كاربران گامباس ميتوانند از اين ابزار همانند يك ابزار نقاشي، براي توليد و ويرايش فرمها كمك بگيرند. در اين ابزار نيز همانند محيط VB برنامهنويس بايد خواص اشيايي كه قصد استفاده از آنها را دارد، مشخص كند (اينكار در درون پنجره properties انجام ميشود). پنجرهاي بهنام component explorer به كاربر كمك ميكند كه خواص اشياي گرافيكي را بهتر شناسايي كند.
گامباس به درجهاي از پيشرفت رسيده است كه داراي يك ويرايشگر كامل منو نيز (Menu editor) هست.
ويرايشگر كد
اگرچه ممكن است كه ويرايشگر كد در گامباس چندان ظريف و زيبا جلوه نكند، اما داراي امكانات كاملي است كه نظر هر برنامهنويس حرفهاي را بهخود جلب ميكند. به عنوان مثال، در صورتيكه بر روي پنچره ويرايشگر كد، كليك راست كنيد، داخل فهرست پايينافتادني كه گشوده ميشود، ليست مفصل و كاملي از تمامي دستورات قابل استفاده، فهرست ميشوند. در اين ويرايشگر كد، امكاناتي از قبيل قابليت نمايش رنگي كليدواژهها و ديگر موارد نوشتاري بهصورت (Syntax Highlighting) پيشبيني شده است. علاوه بر اين موارد، كاربران گامباس ميتوانند براي عيبيابي برنامههاي خود، BreakPoint تعريف كنند و متغيرها را جهت ردگيري (trace) انتخاب كنند.
اما اين ويرايشگر پيشرفته گامباس، عليرغم تمام مزايايي كه دارد، يك اشكال و يا بهتر بگوييم، يك كمبود مهم نيز دارد. گامباس هنوز داراي قابليتي نيست كه كاربران آن بتوانند نرمافزارهاي ويرايشگر دلخواه خود را در محيط گامباس بهكار بگيرند. بهعنوان مثال، بسياري از برنامهنويسان لينوكس تمايل دارند كه از ويرايشگرهايي مانند Emacs يا vi استفاده كنند.
البته از آنجاييكه تمام فرمها و كلاسهاي برنامههاي توليد شده با گامباس در قالب فايلهاي متني ذخيره ميشوند، كاربران گامباس همچنان خواهند توانست، در خارج از محيط اين نرمافزار، از ويرايشگرهاي دلخواه خود براي اديت برنامهها استفاده كنند.
گامباس داراي يك كامپايلر سر خود نيز هست كه در زمان كامپايل، برنامهها را در صورتي كه نقصي در آنها نيابد، درون يك فايل اجرايي بستهبندي ميكند. يادآوري ميكنيم كه براي آنكه بتوانيد پروژههاي كامپايل شده گامباس را اجرا كنيد، بايد بر روي سيستم خود قبلا ً Qt را نصب كرده باشيد.
خلاصه
پروژه گامباس عليرغم آنكه هنوز بسيار جوان است، نشان داده كه پروژه بسيار قابلتوجهي است. در تمام مراحل بررسي اين ابزار، گامباس هيچگاه دچار مشكل نشد و همواره از خود چهره يك نرمافزار پايدار را بهنمايش گذاشت. علاوه بر آن برنامههاي خروجي گامباس هم بسيار سريع اجرا ميشدند و از حجم پاييني برخوردار بودند.
برنامهنويس گامباس در يكي از سايتهاي پشتيباني اين نرمافزار، به كاربران اطمينان داده است كه هيچ رويدادي در آينده نميتواند بهسادگي برنامههاي وي را براي توسعه گامباس تغيير دهد. Minisini قول داده است كه نسخههاي آتي اين نرمافزار داراي امكانات ديباگ پيشرفتهتري باشد و از ابزارهاي دسترسي به بانكهاي اطلاعاتي نيز پشتيباني نمايد.
خلاصه آنكه صرف نظر از آنكه چقدر ميتوان به يك پروژه يكنفره تكيه كرد (و زمان براي فراگيري تكنيكهايي صرف كرد كه آينده تضمينشدهاي ندارد)، مسلماً گامباس يكي از بهترين ابزارهاي برنامهنويسي تحت لينوكس است كه علاقهمندان و آماتورهاي برنامهنويسي تحت لينوكس ميتوانند گامهاي اوليه را بهكمك اين ابزار بردارند.