اولين كاري كه مي توانيم انجام دهيم آموزش برنامه نويسي اين است كه ابزارهاي ساده تري را به آنها بدهيم. من يك IDE ساده پايتون به نام Thonny پيدا كردم كه شما آن را نصب مي كنيد و فقط كد مي نويسيد. يك رابط كاربري گرافيكي خوب وجود دارد كه بازخورد مفيدتري در مورد خطاها ارائه مي دهد. Repl نيز وجود دارد كه يك IDE آنلاين است. بدون نياز به نصب
اين 2 ابزار باعث مي شود دانش آموزان قبل از يادگيري يك مهارت جديد نگران آشنايي با يك محيط جديد نباشند. تصور كنيد كه بايد با پاهاي خود رانندگي كنيد، در يك كشور ديگر، در حالي كه حتي گواهينامه خود را نداريد.
به آرامي اعتماد به آموزش برنامه نويسي نفس ايجاد كنيدهنگامي كه ابزار مناسب را در اختيار داريم، زمان آن رسيده كه به آرامي اعتماد به نفس ايجاد كنيم. رويكرد جديد من در حال پيشرفت اين است:
ابتدا، من به دانشآموزان يك آغازگر در مورد زبان برنامهنويسي ميدهم كه تمام نحو و ايدههاي مهمي را كه خواهند ديد، مشخص ميكند. متغيرها، ساختارهاي كنترل، فهرست ها/آرايه ها، روش ها و موارد ديگر همگي براي دانش آموزان براي نوشتن برنامه هاي خوب مهم هستند. اين پرايمر بايد اين ايده ها را به آنها معرفي و توضيح دهد.
بعد، مطمئن مي شوم كه آنها منطق برنامه را بدون نوشتن كد درك مي كنند. اولين تكليف آنها نيازي به كد ندارد. من مجموعهاي از حقايق را به آنها ا آموزش برنامه نويسي رائه ميدهم (به انگليسي نوشته شده - باب 31 ساله است - و كد - bob_age = 31;). سپس عباراتي را به زبان انگليسي و كد (باب 27 ساله است / 27 == bob_age) به آنها ارائه مي كنم و از آنها مي خواهم ارزيابي كنند كه آيا اين عبارت درست است يا نادرست. سپس همين كار را با ساختارهاي كنترلي انجام ميدهم - يك دستور if يا يك حلقه را به آنها نشان ميدهم، از آنها ميخواهم آن را ارزيابي كنند و نتيجه را به من بگويم (معمولاً چيزي است كه روي صفحه چاپ ميشود).
اين به آنها كمك مي كند تا اعتماد به نفس خود را ايجاد كنند زيرا آنها مي بينند كه چگونه انگليسي را بگيرند و آن را به كد ترجمه كنند و بالعكس. آنها همچنين در حال يادگيري نحوه خواندن و درك كد هستند.
به دانشآموزان بياموزيد كه آموزش برنامه نويسي چگونه قبل از نوشتن كد، آن را با نشان دادن يك عبارت به زبان مادريشان و سپس بهعنوان يك خط كد، بخوانند. براي توييت كليك كنيد.برنامه هاي نوشتن
پس از آن، زمان آن است كه آنها اولين برنامه (پس از Hello World) خود را بنويسند. من از آنها سؤالاتي مانند نام شما چيست و چند سال داريد، از كاربر مي خواهند. سپس از آنها ميخواهم پاسخها را ذخيره كنند و كاري با آنها انجام دهند، مانند چاپ كردن، «Hello, NAME» يا «20 سال ديگر (سن + 20) خواهيد شد.»
اين كار باعث ميشود تا آنها به راحتي كد روي يك بوم خالي بنويسند، ورودي را بپذيرند و عملكردهاي اوليه را با ورودي انجام دهند.
در نهايت، من يك بازي حدس اعداد را انجام خواهم داد. من اين تكليف را دوست دارم زيرا مي توانيد به راحتي بر روي آن بسازيد و پيچيدگي را در قالب ساختارهاي كنترلي جديد اضافه كنيد.
ابتدا يك عدد ثابت را براي حدس زدن تنظيم كنيد و از كاربر بخواهيد يك حدس بزند. سپس عدد را تصادفي كرده و ذخيره كنيد. سپس، از يك حلقه استفاده كنيد تا كاربر به حدس زدن ادامه دهد تا زماني كه آن را درست انجام دهد يا حدس ها تمام شود.
برنامه هاي خود را آسان كنيدبراي ساختن، از نظر مفهومي. يك راه حل ساده تر ارائه دهيد، سپس آن را پيچيده تر كنيد. براي توييت كردن كليك كنيدپيشنهاد پاداش
در هر تكليف، من همچنين پاداش هايي مانند "در چه موردي اين عبارت درست است؟" براي برنامه ورودي كاربر، دانش آموزان بايد از كاربران بپرسند كه عنوان شغلي آنها چيست. يك امتياز براي آن تكليف اين است كه آن پاسخ را از نظر گرامري درست كنيد ("شما يك برنامه نويس هستيد" در مقابل "شما يك غواص المپيك هستيد").
اينها موقعيتهاي كم فشار هستند كه دانشآموزان را به فكر خارج از چارچوب وادار ميكند، كه در نهايت بايد آنها را با تفكر انتقادي راحتتر كند، علاوه بر اين، "من به كدي نياز دارم كه X را انجام دهد."
پاداشها براي دانشآموزان كم خطر آموزش برنامه نويسي هستند كه به آنها كمك ميكند تا فراتر از آنچه تكليف از آنها ميخواهد فكر انتقادي كنند. براي توييت كليك كنيد.آزمايش آبها