برنامه نویس پایتون خوب چه ویژگیهایی دارد؟ بر پایتون و کتابخانههای آن مسلط است. خوب پایتون را یاد گرفته است و تجربه دارد. دیگر چه؟ آیا فقط دانستن یک زبان برنامهنویسی و تمرین آن برای موفق شدن کافی است؟ اگر نه، برنامهنویسان پایتون به چه ویژگیهای دیگری نیاز دارند تا در کارشان موفق باشند؟
مهمترین ویژگی این است که از اشتباهات برنامهنویسان دیگر درس بگیرند و اشتباهاتی را که دیگران مرتکب میشوند، مرتکب نشوند. اهالی هر حرفهای اشتباهات خاص خودشان را دارند. مثلا، پزشکان ممکن است داروی اشتباهی تجویز کنند یا اسرار بیمار را فاش کنند. متاسفانه، این اشتباهات همیشه در کمین هستند. حتی باتجربهترین افراد در هر شغلی هم ممکن است گرفتار آن اشتباهات شوند.
در این مقاله مهمترین و مهلکترین اشتباهاتی را که برنامهنویسان پایتون، حتی باتجربهها، ممکن است مرتکب شوند، معرفی میکنم. در آخر و برای جمعبندی و نتیجهگیری، پیشنهادهایی هم به برنامهنویسان میشود تا در دام آن خطاها نیفتند.
پایتون زبانی بسیار کاربردی و باآینده است. اگر میخواهید دربارهی آیندهی پایتون بیشتر بدانید، «آینده پایتون روشن است یا تیره؟» را بخوانید.
آنچه در این نوشته خواهیم داشت
مهمترین اشتباهاتی که برنامه نویسان پایتون نباید مرتکب شوند
اشتباهات رایج در زبان برنامهنویسی پایتون با اشتباهاتی که برنامهنویسان پایتون در کار و حرفهی خود ممکن است مرتکب شوند، فرق دارد. اولی بحثی کاملا تخصصی است که در منابع آموزشی پایتون به آن پرداخته میشود. چون خطاهایی را شامل میشود که مربوط به قواعد زبان پایتون و شیوهی صحیح کدنویسی در آن زبان است. اما دستهی دوم اشتباهاتی را شامل میشود که معمولا برنامهنویسان در کل، مخصوصا برنامهنویسان تازهکار، مرتکب میشوند. یعنی فرقی نمیکند شما توسعهدهنده پایتون باشید یا جاوا اسکریپت یا ++C، اشتباهات دستهی دوم در کمین شما هستند.
در ادامه، دربارهی دو نمونه از رایجترین اشتباهات تخصصی پایتون و دو نمونه از مهمترین اشتباهات برنامهنویسان صحبت میکنم.
۱. Syntax Error
هر زبان برنامهنویسی قواعد نحوی یا نوشتاری یا اصول کدنویسی مخصوص به خود را دارد. پایتون هم همینطور است. پس، اگر برنامهنویس در کدهایش هر یک از قواعد نحوی را رعایت نکرده باشد، کدهایش حتی کامپایل نمیشوند چه برسد به اینکه اجرا شوند. مثلا، در پایتون باید در پایان گزارههای if , def یا for علامت : (colon) گذاشت یا رشته (string) در پایتون باید بین کوتیشن ‘ ‘ یا دابل کوتیشن ” ” قرار بگیرد. اگر بعد از گزارهای دونقطه قرار نگیرد یا رشته درون یک کوتیشن نباشد، خطای قواعد نحوی رخ داده است.
این خطا را معمولا برنامهنویسان تازهکار پایتون مرتکب میشوند، چون هنوز تمرین کافی ندارند و ممکن است قواعد نحوی ساده را فراموش کنند. علاوه بر تمرین که برای برنامهنویسان تازهکار ضروری است، بهتر است آنها یکی از کتابخانههای مناسب برای مبتدیان پایتون را هم بیاموزند.
۲. Indentation Error
در زبان برنامهنویسی پایتون، تورفتگیهای قبل از کدها مهم و معنادار است. آن تورفتگیها فقط فضاهای سفیدی که برای کمک به خوانایی و نظم و ترتیب کدها قبل از هر خط یا دستور قرار داده میشود، نیست. تمام کدها در بدنهی گزارههای if ،or ،for باید با تورفتگی نوشته شده باشند. و همچنین هر بلوک کد با میزان تورفتگی واحد مشخص میشود. در پایتون دو راه برای ایجاد تورفتگی وجود دارد: کلید space و tab.
نکتهی مهم این است که برنامهنویس باید از اول انتخاب کند که میخواهد تورفتگی را با کدام شیوه ایجاد کند. وقتی یکی را انتخاب کرد، دیگر نمیتواند تغییرش دهد. پس، اگر کدنویس تورفتگی را فراموش کند یا یک بار از space استفاده کند و یک بار دیگر از tab key؛ خطای تورفتگی را خواهد گرفت (مثل نمونهی زیر).
x = 2 if x % 2 == 0: print("even") IndentationError: expected an indented block
همانطور که اشاره شد، خطاهای دستهی اول بیش از این دو نمونه هستند. اگر میخواهید با خطاهای تخصصی در پایتون بیشتر آشنا شوید، این منبع آموزشی معتبر را پیشنهاد میکنم: aguaclara.github.io.
۳. تقلید کردن از برنامهنویسان دیگر
چه پایتون را در کلاس و از یک معلم آموخته باشید چه آن را با خودآموزی و از منابع معتبر، بدون اینکه بخواهید و بدانید تحت تاثیر معلم و مراجع پایتون هستید. این موضوع هم خوب است و هم بد. اگر میخواهید برنامهنویسی خلاق، موفق و تاثیرگذار باشید؛ بد است. چون قرار نیست همهی برنامهنویسان از یک مسیر بروند و یک جور کارها و پروژههای خود را اجرا کنند. برخلاف چیزی که به نظر میرسد، شما مجبور نیستید حتی از ابزارهایی که همه از آنها استفاده میکنند، استفاده کنید.
بعد از اینکه وقت گذاشتید و خیلی خوب پایتون را یاد گرفتید، وقت بگذارید و ابزارها و شیوههای جدید را برای نوشتن پایتون و اجرای پروژههای پایتون پیدا کنید. شاید ابزاری وجود داشته باشد که شما با آن راحتتر کار میکنید و به شما کمک میکند تا خلاقتر باشید. زبان پایتون فرصتهای شغلی زیادی را، از پردازش زبان طبیعی گرفته تا طراحی وبسایت با پایتون، در اختیار شما میگذارد. پس، هر چه وقت و انرژی بگذارید برای اینکه به برنامهنویس منحصربهفردی تبدیل شوید که شیوههای خلاقانه و مبتکرانهی خودش را برای برنامهنویسی با پایتون دارد، ضرر نمیکنید.
۴. بدون برنامه و تمرین کد نوشتن
کدنویسی کاری هدفمند است که از نشستن پای کد ادیتور و تایپ کردن کدها شروع نمیشود. اگر برنامهنویس تازهکاری هستید، یادتان باشد که برنامهنویسی از فکر و تحقیق شروع میشود. فرقی نمیکند شما عضو تیم فنی طراحی یک محصول دیجیتال هستید یا قرار است یک پروژهی کوچک را انجام دهید. و فرقی نمیکند چهقدر باتجربه هستید، برنامهنویسی فرآیندی ۶مرحلهای است و هر قدر هم که در آن تجربه داشته باشید، باز هم لازم است آن مراحل را طی کنید.
اول باید دربارهی پروژه و مشکلات و چالشها خوب فکر و تحقیق کنید. باید برای کد نوشتن برنامه داشته باشید. شاید کار پیچیده و سخت باشد و شما نیاز داشته باشید تا برای هر چه بهتر انجام دادن آن چیزهای جدیدی را یاد بگیرید. پس، قبل از نوشتن کدها باید برنامهریزی و تمرین و مقدمات لازم را فراهم کنید. در غیر این صورت، کدهای بیکیفیتی خواهید نوشت که پر از مشکلاند.
کدها را مینویسید تا اجرا شوند و کارهایی را انجام دهند. پس، بعد از نوشتن کدها باید مطمئن شوید درست اجرا میشوند و باگ ندارند. شاید مجبور شوید بعضی کدها را تغییر دهید یا اصلاح کنید. شاید مشکل حل نشود و یا چیزی را که برای آن برنامهریزی کرده بودید، نتوانید اجرا کنید. گاهی ممکن است مجبور شوید دوباره از مرحلهی اول شروع و چندین بار کار را بازبینی و اصلاح کنید.
جمعبندی و نتیجهگیری
برنامهنویسی و توسعهدهندگی پیچیدهتر از آن است که به نظر میرسد. آگاهانه زبان برنامهنویسی را که میخواهید یاد بگیرید و با آن کار کنید، انتخاب کنید. اگر زبان انتخابی شما پایتون است، باید بدانید وارد بازار پررقابتی میشوید. پایتون از پرکاربردترین و پرطرفدارترین زبانهای برنامهنویسی در جهان است. بنابراین، آموزش پایتون اولین قدم است.
اینطور نیست که یک زبان برنامهنویسی را یاد بگیرید و با کپی پیست کردن کدها بتوانید در آن موفق شوید. باید نگاهتان را به برنامهنویسی و کدنویسی عوض کنید. شما به تمرین زیاد و یادگیری زیاد نیاز دارید. ممکن است چندین سال باشد که پایتون را یاد گرفتید و کار میکنید، اما این را به یاد داشته باشید که همهی کتابخانهها و فریمورکهای آن زبان یا همه چیز را دربارهی آن زبان نمیدانید.
البته فکر نکنید باید همه چیز را یاد بگیرید. زمان و انرژی شما محدود است. اگر پایتون اولین زبان برنامهنویسی است که یاد گرفتید، شاید بعد از مدتی کار کردن به این نتیجه برسید که میخواهید وارد دنیای طراحی سایت شوید و خیلی دلتان نمیخواهد فقط در دنیای پایتون بمانید. پس، مسیری برای پیشرفت خود ترسیم کنید. به این ترتیب، برنامهنویسی نیستید که بیبرنامه و هدف فقط کار میکند. میدانید کجا هستید و به کجا میخواهید برسید.
آخرین نکته این است که، علاوه بر برنامه داشتن، باید بدانید سرعت تحولات و پیشرفتها در حوزه برنامهنویسی بسیار بالاست. باید در جریان آخرین پیشرفتها باشید. پس، یادتان باشد زمانی نمیرسد که بینیاز از یادگیری و تمرین باشید. اگر فکر میکنید اینطور نیست، اشتباه میکنید.