أحـــــلى مـــنـــتـــديـــات أمـــيـــن عـــبـــلــــة الــــحـــب
 مقدمة في برمجة DLL  لغة (دلفي) 613623
كلام عن الحب
إن الإنسان قبـل الحب شيء وعنـد الحب كل شيء وبعـد الحب لا شيء"
أكبر متعة في الحب تجد نفسك محبوبا عند الناس
"

 مقدمة في برمجة DLL  لغة (دلفي) 613623
عزيزي الزائر / عزيزتي الزائرة يرجي التكرم بتسجبل الدخول اذا كنت عضو معنا
او التسجيل ان لم تكن عضو وترغب في الانضمام الي اسرة المنتدي
سنتشرف بتسجيلك
شكرا  مقدمة في برمجة DLL  لغة (دلفي) 829894
المدير المنتدى
شكراً لتسجيلك في
أحلى منتديات أمين عبلة الحب
نحن سعداء جدا لاختيارك بأن تكون واحداً من أسرتنا و نتمنى لك الاستمتاع بالإقامة معنا، تفيد وتستفيد ونأمل منك التواصل بإستمرار.
مع أطيب الأمنيات,
إدارة المدير.
أحـــــلى مـــنـــتـــديـــات أمـــيـــن عـــبـــلــــة الــــحـــب
 مقدمة في برمجة DLL  لغة (دلفي) 613623
كلام عن الحب
إن الإنسان قبـل الحب شيء وعنـد الحب كل شيء وبعـد الحب لا شيء"
أكبر متعة في الحب تجد نفسك محبوبا عند الناس
"

 مقدمة في برمجة DLL  لغة (دلفي) 613623
عزيزي الزائر / عزيزتي الزائرة يرجي التكرم بتسجبل الدخول اذا كنت عضو معنا
او التسجيل ان لم تكن عضو وترغب في الانضمام الي اسرة المنتدي
سنتشرف بتسجيلك
شكرا  مقدمة في برمجة DLL  لغة (دلفي) 829894
المدير المنتدى
شكراً لتسجيلك في
أحلى منتديات أمين عبلة الحب
نحن سعداء جدا لاختيارك بأن تكون واحداً من أسرتنا و نتمنى لك الاستمتاع بالإقامة معنا، تفيد وتستفيد ونأمل منك التواصل بإستمرار.
مع أطيب الأمنيات,
إدارة المدير.
أحـــــلى مـــنـــتـــديـــات أمـــيـــن عـــبـــلــــة الــــحـــب
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.


أكـــــبر مـــــــــــــتعة في الـــــــــــحب تجـــــــــد نفـــــــسك محبــــوبا عنــــــد النــــــاس
 
الرئيسيةالبوابة**أحدث الصورالتسجيلدخول
تمنادى الحب عندما يأتى الليل ، ويغلق الناس أبواب بيوتهم بإحكام يخرج من قلب الظلمة مناد يقول : - هل كل هذه البيوت تنام على الحب ؟ ! ويظل يردد السؤال ، الذى لا يجيب عليه أحد ، حتى تظهر أول خيوط الفجر !

 

  مقدمة في برمجة DLL لغة (دلفي)

اذهب الى الأسفل 
كاتب الموضوعرسالة
المدير
AMINE PàTCHIKà
AMINE PàTCHIKà
المدير


الجنس : ذكر
الابراج الدلو
تاريخ الميلاد تاريخ الميلاد : 25/01/1988
العمر : 36

المدير العام
منتديات أمين عبلة الحب :

 مقدمة في برمجة DLL  لغة (دلفي) Empty
مُساهمةموضوع: مقدمة في برمجة DLL لغة (دلفي)    مقدمة في برمجة DLL  لغة (دلفي) Emptyالخميس ديسمبر 27, 2012 1:59 pm

 مقدمة في برمجة DLL  لغة (دلفي) 500092465

 مقدمة في برمجة DLL  لغة (دلفي) 500092465

مقدمة في برمجة DLL لغة (دلفي)

 مقدمة في برمجة DLL  لغة (دلفي) 500092465

 مقدمة في برمجة DLL  لغة (دلفي) 500092465


مقدمة في DLL
:



إن موضوع DLL هو من المواضيع المهمة في مجال
تطوير البرمجيات ،وهو يمكنك من الاستغلال الأمثل لقدراتك البرمجية, وجعل
تطبيقاتك أكثر عالمية (اتساع مدى تداول برمجياتك) ،إلى غير ذلك من الأمور التي
يوفرها
DLLs
لك والتي سأحاول من خلال هذه الدروس إسقاط الضوء عليها ،وقبل ذلك سأعرفك
بمعنى هذا المصطلح
DLLs
الذي كثيراً ما يصادفك منتهيةً إلى شرح طريقة بناء واستخدام
DLLs في تطبيقاتك.


سؤال: هل استخدام DLLs جديد بالنسبة
لك فعلاً ؟



جواب: طبعاً لا ،فأنت
كمستخدم للنظام
Windows
تقوم باستخدام
DLLs بشكل مستمر ، كيف ذلك ؟


إذا ألقيت نظرة على الحافظة Windows أو الحافظة Windows\system ستعرف معنى ما أقول ، ففي هاتين الحافظتين ستجد المئات من الملفات
ذات الامتداد (
.dll)
.. لماذا وجدت هذه الملفات ؟ وما أهميتها ؟



في الحقيقة هذه الملفات تحوى
دوال
Windows API
وموارد النظام (
Windows
Resources
) التي تستخدمها أثناء عملك في بيئة النظام Windows .


فمثلاً الدالة (LoadCursor) والدالة (DrawText) المستخدمتان في
لغة دلفي هما معرفتان في الملف (
USER32.dll) ، وكل ما عليك القيام به
لاستخدامهما هو تضمين الوحدة
Windows
ضمن الكلمة المحجوزة
uses ،وهكذا تستطيع الوصول لهاتين الدالتين وغيرهما من دوال Windows API .


وكذلك الأمر بالنسبة لموارد Windows كصناديق الحوار (File Open, Print , Print Setup)
وغيرها مخزنة كموارد
Resources في الملف (COMCTL32.dll).


من خلال هذا الاستهلال البسيط عرفنا أن
ملفات
DLLs هي جزء أساسي في بنية النظام Windows والتطبيقات العاملة
تحته ،
ولكن ما هو DLLs ؟


تعريف DLL: إن DLL هو اختصار للعبارة الإنجليزية
(
Dynamic Link
Library
) مكتبة الربط الديناميكية أو الحيوية ، وملف
DLL هو عبارة عن واحدة
أو أكثر من قطع الكود التي تخزن في ملف بامتداد (
.dll) وهو يعمل في توحد مع الملف
التنفيذي (
.exe) لتوفير وظائف
معينة للتطبيق.



وبالتالي ملف DLL هو ملف مترجم يتم استدعاؤه من
البرامج التنفيذية ،لكنه هو ذاته ليس برنامجاً
مستقلاً ولا يمكن تنفيذه بمفرده.



البرامج التي تستدعي DLL تدعى : البرامج
المستدعية لأنها تستدعى دوال أو إجراءات من
dll .


أنواع DLLs : يمكن تصنيف DLLs إلى نوعين هما :


1-CODE DLLs : عند احتواء ملف DLL على كود فقط .


2-RESOURCE DLLs : عند احتواء ملف DLL على مصادر مثل ملفات الصور
،ملفات الصوت ،السلاسل.



كما يمكن أن يحتوى ملف DLL واحد على كل من الكود والموارد
معاً.



شكل الدوال والإجراءات في DLL :


تظهر الدوال والإجراءات فى DLL
فى شكلين :



1-دوال وإجراءات مصدّرة :وهى الدوال
والإجراءات التي يصدرها
DLL
إلى التطبيقات أو ال
DLLs
الأخرى.



2-دوال وإجراءات داخلية: وهى الدوال
والإجراءات التي للاستخدام الداخلي لنفس ال
DLL ولا يمكن رؤيتها من خلال
تطبيقات أو
DLLs
الأخرى.



سؤال: هل يمكنك أن تبني
DLLs خاصة بك ؟


الجواب ببساطة نعم ،وهذا
هو محور دروسنا ، حيث يمكننا أن نضيف أي عدد من
DLLs الخاصة التي نقوم بإنجازها .


وطريقة استدعاء دوال وإجراءات DLLs التي ننجزها
بأنفسنا لا تختلف مطلقاً عن طريقة استدعاء دوال وإجراءات
Windows API .


رغم كثرة تساؤلاتنا في هذا الدرس إلا أن
السؤال التالي قد يلح عليك :
لماذا أحتاج لبناء واستعمال DLLs ؟


يمكن تصنيف ما يقدمه لك استعمالك لل DLLs إلى الأمور المهمة
التالية :



1-فعالية إعادة
استخدام الكود:



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



وربما من الأمور التي لاحظتها خلال مشوارك
البرمجي أن الكثير من الأكواد يتكرر استعمالها معك في كثير من التطبيقات
(خاصة ذلك الكود المتعلق بالتعامل مع بيئة
Windows من فورمات وصناديق
رسائل وقوائم إلى آخره)،لإيضاح الموضوع أكثر لنفترض أنك كتبت قطعة كود
(دالة مثلاً) لتعالج به خدمة معينة في
Windows وقد استغرق منك
إنجاز هذا الكود الكثير من الوقت والجهد ،ألن يكون جميلاً إذا استطعت
إعادة استخدام نفس الكود في باقي تطبيقاتك التي تحتاجه دون أن تضطر
لكتابته مرة أخرى وحتى لوكانت هذه التطبيقات مبنية بلغات برمجية أخرى غير
لغة الدلفي كـ (
Visual Basic,
Visual C
) ؟ إن DLLs تمكنك من فعل ذلك.


والأفضل من هذا أنك تستطيع بيع DLLs التي أنجزتها
أوتقديمها لمبرمجين آخرين بإمكانهم استعمالها أيضاً.



إذاً بعد أن تكتب DLL تستطيع استعماله بسهولة أينما
ومتى أردت.



2-تقاسم الكود فيما بين عدة تطبيقات:


في حالة وجود عدة مستخدمين لكل منهم نظامه
الخاص الذي يعمل عليه وجميع هؤلاء المستخدمين مرتبطين بشبكة واحدة .



قد يكون هناك جزء من الكود يحتاجه كل واحد
منهم ،فبدلاً من كتابة هذا الجزء لعدة مرات حسب
عدد المستخدمين فإن
DLL
يمكنك من كتابته لمرة واحدة ليشترك فيه جميع المستخدمين.



لنعطى مثالاً :إذا كان هناك خمس مستخدمين
وقمنا ببرمجة خمس تطبيقات لهؤلاء المستخدمين (المستخدمين مرتبطين في شبكة)
لنفترض أن التطبيقات الخمسة يتكرر فيها جزء مشترك من الكود (متشابه) حجمه
100kb
،وبالتالي يوجد
500kb هي تكرار
لنفس الكود ،باستخدام
DLL
يمكننا كتابة هذا الكود المتكرر لمرة واحدة وتخزينه في ملف
DLL ويمكن
للتطبيقات الخمسة أن تصل إليه، وبالتالي نكون قد أنقصنا الحجم الكلى للكود
بمقدار
100kb لكل واحد منها
،تظهر فائدة هذا الأمر بوضوح في حالة وجود مئات المستخدمين أكثر من ظهورها
مع هذا العدد المحدود.



3-تقسيم الكود:


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



فعندما تقوم بتطوير تطبيقك وترغب في
تقديمه لمستخدميك (ذوي النسخة السابقة من التطبيق) فإن شحذ
DLL جديد للمستخدمين
بدلاً عن إعادة تجميع (ترجمة) وشحذ مدخلات الملف التنفيذي يعد من الأمور
الجيدة لك كمبرمج .



ونعيد القول بأن هذا الأمر تظهر أهميته في
حالة التطبيقات ذات الحجم الكبير ،ويمكنك ملاحظة
أن أفضل البرامج في السوق تعتمد هذه التقنية (ولك في النظام
Windows خير مثال عند
ترقيته من إصدار إلى إصدار جديد).



4-تدويل برامجك:


منذ سنوات قليلة مضت كنت تستطيع كتابة
برنامجك دون أن تقلق حول السوق العالمية ،حيث
تستطيع كتابة البرنامج وبناء (
menu
items,dialog boxes, hint text ,error message
)وغيرها باستخدام
لغتك الوطنية ،وتنزل برنامجك إلى السوق دون القلق حوله بعد ذلك .



اليوم ، العالم أصبح كالقرية الصغيرة مع
هذا التطور في استخدام الإنترنت ،أصبحت تكتب برنامجك وتضعه على الإنترنت
وخلال ساعات وربما دقائق ملايين الأشخاص حول العالم سيتمكنون من الوصول
إليه ،سيثير اهتمامهم وسيلتقطونه في ذات الوقت ،هذه الظاهرة تعنى أنك يجب
أن تخطط سابقاً وتعد لترجمة برنامجك إلى لغات أخرى.



طريقة واحدة يمكن استخدامها وهى بناء RESOURCES DLLS الذي يحتوى
سلاسل مصدرية بلغات مختلفة ،فإما أن تعمل
DLL منفصل لكل لغة فيكون لديك عدة DLLs بعدة لغات وتقوم في
تطبيقك بتحميل
DLL
الذي يحوي السلاسل المصدرية للغة المطلوبة ،أو أن تعمل
DLL واحد ويحوي جميع
السلاسل المصدرية بكل اللغات ثم تحمّل السلاسل المضدرية للغة المطلوبة من
هذا الـ
DLL
.



في زمن RunTime تستطيع استخدام الدالة LoadString لتحميل السلاسل
وإسنادها إلى أدوات ومكونات البرنامج المختلفة حسب احتياجاتك.



مرة أخرى ،التخطيط
المسبق يمكن أن يغنيك عن كثير من العمل لاحقاً ،فإذا خططت تطبيقك ومفهوم
(التدويل) في ذهنك فسيكون من السهل عليك ترجمة تطبيقك إلى لغات أخرى عندما
يكون ذلك ضرورياً عوضاً عن كتابته مرة أخرى.



5-فعالية استخدام مصادر Windows
:



كلما كان تطبيقك قادراً على استغلال موارد
النظام بشكل جيد كلما أعتبر تطبيقك قوياً .



هذه الأيام الأنظمة أسرع ،تملك ذاكرة RAM أكبر ،ومساحة Hard Disk أكبر ، أكثر من أي
وقت مضى ،وعملك كمبرمج أن تجعل تطبيقاتك تستغل هذه الموارد بالشكل الأمثل.



إن DLLs يساعدك في تحقيق ذلك ،لنرجع
إلى مثالنا السابق بخصوص التطبيقات الخمسة ،قلنا أن هذه التطبيقات تشترك في
جزء من الكود وقلنا بأننا باستخدام
DLLs فإننا نستطيع أن نضع هذا الكود
المشترك في ملف
DLL ويمكن لكل واحد من التطبيقات الخمسة أن يصل إليه ،عندما ثلاثة
تطبيقات منها مثلاً تعمل في نفس الوقت فإنها ستحمًل بعضاً من ذات الكود
داخل الذاكرة ،هذا تخريب لمصادر النظام ،لأن كل برنامج يحمل نسخته الخاصة
لنفس الكود ،بدلاً عن ذلك يمكنك باستخدام
DLL لتحميل الكود مرة واحدة فقط
،كل التطبيقات يمكنها استخدام نفس الكود في الذاكرة وبالتالي ينقص الهدر في
النظام (هنا حالة التحميل الديناميكي للـ
DLL والتي
سنناقشها في دروس قادمة).






الخلاصة:


من خلال هذا الدرس استطعنا أن نكون فكرة
واضحة عن ماهية
DLL
،وعرفنا لماذا نحتاج
DLL
كمفهوم من مفاهيم تطوير البرمجيات تحت النظام
Windows .


المراجع:


1- Teach Yourself
Borland Delphi In 21 Days



2-Essential Pascal


3-Help of Delphi


4-Help of Visual Basic


اللهم تقبل
خلاصة جهدي تذللاً وخشوعاً لوجهك الكريم....( ص.
ع )


 مقدمة في برمجة DLL  لغة (دلفي) 500092465

 مقدمة في برمجة DLL  لغة (دلفي) 500092465

تحياتي لكم

 مقدمة في برمجة DLL  لغة (دلفي) 500092465

 مقدمة في برمجة DLL  لغة (دلفي) 500092465

 مقدمة في برمجة DLL  لغة (دلفي) 483098003
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
مقدمة في برمجة DLL لغة (دلفي)
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
»  إنجاز وحدة DLL فى لغة دلفي
» مقدمة عن الدلفي

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