PDA

نسخه کامل مشاهده نسخه کامل : بحث و تبادل نظر بین زبان های (c#,c++,c) گرافیک ، قدرت و کارایی



عــــلی
02-04-2008, 13:32
سلام دوستان و اساتید محترم برنامه نویسی.

دوستان این تاپیک رو زدم برای اینکه برنامه نویسانی که با بیشتر زبان های خانواده C کار کرده اند. تبادل نظری کنیم که کدام زبان برنامه نویسی خانواده C از زبان های دیگر جلوتر است.

البته این رو هم باید در نظر گرفت که زبان های برنامه نویسی بسیار حجیم و بزرگ هستند و بحث نظر بین آن ها خیلی سخت خواهد بود.

من در دبیرستان از چند معلم و مهندس سوال کردم که از نظر قدرتمندی زبان های ++c و #c نظر شما چیست گفتند #c که من دیگه حرفی نزدم و زبان #c رو دنبال کردم.

از مهندسی سوال کردم که نظر شما در مورد زبان C چیست؟

جواب ساده ای داد.

گفت که معمولاً زبان C بیشتر برای کار با ویندوز و فایل ها به کار میره.

خوب حالا من میخوام که نظر شما رو در این سه زبان قدرتمند برنامه نویسی بدونم.

لطفاً اگه توضیحی در مورد این زبان ها دارین همراه با شرکت سازنده و جزئیات ریز و درشت بگین.

با تشکر از همه استادان برنامه نویسی.

عــــلی
02-04-2008, 13:53
زبان برنامه نویسی C++ بر اساس زبان برنامه نویسی C توسط بیرنه استرا استراپ (Bjarne Stroustrup) در سال 1979 و در آزمایشگاه‌های بل طراحی شده است. مبنای نامگذاری این زبان به C++ عملگر افزایش یکانی در زبان C است. C++ زبانی بسیار قوی و قدرتمند است. برنامه نویسی ساخت‌یافته و شیءگرایی را پشتیبانی می‌کند. دارای یک کتابخانه بسیار کامل به نام STL است که تقریباً کلیه ساختمان داده‌های شناخته شده و الگوریتم‌های متداول در آن پیاده‌سازی شده است. زبان C و C++ چنان به هم آمیخته‌اند که تفکیک آن‌ها به سختی امکان‌پذیر است. تقریباً تمام کامپایلرهای موجود، همزمان هم کامپایلر C هستند و هم کامپایلر C++.
تعدد نسخه‌های پیاده‌سازی شده از زبان C++ و احساس نیاز به یک زبان استاندارد باعث شد که یک کمیته مشترک از ANSI یا اداره ملی استاندارد آمریکا و ISO یا سازمان بین‌المللی استاندارد برای استاندارد کردن زبان C++ تشکیل شود. اولین پیش‌نویس زبان C++ استاندارد در ژانویه سال 1994 منتشر شد. با فاصله اندکی از انتشار این پیش‌نویس، اتفاقی افتاد که باعث شد زبان C++ بسیار گسترش یابد. این اتفاق ابداع STL یا کتابخانه استاندارد الگو توسط الکساندر استپانف از شرکت اچ‌پی (HP) بود. بعد از انتشار STL کمیته استاندارد سازی زبان C++ تصمیم گرفت که آن را در استاندارد زبان C++ قرار دهد. در نوامبر سال 1997 نسخه استاندارد C++ به تصویب رسید و در حال حاضر اغلب کامپایلرهای C++ از این استاندارد تبعیت می‌کنند.

عــــلی
02-04-2008, 14:10
C# زبان برنامه نویسی ویژه تکنولوژی دات نت مایکروسافت است.تکنولوژی دات نت اینقدر قابل بحث است که بشه ساعت ها به آن پرداخت و زبان C# بعنوان یک مثال ار توانایی های این تکنولوژی مدخل بسیار مناسبی است.
شما شاید در زبان ویژوال بیسیک ورزیده باشید یا با جاوا مدتها کارکرده باشید و یا از برنامه نویسان با تجربه زبان C باشید و یا اصلا تا به حال برنامه نویسی نکرده باشید و فقط با HTML کار کرده باشید.
اگر به زبان ویژوال بیسیک 6 واردید ، دنیای سی شارپ را زبانی به شدت سلیس و روان و خوش ساخت خواهید یافت. C# شباهت های زیادی با ویژوال بیسیک 6 دارد در عین حالswitch کردن از ویژوال بیسیک 6 به دات نت همانقدر مشکل است که switch کردن از ویژوال بیسیک 6 به سی شارپ.
اگر در زبان جاوا تبهر دارید، زبان سی شارپ را بسیار دوست داشتنی خواهید یافت.شما به راحتی می توانید این دو زبان را با هم مقایسه کنید . سی شارپ چه از نظر سین تکس و چه از نظر مفهومی به جاوا شباهت دارد یادمان باشد ریشه ها (زبان c) یکی است.
دات نت محیطی است که از آن می توان از زبان های برنامه نویسی مختلف استفاده کرد به جای ایجاد یک زبان چند منظوره یک محیط تولید شده که می شود در آن از چندین زبان استفاده کرد.
از نظر مهندسی نرم افزار این یک مزیت چشم گیر است. هر زبان برنامه نویسی خصوصیات خاص خودش را دارد. یکی امنیت بالایی داشته و دیگری توانایی های گسترده تر ودر آخر قابلیت انعطاف بیشتر. ترکیب این امتیازات در مقابل این پروژه با بکارگیری چندین زبان توسط تیم برنامه نوسی تولید نرم افزار را از هر نظر ارتقا می دهد.
CLS(Common language specification)همین چند زبان بکار رفته در دات نت فریم ورک مانندC# ,VB.net,Java.net,C++ قلب دات نتCLR یا همان Common language Runtime است که زبان های برنامه نویسی گفته شده را بهMSIL (Microsoft intermediate language) ترجمه می کند سپس MSIL به زبان باینری ترجمه می کند MSIL به نوع ماکروپرسسور وابسته نیست و تفاوت آن با ویرچوال ماشین Java در این است که ماشین مجازی(Virtual machine) جاوا فقط برای یک زبان یک زبان کارایی دارد در حالیکه CRL برای استفاده از چندین زبان طراحی دارد. می توان مستقیما به زبان به کار رفته در MSIL برنامه ریزی کرد این هم قابل توجه کسانی است که از انجام کارهای دشوار لذت می برند.
حالا به امکان استفاده از زبان های مشترک در دات نت فریم ورک این را هم اضافه کنید که در تمام زبانها از یک جور Data type مشترک هم اضافه کرد بی هراس از اینکه در تفهیم آن ها در زبان های مختلف اشکالی پیش آید.به یاد داشته باشید دات نت فریم ورک و همچنین سی شارپ بر مبنای Object Oriented محسوب می شوند. پس چون تمام کلاس ها در دات نت مشترک هستند Data Type ها هم مشترکند پس مثلا سی شارپ هم از همان Data Type هایی استفاده می کند که VB.Net.
گفتیم که کلاس ها در دات نت فریم ورک مشترکند ، این کلاس ها درون یک کتابخانه غنی و وسیع قرار دارند، تمام زبان های برنامه نویسی CLS از این کتابخانه مشترک استفاده می کنند، این امکان باعث می شود که برنامه نویس بدون اینکه مجبور باشد برای استفاده از کتابخانه یک زبان آن زبان را یاد بگیرند بتواند از آن کتابخانه استفاده کنند. چون برنامه نویسان همیشه یک زبان محبوب دارند که ترجیح می دهند از آن استفاده کنند اصلا گاهی هم فرصت آن را ندارند که یک زبان جدید را یاد بگیرند، این استراتژی دات نت باعث راحتی کار می شود.

منبع :


[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

عــــلی
02-04-2008, 15:15
از ویکی‌پدیا، دانشنامهٔ آزاد.
برای بررسی تاریخچه زبان C باید به سال ۱۹۶۷ بازگردیم که مارتین ریچاردز زبان BCPL را برای نوشتن نرم افزارهای سیستم عامل و کامپایلر در دانشگاه کمبریج ابداع کرد. سپس در سال ۱۹۷۰ کن تامپسون زبان B را بر مبنای ویژگی‌های زبان BCPL نوشت و از آن برای ایجاد اولین نسخه های سیستم عامل یونیکس در آزمایشگاه‌های بل استفاده کرد. زبان C در سال ۱۹۷۲ توسط دنیس ریچی از روی زبان B و BCPL در آزمایشگاه بل ساخته شد و ویژگی‌های جدیدی همچون نظارت بر نوع داده ها نیز به آن اضافه شد. ریچی از این زبان برای ایجاد سیستم عامل یونیکس استفاده کرد اما بعدها اکثر سیستم عاملهای دیگر نیز با همین زبان نوشته شدند. این زبان با سرعت بسیاری گسترش یافت و چاپ کتاب "The C Programming Language" در سال ۱۹۷۸ توسط کرنیگان و ریچی باعث رشد روزافزون این زبان در جهان شد.
متاسفانه استفاده گسترده این زبان در انواع کامپیوترها و سخت افزارهای مختلف باعث شد که نسخه‌های مختلفی از این زبان بوجود آید که با یکدیگر ناسازگار بودند. در سال ۱۹۸۳ انستیتوی ملی استاندارد آمریکا (ANSI) کمیته ای موسوم به X3J11 را را مأمور کرد تا یک تعریف فاقد ابهام و مستقل از ماشین را از این زبان تدوین نماید. در سال ۱۹۸۹ این استاندارد تحت عنوان ANSI C به تصویب رسید و سپس در سال ۱۹۹۰، سازمان استانداردهای بین المللی (ISO) نیز این استاندارد را پذیرفت و مستندات مشترک آنها تحت عنوان ANSI/ISO C منتشر گردید.
در سالهای بعد و با ظهور روشهای برنامه‌نویسی شئ‌گرا نسخه جدیدی از زبان C بنام C++ توسط بیارنه استراوستروپ در اوایل ۱۹۸۰ در آزمایشگاه بل توسعه یافت. در C++ علاوه بر امکانات جدیدی که به زبان C اضافه شده است، خاصیت شئ‌گرایی را نیز به آن اضافه شده‌است.
با گسترش شبکه و اینترنت، نیاز به زبانی احساس شد که برنامه‌های آن بتوانند برروی هر ماشین و هر سیستم عامل دلخواهی اجرا گردد. شرکت سان مایکروسیستمز در سال ۱۹۹۵ میلادی زبان جاوا را برمبنای C و C++ ایجاد کرد که هم اکنون از آن در سطح وسیعی استفاده می‌شود و برنامه های نوشته شده به آن برروی هر کامپیوتری که از چاوا پشتیبانی کند (تقریباً تمام سیستم‌های شناخته شده) قابل اجرا می‌باشد. شرکت مایکروسافت در رقابت با شرکت سان، در سال 2002 زبان جدیدی بنام C# (سی شارپ) را ارائه داد که رقیبی برای Java بشمار می‌رود.

منبع :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

عــــلی
03-04-2008, 11:16
سلام.

چقدر اینجا سکوت رعایت میشه!!

کسی نظری چیزی نداره؟

Master
03-04-2008, 11:44
کارایی اینها با هم متفاوته !
نمیتونید با هم مقایسشون کنید اونم به این شکل ..

عــــلی
03-04-2008, 11:52
کارایی اینها با هم متفاوته !
نمیتونید با هم مقایسشون کنید اونم به این شکل ..

سلام دوست عزیز.

بحث کارایی نیست با سی هم میشه آنتی ویروس نوشت با سی شارپ هم میشه و با پلاس پلاس هم میشه.

گفتم عجله نکنید فقط اگه تو این کار تجربه دارید و یا از مهندسی کسی سوال کردید. از جوابهاتون مارو بی بهره نزارید موفق باشید و سر بلند :11:.

Master
03-04-2008, 12:02
سلام دوست عزیز.

بحث کارایی نیست با سی هم میشه آنتی ویروس نوشت با سی شارپ هم میشه و با پلاس پلاس هم میشه.

گفتم عجله نکنید فقط اگه تو این کار تجربه دارید و یا از مهندسی کسی سوال کردید. از جوابهاتون مارو بی بهره نزارید موفق باشید و سر بلند :11:.

باز بر میگرده به کاری که قراره انجام بدید ..
من میتونم به جرعت بگم هر کاری رو مییشه با زبان سی انجام داد .. اما عکسش درست نیست ..شما هر کای رو نمیتونید توسی شارپ انجام بدید ! شما یک سری محدودیت ها در سی پلاس پلاس دارید .. در زمینه ساخت شبیه ساز ها به عنوان مثال شما نمی تونید از سی پلاس پلاس استفادهکنید ( نه این که نتونید .. اما بسیار بهتره که از سی استفاده بشه ..بواسطه سرعت اون .. )

باز عرض میکنم بر میگردهبه هدف برنامه نویس .. هدفی که شما دارید مشخص میکنه چه زبانی برای شما مفیده !
این که بین این گزینه ها کدوم زبان بهتره دقیقا با کار شما رابطه مستقیم داره ...

سی شارپ برای طراحی اینترفیس ها عالیه .. برای اجرا به به حیط اجرا نیاز داره (runtime environment ) و سرعتش به مراتب کمتر از دو زبان دیگس .از طرف دیگه زبان سی /سی پلاس پلاس برای کار با حافظه و سخت افزار بی نظیر هستند اا طراحی اینترفیس بوسیله اینها پدر ادم رو در میاره .. .

!
باز میگم بسته به کار شما نیاز هاتون متفات خواهد بود

Master
03-04-2008, 12:08
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

مطالب خوبی از تفاوت کارایی ها ی این زبانها عنوان کردند که خالی از لطف نیست

عــــلی
03-04-2008, 12:13
خیلی ممنون از لطف و نظرتون دوس عزیز موفق باشین و سربلند.