21

لماذا الحكومة تستخدم ASP.NET أكثر من PHP ؟

بالنسبة لدولتي فإن أكثر المواقع الألكترونية الخاصة بالوزارات تستخدم ASP.NET اكثر من PHP ....

الان أتسأل ما السبب ؟ وهل كل الحكومات تتبع نفس النهج ؟؟

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

23

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

20

السبب أيضاً هو عدم الثقة في النفس، هم لا يثقون في قدراتهم لذلك يميلون إلى شراء المُكلف. الشركات في كل اﻷحوال لا تكون أكبر من مواقع كبيرة في اﻹنترنت مثل ويكيبيديا التي تستخدم PHP ,MySQL لكن ويكيبيديا لدينا مبرمجين واثقون من أنفسهم وقدراتهم، لذلك هم لا يحتاجون لأسماء كبيرة كميكروسوفت أو أوراكل لزيادة الثقة.

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

اغلب اللجان العلمية في الجهات الحكومية لا تعرف الفروقات اذكر في مرة كانت هناك ندوة عن الحكومة الالكترونية من قبل الوزارة وقالوا "يجب" استخدام قواعد بيانات أوراكل وعندما سئلوا ولماذا لا يمكن استخدام MSSQL او MySQL كانت الاجابة "النظام هكذا"، الامر بالنسبة لهم بريستيج فقط.

"الحكومات تنظر للهيكلة والموثوقية اكثر من التقنية" موقع البيت الابيض تمت برمجته بالبي اتش بي، دروبال او ووردبرس لا اذكر

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

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

طيب JSP من Sun Microsystems وهي ايضا شركة عريقة ولها خبرة في التقنيات والسيرفرات وكذلك ColdFusion من أدوبي، ولماذا عندما يتعلق الأمر بقواعد البيانات يحددون الأوراكل وليس MSSQL مع ان ال MSSQL من مايكروسوفت؟

السلام عليكم ورحمة الله

أظن ان السبب يتمحور حول منحيين، الأول أنه فيما مضى كان "الاعتقاد" السائد ان PHP تحتوي على ثغرات امنية تعتبر كثيرة مقارنة بالـ ASP.NET، لكن هذا ليس صحيحا ففي أي لغة يعتمد وجود الثغرات من عدمها على طريقة البرمجة، كل اللغات بها ثغرات XSS أو SQL Injection وكذلك CSFRG ما لم يتم البرمجة بصورة صحيحة، ولو اعتبرنا انا الأمر صحيح فلماذا ASP.NET بالذات وليست JSP او CFM او Python او Ruby؟

السبب الثاني برجوازي، ASP من شركة مايكروسوفت ولذلك تدعمها الحكومة الامريكية في امريكا، بريطانيا تتبعها وهكذا دواليك اصبح استعمال ASP.NET مع MSSQL نوع من الموضة - وفي بعض الاحيان يحددون قواعد بيانات أوراكل ايضا - مع انه لا يوجد فرق بينها وبين اي لغة اخرى من ناحية الأداء.

يضاف الى ذلك ان الدول لا يهمها فرق الكلفة في اسعار الاستضافة وفي Licenses.

تحليل موفق بالنسبة لCSFRG أضنك تقصد CSRF

معذرة وشكرا على التصحيح دائما ما اخطيء في تذكرالاختصار ما لم اذهب لجووجل :)

CSRF = Cross Site Request Forgery

ملاحظة ASP.net غالبا مطوروها يستخدمون Linq يعني انه ليس بها SQL Injection

ما توفره لينك هو استخدام المعاملات (parameters) بشكل افتراضي عند التعامل مع الـ SQL والتي عند استخدامها تقي من حقن قواعد البيانات ولكن اذا لم يتم استخدام طريقة المعاملات هذه عند البرمجة فإن قاعدة البيانات ستكون عرضة للإختراق عن طريق الحقن مع ملاحظة ان تقنية استخدام المعاملات ليست فقط في لينك، في الـ PHP هنالك (PDO (PHP Data Objects والتي ايضا تستخدم المعاملات لتغليف القيم المدخلة الى قاعدة البيانات وكذلك يمكن استخدام mysqli:prepare كبديل عن PDO.. واظن هناك شي مشابه في الروبي.

ومن هنا نرى مدى أهمية استخدام هذه التقنية (الاستعلامات المعلّمة) عند التعامل مع قاعدة البيانات لغرض الحماية من الحقن

معذرة لكل مطوري ASP.NET وPHP... مواقع الحكومات دومًا تكون متخلفة وضعيفة من ناحية تصميم وبنية الخادم (backend)، وكذلك من ناحية الواجهة (frontend)، واللغات المستخدمة لبناء هذه المواقع تحقق هذا التخلف بامتياز!

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

لو كان الأمر لي، لبنيت كل المواقع الحكومية التي تستخدم قواعد بيانات وخادمًا بـ Node.js وExpress وMongoDB، لكن أعرف أن هذه الأفكار تبدو مثالية جدًا!

"مواقع الحكومات دومًا تكون متخلفة وضعيفة من ناحية تصميم وبنية الخادم (backend)، وكذلك من ناحية الواجهة (frontend).. لن تجد مبرمجين جيدين يبنون مواقع لخدمات حكومية (إلا من رحم ربي)، وعندما تجد، فإنهم غالبًا يكونون مقيدين بقيود تفرضها طبيعة الاستضافة والبنية التحتية والكلفة المادية التي توفرها الجهة المسؤولة لهم، والنتيجة دومًا مواقع كمواقع التسعينيات وأداء بطيء ومنظر مؤذ للعين"

كلام سليم معظمهم لم يتزحزحوا منذ التسعينات.

أخي الكريم اريد اسباب تقنية بحته للبرمجات والتقنيات التي ذكرت انك تفضلها

نقطة القوة في Node.js قدرتها على التوسع بشكل ممتاز (scalability) واتباع نمط غير مُعيق في الدخل والخرج (Non-blocking I/O) الأمر الذي يجعلها قادرة على تلقي ملايين الطلبات نظريًا على الرغم من كونها أحادية الخيط (single-threaded) وهو الأمر الذي يُعفي الخادم من إنشاء عدة خيوط تستهلك حجمًا أكبر من الذاكرة. نقطة ضعف Node.js أنها لا تستطيع تحمل طلبات تتطلب عمليات حسابية كبيرة وتلبيتها في وقت معقول كاللغات الأخرى، لأن العمليات الحسابية تُعيق المعالج (CPU-blocking) وNode.js أحادية الخيط كما ذكرنا. باختصار عند الحاجة لخادم يتلقى طلبات كثيرة في وقت واحد، ولا تتطلب الكثير من العمليات الحسابية التي قد تعيق المعالج، فإن Node.js خيار ممتاز، خصوصًا إذا كانت قاعدة البيانات تتبع نفس الفلسفة (Non-blocking, asynchronous) وهو ما تلبيه MongoDB. أضف إلى ذلك أن التعامل مع لغة واحدة على كل من الخادم والواجهة يُسهل العمل ويتيح بتعديلات بسيطة نقل أجزاء من الخدمة من الخادم للواجهة والعكس، وكذلك تتعامل JavaScript مع نقل البيانات بشكل طبيعي بصيغة JSON دون الحاجة للتحويلات الزائدة كما في لغات أخرى. أما Express فهو ببساطة الخادم الأكثر شهرة على Node.js، وهو يتبنى فكرة الوسائط (middleware) التي تجعل تطوير الخادم في غاية السهولة.

مايكروسوفت سباقة لعقد اتفاقيات مع الدول الضعيفة بالخصوص

لهذا تجد كثير من الدول تدرّس برامج ولغات برمجة تابعة لمايكروسوفت حصرا

وربما المقابل الاستفادة من تبرعات الشركة ms التي تقدمها كل سنة لدول العالم الثالث !

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

الجامعات والمعاهد تدرس تقنيات ميكروسوفت asp.net و ms-sql وهذا كوّن شريحة من المبرمجين يؤمنون بأن تقنيات ميكروسوفت هي الأفضل، ويؤسفني أن أجد بعضا منهم في بلدي لا يقتنعون بأي لغة برمجة منافسة للغات ميكروسوفت

الرسمية هي السبب الأول، ثانيا الأمان والمرونة، ثالثا الأداء العالي

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

في شركات اﻹتصالات يتم استخدام Java Servlet و JSP في برامج الويب.

ربما لأنه عندما يكون المُخدم تحت تصرّفك فيمكن تثبيت ماتشاء من البرامج، أما عند تثبيت برامج الويب في اﻹنترنت في استضافة خارجية لا يكون هُناك خيار مناسب غير الـ PHP فهو الخيار الأرخص

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

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

بهذا فضلت الحكومات استعمال لغة asp.net اعتقادهم بان هذه اللغة حمايتها قوية جدا باعتبارها مغلقة المصدر

والله اعلم

نعم صحيح ! خطر عبالي هذا السؤال الذي لم اجد له جواب !

فعند تجولي بالمواقع الحكومي و [ الفلسطينية ] تحديداً تستخدم ASP.NET

لمآذا ؟ هل هو اكثر اماناً مثلاً ؟ ام ماذا ؟ في انتظار الخبراء :) ..

انا ايضا حكومات بلدي والمؤسسات التعليمية وكل شي يستعملون هذه اللغة ..

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

فالكل يعلم ان|ه لا توجد مسألة قانونية في حالة بيع نسخ windows ؟

كثير من الدول ترفض استخدام asp.net للخصوصية كمثال روسيا والمانيا .

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

مجهول
  • حذف بواسطة المستخدم

في الغالب الحكومة تعتمد على مهندسين أصحاب شهادات وليس هواة برمجة

وفي الجامعات يتم التركيز على asp.net في الغالب أكثر من php ولذلك تجد خريجي الجامعات وكليات الهندسة على علم بـ asp.net أكثر من php ويقومون ببناء المواقع الحكومية بما يعرفونه