پرش به محتوای صفحه

برنامه‌نویسی

در این دسته کتاب‌های آموزش برنامه‌نویسی گرد آمده است؛ از نخستین قدم‌ها در پایتون تا پروژه‌های کاربردی در هوش مصنوعی و رشته‌های مهندسی.
کتاب‌های این دسته۵۰۰ کتاب
چینشپرفروش‌ترین
جلد کتاب پایتون مقدماتی با پروژه های خلاقانه و کاربردی ، سروستانی ، دیباگران

ایمان فرهی پرشگفتی، مریم حیدری سروستانی

دیباگران، تهران

۵٪۱٬۳۰۰٬۰۰۰۱٬۲۳۵٬۰۰۰تومان
جلد کتاب شبکه های کامپیوتری اجرا و مدیریت ، کمانگر ، دیباگران
۵٪۱٬۶۰۰٬۰۰۰۱٬۵۲۰٬۰۰۰تومان
جلد کتاب لینوکس مقدماتی و پیشرفته آمادگی آزمون LPIC1-2 ، کاویانی ، دیباگران
۵٪۱٬۶۰۰٬۰۰۰۱٬۵۲۰٬۰۰۰تومان
جلد کتاب آموزش کاربردی HTML5 ، CSS3 همراه پروژه عملی ، سلامی ، دیباگران

مهرداد سلامی، یهنام نوبخت

دیباگران، تهران

۵٪۸۵۰٬۰۰۰۸۰۷٬۵۰۰تومان
جلد کتاب آموزش زبان برنامه نویسی سالیدیتی Solidity ، قدم خیر ، دیباگران
۵٪۹۰۰٬۰۰۰۸۵۵٬۰۰۰تومان
جلد کتاب HTML ، CSS را قورت دهید ، قربانیان ، دیباگران

پارسا قربانیان

دیباگران، تهران

۵٪۷۰۰٬۰۰۰۶۶۵٬۰۰۰تومان
جلد کتاب آموزش گام به گام طراحی وب با HTML & CSS ، اصالت نیری ، دیباگران
۵٪۱٬۴۰۰٬۰۰۰۱٬۳۳۰٬۰۰۰تومان
جلد کتاب علم داده در پایتون مفاهیم و کاربردها ، یزدی نژاد ، دیباگران

محسن یزدی نژاد، محمد رضاپور، معصومه جوادی نیا، فرهاد استوارنژاد

دیباگران، تهران

۵٪۷۵۰٬۰۰۰۷۱۲٬۵۰۰تومان
جلد کتاب اصول طراحی و برنامه نویسی میکروکنترلرهای STM32 به روش رجیستری و توابع HAL ، دیباگران
۵٪۱٬۳۰۰٬۰۰۰۱٬۲۳۵٬۰۰۰تومان
جلد کتاب برنامه نویسی تحت وب از پایه تا پیشرفته،طالبی،دیباگران

حمید رضا طالبی، علی اکبر جلالی

دیباگران، تهران

۵٪۱٬۵۰۰٬۰۰۰۱٬۴۲۵٬۰۰۰تومان
جلد کتاب آموزش طراحی سایت با HTML ، CSS ، رضایی ، دیباگران

محسن حسینی مهر، الهام سلطان رضایی

دیباگران، تهران

۵٪۱٬۷۰۰٬۰۰۰۱٬۶۱۵٬۰۰۰تومان
جلد کتاب آموزش جامع برنامه نویسی Python ، نظری ، دیباگران

اشکان طالبی، مسعود نظری

دیباگران، تهران

۵٪۸۱۰٬۰۰۰۷۶۹٬۵۰۰تومان
جلد کتاب آموزش جامع آردوینو (ویرایش جدید) ، حاتمی ، دیباگران

علیرضا حاتمی، اشکان طالبی، مسعود نظری

دیباگران، تهران

۵٪۱٬۱۰۰٬۰۰۰۱٬۰۴۵٬۰۰۰تومان
جلد کتاب الگوریتم برنامه نویسی زیر باران شهر ، قربانیان ، دیباگران
۵٪۴۳۰٬۰۰۰۴۰۸٬۵۰۰تومان
جلد کتاب مرجع کامل و کاربردی یادگیری ماشین (به همراه پایتون) ، رفیعی ، دیباگران
۵٪۲٬۰۰۰٬۰۰۰۱٬۹۰۰٬۰۰۰تومان
جلد کتاب آموزش زبان برنامه نویسی دارت DART ، زارعی ، دیباگران

پریسا زارعی، صفا لشکر آرا

دیباگران، تهران

۵٪۹۰۰٬۰۰۰۸۵۵٬۰۰۰تومان
جلد کتاب آموزش جامع پایتون ، آقابراری ، دیباگران

شایان آقابراری، فاطمه رفیع پورگتابی

دیباگران، تهران

۵٪۱٬۲۰۰٬۰۰۰۱٬۱۴۰٬۰۰۰تومان
جلد کتاب آموزش SQL SERVER 2019 با نگاهی بر مفاهیم مدیریت پایگاه داده ، یزدانی ، دیباگران
۵٪۱٬۰۰۰٬۰۰۰۹۵۰٬۰۰۰تومان
جلد کتاب برنامه نویسی به زبان پایتون از پایه تا پیشرفته ، طالبی ، دیباگران

حمید رضا طالبی، علیرضا طالبی

دیباگران، تهران

۵٪۱٬۸۵۰٬۰۰۰۱٬۷۵۷٬۵۰۰تومان
جلد کتاب رایانه و فن‌آوری اطلاعات (ICT) برنامه‌نویسی

آن رونی

ترجمه‌ی علیرضا ابراهیمی

پیدایش

۲۰٪۱۱۲٬۰۰۰۸۹٬۶۰۰تومان
جلد کتاب آموزش گام به گام برنامه نویسی موازی (آموخته)
۲۰٪۳۲۰٬۰۰۰۲۵۶٬۰۰۰تومان
جلد کتاب کلاغ کامپیوتر (مهرک)

فرهاد حسن‌زاده

سوره مهر (کودک)

۲٪۱۱۵٬۰۰۰۱۱۲٬۷۰۰تومان
جلد کتاب آموزش‌ویادگیری‌فعال (آشنایی‌بازبان‌برنامه‌نویسی‌پایتون)
۲٪۳۰۰٬۰۰۰۲۹۴٬۰۰۰تومان
جلد کتاب خبرنویسی پیشرفته به زبان ساده
۲٪۲۷۰٬۰۰۰۲۶۴٬۶۰۰تومان
جلد کتاب تیتر نویسی در وب

مجید رضاییان

ثانیه

۲٪۱۷۰٬۰۰۰۱۶۶٬۶۰۰تومان
جلد کتاب توسعه به زبان ساده

الهه شعبانی

ترجمه‌ی زیر نظر محسن رنانی

دکسا

۲٪۶۵۰٬۰۰۰۶۳۷٬۰۰۰تومان
جلد کتاب مبانی کامپیوتر و برنامه نویسی

زهرا نصیری اقدم

ترجمه‌ی سلیمان میرزائی راجعونی، شبنم مختارنیا

ادیبان روز

۲۰٪۱٬۰۸۰٬۰۰۰۸۶۴٬۰۰۰تومان
جلد کتاب برنامه نویس کوچولو 2 (کامپیوتر)

جولیا دریم

ترجمه‌ی روژین مرادخانی

پرستو

۲۰٪۱۸۰٬۰۰۰۱۴۴٬۰۰۰تومان
جلد کتاب برنامه نویس کوچولو 1 (کامپیوتر)

جولیا دریم

ترجمه‌ی روژین مرادخانی

پرستو

۲۰٪۱۸۰٬۰۰۰۱۴۴٬۰۰۰تومان
جلد کتاب برنامه نویس کوچولو 3 (کامپیوتر)

جولیا دریم

ترجمه‌ی روژین مرادخانی

پرستو

۲۰٪۱۸۰٬۰۰۰۱۴۴٬۰۰۰تومان
جلد کتاب درسی تولید محتوای الکترونیک و برنامه سازی دهم شبکه و نرم افزار رایانه
۲٪۶۹۷٬۰۰۰۶۸۳٬۰۶۰تومان
جلد کتاب درسی سیستم عامل مقدماتی و پیشرفته کاردانش

سازمان پژوهش، برنامه‌ریزی آموزشی وزارت آموزش و پرورش

شرکت چاپ و نشر کتاب‌های درسی ایران

۲٪۶۸۳٬۰۰۰۶۶۹٬۳۴۰تومان
جلد کتاب درسی مدیریت پایگاه داده دوازدهم برنامه نویسی پایگاه داده
۲٪۳۷۰٬۰۰۰۳۶۲٬۶۰۰تومان
جلد کتاب درسی کنترل کننده های منطقی دوازدهم کاردانش

شرکت چاپ و نشر کتاب‌های درسی ایران

۲٪۵۵۷٬۰۰۰۵۴۵٬۸۶۰تومان
جلد کتاب درسی برنامه نویسی مقدماتی (ویژوال بیسیک) یازدهم کاردانش
۲٪۹۴۵٬۸۰۰۹۲۶٬۸۸۴تومان
جلد کتاب درسی برنامه نویسی CNC دوازدهم کاردانش

شرکت چاپ و نشر کتاب‌های درسی ایران

۲٪۳۸۳٬۷۵۰۳۷۶٬۰۷۵تومان
جلد کتاب درسی توسعه دهنده صفحات وب با MySQL و PHP

شرکت چاپ و نشر کتاب‌های درسی ایران

۲٪۷۴۶٬۰۰۰۷۳۱٬۰۸۰تومان
جلد کتاب درسی بسته های نرم افزاری (Excel – Power point)

شرکت چاپ و نشر کتاب‌های درسی ایران

۲٪۵۹۶٬۰۰۰۵۸۴٬۰۸۰تومان
جلد کتاب آشنایی با الگوریتم ها با رویکرد خلاقانه جلد 1 (207)
۱۰٪۹۰۰٬۰۰۰۸۱۰٬۰۰۰تومان
جلد کتاب برنامه نویسی به زبان++c (جلد 1)
۱۰٪۴۴۷٬۰۰۰۴۰۲٬۳۰۰تومان
جلد کتاب برنامه نویسی پایتون 2

دانش پژوهان جوان

۱۰٪۴۹۴٬۰۰۰۴۴۴٬۶۰۰تومان
جلد کتاب برنامه نویسی پایتون(جلد اول)
۱۰٪۴۹۴٬۰۰۰۴۴۴٬۶۰۰تومان
جلد کتاب برنامه نویسی به زبان ++c جلد دوم
۱۰٪۳۸۵٬۰۰۰۳۴۶٬۵۰۰تومان
جلد کتاب آشنایی مقدماتی با برنامه‌نویسی به زبان ماشین

الهام آخرتی، افشین سیدی‌ویند

کتاب‌سرای نیک

۱۰٪۳۸۰٬۰۰۰۳۴۲٬۰۰۰تومان
جلد کتاب مدل‌سازی خواص سیالات هیدروکربنی به کمک نرم‌افزار PVT Pro
۱۲٪۱٬۱۷۰٬۰۰۰۱٬۰۲۹٬۶۰۰تومان
جلد کتاب مبانی طراحی و تحلیل الگوریتم‌ها

محمد قدسی

دانشگاه صنعتی شریف

۱۲٪۱٬۲۲۰٬۰۰۰۱٬۰۷۳٬۶۰۰تومان
جلد کتاب تحلیل الگوریتم‌ها و طراحی روش‌های فراابتکاری

کورش عشقی، مهدی کریمی‌نسب

دانشگاه صنعتی شریف

۱۲٪۱٬۴۹۰٬۰۰۰۱٬۳۱۱٬۲۰۰تومان
جلد کتاب مرجع کامل JAVA

هربرت شیلد

ترجمه‌ی الناز قاسمی، سیدمهدی مرسلی

دانشگاهی کیان

۱۲٪۳٬۷۸۵٬۰۰۰۳٬۳۳۰٬۸۰۰تومان
جلد کتاب پردازش تصویر با OpencV و پایتون

محسن خوش‌نظر

دانشگاهی کیان

۱۲٪۲٬۱۸۵٬۰۰۰۱٬۹۲۲٬۸۰۰تومان
جلد کتاب مرجع کامل 3ds max 2019 برای عمران و معماری

علی محمودی

دانشگاهی کیان

۱۲٪۲٬۵۷۰٬۰۰۰۲٬۲۶۱٬۶۰۰تومان
جلد کتاب مرجع کامل 3ds max 2021 برای عمران و معماری

علی محمودی

دانشگاهی کیان

۱۲٪۲٬۶۳۰٬۰۰۰۲٬۳۱۴٬۴۰۰تومان
جلد کتاب مرجع کامل Excel 2016

John Walkenbach

ترجمه‌ی جواد قنبر

دانشگاهی کیان

۱۲٪۳٬۲۵۵٬۰۰۰۲٬۸۶۴٬۴۰۰تومان
جلد کتاب الفبای کامپیوتر

فاطمه فاتحی، علی احمد‌اشرفی

دانشگاهی کیان

۱۲٪۲٬۰۸۵٬۰۰۰۱٬۸۳۴٬۸۰۰تومان
جلد کتاب آموزش گام به گام MSP 2019

مجید سبزه‌پرور، یاشار نورپور، فرشاد سعیدی، داود خاتمی‌نژاد

دانشگاهی کیان

۱۲٪۱٬۹۷۰٬۰۰۰۱٬۷۳۳٬۶۰۰تومان
جلد کتاب آموزش کاربردی SQL Server 2016

ضحی شبر

دانشگاهی کیان

۱۲٪۲٬۷۴۰٬۰۰۰۲٬۴۱۱٬۲۰۰تومان
جلد کتاب شبیه‌سازی معماری با Lomion3d

یونس بنا

دانشگاهی کیان

۱۲٪۱٬۳۱۵٬۰۰۰۱٬۱۵۷٬۲۰۰تومان
جلد کتاب آموزش برنامه‌نویسی VBA در Excel

مایکل الکساندر، دیک کاسلیکا

ترجمه‌ی جواد قنبر

دانشگاهی کیان

۱۲٪۲٬۷۵۵٬۰۰۰۲٬۴۲۴٬۴۰۰تومان
جلد کتاب شبیه سازی تخصصی با HFSS

سعید محمد پور، سعید محمدپورجاغرق

دانشگاهی کیان

۱۲٪۱٬۱۱۵٬۰۰۰۹۸۱٬۲۰۰تومان

درباره‌ی برنامه‌نویسی

برنامه‌نویسی را می‌شود از هزار راه یاد گرفت: فیلم، دوره‌ی آنلاین، مقاله، کلاس. پس چرا هنوز خیلی‌ها سراغ کتاب می‌روند؟ چون کتاب چیزی دارد که بقیه کم دارند: ترتیب. کتاب خوب برنامه‌نویسی شما را از اول تا آخر مرحله‌به‌مرحله می‌برد، مثال‌ها را به هم وصل می‌کند و به شما فرصت می‌دهد هر صفحه را دوباره بخوانید و با کد خودتان امتحان کنید. این صفحه راهنمای شماست برای انتخاب کتاب در دسته‌ی برنامه‌نویسی: از آموزش الگوریتم و فلوچارت برای مبتدی‌ها تا ری‌اکت، پایگاه داده و نظریه‌ی محاسبات.

چه نوجوانی باشید که می‌خواهید اولین برنامه‌تان را بنویسید، چه دانشجوی رشته‌ی کامپیوتر یا مهندسی که به یک منبع منظم نیاز دارد، چه کسی که می‌خواهد شغلش را عوض کند، ادامه‌ی این متن به شما کمک می‌کند بدانید از کجا شروع کنید.

چرا کتاب برای یادگیری برنامه‌نویسی هنوز جواب می‌دهد؟

یادگیری برنامه‌نویسی با دیدن چند ویدیو شروع می‌شود، اما خیلی‌ها بعد از چند هفته گیر می‌کنند. دلیلش معمولا این است که پراکنده یاد گرفته‌اند: کمی از این منبع، کمی از آن منبع، و در نهایت تکه‌های بی‌ربطی که به هم نمی‌چسبند. کتاب این مشکل را حل می‌کند چون نویسنده یک مسیر را چیده است.

چند مزیت دیگر هم دارد:

  • می‌توانید کنار کامپیوتر بگذارید و همزمان کد بزنید، بدون اینکه دائم بین پنجره‌ها بپرید.
  • هر بخش را دوباره مرور می‌کنید، بدون اینکه ویدیو را عقب و جلو کنید.
  • تمرین‌های آخر فصل تکلیف روشنی به شما می‌دهند.
  • حواس‌پرتی کمتر است: کتاب اعلان نمی‌فرستد.
  • مرجع دائمی است. سال‌ها بعد هم می‌توانید یک فصل را باز کنید و یادآوری کنید.

البته کتاب به‌تنهایی کافی نیست. برنامه‌نویسی مثل شنا یاد گرفتن است: نمی‌شود فقط خواند. باید کد نوشت، خطا گرفت و اصلاح کرد. کتاب بهترین همراه است، نه جایگزین تمرین.

برنامه‌نویسی را از کجا شروع کنیم؟

سؤال اول تقریبا همه این است: با کدام زبان شروع کنم؟ حقیقت این است که زبان اول از مفهوم اول کم‌اهمیت‌تر است. بیشتر زبان‌ها مفاهیم مشترکی دارند: متغیر، شرط، حلقه، تابع. وقتی یکی را خوب بفهمید، رفتن به بعدی سریع می‌شود. اما پیش از هر زبان، فکر کردن به شیوه‌ی برنامه‌نویسی یعنی الگوریتم و منطق را تمرین کنید.

الگوریتم و فلوچارت: زبان پیش از زبان

در فهرست این دسته چند کتاب دارید که به الگوریتم و فلوچارت اختصاص دارند، مثل «الگوریتم و فلوچارت» و «آموزش الگوریتم و فلوچارت به زبان ساده». الگوریتم یعنی مراحل حل یک مسئله به ترتیب و بدون ابهام، و فلوچارت یعنی رسم همین مراحل با شکل‌ها. کسی که این دو را بلد باشد، هر زبانی را بهتر یاد می‌گیرد چون مسئله را پیش از نوشتن کد فهمیده است.

مثال ساده: فرض کنید بخواهید بزرگ‌ترین عدد میان سه عدد را پیدا کنید. پیش از هر زبان، به این فکر کنید که خودتان چطور این کار را می‌کردید. اولی را نگه می‌دارید، دومی را با آن مقایسه می‌کنید، هر کدام بزرگ‌تر بود می‌ماند، بعد سومی. همین «نگه داشتن و مقایسه» یک الگوریتم است. فلوچارت آن را با چند جعبه و فلش نشان می‌دهد. کد فقط ترجمه‌ی همین است.

انتخاب زبان اول

اگر می‌خواهید یک زبان ساده و خوانا انتخاب کنید، پایتون معمولا اولین پیشنهاد است. اگر هدف‌تان دانشگاه و مبانی است، ممکن است زبان درس شما سی، سی‌پلاس‌پلاس یا سی‌شارپ باشد. در فهرست ما «مبانی الگوریتم و برنامه‌نویسی مقدماتی» با سی‌شارپ و «آموزش سی‌شارپ برای نوجوانان (مقدماتی و پیشرفته)» را می‌بینید. عنوان دوم نشان می‌دهد که زبان با رویکردی برای نوجوان‌ها آموزش داده می‌شود.

سطح خود را بشناسید

اگر هرگز کد ننوشته‌اید، سراغ کتاب پیشرفته نروید. بعضی کتاب‌ها فرض می‌گیرند که شما قبلا برنامه نوشته‌اید. مشخصات و فهرست مطالب هر کتاب را ببینید و مطمئن شوید نقطه‌ی شروع آن با نقطه‌ی شروع شما جور است.

برنامه‌نویسی وب: از ری‌اکت تا وردپرس

خیلی از خواننده‌ها با هدف ساختن وب‌سایت سراغ برنامه‌نویسی می‌آیند. در این مسیر دو راه اصلی هست.

راه اول: ساختن با ابزار آماده

وردپرس ابزاری است که ساختن یک وب‌سایت را بدون کد نویسی زیاد ممکن می‌کند. کتاب‌های «آموزش وردپرس به زبان ساده» و «آموزش وردپرس پیشرفته» از نامشان پیداست که یکی برای شروع و دیگری برای مرحله‌ی بعد است. اگر می‌خواهید سریع یک سایت شخصی، وبلاگ یا فروشگاه کوچک راه بیندازید، این مسیر کوتاه‌تر است. البته وقتی نیاز به سفارشی‌سازی بیشتر داشته باشید، کم‌کم به کد نویسی هم می‌رسید.

راه دوم: کد نویسی از پایه

وقتی می‌خواهید هر جزء سایت را خودتان بسازید، به ابزارهایی مثل ری‌اکت نیاز پیدا می‌کنید. کتاب «پروژه‌های ری‌اکت» از نامش پیداست که رویکرد پروژه‌محور دارد؛ یعنی یادگیری از راه ساختن چیزهای واقعی. این نوع کتاب‌ها برای کسانی مناسب‌اند که مبانی را می‌دانند و می‌خواهند وارد مرحله‌ی ساختن شوند. پیش از خرید ببینید نیاز است چه چیزهایی را از قبل بلد باشید.

هر دو راه ارزش دارند. اگر مطمئن نیستید، با ابزار آماده شروع کنید تا ببینید دنیای وب را دوست دارید یا نه. بعد در صورت علاقه به سراغ کد نویسی بروید. برای ساختن ظاهر و گرافیک سایت هم می‌توانید نگاهی به طراحی و گرافیک کامپیوتری بیندازید.

کتاب‌های پایه‌ای که برنامه‌نویس حرفه‌ای هم به آن‌ها برمی‌گردد

یک اشتباه رایج این است که فقط دنبال ابزار روز باشیم. ابزارها عوض می‌شوند، ولی مبانی می‌ماند. به همین دلیل کتاب‌هایی که درباره‌ی موضوع‌های بنیادی نوشته شده‌اند، ارزش طولانی‌مدت دارند.

نظریه‌ی محاسبات

کتاب «مقدمه‌ای بر نظریه محاسبات» به بنیادی‌ترین پرسش‌ها می‌پردازد: چه چیزهایی را رایانه اصلا می‌تواند حل کند و چه چیزهایی را نه. این کتاب بیشتر برای دانشجوی کامپیوتر و علاقه‌مند به مبانی نظری است. برای کسی که فقط می‌خواهد برنامه بنویسد، لازم نیست، ولی برای فهم عمیق‌تر خیلی جذاب است.

پایگاه داده

تقریبا هر برنامه‌ی جدی جایی داده نگه می‌دارد. «مفاهیم سیستم‌های پایگاه داده» (جلد اول) از این جنس است و برای کسی که می‌خواهد بفهمد داده چطور ذخیره، جست‌وجو و مدیریت می‌شود مناسب است. پایگاه داده جایی است که برنامه‌نویس عادی و متخصص داده به هم می‌رسند. اگر به این مسیر علاقه دارید، دسته‌ی هوش مصنوعی و داده هم خواندنی است.

الگوریتم‌ها

برنامه‌نویس خوب با ساختار داده و الگوریتم آشناست، چون تصمیم‌های مهم عملکردی از همین‌جا می‌آید. کتاب‌های الگوریتم را در سطح مناسب انتخاب کنید و اگر تازه‌کارید، با کتاب‌های مقدماتی شروع کنید.

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

کتابی مثل «پردازش تصویر دیجیتال با متلب» نشان می‌دهد برنامه‌نویسی فقط ساختن سایت نیست، ابزاری است برای حل مسئله در رشته‌های مهندسی و علمی. اگر دانشجوی مهندسی هستید، این نوع کتاب‌ها معمولا بیشتر به کارتان می‌آیند تا کتاب‌های عمومی.

عنوان‌های نمونه در یک نگاه

برای اینکه تنوع دسته را ببینید، این فهرست را مرور کنید. همه‌ی توصیف‌ها از روی نام کتاب است و برای جزئیات باید صفحه‌ی خود کتاب را بخوانید.

  • «پروژه‌های ری‌اکت»: آموزش پروژه‌محور برای علاقه‌مندان وب.
  • «مبانی الگوریتم و برنامه‌نویسی مقدماتی»: برای شروع، با تکیه بر سی‌شارپ.
  • «آموزش سی‌شارپ برای نوجوانان (مقدماتی و پیشرفته)»: برای نوجوان علاقه‌مند.
  • «مقدمه‌ای بر نظریه محاسبات»: بنیادی و نظری.
  • «مفاهیم سیستم‌های پایگاه داده (ج۱)»: مرجع درباره‌ی داده.
  • «الگوریتم و فلوچارت» و «آموزش الگوریتم و فلوچارت به زبان ساده»: برای فهم مراحل حل مسئله.
  • «آموزش وردپرس به زبان ساده» و «آموزش وردپرس پیشرفته»: برای ساختن وب‌سایت با ابزار آماده.
  • «پردازش تصویر دیجیتال با متلب»: کاربرد برنامه‌نویسی در حوزه‌ی تصویر.

در این دسته عنوان‌های دیگری هم دیده می‌شود که به رایانه و ابزارهای دیگر مربوط‌اند؛ اگر دنبال کتاب رایانه‌ی عمومی می‌گردید، نگاهی هم به کامپیوتر و فناوری بیندازید.

چطور کتاب برنامه‌نویسی مناسب را انتخاب کنیم؟

هدف‌تان را بنویسید

می‌خواهید شغل پیدا کنید، درس دانشگاه بگذرانید، سایت بسازید یا فقط سرگرمی؟ هر هدف کتاب خودش را دارد. برای شغل، پروژه‌محور مفید است. برای درس، همان کتاب معرفی‌شده. برای سرگرمی، کتاب ساده و کوتاه.

سن و سطح را در نظر بگیرید

کتاب نوجوان با کتاب دانشگاهی فرق دارد. اولی با مثال‌های ساده و جذاب شروع می‌کند و دومی سریع وارد نظریه می‌شود. اگر برای فرزندتان کتاب می‌خرید، نام «برای نوجوانان» در عنوان راهنمای خوبی است.

به تاریخ و نسخه‌ی ابزار دقت کنید

در برنامه‌نویسی، ابزارها زود تغییر می‌کنند. کتابی که درباره‌ی ابزار خاصی نوشته شده، ممکن است بعد از چند سال بخشی از آن قدیمی شود. مبانی و الگوریتم‌ها عمر بیشتری دارند. پس اگر می‌خواهید کتاب را برای سال‌ها نگه دارید، مبانی را ترجیح دهید. برای ابزار روز هم به نسخه‌ی ذکرشده و تاریخ چاپ توجه کنید.

پروژه‌محور یا نظری؟

بعضی از آدم‌ها با ساختن چیز یاد می‌گیرند و بعضی با فهمیدن اصل. ببینید کدام شما را بیشتر پیش می‌برد. می‌توانید ترکیب هم بکنید: کتاب نظری برای پایه و کتاب پروژه‌محور برای تمرین.

وجود تمرین و راه‌حل

کتابی که تمرین دارد ولی جواب ندارد، گاهی شما را رها می‌کند. اگر خودآموز هستید، دنبال کتابی بگردید که مثال حل‌شده و توضیح مرحله‌به‌مرحله داشته باشد.

مسیر پیشنهادی برای یک مبتدی

اگر می‌خواهید بدون سردرگمی پیش بروید، این ترتیب را امتحان کنید.

  1. اول با یک کتاب الگوریتم و فلوچارت، فکر کردن مرحله‌ای را تمرین کنید.
  2. بعد یک زبان انتخاب کنید و با کتاب مقدماتی آن مبانی را یاد بگیرید: متغیر، شرط، حلقه و تابع.
  3. هر فصل را با چند تمرین کوچک تمام کنید، حتی اگر ساده به نظر می‌رسد.
  4. یک پروژه‌ی کوچک بسازید: ماشین حساب، لیست کارها، بازی حدس عدد.
  5. بعد سراغ موضوع‌های کاربردی بروید: وب، پایگاه داده یا کاربردهای مهندسی.
  6. در نهایت، اگر علاقه‌مندید، کتاب‌های نظری‌تر مثل نظریه‌ی محاسبات را بخوانید.

نکته‌ی مهم این است که پیش از تمام شدن یک مرحله، عجله نکنید. یک مبتدی که مبانی را محکم بلد باشد، خیلی سریع‌تر از کسی که همه‌جا را نیمه‌کاره رفته پیشرفت می‌کند.

اشتباه‌های رایج در یادگیری برنامه‌نویسی از روی کتاب

فقط خواندن، بدون کد زدن

بزرگ‌ترین اشتباه. اگر هر فصل را فقط بخوانید و کدی ننویسید، ظرف چند روز همه‌چیز را فراموش می‌کنید. هر مثال را خودتان تایپ کنید، نه کپی.

رد شدن از خطاها

خطا دشمن شما نیست، معلم شماست. وقتی برنامه خطا می‌دهد، پیام را بخوانید و بفهمید چه می‌گوید. با هر خطا بخشی از منطق برنامه را بهتر می‌شناسید.

پریدن از زبانی به زبان دیگر

خیلی‌ها با اولین سختی، زبان را عوض می‌کنند. ولی سختی در همه‌ی زبان‌ها هست. با یک زبان تا وقتی چند پروژه‌ی کوچک نساخته‌اید بمانید.

مقایسه با دیگران

کسی که چند سال تجربه دارد، سریع‌تر است. خودتان را با دیروز خودتان مقایسه کنید.

نخریدن یا نخواندن کتاب پایه

بعضی‌ها یک راست سراغ ابزار روز می‌روند و بعد در مسائل بنیادی گیر می‌کنند. الگوریتم و ساختار داده را جدی بگیرید.

خرید بیش از حد کتاب

یک کتاب مناسب را تمام کنید، بعد کتاب بعدی را بخرید. کتابخانه‌ی پر از کتاب نیمه‌خوانده، انگیزه را کم می‌کند.

برنامه‌نویسی برای نوجوان‌ها و والدین

خیلی از پدر و مادرها می‌خواهند فرزندشان با برنامه‌نویسی آشنا شود، ولی نمی‌دانند از کجا شروع کنند. کتاب‌هایی که برای نوجوان نوشته شده‌اند، مثل آموزش سی‌شارپ برای نوجوانان، این مزیت را دارند که زبان و مثال‌هایشان به دنیای نوجوان نزدیک است. اگر فرزندتان به بازی علاقه دارد، شاید ساختن یک بازی ساده بهترین انگیزه برای او باشد؛ برای این مسیر، بازی‌سازی را هم ببینید.

به والدین توصیه می‌کنیم فرزند را وادار نکنند. برنامه‌نویسی وقتی جذاب می‌شود که خودشان ببینند چیزی که نوشته‌اند کار می‌کند. یک برنامه‌ی کوچک، مثلا نمایش اسم خودش یا یک بازی حدس عدد، اولین پیروزی است. بعد از آن، انگیزه خودبه‌خود ساخته می‌شود.

نکته‌ی دیگر: زمان مقابل صفحه را مدیریت کنید. کتاب چاپی در این مورد کمک می‌کند، چون بخش نظری را می‌شود بدون صفحه‌نمایش خواند و فقط تمرین‌ها را پشت رایانه انجام داد.

برنامه‌نویسی و مسیر شغلی

خیلی‌ها برنامه‌نویسی را برای تغییر شغل یا پیدا کردن کار یاد می‌گیرند. کتاب به‌تنهایی شما را استخدام نمی‌کند، اما پایه‌ای است که رزومه و نمونه‌کار از آن ساخته می‌شود. یک مسیر منطقی این است: مبانی، یک زبان، یک حوزه‌ی کاربردی، چند پروژه‌ی واقعی و سپس نمونه‌کار.

حوزه‌ها گسترده‌اند. وب، داده، امنیت، بازی، نرم‌افزار سازمانی و کاربردهای مهندسی هر کدام مسیر خودشان را دارند. اگر به امنیت علاقه دارید، دسته‌ی شبکه و امنیت همراه خوبی برای برنامه‌نویسی است. پیش از انتخاب حوزه، چند کتاب مقدماتی از هر کدام ببینید و ببینید کدام را بیشتر دوست دارید.

نکته‌ی مهم برای بازار کار: اصول قوی‌تر از ابزار است. کسی که مبانی را خوب بلد است، ابزار تازه را در چند هفته یاد می‌گیرد. کسی که فقط ابزار بلد است، با هر تغییر باید از اول شروع کند.

اولین برنامه‌ی ذهنی: متغیر، شرط و حلقه

پیش از آنکه کتاب بخرید، جالب است بدانید چه چیزهایی قرار است یاد بگیرید. تقریبا هر کتاب مقدماتی برنامه‌نویسی از همین سه ایده شروع می‌کند، و اگر آن‌ها را خوب بفهمید، بقیه‌ی راه بسیار هموارتر است.

متغیر: جعبه‌ای با اسم

متغیر یک جعبه است که اسم دارد و چیزی داخلش می‌گذارید: یک عدد، یک نام، یک جمله. مثلا جعبه‌ای به اسم «سن» و داخلش عدد دوازده. هر وقت خواستید، مقدار آن را می‌خوانید یا عوض می‌کنید. همین ایده‌ی ساده پایه‌ی هر برنامه‌ای است.

شرط: اگر این، آن

زندگی روزمره پر از شرط است: اگر باران بیاید چتر بردار، وگرنه نه. برنامه هم همین‌طور تصمیم می‌گیرد. در برنامه‌ی یک فروشگاه، اگر موجودی صفر بود پیام «ناموجود» نشان بده. شرط‌ها برنامه را باهوش می‌کنند.

حلقه: تکرار بدون خستگی

فرض کنید باید ده اسم را چاپ کنید. یک راه این است که ده بار بنویسید. راه دیگر حلقه است: «این کار را ده بار انجام بده». رایانه در تکرار خسته نمی‌شود، و همین نقطه‌ی قوت برنامه‌نویسی است. وقتی قدرت حلقه را بفهمید، کارهایی که ساعت‌ها طول می‌کشید در چند ثانیه انجام می‌شود.

با ترکیب همین سه ایده می‌توان چیزهای شگفت‌انگیز ساخت. هر کتاب مقدماتی، چه با سی‌شارپ، چه با زبان‌های دیگر، به شیوه‌ی خودش این‌ها را توضیح می‌دهد. پس اگر یک ایده را در کتابی نفهمیدید، همان را در کتاب دیگری هم نگاه کنید؛ گاهی فقط شیوه‌ی توضیح مهم است.

پایگاه داده را با یک مثال ساده بشناسیم

تصور کنید یک کتابخانه دارید. هر کتاب اسم، نویسنده و سال چاپ دارد. اگر همه را در یک دفتر بنویسید، پیدا کردن یک کتاب خاص سخت می‌شود. پایگاه داده یعنی این اطلاعات را در جدول‌هایی مرتب نگه دارید که هر ردیفش یک کتاب باشد و هر ستونش یک ویژگی. بعد بتوانید بپرسید: «همه‌ی کتاب‌های یک نویسنده را نشان بده» و پاسخ را فوری بگیرید.

این ایده ساده، ستون فقرات بیشتر برنامه‌های واقعی است: فروشگاه اینترنتی، سامانه‌ی دانشگاه، بانک. کتابی مثل «مفاهیم سیستم‌های پایگاه داده» به سراغ همین ایده می‌رود ولی عمیق‌تر: چطور جدول‌ها را طراحی کنیم که تکرار نداشته باشند، چطور جست‌وجو را سریع کنیم، چطور چند نفر همزمان کار کنند و داده خراب نشود. بخشی از این موضوع‌ها نظری‌اند و بخشی عملی، و برای کسی که می‌خواهد جدی وارد دنیای نرم‌افزار شود، آشنایی با آن ضروری است.

چطور کتاب برنامه‌نویسی را بخوانیم که چیزی یاد بگیریم؟

کتاب برنامه‌نویسی را مثل رمان نمی‌خوانند. یک روش ساده که برای بسیاری از یادگیرنده‌ها جواب می‌دهد این است.

  1. صفحه‌ی مربوط به یک مفهوم را با حواس جمع یک بار بخوانید.
  2. مثال را دقیقا خودتان تایپ کنید و اجرا کنید.
  3. یک چیز کوچک را عوض کنید: یک عدد، یک شرط، یک متن. ببینید چه می‌شود. این «بازی کردن» بیش از هر چیز به یادگیری کمک می‌کند.
  4. عمدا یک اشتباه بسازید تا خطا را ببینید و بشناسید.
  5. تمرین آخر فصل را بدون نگاه به جواب حل کنید. اگر نشد، بعد از تلاش جدی جواب را ببینید.
  6. در پایان جلسه، یک جمله بنویسید: امروز چه یاد گرفتم؟

این روش کند به نظر می‌رسد، ولی در عمل سریع‌ترین مسیر است، چون آنچه یاد می‌گیرید در ذهن می‌ماند. کسی که ده فصل را سریع می‌خواند و هیچ کدی نمی‌نویسد، بعد از یک ماه همه‌چیز را فراموش کرده است.

برنامه‌ی زمانی هم مهم است. نیم ساعت در روز بهتر از پنج ساعت در آخر هفته است. ذهن ما با تکرار کوتاه و منظم بهتر یاد می‌گیرد تا با خواندن فشرده و نامنظم.

برنامه‌نویسی و ریاضی: آیا باید ریاضی‌دان باشیم؟

خیلی‌ها فکر می‌کنند برای برنامه‌نویسی باید ریاضی قوی داشت. حقیقت این است که برای بیشتر کارهای رایج، به ریاضی پیشرفته نیازی نیست. آنچه لازم است منطق است: توانایی فکر کردن مرحله‌ای و دقیق. اما بعضی حوزه‌ها ریاضی بیشتری می‌خواهند: پردازش تصویر، هوش مصنوعی، رمزنگاری و شبیه‌سازی علمی.

کتابی مثل «پردازش تصویر دیجیتال با متلب» از نامش پیداست که با تصویر و به‌احتمال زیاد با ریاضی سروکار دارد. اگر به چنین حوزه‌هایی علاقه دارید، ریاضی را همراه برنامه‌نویسی تقویت کنید. اگر دنبال ساختن سایت یا برنامه‌ی معمولی هستید، با منطق خوب شروع کنید و ریاضی را به موقع اضافه کنید. مهم این است که ریاضی بهانه‌ای برای شروع نکردن نباشد.

الگوریتم و ساختار داده جایی است که منطق و ریاضی به هم می‌رسند. کتاب‌هایی که این دو را آموزش می‌دهند، مثل «مبانی الگوریتم و برنامه‌نویسی مقدماتی»، کم‌کم شما را با این نوع فکر کردن آشنا می‌کنند، بدون اینکه ترسناک باشند.

وقتی گیر می‌کنید: چند راه‌حل عملی

هر برنامه‌نویسی، حتی حرفه‌ای‌ها، بارها گیر می‌کند. تفاوت در این است که چطور از گیر افتادن بیرون می‌آیند.

  • پیام خطا را کامل و آرام بخوانید. معمولا شماره‌ی خط و نوع مشکل را می‌گوید.
  • مسئله را به تکه‌های کوچک‌تر تقسیم کنید و هر تکه را جداگانه امتحان کنید.
  • مقدار متغیرها را در نقطه‌های مختلف چاپ کنید تا ببینید کجا مقدار غلط می‌شود.
  • کد را برای یک دوست یا حتی یک عروسک توضیح بدهید. اغلب هنگام توضیح، خودتان اشتباه را پیدا می‌کنید.
  • استراحت کنید. ذهن خسته اشتباه واضح را نمی‌بیند.
  • به مثال کتاب برگردید و کد خودتان را با آن مقایسه کنید.

یادتان باشد که گیر کردن نشانه‌ی ناتوانی نیست، بخشی از یادگیری است. هرکس از این مرحله‌ها گذشته، همان‌قدر مطمئن و ماهر شده که پشت سر گذاشتن آن‌ها را تجربه کرده است.

پرسش‌های پرتکرار درباره‌ی کتاب برنامه‌نویسی

برای شروع برنامه‌نویسی کدام کتاب بهتر است؟

کتابی که مبانی و منطق را آموزش دهد و برای مبتدی نوشته شده باشد. کتاب‌های الگوریتم و فلوچارت شروع خوبی هستند و بعد می‌توانید سراغ کتاب زبان مورد نظرتان بروید.

بدون دانشگاه هم می‌شود برنامه‌نویس شد؟

بله، بسیاری از برنامه‌نویس‌ها خودآموزند. اما مسیر خودآموزی نیاز به نظم و پروژه‌ی واقعی دارد. کتاب مرتب و پروژه‌محور کمک بزرگی است.

آیا کتاب چاپی از ویدیو بهتر است؟

بهتر یا بدتر نیست، مکمل است. کتاب ترتیب و عمق می‌دهد و ویدیو مثال زنده. ترکیب هر دو معمولا نتیجه‌ی بهتری دارد.

کتاب‌های قدیمی هنوز به درد می‌خورند؟

کتاب‌های مبانی، الگوریتم و نظریه بله. کتاب‌های ابزارهای خاص بستگی به ابزار دارد. تاریخ و نسخه را در مشخصات کتاب ببینید.

برای نوجوان ۱۲ ساله کتاب مناسب هست؟

بله، کتاب‌هایی که به نوجوانان اختصاص دارند. سطح و سبک آن‌ها را با علاقه‌ی فرزندتان تطبیق دهید و اگر تازه شروع می‌کند، مقدماتی‌ترین را بردارید.

زبان اول چه باشد؟

زبانی که هدف شما را پوشش می‌دهد: برای دانشگاه، زبان درس؛ برای وب، زبان‌های مربوط به وب؛ برای شروع ساده، پایتون. مهم این است که یک زبان را جدی دنبال کنید.

قیمت و موجودی چطور است؟

قیمت و موجودی هر کتاب هر روز به‌روز می‌شود. مشخصات هر کتاب هم در صفحه‌ی خودش است و نسخه‌ی چاپی را می‌توانید آنلاین سفارش بدهید.

جمع‌بندی

برنامه‌نویسی مهارتی است که با کتاب شروع می‌شود و با تمرین ادامه پیدا می‌کند. اگر با فکر کردن مرحله‌ای شروع کنید، یک زبان را جدی بگیرید، پروژه‌های کوچک بسازید و از خطا نترسید، چند ماه دیگر خودتان از پیشرفت‌تان شگفت‌زده می‌شوید.

حالا می‌توانید کتاب‌های همین دسته را ببینید، مشخصات هر کدام را بخوانید و نسخه‌ی چاپی مناسب سطح‌تان را آنلاین سفارش بدهید. اولین برنامه‌تان چند خط بیشتر نیست؛ ولی از همان‌جا راه شروع می‌شود.