صفحة 3 من 3 الأولىالأولى 123
النتائج 31 إلى 39 من 39

الموضوع: تسمع عن API في لغات البرمجة ولكن هل تعرف ماهي ؟

  1. #31


    السلام عليكم

    لاحظت إن الشباب قاموا يخلطوا بين الـ API وبين ال functions وطبيعي انهم سيصلوا للإتجاه الخاطيء classes

    وهو مالم يرده صاحب الموضوع دون شك ولكن أعذره كونه ادرج أمثله سهلة الفهم والإدراك .


    عموما يا شباب ( من وجهة نظري ) أنه لا توجد علاقة بين API و الدوال أو الكلاسس بتاتاً

    وتم اقحامها هنا للتشبيه فقط .... فالـ API هي واجهة interface- مثل لوحة التحكم أو كبينة الطيار أو سائق

    السيارة - أو مجموعة أزرار جاهزة ( حقيقة هي الأسلاك الخارجة من الجدار فقط - وليست المفاتيح نفسها )

    ولايمكن التشبيه بينها وبين الدوال ( وبالتالي الكلاسات ) أبدا ولا يجوز ... ( قد تشبه التغليف capsulation في

    الكلاسات في الفكرة فقط ) لاختلافهما في المضمون أساساً .

    الـ API هي مشغل لمحرك أو آله أو برمجية متدنية المستوى مأمثلة ومستقلة يعني قمة تحتها قاع

    الدوال والكلاسات هي وظائف نستخدمها ( نحن ) حسب تفكيرنا وأسلوبنا وبنائيتنا في التفكير

    واستراتيجيتنا ( نحن وليس الآلة ) ... صحيح اننا قد نستخدم ( دالة API ) في دوالنا أو كائناتنا ولكن هذه الدوال

    تختلف عن دوالنا كثيراً لأنها تأتي : built in مع المحرك أو الآله أو الكود الأصلي ولا يمكن التلاعب بها الا

    بالتغليف وهذا الأخير أيضاً محدود بالمبرمج الأساسي وحسب صلاحياته .

    كمفهوم ال API يشبه الذاكرة ROM أو chipset و اسلوبنا في البرمجة ( دوال أو كلاسات الخ..) يشبه RAM

    من الناحية الوظائفية وليس الشكل فلا يجوز أن نقول أن رام هي روم مع كونها كلها ذواكر أو اليد هي الرجل

    مع كونها كلها أطراف ... ( على طاري الأطراف الـAPI تشبه المحطة الطرفية Terminal )

    أعطيكم مثال :

    عندنا آلة مثل السيارة !

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

    السليندر وو الخ .... لا بالطبع يوجد مكان بالسيارة اسمه كبينة السائق وتوجد آلية ( معينة ) لقيادة السيارة

    مثل استخدام البوق أو وظيفة المقود للدوران أو دواسة البنزين أو عصا الجيربوكس ( هذه الكبينة وهذه الوظائف

    الخاصة بتشغيل واستخدام السيارة هي الـ API )

    كوننا نذهب بها للسوق أو للعمل أو للتنزه هذه وظائفنا نحن ( دوالنا أو كائناتنا ) .

    أتمنى أن تكون الصورة وضحت يا أخوان في الفرق مابين الـ API والـ functions من حيث المضمون وموقع كل

    منهما والتغليف المحكم . مع عدم النظر والتورط في التداخل بينهما من كون الدوال والكلاسات هي التي

    تستخدم الـ API أو العكس إذ لا يجب النظر من هذه الزاوية , فكروا فقط في المستوى والاستعمالية وليس

    الشكلية .

    تقبلوا مروري وشكرا لصاحب الموضوع .






  2. #32

    تحية طيبة للجميع



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

    بالنسبة للموضوع فلقد لفت نظري اخر رد وتحديداً في عبارة :
    عموما يا شباب ( من وجهة نظري ) أنه لا توجد علاقة بين API و الدوال أو الكلاسس بتاتاً

    أنا احترم وجهة النظر ولكن هذا الكلام خاطئ مئة بالمئة.. وسأثبت ذلك بالأدلة الصحيحة وليس بوجهة النظر وإليك التالي :

    ماقلته عن أن API هي واجهة فهذا صحيح ولا يتجادل فيه اثنان
    النقطة الثانية هي ان يتم تمثيل الواجهه اما بمجموعة دوال او مجموعة كلاسات او خليط من الأثنين ويطلق على هذا لحزمة كلمة API .

    اما بالنسبة للأمثلة التي ضربتها أنا فهي تمثل API والسبب هو ان مفهوم الـ API هو عبارة عن :

    إخفاء التفاصيل المملة عن المبرمج وإعطائه أسماء دوال أو كلاسات يستخدمها مباشرة دون الخوض في التفاصيل وكيفية عمل هذه الدوال والكلاسات وهذا معنى كلمة واجهه .



    وأما عن البراهين فخذ منها العديد

    اشهرها عالمياً POSIX
    The POSIX standard defines an API that allows a wide range of common computing functions to be written such that they may operate on many different systems (Mac OS X and various Berkeley Software Distributions (BSDs) implement this interface); however, making use of this requires re-compiling for each platform. A compatible API, on the other hand, allows compiled object code to function without any changes, on any system implementing that API. This is beneficial to both software providers (where they may distribute existing software on new systems without producing/distributing upgrades) and users (where they may install older software on their new systems without purchasing upgrades), although this generally requires various software libraries implementing the necessary APIs too.


    والدليل الثاني

    An application programming interface or API is a set of data structures, protocols, routines and tools for accessing a web-based software application. It provides all the building blocks for developing programs with ease. An application programming interface may be language dependent or language independent. A language dependent API is available only in a particular programming language. Language independent APIs are not bound to a particular language, system or process. They can be called from several programming languages.

    وأما إذا أردت غير التعريفات فأنظر الآن الى جميع المكتبات والتي تحمل اسم API بجانب اسم المكتبة فعندها ستجد المكتبة هي عبارة عن مجموعة دوال يستدعيها المبرمج أو كلاسات .

    وإليك بعض من أهم المكتبات :

    مكتبة SpiderMonkey
    https://developer.mozilla.org/en/JSAPI_Reference

    Windows API وهذا الرابط اكبر دليل واضح على كلامي
    Windows API Reference (Windows)

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

    وبإمكانك الإبحار في الإنترنت الأن والبحث عن أي مكتبة صعبة أو سهلة فلن تجدها إلا مجموعة دوال وكلاسات ..
    وأرجوا أن تكون الفكره قد وصلت ..

    وهذا مالدي الآن فإن أخطأت فمن نفسي والشيطان وإن أصبت فمن الله عز وجل

    تحياتي أخوك عبدالله عيد





    __________________
    قال صلى الله عليه وسلم (كلمتان خفيفتان على اللسان ثقيلتان في الميزان (سبحان الله وبحمده ** سبحان الله العظيم) اوكما قال صلى الله عليه وسلم . (فهل هذه الكلمتان ثقيلتان على لسانك كي لا تقولها مرة واحدة في اليوم على الأقل)

  3. #33


    ال API تحتمل المعنيين
    فقد تكون مجرد واجهة تلقمها بمدخلات فتعود لك بمخرجات ( أياً كان المكتوب بالداخل هل هو مباشر ام بدالة ام بكلاس )

    وقد يكون مجموعة من الدوال مع توصيف لكل دالة ومدخلاتها لتناديها وقت الحاجة وتعطيها ما تريد وتنتظر منها ما ترجع لك به

    وقد تكون كلاس او مجموعة من الكلاسات

    اياً كان فال API هو مجرد تسميه لوظيفة معينة نريد تسمية هذه الوظيفة فقط ولكن مهما كان شكل هذه الوظيفة فسنطلق عليه هذا الأسم
    وسواء ءأطلقنا عليه هذا الأسم ام لا فمن العيب ان نترك المفهوم والوظيفة ونتجه للأسم لنتجادل حوله
    كمن ترك وظيفة الموظف الجديد في المدرسة لتعليم مادة العلوم وتجادل حول وظيفته هل هي ( معلم أم مدرس أم مربي !! )
    المهم ما سيقوم به في النهاية
    حتي لا نجد شخص يقدم لنا موقع لخدمة سواء اكانت كبيرة ام صغيرة ثم لا نملك ان نفعل سوي التجادل حول الموقع هل يطلق علي خدمة API ام لا وهل أخطأ هو في تسميتها ام لا

    مجرد وجهة نظر تحتمل الخطأ





    __________________
    السيف أصدق أنباء من الكتب

  4. #34


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

    بالنسبة للموضوع فلقد لفت نظري اخر رد وتحديداً في عبارة :
    عموما يا شباب ( من وجهة نظري ) أنه لا توجد علاقة بين API و الدوال أو الكلاسس بتاتاً

    أنا احترم وجهة النظر ولكن هذا الكلام خاطئ مئة بالمئة.. وسأثبت ذلك بالأدلة الصحيحة وليس بوجهة النظر وإليك التالي :

    ماقلته عن أن API هي واجهة فهذا صحيح ولا يتجادل فيه اثنان
    النقطة الثانية هي ان يتم تمثيل الواجهه اما بمجموعة دوال او مجموعة كلاسات او خليط من الأثنين ويطلق على هذا لحزمة كلمة API .

    اما بالنسبة للأمثلة التي ضربتها أنا فهي تمثل API والسبب هو ان مفهوم الـ API هو عبارة عن :

    إخفاء التفاصيل المملة عن المبرمج وإعطائه أسماء دوال أو كلاسات يستخدمها مباشرة دون الخوض في التفاصيل وكيفية عمل هذه الدوال والكلاسات وهذا معنى كلمة واجهه .


    أهلاً أخي عبدالله

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

    طبعاً كلها تخفي التفاصيل المملة عن المبرمج وتعطيه أسماء !!!

    عموما أتمنى أن تقرأ ردي كاملاً ... لترى كامل الموضوع ثم أحكم بعدها إذ يبدو أنك وقفت

    عند قولي :

    عموما يا شباب ( من وجهة نظري ) أنه لا توجد علاقة بين API و الدوال أو الكلاسس بتاتاً

    ولم تكمل بعدها !!

    سأوجز مقتبس من كلامي يوصل الفكرة بشكل مختصر :


    الدوال والكلاسات هي وظائف نستخدمها ( نحن ) حسب تفكيرنا وأسلوبنا وبنائيتنا في التفكير

    واستراتيجيتنا ( نحن وليس الآلة ) ... صحيح اننا قد نستخدم ( دالة API ) في دوالنا

    أو كائناتنا ولكن هذه الدوال تختلف عن دوالنا كثيراً لأنها تأتي : built in مع المحرك أو

    الآله أو الكود الأصلي ولا يمكن التلاعب بها الا بالتغليف وهذا الأخير أيضاً محدود

    بالمبرمج الأساسي وحسب صلاحياته .


    كمفهوم ال API يشبه الذاكرة ROM أو chipset و اسلوبنا في البرمجة ( دوال أو كلاسات الخ..)

    يشبه RAM من الناحية الوظائفية وليس الشكل فلا يجوز أن نقول أن رام هي روم مع كونها كلها

    ذواكر أو اليد هي الرجل مع كونها كلها أطراف ...

    ( على طاري الأطراف الـAPI تشبه المحطة الطرفية Terminal )

    .......

    أتمنى أن تكون الصورة وضحت يا أخوان في الفرق مابين الـ API والـ functions من حيث

    المضمون وموقع كل منهما والتغليف المحكم
    .

    مع عدم النظر والتورط في التداخل بينهما من كون الدوال والكلاسات هي التي

    تستخدم الـ API أو العكس
    إذ لا يجب النظر من هذه الزاوية , فكروا فقط في المستوى

    والاستعمالية وليس الشكلية .

    تقبلوا مروري وشكرا لصاحب الموضوع .
    ما أردت الوصول اليه أن الـ API حالة خاصة من الدوال أو الكائنات وليست مثل الدوال العامة

    وأن تمثيلها بالدوال سيؤدي الى الحلقة غير منتهية ( هل الدوال تستخدم الواجهات أو الواجهات

    تستخدم الدوال ) وقد وصل لها إخواننا الأعضاء في نهاية المطاف .

    عموماً (ومن وجهة نظري المتواضعة )

    توجد مفاهيم برمجية مستقلة بذاتها لايشبه أحدها الآخر :

    - الدوال
    - الكائنات
    - الواجهات

    وكلها مفاهيم برمجية قد تتشابه في الشكل ولكن تختلف من الناحية الوظائفية

    وطبعاً لا يجوز الخلط بينهما .

    تظل وجهة نظر أخي قابلة للصواب أو الخطأ .

    كل سنة وانتم طيبين .






  5. #35
    عضو نشيط
    تاريخ التسجيل
    Jun 2007
    المشاركات
    255


    هل يوجد شرح فيديو ؟؟ لا يهم بأي لغة لكن المهم أن يكون شرح واضح






  6. #36
    عضو فعال
    تاريخ التسجيل
    Sep 2007
    المشاركات
    1,569


    الموضوع مفيد ويجب ان يتستمر النقاش ليحصل القارئ على خلاصة مفيدة ومميزه
    تفيده في عمله البرمجي


    تحية لكاتب الموضوع و لكل من اسهم من خلال ردوده





    __________________
    My twitter - حراج
    لا تنس ذكر الله | سبحان الله و الحمد لله ولا إله ألا الله و الله أكبر


  7. #37
    عضو جديد
    تاريخ التسجيل
    Apr 2010
    المشاركات
    10


    من الالفين وعشره ماخليت مبرمج ماططرحت عليه الفكرة ويعتذر المشكله مايقولو مانعرف نتعامل مع api
    الخاص بالفيس بوك يقول لك مشغول تنتظره لين يفضى تروح معك شهرين ثلاث مافي , لا حياة لمن تناددي

    اخي عبدالله عيد ارسلت لك طلب اضافه على السكايب وعارف ان الموضوع ماهو لطلبات البرمجة واعتذر لك وللاخوة بس مضطر اكتب لك هنا

    وعندي سؤال خارج الموضوع , لو موقع ما يقدم api والمحتوى غير مفتوح لمحركات البحث والزوار , كيف استخرج منه نتائج , يوجد طريقة ؟

    ربي يجزاك الف خير على التوضيح موضوعك اكثر من رائع ..






  8. #38
    مُجَاهِد سابقاً
    تاريخ التسجيل
    Apr 2004
    المشاركات
    12,000


    وعندي سؤال خارج الموضوع , لو موقع ما يقدم api والمحتوى غير مفتوح لمحركات البحث والزوار , كيف استخرج منه نتائج , يوجد طريقة ؟

    ربي يجزاك الف خير على التوضيح موضوعك اكثر من رائع ..
    مرحباً أخي .. بخصوص سؤالك .. هل تقصد ان هذا الموقع موقعك وتريد تقديم خدمة api والموقع غير مفتوح للزوار او محركات البحث ؟؟

    اما بخصوص اذا كان الموقع ليس موقعك وتريد خدمة api بدون ان يكون الموقع مفتوح للزوار او محركات البحث ، فأعتقد ان هذا غير ممكن ..

    api وجدت لتسهيل التعامل او لتقديم الخدمات في المواقع ، يعني صاحب الموقع هو الذي يقوم ببناء هذه الخاصية حسب ما يراه مناسب ..





    __________________
    استخدم خاصية تنبيه المشرفين للضرورة وعند ملاحظة موضوع يخالف قوانين منتديات سوالف وسيتم مراجعة الموضوع او المشاركة المبلغ عنها على الفور

  9. #39


    جهد مقدر اخ عبدالله وشرح مبسط





    __________________
    جنوبية نت
    من ظن انه قد تعلم فقد بدا جهله
    ولا خير فى كاتم العلم

صفحة 3 من 3 الأولىالأولى 123




ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  
0
أضف موقعك هنا