الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل فريم وورك بدلفي

بدأه Moroccan Programmer في 9 أكتوبر 2008 · 6 رد · 1,130 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله.

أولا أريد أن أشكر كل القائمين على هذا المنتدى الممتاز

وبعد

كما هو ظاهر في العنوان :D ، فقد خطرت لي فكرة بسيطة منذ زمن لكني ترددت في طرحها إلى اليوم فقررت طرحها. وهي تتلخص فيما يلي:

أن نقوم بجمع ما في الاستطاعة من أكواد دلفي سواء api أو أكواد التعامل مع الذاكرة والنظام أو أي شيء ويتم وضعها في مكتبات ديناميكية DLL على شكل دوال بأسماء دالة عليها مبتعدين في ذلك عن التعقيد الموجود في دوال api

مثلا، بدل وضع هذا الكود:

function RegisterOcx(OcxPath: string; bRegister: boolean): boolean;	
		  type	
			TDllProc = function: HResult; stdcall;	
		  var	
			hModule: THandle;	
			DllProc: TDllProc;	
		  begin	
			result := false;	
			hModule := LoadLibrary(PChar(OcxPath));	
			if hModule=0 then exit;	
			if bRegister then @DllProc := GetProcAddress(hModule, 'DllRegisterServer')	
			else			  @DllProc := GetProcAddress(hModule, 'DllUnregisterServer');	
			if @DllProc=nil then exit;	
		   result := DllProc=S_OK;	
			FreeLibrary(hModule);	
		  end;

نستبدله بهذا:

Function register_ocx(filename: string; bRegister: booloan): boolean; external 'api_codes.dll';

حيت نوفر المساحة المستهلكة ونضمن تجزيء البرنامج لعدة ملفات (والذي يصعب معه كسر البرنامج بسهولة)

. بعدها تجمع كافة الملفات لتكون مترابطة فيما بينها بشكل ديناميكي، ويعطى لها اسم معين تختلف إصداراته واكو اده، الفكرة تشبه إلى حد ما مايكروسوفت فريم وورك.

إذا استحسنتم الفكرة، سأبدأ إن شاء الله بوضع أول لبنة وهي ملف dll يحتوي على أكواد يمكن استدعائها من أي تطبيق تكتبونه

والسلام عليكم ورحمة الله

تم تعديل هذه المشاركة بواسطة Moroccan Programmer في 9 أكتوبر 2008 في 19:07

#2

السلام عليكم

أظن أن كل مبرمج لديه unit خاص فيه يضع فيه ما يسرع عمله كما ذكرت و لا يضر أن يمتلك هكذا مكتبة

سؤال : هل ستقوم بالعمل لوحدك أم الموضوع مفتوح ؟؟؟؟؟ :huh:

تم تعديل هذه المشاركة بواسطة rober في 9 أكتوبر 2008 في 19:15

I'm Away For Sometimes

I'll Finish My Works

Come Back Soon

More Study > More Search > More Try > More Learning > Great Success

#3
rober كتب:
سؤال : هل ستقوم بالعمل لوحدك أم الموضوع مفتوح ؟؟؟؟؟ :huh:

طبعا سيكون العمل مفتوحا المصدر كما سبق لي وأشرت، لكل واحد الحق في العمل عليه حتى تعم الفائدة، وشكرا على السؤال

#4

السلام عليكم و رحمة الله و بركاته

طبعا الفكرة جيدة

نعم لكل مبرمج وحداته الخاصة به لكن يمكن أن تجد أحسن من ما عندك و أسرع + مختصرة

أضن أن البركة في بداية العمل دون إنتضار الأخرين و سيلحق الركب من شاء

شكرا

يقول المثل الشعبي الجزائري

( أقري علمك و علما لا تدريه ، و قل ربي زدني علما ، و فوق كل ذى علم عليم )

اللهم زدنا و لا تنقصنا و أعطنا و لا تحرمنا

#5

السلام عليكم

شكرا لك أختي الغالية سمية :blush:

كما وعدتكم، سأضع بين يديكم ملف العمل الأول مع شرح لطريقة وضع الملفات داخل الفريم وورك:

في المرفقات تجدون ملفين مضغوطين: الأولDLL file.rar والثاني framework.rar

بالنسبة للأول: فهو يحتوي على ملف DLL بداخله دالتين كنموذج لطريقة العمل

أما بالنسبة للثاني: فهو يحتوي على مجلد الفريم وورك بداخله 3 مجلدات الأول source يتم وضع كافة ملفات السورس كود للملفات والبرامج التي نكتبها، ثم المجلد Bin والذي يحتوي على الملفات الناتجة من عملية البرمجة ذاتها. وأخيرا المجلد include والذي سيحتوي على الموارد التي نحتاجها.

أرجو أن نجد دعما كافيا للاستمرار. الهدف الرئيسي للفكرة هو مشاركة الأكواد وتبسيط الصعب منها، نرجو من الله التوفيق

لا تنسو، الموضوع مفتوح، يمكنكم تحميل الملفات واضافة ماشئتم من الأكواد بشرط أن لا تكون مكررة ثم رفعها على المنتدى.

لا تنسوني بآرائكم واقتراحاتكم، كل سؤال أو انتقاد على الرحب والسعة...

مع تحيات محمد (المبرمج المغربي) :lol:

والسلام عليكم

DLL_file.rar

framework.rar

تم تعديل هذه المشاركة بواسطة Moroccan Programmer في 14 أكتوبر 2008 في 06:05

#6

الفكرة جميلة , لكن يبدو انها ستزيد من حجم مجلد البرنامج

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

#7
Delphawi كتب:

الفكرة جميلة , لكن يبدو انها ستزيد من حجم مجلد البرنامج

ستزيد من قوته، ماذا لو امكنك استعمال تقنيات جديدة مطورة بدل الروتينية التي تتبعها دوما؟

أخي لا أعتقد أنك إن أضفت 1 ميجا لبرنامجك ستكون عبئ عليه مادمت قد طورته بأساليب جديدة

تقبل تحياتي :lol:

تم تعديل هذه المشاركة بواسطة Moroccan Programmer في 16 أكتوبر 2008 في 03:54

مواضيع مشابهة