08/01/2020، 01:45 PM
پایتون بهتر است یا سی شارپ؟برای این که به مقایسه پایتون و سی شارپ برسیم باید اول از اینجا سوال شروع کنیم و بپرسیم مدوسا را میشناسید؟ و بعد برایتان بگوییم که مدوسا یک مار چند سر در اسطورههای یونان که تا یکی از سرهایش را قطع میکردید، یک مار جدید به جایش سبز میشد. خب حالا این ماجرای ترسناک وسط مقالههای بامداد چه میکند؟ عرض میکنیم خدمتتان!
آموزش برنامه نویسیدنیای برنامهنویسی و زبانهای مختلفش، شاید به ترسناکی دنیای قهرمانان یونان نباشد، اما به خاطر وجود زبانهای مختلف، دست کمی از آن مار چندسر ندارد. دو تا از این سرها یا زبانها تقریبا از دیگران معروفتر هستند و تازهواردها را بدجوری گیر میاندازند. بحث امروز ما هم راجع به همین دو زبان پرکاربرد است و قرار است به شما بگوییم که از میان زبانهای پایتون یا سی شارپ c# کدامیک را برای آموزش برنامه نویسی انتخاب کنید تا بتوانید موفق بشوید.اما میدانید که یک قهرمان واقعی اول تمام نقاط ضعف و قوت حریف را بررسی میکند، پس ما هم اول زبان python و c sharp را کامل معرفی میکنیم، و بعد یک دوئل تمام عیار میان این دو زبان برگزار میکنیم تا شما بتوانید راحتتر تصمیم بگیرید کدام زبان برنامهنویسی مناسب احوال شما است و میتواند درهای کوه المپ برنامهنویسی را به روی شما باز کند.معرفی زبان برنامه نویسی پایتونپایتون یک چند سالی از سی شارپ بزرگتر است. پدرش آقای خیدو، یک روز در هلند مشغول کدنویسی بود که دید یک چیزی مثل دم مار از گوشهی کدها هی تکان میخورد، خلاصه دم مار محترم را کشید تا به python رسید.پایتون از همان اول، خیلی سخاوتمند بود برای همین هم به شکل open source یا متنباز وارد بازی شد، یعنی چه؟ یعنی اینکه همهی برنامهنویسها میتوانستند از بخشی از کدهایش استفاده کنند و بخش دیگری را با توجه به کاربریای که برای برنامه تعریفکردهاند، تغییر بدهند.پایتون یکی از زبانهای برنامهنویسی است که از غیر مستقیم حرف زدن اصلا خوشش نمیآید و دستورهای لازم را خیلی رک به سیستم میگوید. مثلا وقتی قرار است یک عبارت را پرینت بگیرد، به جای اینکه با کلی تابع، حاشیه برود تا برسد به موضوع پرینت، همان اول ماجرا مینویسد: print و در نتیجه کلی کار خودش و سیستم و برنامهنویس را راحتتر میکند.از آنجایی که پایتون مثل آدم حرفش را میزند و در واقع از keywordهای انگلیسی به جای ویرگول و … استفاده میکند، یادگیریاش هم برای مبتدیها آسانتر است و در ضمن اگر بخشی از برنامه به مشکل بخورد، خیلی راحت میشود ایراد کار را پیدا کرد.البته پایتون کمی تنبل است وحوصله ندارد هزاران دستور و کد را همان اول ماجرا و به صورت یکجا اجرا کند، و ترجیح میدهد دستورات را خط به خط به سیستم بدهد، بنابراین در دستهی زبانهای تفسیری قرار میگیرد. زبانهای تفسیرپذیر نقطهی مقابل زبانهای کامپایلر هستند. سخت شد؟ بگذارید سادهترش کنیم.تا به حال به مترجمهای همزمانی که در اجلاسهای مختلف حضور دارند، دقت کردهاید؟ بعضی ازآنها کلمههای گوینده را به شکل کلمه به کلمه ترجمه میکنند، اما برخی دیگر صبر میکنند تا عبارت گوینده تمام بشود و بعد تمام عبارت را ترجمه میکنند. برنامههای تفسیری مثل مترجم شمارهی یک عمل میکنند. آنها کدها را خط به خط ترجمه میکنند و همین باعث میشود که سرعت کارشان کمتر بشود و حافظهی بیشتری را اشغال کنند، در مقابل برنامههای اجرایی مثل همان مترجم شمارهی دو عمل میکنند و تمام عبارت را به صورت یکجا اجرا میکنند.نکتهی مهم این است که عیبیابی درزبانهای تفسیری راحتتر است. چرا؟ فرض کنید در حال ساخت یک دیوار هستید و آجرها را دانه دانه روی هم میگذارید، خب اگر یک آجر را اشتباه بگذارید، خیلی راحت همان لحظه متوجه اشتباهتان میشوید. حالا اگر از یک دیوار پیشساز استفادهکنید و بعد بفهمید یکجای کار ایراد دارد، چه میکنید؟ خب باید بیل و کلنگ را بردارید و به جان دیوار بیچاره بیفتید تا بفهمید ایراد از کدام قسمت بودهاست.پیشنهاد مقاله: سی شارپ یا جاوابرای همین هم هست که برای پیدا کردن باگهای یک برنامه، برنامهنویسها معمولا ترجیح میدهند از پایتون یا سایر زبانهای تفسیری کمک بگیرند تا ناگهان دیوار کدها بر سرشان آوار نشود.Python چند خصوصیت خوب دیگر هم دارد، پایتون عاشق اشیا و کلاسهای مختلف است و اصلا از همان اول گفت آقاجان من یک زبان برنامهنویسی شیگرا هستم، البته جناب پایتون به سبک زندگی مینی مالیسیتی هم خیلی علاقهمند است و برای همین دارای خاصیت Garbage Collection است، این یعنی اگر کد یا متدی در سیستم تعریف بشود و از آن استفادهای نشود، بعد از مدتی پایتون متوجه میشد یک متد اضافی، خیلی بیخود و بیجهت، بخشی از حافظه را اشغال کردهاست، بنابراین متد بیاستفاده را از صفحهی روزگار محو میکند.پایتون فرزند رفیقباز خانوادهی برنامهنویسی است، برای همین با بیشتر غولهای فناوری مثل اینستاگرام و گوگل و … دوست است و البته برای پیدا کردن دوستهای جدید همیشه سری به کتابخانهها میزند، برنامهنویسها هم که میبینند پایتون بچهی اجتماعیای است، هر روز کلی کد جدید وارد کتابخانهها و libraryهای مختلف پایتون میکنند. کتابخانههایی مثل pytorch, spark, و … از مهمترین و پرکاربردترین کتابخانههای پایتون در توسعهی وب هستند.از طرف دیگر پایتون خودش را محدود به یک پلتفرم خاص نکردهاست و کدهایش در تمام پلتفرمها مثل ios, android و … باکمی تغییر قابل اجرا هستند.پایتون ماجرای ما بسیار هم اهل ماجراجویی است، برای همین دائم به چارچوبها و فریمورکهای مختلف سر میزند، تا ببیند محیط کدامشان برای پرورش استعدادهایش مناسبتر است. خوب است بدانید فریمورکها در واقع همان زمینهای بازیای هستند که مجموعهای از امکانات و کدها و در واقع کتابخانههای پیشرفته را در اختیار برنامهنویسها قرار میدهند تا به کمک آنها بتوانند سریعتر یک دستور را بنویسند.بعضی از زبانها مثل سی شارپ فقط در یک فریمورک اختصاصی فعالیت میکنند. و برخی دیگرمثل پایتون دارای فریمورکهای متنوعی هستند. اهالی سرزمین پایتون از فریمورک جانگو برای توسعه وب اپلیکیشنها، فریمورک باتل برای توسعهی وب و فریمورکهای پریمید و توربوگیرز برای سادهتر شدن کدنویسی و انجام پروژههایی مثل سی ام سی استفاده میکنند.
آموزش برنامه نویسیدنیای برنامهنویسی و زبانهای مختلفش، شاید به ترسناکی دنیای قهرمانان یونان نباشد، اما به خاطر وجود زبانهای مختلف، دست کمی از آن مار چندسر ندارد. دو تا از این سرها یا زبانها تقریبا از دیگران معروفتر هستند و تازهواردها را بدجوری گیر میاندازند. بحث امروز ما هم راجع به همین دو زبان پرکاربرد است و قرار است به شما بگوییم که از میان زبانهای پایتون یا سی شارپ c# کدامیک را برای آموزش برنامه نویسی انتخاب کنید تا بتوانید موفق بشوید.اما میدانید که یک قهرمان واقعی اول تمام نقاط ضعف و قوت حریف را بررسی میکند، پس ما هم اول زبان python و c sharp را کامل معرفی میکنیم، و بعد یک دوئل تمام عیار میان این دو زبان برگزار میکنیم تا شما بتوانید راحتتر تصمیم بگیرید کدام زبان برنامهنویسی مناسب احوال شما است و میتواند درهای کوه المپ برنامهنویسی را به روی شما باز کند.معرفی زبان برنامه نویسی پایتونپایتون یک چند سالی از سی شارپ بزرگتر است. پدرش آقای خیدو، یک روز در هلند مشغول کدنویسی بود که دید یک چیزی مثل دم مار از گوشهی کدها هی تکان میخورد، خلاصه دم مار محترم را کشید تا به python رسید.پایتون از همان اول، خیلی سخاوتمند بود برای همین هم به شکل open source یا متنباز وارد بازی شد، یعنی چه؟ یعنی اینکه همهی برنامهنویسها میتوانستند از بخشی از کدهایش استفاده کنند و بخش دیگری را با توجه به کاربریای که برای برنامه تعریفکردهاند، تغییر بدهند.پایتون یکی از زبانهای برنامهنویسی است که از غیر مستقیم حرف زدن اصلا خوشش نمیآید و دستورهای لازم را خیلی رک به سیستم میگوید. مثلا وقتی قرار است یک عبارت را پرینت بگیرد، به جای اینکه با کلی تابع، حاشیه برود تا برسد به موضوع پرینت، همان اول ماجرا مینویسد: print و در نتیجه کلی کار خودش و سیستم و برنامهنویس را راحتتر میکند.از آنجایی که پایتون مثل آدم حرفش را میزند و در واقع از keywordهای انگلیسی به جای ویرگول و … استفاده میکند، یادگیریاش هم برای مبتدیها آسانتر است و در ضمن اگر بخشی از برنامه به مشکل بخورد، خیلی راحت میشود ایراد کار را پیدا کرد.البته پایتون کمی تنبل است وحوصله ندارد هزاران دستور و کد را همان اول ماجرا و به صورت یکجا اجرا کند، و ترجیح میدهد دستورات را خط به خط به سیستم بدهد، بنابراین در دستهی زبانهای تفسیری قرار میگیرد. زبانهای تفسیرپذیر نقطهی مقابل زبانهای کامپایلر هستند. سخت شد؟ بگذارید سادهترش کنیم.تا به حال به مترجمهای همزمانی که در اجلاسهای مختلف حضور دارند، دقت کردهاید؟ بعضی ازآنها کلمههای گوینده را به شکل کلمه به کلمه ترجمه میکنند، اما برخی دیگر صبر میکنند تا عبارت گوینده تمام بشود و بعد تمام عبارت را ترجمه میکنند. برنامههای تفسیری مثل مترجم شمارهی یک عمل میکنند. آنها کدها را خط به خط ترجمه میکنند و همین باعث میشود که سرعت کارشان کمتر بشود و حافظهی بیشتری را اشغال کنند، در مقابل برنامههای اجرایی مثل همان مترجم شمارهی دو عمل میکنند و تمام عبارت را به صورت یکجا اجرا میکنند.نکتهی مهم این است که عیبیابی درزبانهای تفسیری راحتتر است. چرا؟ فرض کنید در حال ساخت یک دیوار هستید و آجرها را دانه دانه روی هم میگذارید، خب اگر یک آجر را اشتباه بگذارید، خیلی راحت همان لحظه متوجه اشتباهتان میشوید. حالا اگر از یک دیوار پیشساز استفادهکنید و بعد بفهمید یکجای کار ایراد دارد، چه میکنید؟ خب باید بیل و کلنگ را بردارید و به جان دیوار بیچاره بیفتید تا بفهمید ایراد از کدام قسمت بودهاست.پیشنهاد مقاله: سی شارپ یا جاوابرای همین هم هست که برای پیدا کردن باگهای یک برنامه، برنامهنویسها معمولا ترجیح میدهند از پایتون یا سایر زبانهای تفسیری کمک بگیرند تا ناگهان دیوار کدها بر سرشان آوار نشود.Python چند خصوصیت خوب دیگر هم دارد، پایتون عاشق اشیا و کلاسهای مختلف است و اصلا از همان اول گفت آقاجان من یک زبان برنامهنویسی شیگرا هستم، البته جناب پایتون به سبک زندگی مینی مالیسیتی هم خیلی علاقهمند است و برای همین دارای خاصیت Garbage Collection است، این یعنی اگر کد یا متدی در سیستم تعریف بشود و از آن استفادهای نشود، بعد از مدتی پایتون متوجه میشد یک متد اضافی، خیلی بیخود و بیجهت، بخشی از حافظه را اشغال کردهاست، بنابراین متد بیاستفاده را از صفحهی روزگار محو میکند.پایتون فرزند رفیقباز خانوادهی برنامهنویسی است، برای همین با بیشتر غولهای فناوری مثل اینستاگرام و گوگل و … دوست است و البته برای پیدا کردن دوستهای جدید همیشه سری به کتابخانهها میزند، برنامهنویسها هم که میبینند پایتون بچهی اجتماعیای است، هر روز کلی کد جدید وارد کتابخانهها و libraryهای مختلف پایتون میکنند. کتابخانههایی مثل pytorch, spark, و … از مهمترین و پرکاربردترین کتابخانههای پایتون در توسعهی وب هستند.از طرف دیگر پایتون خودش را محدود به یک پلتفرم خاص نکردهاست و کدهایش در تمام پلتفرمها مثل ios, android و … باکمی تغییر قابل اجرا هستند.پایتون ماجرای ما بسیار هم اهل ماجراجویی است، برای همین دائم به چارچوبها و فریمورکهای مختلف سر میزند، تا ببیند محیط کدامشان برای پرورش استعدادهایش مناسبتر است. خوب است بدانید فریمورکها در واقع همان زمینهای بازیای هستند که مجموعهای از امکانات و کدها و در واقع کتابخانههای پیشرفته را در اختیار برنامهنویسها قرار میدهند تا به کمک آنها بتوانند سریعتر یک دستور را بنویسند.بعضی از زبانها مثل سی شارپ فقط در یک فریمورک اختصاصی فعالیت میکنند. و برخی دیگرمثل پایتون دارای فریمورکهای متنوعی هستند. اهالی سرزمین پایتون از فریمورک جانگو برای توسعه وب اپلیکیشنها، فریمورک باتل برای توسعهی وب و فریمورکهای پریمید و توربوگیرز برای سادهتر شدن کدنویسی و انجام پروژههایی مثل سی ام سی استفاده میکنند.