تفکر الگوریتمی و حل مسئله در برنامه نویسی

باسلام

من قصد دارم برنامه نویسی سی شارپ از مبتدی تا پیشرفته یاد بگیرم من سینتکس هاش رو بلدم یعنی میدونم حلقه یا for و … چیه ولی متاسفانه تفکر الگوریتمی ندارم یعنی نمیتونم برای یک مسئله ای به مدن یا پروژه ای براش یک راه حل ارائه بدم انگار وقتی میخواهی مسئله را حل کنی مثل یک برگه ی سفید هیچی تو ذهن ادم نمیاد من نمیدونم چطوری میتونم مهارت حل مسئله ام راتقویت کنم تاکید میکنم من مبتدی هستم سوالی که دارم چوری بعضی از افراد مثلا برای مسائبل ریاضی یا فیرزیک سریعا راه حلی به ذهنشون میاد و اون را ببه کد تبدیل میکنند ولی برای بعضی از افراد نمی تونن مسئله ریاضی یا فیزیک را حل کنند مثلا در برنامه نویسی ایا این صادقه اگر بله چطوریی باید تقویت کننه چه پیشنهادی داری

1 پسندیده

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

1 پسندیده

مشکل دقیقا اینجاس اون مسائل ریاضی ساده رو هم نمیتونه حل کنه یا راه حل براش ارایه بده

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

1 پسندیده

ببنید مشکل کتاب اینکه اموزش نمیده فرض کنید کنید میخواهید برنامه ی کتابخانه ی بنویسید چطوری مینویسید ؟ هیچ کتابی نمیاد راه حلی براش بگه یا اموزش ویدیئویی اکثرشون میاد چیزی که تو ذهنشونه پیاده میکنن اینکه اون راه حله چطوری شکل گرفته و… رو نمیگن .

من میخواهم سی شارپ یاد بگیرم و تو این زمینه ضعف دارم چه کتاب یا اموزش یا … بهم پیشنهاد میکنید

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

1 پسندیده

ممنونم ولی من هدفم اینکه برنامه نویسی سی شارپ یاد بگگیرم و تو زمینه ی حل مسئله مشکل دارم ایا کتاب یا اموزش خاضی میشناسی که تقویت کنم خودم رو یا یاد بگیرم

من دنبال کتاب برنامه نویسی یا اموزش حل مسئله هستم یعنید بتونم راه حل پیدا کنم مثلا وقتی به شما میگن برنامه ی تبدیل حروف فارسی به عدد یا رقم رو بنویس سریعا با سی شارپ بتونی بنویسی و راه حلش یا الگوریتمش رو پیدا کنه

کتاب های الگوریتم و کتاب های طراحی نرم افزار که به شما تفکر نرم افزاری یاد می ده را بخونید. مثلا code complete و practical object oriented design in ruby و sicp
ولی نباید انتظار داشته باشید با تنها خواندن چند کتاب راه حل سریع به ذهن شما برسه. این تنها راهش تجربه ، تمرین و تکراره. خیلی نمی شه میانبز زد.

1 پسندیده

ممنونم درسته کتابهای ساده تری نیست یا ویدیئوهای اموزشی که از صفر همه چی رو گفته باشه من خیلی خیلی مبتدی هستم و کتاب بهربان فارسی یا ترجمه شده معرفی کنید

من کتاب و منابع فارسی نمی شناسم بقیه دوستان می تونن راهنمایی کنن

1 پسندیده

من کتاب رو دیدم کتاب روبی یکم سنگینه من هم روبی نمیدونم ممکنه کتاب دیگه معرفی کنید کدوم کتاب به نظرتون برای شروع خوبه
https://amzn.to/3eoKCs9

Grokking Algorithms: An Illustrated Guide for Programmers and Other Curious People 1st Edition

Book 3: The Algorithm Design Manual

Grokking Algorithm کتاب ساده تریه

1 پسندیده

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

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

باشه حتما کتابهای تفکر شی گرا بخونم به جای الگوریتم بهتر نیست

ترتیبش فرقی نداره

چ کتابی پیشنهاد میدهید برای تفکر شی گرا ی شارپ

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

2 پسندیده

آره منم به این اشاره‌ی مجدد کنم که چیزهایی که میخوای به سی‌شارپ خیلی ارتباطی نداره و وابسته به زبان نیست. حتی این هم در نظر بگیر که بعداً شاید زبان‌ت را عوض کنی و دیگه سی‌شارپ دوست نداشتی ولی این دانش‌ها برای زبان‌های دیگه هم خیلی کمکت میکنه که سریع ازشون استفاده کنی و بقول سام واجب هست.
همونطور که سام گفت بعضی آموزش‌ها هم هستند پروژه محورند (خودم این‌ها رو بیشتر دوست دارم) و اگر تمرین‌هاشون هم انجام بدی خودت راه میوفتی کم کم. من خیلی سال پیش یادمه Lynda.com یک سری آموزش سی‌شارپ حتی برای شئ‌گرایی و الگوهای طراحی (دیزاین پترن) هم داشت که البته از کیفیت آنها اطلاع ندارم.
آموزش‌های پروژه محور چون خروجی دارند، به آدم برای تمام کردن‌شون انگیزه میدن.