منذ 2012

مكتبة انفورماتيك

كل المقالات، بأسماء أصحابها وتواريخها الأصلية.

مقالات عامة

الاستضافة والحوسبة السحابية Hosting and Cloud

عندما تقوم بزيارة أي موقع في الانترنت من جهازك الشخصي او الجوال، فالمتصفح Browser (أو التطبيق) الذي تستخدمه سوف يقوم بطلب الصفحة المطلوبة من الجهاز (السيرفر Server) الذي يحتوي ذلك الموقع. وهكذا فكل مواقع الانترنت والتطبيقات التي نزورها

أكمل القراءة ←
هندسة برمجيات

عمل ال Repository Pattern باستخدام ال Interface

هذه المقالة ستبين كيف يمكن أن تستخدم ال Interface في جعل الكود قابل للتطوير بسهولة Extensibility، وسوف نأخذ مثال على ال Repository Pattern. في هذه السلسلة سوف نوضح ما يلي: * الفرق بين ال Abstract Class وال Interface * دور

أكمل القراءة ←
مقالات عامة

تحويل بيانات من ملف نصي الى اكسل excel باستخدام NotePad++

سوف نأخذ في هذه المقالة أحد الطرق لمعالجة الملف وتحويله من شكل الى اخر (اكسل excel)، وذلك باستخدام محرر النصوص NotePad++ بالاضافة الى طريقة استخدام ال regex في البحث والاستبدال المثال الذي سوف نعمل عليه به  تجد أن

أكمل القراءة ←
أمن المعلومات

أهمية إدارة الهوية في التطبيقات Identity Management

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

أكمل القراءة ←
مقالات عامة

حل مشكلة توليد ملفات CSV بالعربي برمجياً وفتحها بالأكسل Excel

مشكلة ملف ال CSV العربي مع ال Excel كثير من الأحيان نحتاج لتوليد ملفات اكسل شيت Excel برمجياً من داخل المشاريع مثلاً لتصدير بعض التقارير، وبدلاً من أن نقوم باستخدام مكتبات خاصة لكي تولد ملفات Excel فنقوم بعمل

أكمل القراءة ←
هندسة برمجيات

دور ال Interface في قابلية الصيانة Maintainability

واحدة من أهم الأسباب في استخدام ال Interface هو أنه يساعد في جعل الكود أكثر قابلية للصيانة Maintainability، أي الكود المرن في التغيير وليس الذي يحتاج تغييره كاملاً بسبب تغيير بسيط، وبالتالي يضمن هذا الأمر أن الكود يعمل

أكمل القراءة ←
هندسة برمجيات

ما هو الفرق بين ال Abstract class وال Interface في البرمجة؟

استخدام ال Interface وال Abstract Class يضيفان طبقة من ال Abstraction في الكود، والفروقات التي بينهم هي التي تحدد أي Abstraction سوف تفضلها للمشكلة التي تريد حلها. في هذه السلسلة سوف نوضح ما يلي: * الفرق بين ال Abstract

أكمل القراءة ←
برمجة

برتوكول الـ HSTS وتطبيقه مع الـ ASP.NET MVC

الـ HSTS او ما يعرف بالـ HTTP Strict-Transport Security هو بروتكول يختص بتنبيه المتصفحات Browsers بإستخدام بروتكول الـ HTTPS وهو مثل الحلقة ما بين تطبيق الذي يعمل على الويب وما بين المتصفح. الـ Header Type لهذا البرتكول

أكمل القراءة ←
هندسة برمجيات

التعامل مع الـ Caching في الـ ASP.NET Core من خلال Redis

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

أكمل القراءة ←
برمجة

مفهوم الـ Automated من خلال GitHub Actions

بناء البرمجيات الضخمة ليس بالسهولة التي يتصورها البعض، بل تحتاج لقواعد ومجهود متكامل يحقق الإستمرارية بصورة متوازية لمرحلة نشر تلك البرمجيات. CI/CD لا أريد أن أطيل الحديث  عن مفهوم الـ Automated فهو ببساطة جعل العمل يحقق الاستمرارية

أكمل القراءة ←
برمجة

الـ Concurrency مع الـ ASP.NET Core Web API من خلال ETag Header

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

أكمل القراءة ←
هندسة برمجيات

بناء انظمة قابلة للتوسع , بين النظرية والتجربة

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

أكمل القراءة ←
مقالات عامة

خريطة لتعلم الـ Vuejs مع بعض النصائح!!

هذه المادة قابلة للتحديث من وقت لآخر... Vuejs عبارة عن مكتبة Front-End تستخدم في برمجة واجهات برمجيات الانترنت, لها مثيلاتها كـ React و Angular في هذه النصوص أود عرض صورة مبسطة وسريعة لتعلم Vuejs. الشئ الأول والذي

أكمل القراءة ←
هندسة برمجيات

استخدام ال API Gateway في بناء Microservices

في هذه المقالة سوف نتحدث عن بوابة وواجهة العبور الى ال Backends، ففي التطبيقات الضخمة التقليدية Monolithic يكون هناك رابط واحد Endpoint يمثل بوابة الدخول الى ذلك النظام. بينما في ال Microservices فكل خدمة مصغرة لديها ال Endpoints

أكمل القراءة ←
هندسة برمجيات

مقدمة حول ال Microservices

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

أكمل القراءة ←
برمجة

نظرة على DotNet Core من خلال تصميم نظام حجوزات

تحديث 29-05-2020 سأقوم برفع الشفرة المصدرية لنظام الحجوزات على القيت هب هنا دوت نت كور تقنية جديدة من مايكروسوفت تم إصدارها في 2015 وتم كتابة شفرتها من الصفر بحيث أنها لا تقوم بالإعتماد على الـ DotNet

أكمل القراءة ←
مقالات عامة

تطوير الأنظمة وهندسة البرمجيات - Jeff Dean أنموذجاً

حسب ويكيبيديا فإن مطور البرمجيات - Web Developer - يتم تعريفه بأنه شخص متخصص في برمجيات الكمبيوتر يقوم بتصميم النظم لإنجاز المتطلبات التي يحددها محلل النظم، كذلك فإن مهندس البرمجيات - Software Engineer - هو شخص ممارس يقوم بتطبيق النظريات العلمية و

أكمل القراءة ←
برمجة

إجتياز إمتحان الـ #C من مايكروسوفت 70-483.. من الألف للياء

جلست؛  وإجتزت قبل ستة أيّام، تحديدا يوم 19/9/2019،  امتحان Programming in C# 70-438  من قبل مايكروسوفت Microsoft وهذا الإمتحان يتعلق بتحديد مستويات المبرمجين الذين يستخدمون تلك اللغة في برمجة تطبيقاتهم على منصة الدوت نت.

أكمل القراءة ←
دوت نت

مفهوم الـ Data Concurrency من خلال الـ Entity Framework

في هذه المقالة سأتطرق لمفهوم الـ Data Concurrency وقد يكون فيه من الصعوبة في بداية التعامل معه بالنسبة لبعض المطورين، خصوصا أنه قد يتم تطبيقه في بعض التطبيقات خصوصا التطبيقات الحسابية أو تطبيبقات البنوك أو تطبيقات التسوق الإلكتروني.

أكمل القراءة ←
مقالات عامة

تثبيت نظام ويندوز للأجهزة عبر الشبكة Windows Deployment Services

قبل إسبوع أو أكثر تم تكليفي بمهمة مشروع برمجي جديد لوزارة سيادية في دولة ما وقد تم تسليمي جهاز الخادم Server والأجهزة المساعدة الأخرى.. الخادم يعمل على نظام التشغيل ويندوز سيرفر 2012 Windows Server 2012 R2 ... في فترة

أكمل القراءة ←
دوكر

تشغيل البرامج باستخدام ال Docker Compose

تحدثنا سابقاً عن كيفية تشغيل البرامج وال Containers، وكيف يمكن ان تشغل أحد البرامج بدخل ال Containers التي تعمل، وكيف نقوم بتشغيل ال Web Servers، وايضاً كيف نتعامل مع قواعد البيانات Databases، في هذا الموضوع سوف نقوم بكل

أكمل القراءة ←
برمجة

التعامل مع الإجراءات المخزنة من خلال Dapper في تطبيقات الدوت نت (2)

في المقالة السابقة تحدثت عن مجموعة من الاساسيات التي توفرها Dapper وهي الـ CRUD وقد شرحت أن Dapper تعتمد على الواجهة IDbConnection وبالتالي في جميع حالات التنفيذ على قاعدة البيانات نقوم بإستخدام الاسلوب Execute أما في حالة الإستعلام

أكمل القراءة ←
برمجة

مقدمة عن Dapper من خلال بيئة الـ DotNet

Dapper عبارة عن Micro-ORM وتختص بعملية الوصول لقاعدة البيانات المرتبطة بالمشروع الذي نعمل عليه ،وهي خفيفة الحجم وسهلة التعامل وعالية في الأداء. معظم التطبيقات التي ننشئها تتعامل مع قواعد البيانات؛ بالتالي دائما ما نبحث عن طرق الإتصال

أكمل القراءة ←
برمجة

إستدعاء الـ ASP.NET Web API في الـ ASP.NET MVC

... تحدثتُ في المقالة السابقة لي، عن كيفية تهيئة الـ Service من خلال استخدام منصة الـ ASP.NET Api وعرضت مشروع مبسط يختص بتجديد واصدار جوازات المواطنين، كما عرضت كيفية اختبار الشفرات بإستخدام منصة مايكروسوفت Unit Test لجميع الأساليب

أكمل القراءة ←
دوكر

تشغيل قواعد البيانات في دوكر Database in Docker

عملية تنصيب وتشغيل قواعد البيانات بالطريقة التقليدية ليست سهلة وتحتاج للعديد من الخطوات والاعدادات والتأكد من عدم استخدام ال port بواسطة برامج اخرى، في هذا الموضوع سوف نقوم بتشغيل قواعد البيانات في دوكر مثل Microsoft SQL Server وايضاً

أكمل القراءة ←
برمجة

مقدمة حول ال ASP.NET Web API

مقدمة – برتوكول الـ HTTP – عمل صفحة الـ ASP.NET: جميعنا نستخدم الشبكة العنكبوتية (الإنترنت) في جُل معاملاتنا اليومية؛ الرسمية أو الترفيهية، نقوم بالدخول على المواقع الإلكترونية وننتظر نتائج ذلك الدخول، نقوم بحفظ المعلومات واستجلابها عن طريق عناوين

أكمل القراءة ←
الذكاء الاصطناعي

التقدير الخطي Linear Regression خوارزميات تعلم الآلة

سميت بهذا الإسم لأنها تفترض أن النتائج الغير معروفة يمكن تقديرها بالإعتماد على معادلة الخط المستقيم y=mx+b لنفترض أن لدينا مجموعة بيانات ممثلة بهذا الجدول وهذا المخطط لأطوال ساق نبتة في عدة أيام مختلفة (طول ساق

أكمل القراءة ←
برمجة

بناء نظام جوازات المواطنين باستخدام الـ ASP.NET MVC والـ Unit Tests

هل أنت مستعد للعمل هنا؟...ستكتب 1000 سطر برمجي اليوم... لنبدأ يتكون هذا التطبيق من ثلاثة أجزاء..وجميعها سنعمل عليها هنا..يتكون من إنشاء قاعدة البيانات والتطبيق...ويتكون من إنشاء إدارة التطبيق..ويتكون من عمل إختبار الشفرات للتطبيق.

أكمل القراءة ←
برمجة

تهيئة محرر النصوص TinyMCE للعمل مع الـ ASP.NET MVC بلغة الـ C#

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

أكمل القراءة ←
برمجة

كيفية تهيئة مكتبة الـ Ninject للعمل مع مشروع الـ ASP.NET MVC

ستحتاج لفيجوال ستديو 2012 او 2013 او 2015 او 2017 لتطبيق المثال الذي سنشرحه هنا. ولقد قمت بإستخدام Visual Studio 2013 Express For Web لتطبيق تلك المكتبة. لو فرضنا لدينا فئة class لحفظ تفاصيل درجة الحرارة C1 ولدى

أكمل القراءة ←
دوكر

مشاركة المجلدات في دوكر Docker

أحد المميزات في دوكر Docker هي سهولة تشغيل البرامج بدون خطوات وتعقيدات كثيرة في التنزيل، وهذا الأمر سوف نستخدمه كثيراً لتحميل البرامج التي نحتاجها لاستضافة مواقعنا مثل nginx أو IIS وايضاً لتشغيل أي Command Line Application أخر. في

أكمل القراءة ←
دوكر

البداية مع دوكر Docker

سوف نتحدث في هذا الموضوع عن تنزيل دوكر في ويندوز، ولينوكس، ومن ثم نقوم بتشغيل بعض البرمجيات containers عليه مثل Nginx و IIS وسوف نرى كيف أصبحت عملية تنزيل البرمجيات سهلة للغاية وبدون أي اعدادات تذكر، وسوف نوضح

أكمل القراءة ←
دوكر

مقدمة حول دوكر Docker

المواضيع في السلسلة: 1. مقدمة حول دوكر Docker (الموضوع الحالي) 2. البداية مع دوكر Docker 3. مشاركة المجلدات في دوكر Docker 4. بناء ال Docker Images 5. تشغيل قواعد البيانات في دوكر Database in Docker 6. تشغيل البرامج

أكمل القراءة ←
جافا

خوارزمية البحث الثنائى Binary search

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

أكمل القراءة ←
مقالات عامة

مقدمة عن بروتوكول ال HTTP

أغلب إن لم يكن كل المستخدمين قد سمع بال HTTP من قبل، على الأقل قاموا بكتابته في المتصفحات http:// لفتح المواقع المطلوبة. وبالرغم من الاستخدام المتكرر الا أن كثير من المختصين (مطورين تطبيقات الويب، مختصي الحماية، مدراء الأنظمة)

أكمل القراءة ←
أمن المعلومات

البرمجيات الخبيثة والفيروسات Malicious Software

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

أكمل القراءة ←
SOLID

شرح ال Single Responsibility Principle

مفهوم ال Single Responsibility Principle واختصاراً SRP هو من أهم المفاهيم في أساسيات تصميم البرمجيات SOLID، وبنى هذا المفهوم اعتماداً على مفاهيم ال Coupling وال Cohesion وال Separation of Concerns والتي سبق أن تحدثنا عنها سابقاً هنا ماذا

أكمل القراءة ←
هندسة برمجيات

مقدمة لل SOLID

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

أكمل القراءة ←
هندسة برمجيات

ماذا تعرف عن ال Coupling وال Cohesion في تصميم البرمجيات ؟

ماذا نعني بال Coupling وال Cohesion كثيراً ما نسمع عن هذا المصطلحان وأنه يجب أن تسعى الى أن يكون الكود قليل التداخل Low Coupling وأكثر تجانساً High Cohesion بدون توضيح مناسب لمعناها، في هذه المقالة سوف نوضح هذه

أكمل القراءة ←
هندسة برمجيات

ما هي ال Scalability وكيف يتحمل الموقع ملايين الزوار ؟

مقدمة موضوع ال Scalability يعتبر من أهم المواضيع بالنسبة لمطورين الويب خصوصاً هذه الأيام مع تزايد عدد البيانات والمستخدمين سواء في التخزين أو المعالجة أو حتى في الارسال، والطلب على مطورين الويب الذي لديهم خبرة في ال Scalability

أكمل القراءة ←
برمجة

ما هو الـ stacktrace؟

في لغة الجافا، تنقسم ذاكرة الـ JVM إلى عدة أقسام، ومنها ما يسمى بالـ stack. عند استدعاء دالة س (method) فإنه يُنشأ frameبداخله معلومات الدالة س ويوضع هذا الـ frame أعلى الـ stack. وعند الانتهاء من تنفيذ

أكمل القراءة ←
خوارزميات

ما هو ال Hashing ولماذا يجب أن لا يستخدم كوسيلة تشفير Encryption ؟

كثير من الأحيان نجد من يستخدم ال Hashing algorithms كطريقة للتشفير Encyrption وهذا الأمر ليس صحيح (مثلاً استخدام MD5 أو SHA لتشفير البيانات، أو حتى فهم فكرة الHashing على أنها تشفير للبيانات)، فالتشفير يحتاج مفتاح key أو باسورد

أكمل القراءة ←
برمجة

سلسلة معمل البيوانفورماتيك :الفصل الاول~أين يبدأ نسخ الجينوم؟

بسم الله الرحمن الرحيم والصلاة والسلام على أشرف المرسلين سيدنا محمد صلى الله علية وسلم   Bioinformatics Lap الفصل الاول بعنوان أين يبدأ نســــــــــــــــــــــخ الجينوم ( Chapter 1: Where Does DNA Replication Begin ) الهدف من الفصل :ايجاد منطقة بداية النسخ

أكمل القراءة ←
مقالات عامة

حل مشكلة اللغة العربية في النوت باد (كيف يحلها المبرمج)

السلام عليكم ورحمة الله وبركاته إن الحديث عن موضوع ال Unicode وال Encoding يعتبر من الأساسيات الضرورية Fundamental Concepts لأي مبرمج ومهندس برمجيات، واكمالاً لسلسه (أساسيات يجب أن يعرفها اي مبرمج) فقد طرحنا سؤالاً عن مشكلة عامه نراها

أكمل القراءة ←
الويب

بنية دروبال – المجلدات وأهم الملفات

مقدمة: من المهم التعرف على تركيبة دروبال من حيث المجلدات والملفات وما تقدمه من فهم عميق للزائر الجديد لعالم دروبال سواء كان مهتماً بالجوانب التطويرية والبرمجية لدروبال (Back End) أو الجوانب التصميمة والجمالية (Front End)، ولكن قبل البدء

أكمل القراءة ←
برمجة

دورة أندرويد – إعداد البيئة التطويرية

قبل الخوض في أساسيات برمجة تطبيقات أندرويد، سنقوم بتحميل وتثبيت الأدوات التطويرية اللازمة. بطبيعة الحال، يوجد خيارين لبرمجة تطبيق أندرويد: 1. تثبيت بيئة تطويرية متكاملة (IDE)، حيث تسهل لنا عملية التطوير بشكل كبير وتخفي على المبرمج الكثير من

أكمل القراءة ←
برمجة

دورة أندرويد - مقدمة عن الأندرويد

- ما هو الأندرويد: الأندرويد (Android) هو نظام تشغيل مفتوح المصدر مبني على لب نظام اللينكس Linux kernel. تم بناؤه في بداية الأمر لكي يعمل على أجهزة الهاتف الذكية المدعّمة بتقنية اللمس، ثم تم تطويره تدريجياً لكي يعمل

أكمل القراءة ←
برمجة

سلسلة دروس تعلم برمجة تطبيقات أندرويد

-::| بسم الله الرحمن الرحيم |::- [آخر تحديث: السبت 4-1-2013 ~ 05:52PM]   يسرني أن أقدم لكم سلسلة دروس تعلم برمجة تطبيقات أندرويد، آملاً أن تزيد من عدد مطوري الأندرويد العرب وتثري المحتوى التقني العربي على الإنترنت. ستكون الدورة

أكمل القراءة ←
الويب

هل دروبال إطار عمل أم نظام لإدارة المحتوى؟

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

أكمل القراءة ←
الويب

مقدمة عن دروبال

الفكرة: بدأ دروبال في العام 1999م بواسطة طالب هولندي يدعى دريس بايتيرت (Dries Buytaert) حيث كانت تربطه وثمانية من زملائه داخل السكن الجامعي شبكة لاسلكية ولكن لاحظ دريس أن هذه الشبكة ليست ذات فائدة عملية في تبادل ونقل

أكمل القراءة ←
برمجة

الطريق إلى شهادة الجافا OCA 1Z0-803

بدايةً، أشكر الله عز وجل الذي وفقني باجتياز الامتحان وبالتالي الحصول على شهادة الجافا OCA 1Z0-803. سأكتب هنا تقريراً موجزاً عن تجربتي في التحضير لهذا الامتحان وما هي المصادر التي اعتمدتُ عليها، وكيفية التسجيل لهذا الامتحان وما

أكمل القراءة ←
برمجة

اختبر قدراتك في الـ Files, Threads, and Swing

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

أكمل القراءة ←
قواعد البيانات

الزعيم NoSQL و أحفاده الأربعة

السلام عليكم و رحمة الله و بركاته   لمن هذه المقالة ؟ هذه المقالة مُوجهة لكل من تعامل سابقا مع أحد توابع الــ RDBMS و لديه إلمام بمعظم مفاهيم الــ advanced databases. الهدف من هذه المقالة هو التعريف بأهمية

أكمل القراءة ←
مقالات عامة

انطلاقه مشروع اعداد كتاب جافا العربي

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

أكمل القراءة ←
خوارزميات

خوارزميات غيرت العالم ( خوازرمية الرانك Page Rank وكيف تعمل)

خوازرمية  الرانك Page Rank وكيف تعمل أحد أهم العوامل التي ساهمت لصعود محرك البحث Google على حساب المحركات الآخرى القديمة مثل AltaVista و Lycos هو في استخدام خوارزمية ال Page Rank (على الرغم من أن Google ظهرت بعد

أكمل القراءة ←
برمجة

الــ Collections في الجافا

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

أكمل القراءة ←
برمجة

الـ Queues في لغة C

السلام عليكم و رحمة الله و بركاته   كنا قد تحدثنا في الجزء الأول من هذه السلسلة عن القوائم المتصلة البسيطة و تحدثنا في الجزء الثاني عن القوائم المزدوجة و انتقلنا بعد ذلك إلى الجزء الثالث لنشرح المكدسات و

أكمل القراءة ←
برمجة

الــ Stacks في لغة C

السلام عليكم و رحمة العلام و بركاته   كنا قد تحدثنا في الجزء الأول من هذه السلسلة عن القوائم المتصلة البسيطة و تحدثنا في الجزء الثاني عن القوائم المزدوجة و يسرني أن أبدأ معكم في شرح الجزء الثالث و

أكمل القراءة ←
خوارزميات

خوارزمية ID3

بسم الله الرحمن الرحيم ، والصلاة والسلام على اشرف المرسليين سيدنا محمد صلى الله علية وسلم خوارزمية ID3 مقدمة: تتحدث المقالة عن احد خوارزميات تصنيف البيانات وهى خوارزمية ID3 ونستعرض فيها شرح للخوارزمية وكيفية تطبيقها والقصور فيها تعريفها هى

أكمل القراءة ←
برمجة

القوائم المزدوجة في لغة C

السلام عليكم ورحمة الله و بركاته   كنا قد تحدثنا في الحلقة الأولى من هذه السلسلة عن القوائم المتصلة البسيطة و يسرني أن أبدأ معكم في شرح الجزء الثاني و الذي يتعلق بالقوائم المزدوجة (Doubly Linked List).   الفهرس * تعريف

أكمل القراءة ←
خوارزميات

خوارزميات غيرت العالم (محركات البحث وكيف يستخرج النتائج المطابقة)

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

أكمل القراءة ←
جافا

نظرة سريعة حول Lucene

العديد من البرامج التي نستخدمها بشكل يومي تستخدم خوارزميات سريعة في البحث قد لا ندري عنها، فبدئاً من محرك البحث في على الويب Google أو MSN Search والتي تخرج لك النتائج في غضون ثانية واحدة وأيضا برامج البحث

أكمل القراءة ←
خوارزميات

خوارزمية Sieve of Eratosthenes

تعتبر خوارزمية Sieve of Eratosthenes من أسهل الخوارزميات لإيجاد الأعداد الأولية Prime Numbers ضمن مجال معين من الأعداد الصحيحة n ، حيث تقوم فكرتها على حذف مضاعفات الأعداد داخل هذا المجال ، حيث أن تعريف الأعداد الأولية يستبعد وجود الأعداد

أكمل القراءة ←
جافا

جافا دائماً Passing by Value

طريقة تمرير المتغيرات في جافا Java من المفاهيم الأساسية في مفهوم الدوال Functions/Methods في لغات البرمجة هو تمرير المتغيرات أو المعاملات للدوال Parameter Passing، وبشكل عام هناك طريقتين للتمرير المعاملات الأولى هي التمرير بالقيمة Pass by Value

أكمل القراءة ←
الذكاء الاصطناعي

الخوارزميات الجينية Genetic Algorithm

بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاتة تتناول المقالة بأذن الله شرح للخوارزميات الجينية: تاريخها مبدأها الخوارزمية اساسها تطبيق على مشكلة من مشاكل الحياة وضع الكود اللازم لكل جزء ::ان شاء الله:: ~تاريخها History الgenetic algorithm

أكمل القراءة ←
سي/سي++

توليد الأرقام العشوائية

السلام عليكم و رحمة الله و بركاته   في هذه المقالة سنتعرف على النقاط التالية: 1. ما هو العدد العشوائي ؟ وهل هو موجود ؟ 2. لماذا نحتاج لتوليد الأرقام العشوائية ؟ 3. كيف يمكننا توليد أرقام عشوائية (باستخدام الدوال الجاهزة) ؟ 4.

أكمل القراءة ←
أمن المعلومات

تحليل الفايروس Perlovga وكتابة المضاد للفايروس

في هذا الموضوع سوف نتحدث بشكل عملي على تحليل أحد الفايروسات الحقيقيةو هو فايروس Perlovga كما يسمية مضاد Mcafee وهناك أسماء أخرى لهذا الفايروس مثل TROJ_PERLOVGA.A (من تسمية شركة Trend Micro) ، باستخدام اداوت التحليل ومن ثم

أكمل القراءة ←
أمن المعلومات

تحليل البرامج الخبيثة Malware Analysis

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

أكمل القراءة ←
برمجة

الاستخدامات المتقدمة للدالة system

السلام عليكم و رحمة الله و بركاته   رابط النسخة الفرنسية من المقالة على موقعي الخاص في منتديات developpez : Apprendre à utiliser la fonction system   سنتعرف في هذه المقالة على كيفية استخدام الدالة system في سي++. لتوضيح أهمية هذه

أكمل القراءة ←
جافا

برمجة التطبيقات الموزعه RMI بجافا

التطبيقات الشبكيه عاده تكون لنوعين من البرامج: * الأول يهتم بكيفيه تبادل الملفات والبيانات بين الClient والـ Server ويتم التعامل مع هذا النوع باستخدام بروتكولات FTP,SMTP,HTTP وغيرها من البروتكولات. * النوع الثاني من التطبيقات يهتم بكيفيه تشغيل برنامج

أكمل القراءة ←
جافا

التعامل مع JList في Swing

سنتناول في هذا الموضوع لمحة بسيطة عن استخدام الJList وعمل Extending لها لكي تتناسب مع حاجة المستخدم ،، والJList وكغيرها من الSwing Component مبنية على مفهوم الModel-View-Controller وبالتالي اذا كنت تريد تغيير الObject الموجود داخل الComponent سوف

أكمل القراءة ←
خوارزميات

خوارزميات مطابقة النصوص Pattern Matching Algorithm

خوارزميات مطابقة النصوص Pattern Matching أو البحث في النصوص من المواضيع المهمه في مجال الخوارزميات ، حيث الهدف هو البحث عن نص ما سوف نطلق عليه Pattern داخل مجموعه كبيره من النصوص Text ـ ويمكن أن يكون البحث عن

أكمل القراءة ←
دوت نت

مفهوم البرمجة المتوازية

المقالة * البرمجة المتزامنة * مميزات البرمجة المتزامنة * البرمجة المتوازية * مميزات البرمجة المتوازية البرمجة المتزامنة هي عملية كتابة وتنفيذ للكود بشكل متزامن بمعني ان يتم تنفيذ الكود step by step خطوة بخطوة، وهي الطريقة التقليدية في تنفيذ الاوامر واعطائها لل

أكمل القراءة ←
دوت نت

Caller Info Attributes in C# 5.0

في بعض الاحيان عندما تكتب كود تحتاج لمعرفة معلومات عن ال Method التي منها تم استدعاء كودك ! قبل C# 5 كنا نستخدم الكلاس System.Diagnostics.StackFrame , علي سبيل المثال using System; using System.Diagnostics; namespace CS_05 { class

أكمل القراءة ←
خوارزميات

خوارزمية البحث الثنائي Binary search

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

أكمل القراءة ←
خوارزميات

خوارزمية ترتيب الفقاعات Bubble Sort

السلام عليكم و رحمة الله و بركاته     تحدثنا في الجزء الأول من هذه السلسلة عن خوارزمية البحث الخطي و كان من المفترض أن نتحدث في هذه المقالة عن خوارزمية الترتيب الثنائي و لكن أحببت أن أبدأ بإحدى خوارزميات

أكمل القراءة ←
سي/سي++

أساسيات البرمجه في نظام الويندوز

بســم الله الـرحمــن الرحيــم فهم البنية التحتية لأنظمه الويندوز مطلب ضروري لأي مبرمج يريد بناء برامج تعمل بكفائه عالية على نظام ويندوز ، وفي هذه السلسله من الدروس سوف نتناول أساسيات البرمجه تحت نظام الويندوز والتي تعطيك الأساس الصحيح

أكمل القراءة ←
خوارزميات

خوارزمية QuickHull

سنتحدث اليوم عن مشكلة معروفة في مجال ال Computational Geometry وهي تحديد أصغر مضلع يحوي مجموعة من النقاط! وقبل أن ندخل في حل المشكلة ، دعونا نتعرف على بعض المصطلحات . Points وهي نقاط في المستوى Plane ، مثلا النقاط p(

أكمل القراءة ←
خوارزميات

خوارزمية البحث الخطي Linear search

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

أكمل القراءة ←
سي/سي++

تعرَّف على أشهر مكتبات الــ GUI في سي++

السلام عليكم و رحمة الله و بركاته   لا يزال السؤال الذي يدور في أذهان الكثير من عشاق ++C : مالسبيل إلى برمجة الواجهات الرسومية !؟ في هذه المقالة سأحاول أن أجيب على هذا السؤال من خلال التطرق لأشهر مكتبات الــ

أكمل القراءة ←
أمن المعلومات

خوارزمية Diffie-Hellman (رؤية من الداخل)

السلام عليكم و رحمة الله و بركاته   في هذه المقالة, سأضع بين أيديكم شرحا لخوارزمية Diffie-Hellman و كلي أمل بأن يستفيد الجميع.     قمتُ بإدخال بعض الروابط المهمة في بعض الكلمات للذين يريدون الاستزادة, الكتابة المُظللة, ذات

أكمل القراءة ←
أمن المعلومات

هل تهتم لحماية التطبيق قبل أو بعد الانتهاء من البرمجة ؟

كنت في مناقشة مع أحد المطورين حول تطوير برنامج مختص بال Authentication يعمل على الاندرويد، وبما أن البرنامج يصنف تحت برامج الحماية Security Applications فقد أفترضت أن صديقنا سوف يراعي كل ال Standards المستخدمة في تطوير الأنظمة الأمنة

أكمل القراءة ←
سي/سي++

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

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

أكمل القراءة ←
سي/سي++

الكود الأكثر صعوبه Obfuscated Code

مقالنا اليوم يتكلم حول طرق سيئه "للغايه" لكتابه الكود بحيث لن يفهم هذا الكود الا القليل ، وهناك بعض الأسباب لعمل مثل هذه البرامج منها مثلا التسليه Fun ، التحدي ، حمايه كود البرنامج ، الفوز بمسابقه ما (هناك مسابقه

أكمل القراءة ←
سي/سي++

اجعل المترجم يساعدك في أكتشاف الأخطاء باستخدام const

في المقال السابق ( لماذا عليك أن تقلل من الأعتماد على Preprocessor ؟)  تحدثنا عن ضروره التقليل من استخدام الـ Preprocessor وخاصه عند تعريف الثوابت ، وذكرنا البديل الأفضل وهو أستخدام const .. مقالنا الليله يدعوك الى استخدام الqualifier المسمى const في

أكمل القراءة ←
سي/سي++

لماذا عليك أن تقلل من الأعتماد على Preprocessor ؟

موضوعنا الليله يتحدث حول التقليل من استخدام الـ Preprocessor في سي++ وأستخدام طرق أخرى للوصول الى الهدف ، وخاصه الـ #define والتي كما سنرى بعد قليل مساوئها أكثر من ميزاتها .. وبشكل عام دائما حاول الأعتماد على الCompiler وليس الـ

أكمل القراءة ←
جافا

الحصول على اسم الدولة من خلال عنوان الجهاز

عند حصولك على IP شخص ما سواء من خلال تسجيل logging هذا العنوان القادم للسيرفر أو حتى عند قرائتك للSMTP Header من صندوق بريدك حتى تحصل على عنوان مرسل الرسالة الحقيقي أو غيرها من الحالات فإنك في الغالب

أكمل القراءة ←
جافا

حفظ إعدادت البرامج Storage Of Application Preferences

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

أكمل القراءة ←
هندسة برمجيات

تصميم البرمجيات باستخدام نمط Model-View-Controller

من المعروف والمسَلَم به في عالم البرمجيات القاعده "المتطلبات دائماً تتغير" " Software Requirement Always change "، هذه القاعده تنص على أن متطلبات البرنامج سواء كانت General Software موجه للعامه أو Custom Software موجه

أكمل القراءة ←
هندسة برمجيات

ما الفرق بين ال Composition و ال Aggregation

عالم البرمجه له كثير من الأوجه أو الأقسام programming paradigm منها البرمجه الإجرائيه procedural programming مثل لغه السي والباسكال (البعض يطلق عليهم imperative language)، نوع أخر وهي الFunctional programming وهي تختلف عن الإجرائيه مثل لغه ليسب فالبرمجه هنا

أكمل القراءة ←