M.Z.Y
27-12-2007, 01:03
اشاره :
كدام زبان برنامهنويسي را انتخاب كنم؟ از كدام نوع ديتابيس استفاده كنم؟ اينها سؤالات قديمي و تاحدودي كليشهاي هستند. با اين حال خواندن يكي دو مقاله جالب در اينترنت باعث شد، طرح مجدد اين موضوع هميشگي را خالي از فايده ندانم.
كدام زبان برنامهنويسي را انتخاب كنم؟ از كدام نوع ديتابيس استفاده كنم؟ اينها سؤالات قديمي و تاحدودي كليشهاي هستند. با اين حال خواندن يكي دو مقاله جالب در اينترنت باعث شد، طرح مجدد اين موضوع هميشگي را خالي از فايده ندانم.
اصولاً هر از گاهي بايد اين پرسش را مجدداً در كليه سطوح مهندسي نرمافزار، چه در صنعت، چه در رسانهها و چه در دانشگاهها مطرح كرد و دليل آن هم، بسيار ساده است. زبانهاي برنامهنويسي نيز مانند زبانهاي گويشي انسانها پويا هستند و مرتباً متحول ميشوند. در اين راستا برخي خود را با نيازهاي روز تطابق داده و برخي نيز از اين تحولات جا ميمانند.
به همين دليل لازم است هر چند وقت يكبار اين پرسش را مطرح كرده و جديدترين پاسخها را به نقد بگذاريم. براي اينكه بحث از حالت نظري خارج شود و حالت كاربردي پيدا كند، اجازه ميخواهم نظرم را در اين مورد به اختصار بيان كنم.
برنامهنويسي وب
فعلاً برنامهنويسي تحت وب داغترين سوژه در دنياي برنامهنويسي است. شايد بد نباشد يادآوري كنم كه اصولاً فلسفه برنامهنويسي تحت وب چه بود كه به اينجا رسيد. علت محبوبيت و رشد گسترده برنامهنويسي تحت وب، حل شدن مشكل كلاينت بود.
در اين مدل از برنامهنويسي، برنامهنويس دغدغه چنداني درباره قابل نصب بودن برنامهاش روي پلتفرمهاي مختلف ندارد زيرا وضعيت تقريباً روشن است. همين كه برنامه شما روي يكي دو مرورگر معروف مانند فايرفاكس و اينترنت اكسپلورر جواب بدهد، كافي است.
بنابراين در پاسخ به اين سؤال كه كدام زبان برنامهنويسي وب را انتخاب كنيم، بايد گفت زبانهايي كه از همه سادهترند و تغيير و تحولات را به سرعت ميپذيرند. در حال حاضر در اين زمينه دو فناوري PHP و ASP.NET پيشتاز هستند. زبان اسكريپتنويسي PHP شباهتهايي به زبان C دارد.
به همين دليل سرعت كامپايل شدن آن بالا است و سايتهايي كه از اين زبان استفاده ميكنند اندكي سريعترند. فناوري ASP.NET از ويژوال بيسيك داتنت يا سيشارپ استفاده ميكند. اين دو زبان، به ويژه در جديدترين نسخه فناوري داتنت در يك حد هستند.
اما به نظر من ويژوال بيسيك همچنان جذابتر و سادهتر به نظر ميرسد. سايتهايي كه با اين دو زبان نوشته ميشوند نرمافزارهاي قدرتمندي را پديد ميآورند كه قدرت انعطاف و گستره كارايي آنها بالاست زيرا هر دو زبان OOP هستند. علاوه بر سهولت برنامهنويسي، پشتيباني از برخي موجهاي نو مانند ايجكس هم بحث روز است.
هم PHP و هم ASP.NET وضع خوبي در اين زمينه دارند. علاوه بر اين، برخي فناوريهاي روز هم خيلي مهم هستند كه وبسرويس يكي از آنهاست. در حال حاضر رقابت شديدي ميان فناوريSOAP كه از سوي آي بيام و مايكروسافت و ديگران پشتيباني ميشود و فناوري REST كه از سوي ياهو و برخي شركتهاي بزرگ ديگر حمايت ميشود، وجود دارد.
اما وضع بعضي زبانها مانند جاوا (JSP) و ColdFusion در دنياي وب خراب است و برخي زبانها اخيراً دوباره مورد توجه قرارگرفتهاند كه از آن جمله ميتوان به Python و Ruby اشاره كرد. وضعيت جاوا در وب در اين ميان جالب توجه است. برخلاف موفقيت چشمگير جاوا در برنامهنويسي براي سيستمهاي بزرگ، اين زبان به شدت در وب دچار ناكامي است. وب يك دنياي بصري است و به سادگي و ظاهر سيستمها اهميت ميدهد.
به همين دليل زبانهاي فاقد ابزارهاي ويژوال و قدرتمند كه در عين حال ساده نيز هستند در اين وادي محكوم به زوالند و اين مسئله براي جاوا كه در زمينه وارد كردن مفاهيم بصري و پويا به دنياي وب پيشگام بود، ناگوار است، البته اين قضيه هيچ ربطي به زبان اسكريپتنويسي «جاوااسكريپت» كه با ظهور ايجكس جان تازهاي پيدا كرده، ندارد.
كدام زبان برنامهنويسي را انتخاب كنم؟ از كدام نوع ديتابيس استفاده كنم؟ اينها سؤالات قديمي و تاحدودي كليشهاي هستند. با اين حال خواندن يكي دو مقاله جالب در اينترنت باعث شد، طرح مجدد اين موضوع هميشگي را خالي از فايده ندانم.
كدام زبان برنامهنويسي را انتخاب كنم؟ از كدام نوع ديتابيس استفاده كنم؟ اينها سؤالات قديمي و تاحدودي كليشهاي هستند. با اين حال خواندن يكي دو مقاله جالب در اينترنت باعث شد، طرح مجدد اين موضوع هميشگي را خالي از فايده ندانم.
اصولاً هر از گاهي بايد اين پرسش را مجدداً در كليه سطوح مهندسي نرمافزار، چه در صنعت، چه در رسانهها و چه در دانشگاهها مطرح كرد و دليل آن هم، بسيار ساده است. زبانهاي برنامهنويسي نيز مانند زبانهاي گويشي انسانها پويا هستند و مرتباً متحول ميشوند. در اين راستا برخي خود را با نيازهاي روز تطابق داده و برخي نيز از اين تحولات جا ميمانند.
به همين دليل لازم است هر چند وقت يكبار اين پرسش را مطرح كرده و جديدترين پاسخها را به نقد بگذاريم. براي اينكه بحث از حالت نظري خارج شود و حالت كاربردي پيدا كند، اجازه ميخواهم نظرم را در اين مورد به اختصار بيان كنم.
برنامهنويسي وب
فعلاً برنامهنويسي تحت وب داغترين سوژه در دنياي برنامهنويسي است. شايد بد نباشد يادآوري كنم كه اصولاً فلسفه برنامهنويسي تحت وب چه بود كه به اينجا رسيد. علت محبوبيت و رشد گسترده برنامهنويسي تحت وب، حل شدن مشكل كلاينت بود.
در اين مدل از برنامهنويسي، برنامهنويس دغدغه چنداني درباره قابل نصب بودن برنامهاش روي پلتفرمهاي مختلف ندارد زيرا وضعيت تقريباً روشن است. همين كه برنامه شما روي يكي دو مرورگر معروف مانند فايرفاكس و اينترنت اكسپلورر جواب بدهد، كافي است.
بنابراين در پاسخ به اين سؤال كه كدام زبان برنامهنويسي وب را انتخاب كنيم، بايد گفت زبانهايي كه از همه سادهترند و تغيير و تحولات را به سرعت ميپذيرند. در حال حاضر در اين زمينه دو فناوري PHP و ASP.NET پيشتاز هستند. زبان اسكريپتنويسي PHP شباهتهايي به زبان C دارد.
به همين دليل سرعت كامپايل شدن آن بالا است و سايتهايي كه از اين زبان استفاده ميكنند اندكي سريعترند. فناوري ASP.NET از ويژوال بيسيك داتنت يا سيشارپ استفاده ميكند. اين دو زبان، به ويژه در جديدترين نسخه فناوري داتنت در يك حد هستند.
اما به نظر من ويژوال بيسيك همچنان جذابتر و سادهتر به نظر ميرسد. سايتهايي كه با اين دو زبان نوشته ميشوند نرمافزارهاي قدرتمندي را پديد ميآورند كه قدرت انعطاف و گستره كارايي آنها بالاست زيرا هر دو زبان OOP هستند. علاوه بر سهولت برنامهنويسي، پشتيباني از برخي موجهاي نو مانند ايجكس هم بحث روز است.
هم PHP و هم ASP.NET وضع خوبي در اين زمينه دارند. علاوه بر اين، برخي فناوريهاي روز هم خيلي مهم هستند كه وبسرويس يكي از آنهاست. در حال حاضر رقابت شديدي ميان فناوريSOAP كه از سوي آي بيام و مايكروسافت و ديگران پشتيباني ميشود و فناوري REST كه از سوي ياهو و برخي شركتهاي بزرگ ديگر حمايت ميشود، وجود دارد.
اما وضع بعضي زبانها مانند جاوا (JSP) و ColdFusion در دنياي وب خراب است و برخي زبانها اخيراً دوباره مورد توجه قرارگرفتهاند كه از آن جمله ميتوان به Python و Ruby اشاره كرد. وضعيت جاوا در وب در اين ميان جالب توجه است. برخلاف موفقيت چشمگير جاوا در برنامهنويسي براي سيستمهاي بزرگ، اين زبان به شدت در وب دچار ناكامي است. وب يك دنياي بصري است و به سادگي و ظاهر سيستمها اهميت ميدهد.
به همين دليل زبانهاي فاقد ابزارهاي ويژوال و قدرتمند كه در عين حال ساده نيز هستند در اين وادي محكوم به زوالند و اين مسئله براي جاوا كه در زمينه وارد كردن مفاهيم بصري و پويا به دنياي وب پيشگام بود، ناگوار است، البته اين قضيه هيچ ربطي به زبان اسكريپتنويسي «جاوااسكريپت» كه با ظهور ايجكس جان تازهاي پيدا كرده، ندارد.