المشاركات : 749
المواضيع 238
الإنتساب : May 2018
السمعة :
209
الشكر: 740
تم شكره 2214 مرات في 752 مشاركات
السلام عليكم ورحمة الله
من يومين كنت بصدد كتابة برنامج يكتب عنك الكود كاملا من اضافة وتعديل وحذف لمجتمع الدلفي
وهذه صورة عنه .
طبعا جعلت له ازرار للغة ال Vb والسي كذلك ولكنها غير مفعلة وغير مكتملة اذا كنتم تريدون ان احسبكم في البرنامج اخبروني حتى لا اتعب على الفاضي
البرنامج سهل الاستعلام ويكتب لك الكود الذي تبقى تكتبه في نصف ساعة او ساعة في ثانية وبدون اخطاء طبعا لا تحتاج الى التدقيق والتشغيل والعودة للفحص لانه مفحوص جيدا في البرنامج
المشاركات : 575
المواضيع 116
الإنتساب : Feb 2014
السمعة :
28
الشكر: 377
تم شكره 440 مرات في 205 مشاركات
(08-05-18, 11:46 PM)viv كتب : السلام عليكم ورحمة الله
من يومين كنت بصدد كتابة برنامج يكتب عنك الكود كاملا من اضافة وتعديل وحذف لمجتمع الدلفي
وهذه صورة عنه .
طبعا جعلت له ازرار للغة ال Vb والسي كذلك ولكنها غير مفعلة وغير مكتملة اذا كنتم تريدون ان احسبكم في البرنامج اخبروني حتى لا اتعب على الفاضي
البرنامج سهل الاستعلام ويكتب لك الكود الذي تبقى تكتبه في نصف ساعة او ساعة في ثانية وبدون اخطاء طبعا لا تحتاج الى التدقيق والتشغيل والعودة للفحص لانه مفحوص جيدا في البرنامج
هذا عمل جد جميل اخي ارجو ان تكمله اخي
بارك الله فيك
المشاركات : 1,535
المواضيع 33
الإنتساب : Jul 2016
السمعة :
256
الشكر: 6183
تم شكره 4343 مرات في 1696 مشاركات
السلام عليكم
اذا سمح وقتك
فستجد من يستفسد منه مع مرور الوقت وقد ينتشر تدريجياً.
واتمنى لو ضعت السورس كود اذا كان بلغة VB.bet او C#
كي يستفيدالاعضاء. اذا لم يكن لديط مانع
لاننا نسعى لنشر العلم . بالذات في هذا الصرح الشامخ.
وشكرا جزيلا لك على نشاطك وعلى كل ما تقدم
حفظك الله من كل شر وكتب اجرك
المشاركات : 2,669
المواضيع 205
الإنتساب : Dec 2015
السمعة :
345
الشكر: 16361
تم شكره 11222 مرات في 2656 مشاركات
السّلام عليكم و رحمة الله و بركاته
شخص فاقد البصر منحه الله بحياته مدّة ثانية واحدة للنظر .. هذه الثانية الواحدة لم يقدّر له فيها رؤية سوى فأر أمامه .
فأصبح يقيس و يقارن كل ما يذكرونه أمامه بالفأر
لو قالوا له .. طائرة .. يسألهم .. هل هي أكبر من الفأر أم أصغر منه
لو ذكروا له .. غواصة .. يسألهم .. هل هي أكبر من الفأر أم أصغر منه
و لذلك .. أخي الكريم .. لم أنتبه .. كنت أحسب أن موضوعك و مشروعك يخص الدلفي
كنت بدوري سأسألك .. هل هو أصعب من الدوت نت أم مثلها برمجيا ؟؟
مادام الأمر يخص الدوت نت .. على بركة الله
تحياتي واحتراماتي
المشاركات : 749
المواضيع 238
الإنتساب : May 2018
السمعة :
209
الشكر: 740
تم شكره 2214 مرات في 752 مشاركات
أخ بداية ان شاء الله
اخ سندباد
حسنا اذا سوف ابداء فيه كلما سنحت الفرصة حتى اكمله ونجربه مع بعضنا هنا .
البرنامج حاليا ليس بلغة الدوت نت ولكن ساكمله بهذه اللغة وبعدها ساحاول البدء في واحد جديد بالدوت نت ليكون مفتوح المصدر والكل يشارك فيه ويطوره .
او سوف ابداء فيه كمشروع جماعي مع من يريد ان يشارك من الصفر لنستفيذ من بعضنا .
اخ عبدالعزيز حاشاك من الفأر وتحياتي لك ايضا
طبعا لا يمكن ان انشر شئ يخص الدلفي هنا الا اذا كان له علاقة ما .
ولكن قلت ربما لا احد يريد برنامج يكتب عنه الكود ، ففي مجتمع الدلفي لم يهتم احد تقريبا ، يبدوا انهم يحبون ان يكتبوا اكوادهم بانفسهم
او ان كود الدلفي بسيط ولا يحتاج الى مساعدة
واجابة خارج الموضوع على سؤالك الذي كنت سوف تسأله ، الدلفي اسهل بكثير من الدوت نت .
وقوية مثل C++ وهي تتشارك مع الاخيرة في نفس المكتبات والادوات .
انها عالم أخر تماما .
لم يألفه المبرمجين الاخرين .
تشعر انهم منغلقون على انفسهم مثل الماسونية .
لديهم اسرار كثيرة .
ولا شئ يقف في طريقهم ، من النادر جدا ان لا تجد مبرمج دلفي ليس كركر او هكر .
المشاركات : 35
المواضيع 6
الإنتساب : Mar 2018
السمعة :
0
الشكر: 40
تم شكره 27 مرات في 14 مشاركات
جعله الله في ميزان حسناتك وأثابك على مجهودك الرائع المميز
المشاركات : 1,535
المواضيع 33
الإنتساب : Jul 2016
السمعة :
256
الشكر: 6183
تم شكره 4343 مرات في 1696 مشاركات
اخي العزيز ViV
اولاً:- ليس من الضروري اعادة تصميمة بالفجوال بيسك دوت نت في حال جهزتة بلغة اخرى.
ثانياً:- في هذه الحالة اذا كان البرنامج من وجهة نظرك ذو فائدة في اختصار الوقت والجهد وسوف تستخدمه شخصياً.
ابدا العمل والله يعينك ويوفقك.
وشكرا مقدماً
المشاركات : 749
المواضيع 238
الإنتساب : May 2018
السمعة :
209
الشكر: 740
تم شكره 2214 مرات في 752 مشاركات
المشاركات : 660
المواضيع 39
الإنتساب : Feb 2014
السمعة :
196
الشكر: 1420
تم شكره 1747 مرات في 622 مشاركات
السلام عليكم و رحمة الله و بركاته.
صراحة انا لا احب هذا النوع من البرامج , لانه يخلق مبرمج اتكالي و كسول , الا في بعض النقاط (مثل توليد اكود استعلام معتادة) , سبب الرفض مرده ان البرنامج سيستخدم من مبرمجين لم يقوموا بتصميم البرنامج او المشاركة فيه , و بالتالي لا يحتاج الشخص الا الى ضغط زر لتوليد الكود و نسخه الى المكان المطلوب ليؤدي عمله , و عندما يحتاج لكود لا يستطبع البرنامج توليده ستجده حائراً و لا يعرف كيف سيكتبه لانه تعود على اخذ كود جاهز .
الافضل من وجهة نظري ان يتم مناقشة الفكرة و شرحها و البدء بعملها في موضوع مستقل و شرح كل نقطة بالتفصيل للوصول الى البرنامج , كل عضو سيشارك بما لديه و يتعلم مما لدى الاخرين و يقوم بتصميم برنامجه بنفسه , و بالتالي اذا اراد ان يطور مستقبلاً على البرنامج سيطور بنفسه و تتوسع مداركه في هذا المجال (تماماً مثل فكرة فريق العمل) , عندها سنجد اكثر من نسخة للبرنامج و كل نسخة ستجد فيها ميزات و تطويرات جديدة ....الخ
في نفس السياق انا افضل فكرة تطوير الفئات فهي اقوى و اعمق و تستمر معك و تجعلك دائماً تحاول التحسين فيها و التوسع في اكثر من اتجاه , و بالتالي مع زيادة الخبرة ستكون قادراً على انشاء اطار عمل يلبي كافة احتياجاتك (يكفي ان اللغة تعتمد في جلها على اطار العمل و الفئات التي بداخله).
------------------------------------------------
في قواعد البيانات انا احبذ حكمة (ما لله لله و ما لقيصر لقيصر).
بمعنى امور التعامل مع القاعدة تترك للسيرفر , و امور التعامل مع الواجهات تترك للبرنامج.
بالتوفيق.
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
المشاركات : 749
المواضيع 238
الإنتساب : May 2018
السمعة :
209
الشكر: 740
تم شكره 2214 مرات في 752 مشاركات
09-05-18, 02:11 PM
(آخر تعديل لهذه المشاركة : 09-05-18, 02:19 PM {2} بواسطة viv.)
من ناحية انه يختصر الوقت أجل هو يختصر الوقت .
تصور هذا الكود انا مثلا عندي منظومة فيها 63 حقل لو اردت فقط في الاضافة سوف اكتب شيئا مثلا
PHP كود :
Try With QryEmplye Do begin .Close; .SQL.Clear; .SQL.Add('Insert Into Emplye(ID,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address,FirstNmame,LastName,Age,City,Phone,Address) Values (:ID,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address,:FirstNmame,:LastName,:Age,:City,:Phone,:Address)'); // Add Parameters to Query Control .ParamByName('ID').Value:= Int; .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ParamByName('FirstNmame').Value:= Trim(TxtFirstNmame.Text); .ParamByName('LastName').Value:= Trim(TxtLastName.Text); .ParamByName('Age').Value:= Trim(TxtAge.Text); .ParamByName('City').Value:= Trim(TxtCity.Text); .ParamByName('Phone').Value:= Trim(TxtPhone.Text); .ParamByName('Address').Value:= Trim(TxtAddress.Text); .ExecSQL; ShowMessage('Ok File is Added'); except on E: Exception do ShowMessage('Error'); end; end;
طبعا كتابة هذا الكود يدويا مرهقة ، ومكررة فقط .
في الدلفي لا توجد تقريبا الا طريقة واحدة مع كل مصادر البيانات ، المشكلة في الدوت نت تختلف الطرق مثلا طريقة استخدام محول البيانات والداتا ست وما الى ذلك كما يقول البعض هي طريفة قديمة ولا فائدة فيها ، اما من ناحية انشاء فئات ربما نطوره لانشاء فئات .
او من الممكن ان يكون الغرض منه تعليمي فقط وليس للاتكال علبه لصنع برامج ومنظومات حقيقية
يعني المبتدئين في التعلم يلجئون له لتوليد الكود واستخدامه ودراسته
فكل المنتدى مثلا تجده ممتلئ بالاسئلة من اشخاص يضعون اكوادهم للاضافة والتعديل او الحذف وفيها مشكلة .
احدهم نسى علامة تنصيص واخر نسى ربط محول البيانات بالداتا سيت واخر نسى امر Open وهكذا
ويمكن انشاء هذا البرنامج لكل هؤلاء ، فاكثر من 40% هذه هي مشاكلهم .
بالنسبة الى تطويره لانشاء فئات اذا كنت سوف تساعدنا بالتوجيه في كيفية الانشاء اخ ابو ليلي فسوف افتح موضوع للبدء فعلا ببرنامج لانشاء الفئات واريدك من الحين الى الاخر فيه لابداء الرأي ، وسيكون العمل جماعي ، او افتح انت موضوع وابداء الخطوات مثلا قل هذا مشروع جماعي ونريد برنامج لانشاء فئة بهذا الشكل لحقول قاعدة بيانات ونبداء نحن
وعندما ننتهي تقول مثلا اضيفوا لها الفئة كذا او اربطوها بالفئة كذا او اشتقوا منها كذا ونحن نعمل
|