تا حالا بارها شده در این مورد از من سوال شده یا خودم از بقیه پرسیدم! این پست نظر شخصی خودمه و نمی گم این چیزی که من می گم صد در صد درسته! راستش اولین باری که فهمیدم یادگرفتن خیلی از چیزها (که یکی از آن ها برنامه نویسی است) از منابعی غیر از کتاب مناسب نیست سال دوم دانشگاه بود که سر کلاس ساختمان داده نشسته بودم و استاد گفت برای این درس یادگیری زبان جاوا الزامی است و در آخر ترم امتحانی گرفته می شود که باید در آن ساختمان داده ها را با جاوا پیاده سازی کنید. منم سریع به استاد گفتم دوره ی آموزشی که روی سایت نردبان ( این سایت متاسفانه بسته شد! ) برای جاوا است خوب است ؟ و استاد هم به من جوابی دادن که کلا فکر منو در این مورد عوض کرد :
گفت یک روز با یکی از دوستانش جایی رفته بودند و در آنجا یک کارگردان سرشناس رو دیده بودند و آن کارگردان از استاد ما پرسیده بود چه فیلم هایی دوست داری و ایشون گفته بودند فیلم های طنز . و کارگردان دوباره پرسیده بود یکی دوتاشون رو مثال بزن و ایشون هم یکی دو تا از فیلم های م. م را مثال زده بود. کارگردان هم کلی ناراحت می شه و چند تا کارگردان معروف با آثارشون که در جهان مطرح است مثال می زنه و می گه همین چیزها رو مردم نگاه می کنند که سلیقه و دیدشون اینقدر اومده پایین و دید خودشون رو محدود کرده اند و آثار متوسط ویا حتی ضعیف رو خیلی قوی و نامبر وان می دونند!
* البته چیزی که دربالا گفتم نقل قول دقیق نبود و چیزهایی زیاد و چیزهایی کم داشت. قضیه از چیزی که در بالا گفتم جدی تر بود که روی من تاثیر گذاشت ولی چیزی که تو بالا گفتم تصویر ذهنی است که تو ذهنم باقی مانده.
وقتی برای یادگیری برنامه نویسی به یک کتاب خوب و زبان اصلی مراجعه نمی کنیم (مثل انواع سایت ها و فیلم های آموزشی) در واقع مثل این می مونه که که سرچشمه رو ول کنیم و بریم پایین جویی که از آن می آید بشینیم که آب آن دست اول نیست . خواندن کتاب به خواننده دید می ده شما می فهمید که پشت قضیه چیه اون قسمت چطور پیاده سازی شده ، فلسفه ی پشتش چیه ، در چه جاهایی استفاده ازش خوبه و چه جاهایی بده و … در حالی که در یک سایت با مطالبی جدا از هم و گاهی اوقات کاملا بی ربط رو به رو هستیم که فقط یک سری چیزها رو با مثال توضیح داده اند و سرشار از غلط های علمی و … است! و مطالب به خلاصه ترین شکل ممکن نوشته شده است.
به یک کتاب مرجع که فروش خوبی هم کرده است مراجعه کنید و فقط مقدمه ی آن را که در مورد نویسنده توضیح داده است را نگاه کنید کاملا منظور من را درک می کنید، در بیشتر مواقع می بینید که خود نویسنده جز توسعه دهندگان آن زبان است و در آزمایشگاه های شرکت های بزرگ سالها با آن زبان کار کرده است و کاملا با پیاده سازی درون زبان آشنا است و …. .
در حالی که سازندگان خیلی از ویدیو های آموزشی و نویسندگان سایت ها خودشون یک درکی از چیزهایی که آن ها نوشته اند کرده اند و داده ی دست دو و یا بیشتر را در اخیار شما قرار داده اند.
نمی گوییم آن سایت ها و فیلم های آموزشی بد است ولی به نظر من آن ها وقتی مناسب اند که مفاهیم درک شده باشند و برای دیدن مثال های بیشتر یا یادگرفتن نکته ای بیشتر و یا در صورت نفهمیدن چیزی از آن ها برای یادگیری استفاده کرد، مناسب اند.
البته یکی از راه های خیلی خوب برای قوی شدن در برنامه نویسی مطالعه کد دیگران و گفت و گو در مورد یک کد است.
همین طور شدیدا توسعه می کنم تا جای ممکن از کتاب های فارسی استفاده نکنید به این دلیل ها: تعداد بسیار زیادی از این کتاب ها فقط برای کسب درآمد نوشته شده اند و نه بیشتر. خودم چند کتاب در بازار بررسی کرده ام بیشتر آن ها هرچیزی را که نفهمیده اند ترجمه نکرده اند! خیلی از آن ها ترجمه ای ضعیف دارند در حد مترجم گوگل. بیشترشون فقط خیلی ساده گفته اند فلان دستور فلان کار را می کند و هیچ چیز بیشتری نگفته اند.مطالبشان به روز نیست مثلا کتاب های سی پلاس فارسی سی پلاس پلاسی را آموزش می دهد که در خارج اگر به کسی بگویید فکر می کنند شما از بیست سال پیش با ماشین زمان عبور کرده اید و به زمان حال آمده اید! تمرین و پروژه های مناسبی ندارند. خیلی از مفاهیم رو اشتباه توضیح داده اند! و …. (تا خود صبح می تونم دلیل بیارم ، اگر دلیل بهتری دارید در کامنت ها بگویید )
و مهم تر از همه توی دنیای کامپیوتر ما کجای کار هستیم و چه چیزی تولید کرده ایم که می آییم در مورد آن کتاب می نویسیم ؟!!
البته تعداد اندکی کتاب فارسی تقریبا خوب هم هست که نویسنده هر چیزی رو فهمیده بیان کرده و خودش هم اینو گفته و بر خلاف خیلی از کتاب ها یک کار ناقص ارایه نداده اند ولی باز به کتاب های خارجی خوب نمی رسند.
به طور مثال در پست “کتاب آموزش سی پلاس پلاس ++C” یک سری کتاب خوب در مورد سی پلاس پلاس معرفی کرده ام.
معمولا کتاب های خوب را می توانید با سوال پرسیدن در فروم های برنامه نویسی مرتبط و سرچ در اینترنت بیابید.