الأحد، مايو 03، 2009

علم البرمجيات

علم البرمجيات (الكيان المعنوي) Software
هو أحد فروع علم الحاسوب وهو علم يختص بكل ما يتعلق بالبرامج المستخدمة مع الحاسوب وذلك من حيث تصميمها وإعدادها وتشغيلها وتطويرها وغير ذلك ، وتم تقسيم البرامج بشكل عام إلى فرعين :
1 – البرمجيات التطبيقية : Application Software
وهي البرامج التطبيقية المختلفة التي يمكن استخدامها مع الحاسوب سواء كانت هذه البرامج جاهزة تطرح في الأسواق للاستخدام العام ويستفيد منها كافة المستخدمين الراغبين في ذلك أو كانت برامج خاصة وهي تلك البرامج التي تعد من أجل استخدامها من قبل جهة معينة تناسب متطلباتها و عملها وهي في الغالب لا تصلح سوى لهذه الجهة ولا يستفيد منها سواها.و من هذه البرامج :
البرامج المكتبية مثل :
- MS-Word- MS-Excel- MS- Power Point- MS- Access- MS- Front Page- MS- Outlook- Adobe Acrobat
ومنها أيضاً البرامج الخاصة بالرسويميات Graphics و التصميم الهندسي و تصميم الفيديو و العروض المرئية الإحترافية أو برامج تصميم مواقع الإنترنت ومن هذه البرامج :
- Adobe Photoshop- Adobe Illustrator - Adobe premier - Macromedia Fireworks - Macromedia Flash- Macromedia Dreamweaver- CorelDraw - PrintShop- AutoCAD - Ulead Video Studio
ومن البرامج التطبيقة الآخرى ، برامج الصوتيات Audio وهي برامج لتشغيل ملفات الصوت أو التعامل معها بأي شكل من الأشكال ومنها برامج تشغيل الفيديو Video بأنواعه .
أيضاً من البرامج التطبيقية برامج الإنترنت المختلفة كمتصفحات المواقع مثل Internet Explorer أو Netscape Explorer وغيرهما الكثير أو برامج الماسنجر الكثيرة مثل Yahoo Messenger أو MSN Messenger وغيرهما الكثير طبعاً.
هذه عبارة عن أمثلة عن بعض البرامج التطبيقة الشهيرة ولكن الساحة تزخم بالمئات من البرامج التطبيقية الجاهزة للإستخدام والتي تلبي رغبات كافة المستخدمين.
2 – برمجيات النظم : System Software
وهي برامج ذات طابع خاص ، فهي برامج مهمة جداً بالنسبة للحاسوب قبل أن تكون مهمة بالنسبة للمستخدمين فهي برامج تمكننا من التعامل مع الحاسوب سواء من حيث الاستخدام أو من حيث كتابة وتطوير البرامج المختلفة وغير ذلك. وبرمجيات النظم هي :
أ – أنظمة التشغيل : Operating System
وهي كما أشرنا سابقاً برامج ذات طابع خاص تتحكم في الحاسوب وملحقاته والبرامج المختلفة المستخدمة وتلبي رغبة المستخدم طوال فترة مكوثه أمام شاشة الحاسوب .
ومن اشهر أنظمة التشغيل على الإطلاق ، نظام التشغيل Windows بإصداراته المختلفة و أيضاً نظام تشغيل Linux الذي يعتبر منافس قوي جداً لنظام التشغيل Windows لما به من مزايا رائعة ويأتي أيضاً من ضمن انظمة التشغيل الشهيرة والقوية نظام التشغيل Unix المستخدم بكثرة وبصفة خاصة كنظام تشغيل للشبكات.
ب – لغات البرمجة : Programming Languages
هي برامج أيضاً ، وإنما هي برامج تستخدم لكتابة برامج مماثلة أي أنها برمجيات نظم تستخدم لكتابة برمجيات تطبيقية ولهذا سميت بلغات ، ولكونها تستخدم لكتابة برامج فإن ذلك يعبر عن مفهوم البرمجة ولهذا فهي تسمى لغات برمجة.
من أشهر لغات البرمجة العالمية ، لغة البرمجة القوية Delphi ولغة Java و لغة PHP وايضاً لغة C الغنية عن التعريف و لغة البرمجة التائة (حسب رأيي الشخصي ) VB.NET التي يتغلب صيتها وشهرتها على مقدرتها الفعلية بالإضافة إلى عشرات من لغات البرمجة المختلفة حيث تختص كل منها في مجال معين فمنها ما هو مناسب للبرامج ومنها ما هو مناسب للشبكات و الانترنت و منها ما هو خاص بالتحكم الآلي بالكومبيوتر و منها ما يستخدم لصناعة العاب الكومبيوتر و غيرها .
جـ - برامج المنفعة : Utilities
هي برامج تقوم ببعض وظائف أنظمة التشغيل بشكل مشابه إلا أنها يمكنها القيام ببعض عمليات (منافع) عادة ما تكون من أجل الصيانة أو الحماية أو السرعة في تطبيق بعض العمليات .
البرامج النفعية في الغالب تكون برامج حماية وتعقب للمشاكل التي قد تحدث للكومبيوتر وأجزاءه سواء كانت مادية أو معنوية أي سواء كانت أجهزة ملحقة بالكومبيوتر أو البرامج العاملة على الكومبيوتر .
من أشهر برامج المنفعة المعروفة البرامج المضادة للفيروسات Antivirus و برامج مكافحة التجسس Antispies وبرامج تعقب مشاكل الأقراص وغيرها الكثير .
د – قواعد البيانات : Data Bases
هي برامج أشبه ما تكون بلغات البرمجة ولكنها صممت للتعامل مع كم هائل من البيانات بمرونة وكفاءة عاليتين وبالتالي فإنها تستخدم لإعداد برامج متكاملة لإدارة هذه البيانات بالشكل المناسب.
هذه البرامج تشبة إلى حد ما لغات البرمجة لأنها مزودة بإمكانيات كتابة البرامج التي تدعم قواعد البيانات التي تنشأها وبالتالي فإني أحب تصنيفها من ضمن برمجيات النظم خلافاً لبعض الكتب التي تصنفها من ضمن البرامج التطبيقية لأنه ليس من المنطقي على سبيل المثال تصنيف Oracle مثلاً على أنها برنامج تطبيقي لما لها من قدرات هائلة تفوق حتى بعض لغات البرمجة الشهيرة.