عرض مشاركة واحدة
  #14 (permalink)  
قديم 01-08-2008, 07:05 PM
الصورة الرمزية أبو بكر
أبو بكر أبو بكر غير متواجد حالياً
Moderator
 
تاريخ التسجيل: Dec 2004
الدولة: أبوظبي - الإمارات
المشاركات: 621
Thanks: 0
Thanked 2 Times in 2 Posts
أبو بكر is on a distinguished road
افتراضي

<div class='quotetop'>إقتباس(Mshary @ 08-01-2008, 19:22) <{POST_SNAPBACK}></div>
اقتباس:
اخوي ابو بكر ما جاوبتني على سؤالي

ليش نتعلم كاربون و الكوكا احدث و هي اوبجكت اورينتد[/b]
اسف أخي Mshary فقد نسيت أن أجيب.. وإليك الإجابة..

يعود تاريخ Cocoa تقريبا إلى تاريخ الماكنتوش، فقد وجدت الأخيرة في عام ١٩٨٧ لأول مرة، وذلك تحت اسم NeXTSTEP، والهدف منها في ذلك الوقت كما قال Steve Jobs رئيس الشركة: إنشاء وابتكار الشيء الجنوني المذهل (يقصد الشيء الهائل) ولقد تبنت كثير من الشركات تقنية NeXTSTEP كما أنها (أقصد التقنية) واجهت نقدا كبيرا لدى الجمهور. ولا تزال هذه التقنية إلى اليوم (باسم Cocoa) تقينة مستقلة صلبة مبنية على أساس محدد سبق كل المنافسين في الساحة.. ((هذه الفقرة مأخوذة من كتاب : Cocoa with Objective-C))

وأما بالنسبة لـ Carbon، فقد أطلق على إدارات نظام الماكنتوش هذا الاسم في عام ١٩٩٦ لدى صدور نظام التشغيل Mac OS 8، ولم يكن يعرف من قبل (أقصد الاسم أما الإدارات موجودة)
والغرض من تقنية Carbon هو دعم تطور نظام التشغيل فقد قامت Apple بإعادة تحديث وتطوير ملفات إدارات نظام التشغيل التي سبقت نظام التشغيل X، وذلك لضم تقنيات متطورة وتحسينات قوية إلى نظام X، ومن هذه التقنيات التي ضمتها أبل عن طريق الـ Carbon:
1- الذاكرة المحمية Protected Memory، وفيها تم حماية النظام من أية أعطال يتسبب بها برنامج معين، كذلك تمت حماية كل البرامج، فكل برنامج يسبح في الذاكرة المخصصة له، ولا يؤثر على الأقسام الأخرى، فلم يعد هناك داع لإعادة تشغيل الحاسوب كما كان يحدث في بيئة Classic.
2- الوقاية عند تعدد المهام Preemptive Multitasking فيتم إعطاء الوقت اللازم لكل تطبيق مما يؤدي إلى نتائج ذات أكثر فعالية
3- تخصيص الذاكرة بحسب الحاجة فقط Dynamic Resource Allocation فيستطيع البرنامج تخصيص جزء من الذاكرة بحسب ما تقتضيه الحاجة فلا يخصص أكثر من حاجته كما كان يحدث في نظام Classic حيث كان يتم التخصيص بحسب ما هو محدد من قبل. لعلكم لاحظتم ذلك عند تحديد برنامج ما واختيار Get Info من قائمة File في نظام التشيغل 9.
4- واجهة نظام التشغيل التي تعرف باسم (المائي أو الماء) Aqua وهذه الواجهة لا تتوفر إلى للبرامج التي تعمل على نظام التشغيل X.

وأما كيف فكرت Apple بإطلاق هذا الاسم؟ ورد في كتاب C Carbon ما يلي: العنصر كربون هو العنصر الأساسي للحياة على وجه الأرض (من علم الكيمياء)، وكذلك الـ Apple Carbon هو العنصر الأساسي لإنشاء البرامج التي تعمل في بيئة نظام الماكنتوش، وباستخدام Carbon لن تستفيد من تقنيات نظام التشغيل X فحسب، بل تستطيع إنشاء أي برنامج مهما كان باستخدام أسهل المكتبات البرمجية (Carbon) التي أضيفت إلى لغة C. (وذلك لأن دعم لغة Pascal كان قد توقف في عام 1996 بعدما كانت Apple تعتمد عليها كليا).

وهذه الإضافة (أقصد إضافة مكتبات الـ Carbon إلى لغة C) جعلت إنتاج البرامج أسهل على مستوى العالم للأنظمة المستخدمة على مستوى العالم أيضا.

فالأمر (أولا) ليس لأن Carbon أقدم أو أحدث، بل هو نظام التشغيل نفسه، فعند استخدامه سنتعامل مع النظام بشكل مباشر وهو أسهل، وأفضل البدء به لأننا سنفهم كيف يعمل نظام التشغيل وكيف تتواصل إداراته معا. ثم بعد أن نأخذ الفكرة ننتقل إلى Cocoa.

و (ثانيا) الـ Carbon أسهل بكثير من Cocoa.

قارن بين هذين البرنامجين: الأول مكتوب بالـ Carbon والثاني مكتوب بالـ Cocoa:

البرنامج الأول - باستخدام تقنية Carbon:

#include <Carbon/Carbon.h>
int main (int argc, const char * argv) {
MoveTo(200,200)
DrawString ("\pHello World");
return 0};


البرنامج الثاني - باستخدام تقنية Cocoa:

#import<Foundation/Foundation.h>
int main (int argc, const char * argv) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSLog(@"Hello World");
[pool release];
return 0;}

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

وأحب أن أضيف ما يلي:
برامج Adobe مثل Photoshop و Illustrator و InDesign تم تطويرها باستخدام تقنية Carbon
برنامج iTunes و iDVD من Apple تم تطويرهما باستخدام Carbon 
برنامج QuickTime و برنامج Preview و برنامج Font Book تم تطويرهم باستخدام Coccoa وهكذا...
__________________
أبو بكر
رد مع اقتباس