یکی از سوالات مهم کسانی که میخواهند وارد دنیای برنامهنویسی شوند این است که از کجا شروع کنیم؟ چه زبانی مناسب است و آیا برنامهنویس شدن پیشنیازی دارد؟ چقدر آشنایی با ریاضیات ضروری است؟
هر زبان برنامهنویسی یک ابزار ارتباط با کامپیوتر است. در زبانهای انسانی کلمات و گرامر هر زبان متفاوت است؛ اما مفاهیم مشترکی مانند فعل، فاعل، صفت، امر و نفی وجود دارند که کمک میکنند گرامر زبانها چهارچوب داشته باشد و یاد گرفتن زبان جدید نیز راحتتر شود. زبانهای برنامهنویسی هم اینگونه هستند و مفاهیمی مانند نوع داده، گزارههای شرطی، حلقههای تکرار، تابع و شیگرایی در آنها مشترکند و با هر زبانی که شروع کنیم ناگزیر به آشنایی با این مفاهیم هستیم. پس یک وجه تمایز زبانهای برنامهنویسی میزان پیچیدهگی یاد گرفتن و کار کردن با این مفاهیم در آنها است. از سوی دیگر هرچه قدرت حل مسئله و طراحی الگوریتم بهتری داشته باشیم، بهتر و کاراتر از این ابزار برنامهنویسی برای ارتباط با کامپیوتر استفاده خواهیم کرد. این ما هستیم که به کامپیوتر میگوییم چه کاری انجام دهد و اگر الگوریتمی (مستقل از زبان برنامهنویسی) با خروجی درست و کارآمد ارائه ندهیم خروجی عملیات کامپیوتر هم قابل استفاده نخواهد بود.
کتاب «تفکر الگوریتمی» یک منبع آموزش فارسی برنامهنویسی و حل مسئلههای ریاضی با زبان برنامهنویسی پایتون است که به همت درّین صمدیان زهرایی و با دریافت نظرات دکتر افشین بهمرام در حوزه ریاضیات و من در حوزه برنامهنویسی پایتون تالیف شده است. این کتاب با رویکرد حل مسئله و تقویت تفکر الگوریتمی است و از پایهایترین مفاهیم شروع میشود. به همین دلیل بسیار مناسب کسانی است که بدون دانش قبلی (به عنوان مثال دانشآموزان) قصد ورود به دنیای علم کامپیوتر و برنامهنویسی دارند و از سوی دیگر علاقهمند به تقویت قدرت حل مسئله به کمک ریاضیات و طراحی الگوریتم هستند. دلیل استفاده از زبان برنامهنویسی پایتون در این کتاب سادگی یادگیری آن در عین فراگیر بودن کاربرد در حوزههای مختلف است.
فصلهای اولیه کتاب به بررسی مبانی زبان برنامهنویسی پایتون به همراه برخی مباحث ریاضیاتی (از الگوریتم و لگاریتم چیست تا بحث توابع ریاضی و برنامهنویسی) به عنوان پیش نیازهای درک مهارت برنامهنویسی میپردازد که توانایی حل مسئلهی افراد را به چالش کشیده و تقویت میکند. در فصلهای بعدی مفاهیم انتزاعی، کار با فایلها و همینطور شیگرایی بحث میشود که مناسب برای ورود به دنیای برنامهنویسی حرفهای هستند. در نهایت نیز یک فصل به بحث آمادگی المپیادهای کامپیوتر و خلاقیت دکتر سی تی برای دانشآموزان علاقهمند میپردازد.
فهرست مطالب ویراست اول کتاب از
اینجا قابل دریافت و نسخه چاپی کتاب از سایت موسس نوآور اردوش قابل سفارش است.