مهندس نرمافزار عاشق قهوه
سلام! من بهمن شادمهرم من بهمنام، یه برنامهنویس و توسعهدهنده نرمافزار که عاشق چالشهای فنیام! این چند سال گذشته، بیشتر وقتهام رو صرف این کردم که با یه لپتاپ و یه اینترنت درستحسابی، سیستمهای عجیب و غریب بسازم و مشکلات بقیه رو حل کنم (از همونایی که میگن "این دیگه چطوری کار میکنه؟"). از نوشتن کدهای باحال و اتوماتکردن سیستمهای انرژی گرفته تا تریدینگ با دادههای پرسرعت، حسابی سرم شلوغ بوده. یه پروژهای داشتم که حسابی دردسرساز بود ولی آخرش تونستم با بهینهسازی زیرساخت، ۵۰ درصد هزینهها رو کاهش بدم! (میدونی وقتی هزینه رو اینقدر کم میکنی، چه جوری همه باهات رفیق میشن؟!). بعضی از پروژههایی که انجام دادم: CoffeeCodeCamp: یه پلتفرم که بهتون یاد میده کد بزنید و هر چی نوشتید رو هم خودش تست میکنه! MasterYourCourses: یه سیستم مدیریت دورههای آموزشی که کاملترین امکانات رو داره. CryptoCasting: این یکی برای عاشقای تریدینگ! پلتفرمی برای جمعآوری دادههای با سرعت بالا. اگه بخوام از مهارتهام بگم، بیشتر با پایتون و گلانگ ور میرم، توی AWS و GCP غرقم و از Docker و Kubernetes هم برای نگهداشتن سرویسها استفاده میکنم (یه جورایی مثل کارهای عادی روزمرهم شدن اینا!). همیشه دوست دارم با سیستمهای پیچیده سر و کله بزنم و کدهای خفنتر بنویسم. راستش از اینکه زیرساختهای نرمافزاری رو بهینه کنم و هزینهها رو پایین بیارم هم بد نمیاد؛ آخه کی از کمشدن هزینهها بدش میاد؟!
توی برنامه نویسی اصطلاحی به اسم linting وجود داره که برنامهنویسهای کمی با اون آشنا هستن. یکی از علتهای اصلیش اینه که text editor ها و IDE ها به صورت پیش فرض این کار رو برای ما انجام میدن. اما دونستن نحوهی کار اونها و این که پشت پرده دقیقا چه اتفاقی میوفته برای یه برنامه نویس واجبه. اول از همه بذارید با linting آشنا شیم.
توی برنامه نویسی اصطلاحی به اسم linting وجود داره که برنامهنویسهای کمی با اون آشنا هستن. یکی از علتهای اصلیش اینه که text editor ها و IDE ها به صورت پیش فرض این کار رو برای ما انجام میدن. اما دونستن نحوهی کار اونها و این که پشت پرده دقیقا چه اتفاقی میوفته برای یه برنامه نویس واجبه. اول از همه بذارید با linting آشنا شیم:
توی برنامه نویسی، linting به پروسهی شناسایی باگها و مشکلات مرتبط با نحوهی نوشتن کد گفته میشه. این کار توسط ابزارهایی به اسم linters انجام میشه. لینترها برای اکثر زبانهای برنامه نویسی به صورت رایگان قابل استفاده هستند. برای این که بخوایم سادهتر لینترها رو توضیح بدیم، میتونیم بگیم لینترها مثل ابزارهایی هستن که غلطهای املایی و گرامری ما رو توی نوشتهها به ما نشون میدن.
علاوه بر لینترها، ما ابزارهای دیگهای رو هم داریم به اسم auto-formatter. با کمک این ابزارها ما میتونیم فرمت نوشتن کدمون رو به صورت استاندارد در بیاریم.
چرا linting توی پایتون اهمیت داره؟
توی سال ۲۰۰۱، مقالهای برای pep8 نوشته شد که به ما نشون میده یه کد تمیز پایتونی چه خصوصیاتی باید داشته باشه. هرچند که دونستن pep8 خیلی مهمه، ولی این که بخوایم همیشه به اونها توجه کنیم یه مقدار سخته و معمولا بعضی چیزها فراموش میشن. به همین خاطر هستش که linter ها اینجا به کمک ما میان و به ما کمک میکنن خطاهایی که توی کدمون هست رو رفع کنیم. به حالت کلی، linting به ما مزیتهای زیر رو میده:
توی این جلسه، قراره با لایبرریهای زیر آشنا بشیم:
علاوه بر این ماژولها، با pep8 هم آشنا میشیم و بخشهای مهم اون رو بررسی میکنیم.
دورههای آموزشی ما با تمرکز بر یادگیری عملی طراحی شدهاند تا شما را آماده بازار کار کنند.