چگونه با رایانه کتاب بخوانیم-و کودکان را نیز این کار را بیاموزید

چگونه با رایانه کتاب بخوانیم-و کودکان را نیز این کار را بیاموزید

دو سال است که من برای دانش آموزان دبیرستان یک رشته علوم انسانی دیجیتالی انتخابی تدریس کرده ام. موضوع تا حدودی بحث برانگیز است. (وقتی یکی از همکاران موافقت کرد که بخش دوم را تدریس کند ، یکی دیگر از همکارانش دچار ناراحتی شد و گفت: "Et tu؟") مطمئناً تا حدی به دلیل عنوان: خواندن از راه دور. به هر حال ، انگلیسی یک رشته است که به خواندن نزدیک جایزه می دهد.

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

چه کسی باید کتاب بخواند ، وقتی رایانه می تواند آن را برای شما بخواند؟ بالاخره یک کامپیوتر می تواند بارکد یا یک فایل را بخواند. چرا کتاب نیست؟ چند ثانیه طول می کشد.

چه؟ خواندن از راه دور؟

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

خواندن از راه دور نتیجه ادبی جنبش داده های بزرگ است. این نوع خواندن نیازی به رایانه ندارد - قرن هاست که ادامه دارد - اما فناوری مطمئناً کارها را بسیار آسان تر می کند. به جای توضیح بخشهای متمرکز ، خواندن از راه دور به جای آن حجم زیادی از متن را ترکیب می کند. یک استدلال مهم برای خواندن از راه دور این است که مطالعه مقادیر زیادی از متون - رمان ، نامه ، مقاله ، هر چیزی با کلمات - محققان را قادر می سازد تا روندها و الگوها ، استثنائات ، ناهنجاری ها و سایر ویژگی های مجموعه های ادبی را به طور جامع تر (و بنابراین) دقیق تشخیص دهند. آیا مطالعه رمان نباید شامل همه رمان ها باشد؟ آیا تجزیه و تحلیل شکسپیر نمی تواند از ترکیب هر کلمه در هر نمایشنامه ای که می نویسد سود ببرد؟ مورتی آن را "تاریخ ادبی منطقی تر" می نامد. عمل خواندن - که ابتدا و همیشه ، خواندن نزدیک بود - و سکونت در افکار و صدای دیگران چیزی است که ویلیام درسیویچ منتقد و تحریک کننده آن را "تجمع آرام روح" می نامد. او آن را به ویژه در زمینه خواندن رمان توصیف می کند ، اما در مورد آثار کوتاهتر نیز صادق است. خواندن دقیق به معنای درک هر کلمه و طیف وسیعی از معانی آن است که از زمینه آن مطلع شده است.

در پایان ، Deresiewicz درست می گوید. خواندن یک عمل صمیمی و شخصی است. اما مورتتی هم درست می گوید. خواندن از راه دور ما را قادر می سازد تا واقعیت سرد و کمی را در کلمه ببینیم. کلمه: در غیر این صورت اختراع نمادین ، ​​ذهنی و انسانی است.

"خواندن از راه دور ”نامی را بر رویکرد جدیدی برای نگاه به ادبیات بگذارید.

پس چرا خواندن از راه دور را در دبیرستان آموزش می دهید؟

همه دلایل را قبلاً شنیده اید: در یک دنیای فزاینده تکنولوژیکی ، بلا بلابلا ... مشاغل آینده نیاز به بلا بلا دارد ... آیا بچه ها بومی دیجیتالی نیستند ، بلاه بلا؟ بله ، بله ، مطمئناً.

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

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

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

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

و همچنین در جاهای دیگر قابل استفاده است: هنرمند جاناتان هریس چند اسکریپت نوشت که هزاران وبلاگ را در وب جستجو کرد ، کلمات "من احساس می کنم" را جستجو کرد و کلمات بعدی را فهرست بندی کرد. سالها چندین بار هر روز و هزاران وبلاگ را در بر می گیرد ، داده های جمع آوری شده-که اکنون در وب سایتی به نام We Feel Fen خوب است-تکرار می شود و ساعت به ساعت نمایشی از حال و هوای جهان را ارائه می دهد. جالب است!

بچه ها چیزهای جالب را دوست دارند و خواندن از راه دور چیزهای جالب و جدیدی را به آنها نشان می دهد.

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

نتایج حاصل از تجزیه و تحلیل 14 میلیون کلمه از نظرات معلم پایان دوره.

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

دیگر لازم نیست.

روزی روزگاری ، برنامه نویسی پیچیده بود ، پر از نحو پیچیده و دستورات محرمانه. حال ، اگر می خواهید یک کلمه ابری از یک متن ایجاد کنید ، می توانید متن را به صورت آنلاین پیدا کنید ، آن را در یک فایل مانند Word یا سند متنی کپی کنید ، آن را با استفاده از تابع Import به برنامه ای مانند Wolfram Mathematica وارد کنید و چیزی را به سادگی تایپ کنید as:

و پوف! شما یک کلمه ابر دریافت می کنید. و اگر می خواهید طول یک متن را ببینید ، تایپ کنید:

< /img>

پوف! و اگر می خواهید ببینید چند کلمه در یک متن ظاهر می شود ، می توانید تایپ کنید(خود را در اینجا مهار کنید):

پوف! شبیه جادو است بدون "برای حلقه" ، بدون "الگوریتم بازگشتی" ، بدون "توابع مرتب سازی". فقط ، در بسیاری از موارد ، یک دستور تک خطی ، دستوراتی که به نظر می رسد باید انجام دهد.

به طور خلاصه ، برنامه نویسی دیگر شبیه برنامه نویسی نیست.

ابر کلمه ای از اشعار از دیسکوگرافی کامل بیتلز.

Isn ' آیا این امر کمی ساده می کند؟

واقعاً نیست.

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

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

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

اما ذهن ابتدا به عمل کشیده می شود ، نه انتزاع - مفهوم - برداشت. وقتی با ایده هایی آشنا می شویم که هیچ مبنایی برای آنها نداریم.

ابتدا نمایش دهید. بعدی انجام دهید. بعداً توضیح دهید.

ما از یک روش کارآموزی استفاده می کنیم ، نه از یک روش طبقه بندی یا نظری. ما شروع به درخواست از دانش آموزان برای کپی و تغییر کد می کنیم ، و سپس آنها در مورد کارهایی که انجام داده اند و دلیل عملکرد (یا عدم) آنها را می آموزند.

نمودارهای شبکه ای از پنج کتاب اول عهد جدید (KJV).

علوم رایانه غوطه ور

مانند یک کلاس درس غوطه وری زبان ، اما با زبان برنامه نویسی.

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

همان کارها را می توان با برنامه نویسی انجام داد.

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

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

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

توزیع واژه های منتخب از آهنگ هایی از کندریک لامار.

به هر حال در علوم انسانی دیجیتال دبیرستان واقعا می توانید چه کاری انجام دهید؟

کمی معلوم می شود.

سionsالاتی که توسط سالمندان دبیرستانی پرسیده شده و مورد بررسی قرار گرفته است شامل موارد زیر است:

کدام هنرمندان رپ بیشتر از قافیه داخلی استفاده می کنند؟ چهره های اصلی شبکه های اجتماعی در هر کتاب عهد عتیق و جدید چه کسانی هستند؟ مهمترین تغییرات در صفحه ویکی پدیا دونالد ترامپ از زمان اعلام نامزدی خود برای ریاست جمهوری چه بوده است؟ < /uli> کدام سخنرانان حقوق مدنی بیشتر روی خودشان تمرکز می کنند ، روی افراد دیگر یا روی گروه؟ اشعار چگونه در زندگی هنری بیتلز و کانیه وست تکامل یافته است؟ < uli> New به چه روشهایی است پوشش نیویورک تایمز از هاروی واینستاین از زمان ظهور جنبش #MeToo تغییر کرد؟ روزنامه های شهرهای مختلف چگونه در مورد تیم های ورزشی خود در مقایسه با شهرهای رقیب متفاوت می نویسند؟ چگونه است روزنامه مدرسه تحت سردبیران مختلف تکامل یافته است و چگونه صداهای زن و مرد را در محوطه دانشگاه نشان داده است؟ p> آنها چگونه این تجزیه و تحلیل ها را انجام دادند؟ در اینجا مخفف روشهای آنها آمده است:

وارد کردن اشعار رپ ، تبدیل کلمات به واج ها ، شمارش تعداد و مکان واج های فردی ، بحث و گفتگو. وارد کردن متن کامل کتاب مقدس ، کشیدن همه اسامی را به ترتیب ظاهر کنید ، از مجاورت نام برای نشان دادن یک رابطه استفاده کنید ، نمودار روابط اجتماعی را بسازید ، بحث کنید. متن کامل صفحه دونالد ترامپ را در بخش مهم از ویکی پدیا بیرون بکشید. تاریخ (پس از اعلام پیشنهاد خود ، پس از نامزدی ، پس از انتخابات و غیره) ، همه کلماتی را که در هر فاصله اضافه یا حذف شده اند شناسایی کنید ، بشمارید و مرتب کنید ، بحث کنید. وارد کردن سخنرانی های رهبران حقوق مدنی ، محاسبه نسبت ضمایر اول شخص مفرد ("من") به ضمایر اول شخص جمع ("ما") به ضمایر سوم شخص مفرد و جمع ("او/آنها") ، بحث کنید. متن کامل هر آلبوم بیتلز یا کانیه وست را وارد کنید ، کلماتی را که در هر آلبوم منحصر به فرد است مقایسه کنید ، شناسایی کنید دستوراتی را که در همه آلبوم ها وجود دارد ، بحث کنید. متن کامل هر مقاله را تحت عنوان موضوع تایمز "هاروی واینستاین" وارد کنید ، تعداد مقالات را در طول زمان محاسبه کنید ، کلمات متداول قبل از حرکت #MeToo را مشخص کنید و بعد ، بحث کنید. مقالات مربوط به بازی های مهم را از طیف وسیعی از روزنامه ها وارد کنید ، فرکانس کلمات را در روزنامه های شهر خود با فرکانس کلمات در روزنامه های دیگر مقایسه کنید ، بحث کنید. وارد کردن هر مقاله در بایگانی روزنامه های دانشگاه ، محاسبه و متوسط ​​طول هر مقاله ، محاسبه نسبت "آقای" به "خانم" و "خانم" و "دکتر" برای درک اینکه چگونه هر شماره نمایانگر بزرگسالان زن و مرد در محوطه دانشگاه است ، بحث کنید. وارد کردن متن کامل همه مراسم تحلیف و سخنرانی های خداحافظی روسای جمهور آمریکا ، شناسایی کلمات رایج و منحصر به فرد در طول تاریخ آدرس ها ، بحث .

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

نمودارهای نمودار جامعه از متن کامل دو کتاب نمایشی برای مدرسه ما (2010 و 2017).

در پایان ، درباره روشهای تفکر است

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

برنامه نویسی رسانه است ، نه پیام. (می دانم ، می دانم. منتظر بمانید ...)

در عوض ، ما بر روی مهارت ها و ویژگی های شخصیت متمرکز شده ایم.

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

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

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

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

اینها اهداف عمیق تری هستند.

و برای اینکه بدانیم آیا ما اصلاً موفق می شویم ، مطالعه عملکرد و تعامل دانش آموزان نیاز است.

< p> یادداشت تحریریه: برای مشاهده این که نویسنده این تکنیک های دور خواندن را عملی کرده است ، می توانید ارائه SXSW EDU 2018 خود را با عنوان "High School Digital Humanities: Live-Coding، a Course، and Next Step" در اینجا مشاهده کنید.

< h4> درباره وبلاگ نویس:

پیتر نیلسون

پیتر نیلسون به زبان انگلیسی (دیجیتال و چاپی) تدریس می کند و مدیر تحقیقات ، نوآوری و توسعه در آکادمی Deerfield است. اگر به نوآوری در آموزش و پرورش علاقه دارید ، در خبرنامه وی ، The Notebook Notebook ، یک ایمیل هفتگی که اخبار مربوط به آموزش و یادگیری را از سراسر وب به منظور ترویج نوآوری در آموزش و پرورش جمع آوری می کند ، مشترک شوید. پیتر همچنین Athena را تأسیس و هدایت می کند ، یک پلت فرم غیر انتفاعی برای معلمان برای به اشتراک گذاشتن شیوه ها. او برای سال تحصیلی 2018-2019 در حال تعطیلی است تا آتنا رشد کند. اطلاعات بیشتر را در https://peternilsson.us پیدا کنید.

پرورش خلاقیت از طریق علوم رایانه

پرورش خلاقیت از طریق علوم رایانه

"من به این برنامه رفتم و فکر کردم که قرار است از این مسیر عقب بمانم."

لری کورل ، معلم قدیمی در Glasgow High مدرسه ای در کنتاکی ، سالها تجربه تدریس دروس چالش برانگیز مانند شیمی ، جبر ، هندسه و فیزیک AP را داشت. او حتی یکبار به تحصیل در رشته علوم کامپیوتر فکر کرده بود. اما وقتی تابستان گذشته وارد کارگاه Code.org شد ، عصبی بود. در عوض ، او از یافتن اتاقی مملو از معلمان مانند خودش ، که بسیاری از آنها هیچ تجربه ای در علوم کامپیوتر ندارند ، شوکه شد.

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

لری دو دانش آموز را در دبیرستان گلاسکو راهنمایی می کند

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

مانند لری ، دیوید ونس در مدرسه راهنمایی گلاسکو نیز مورد تشویق قرار گرفت. مدیر وی برای برنامه آموزش حرفه ای Code.org اقدام کند و اولین دوره علوم کامپیوتر در مدرسه راهنمایی گلاسکو را آغاز کند. به عنوان یک کتابدار و معلم اسپانیایی ، دیوید هیچ سابقه کامپیوتر نداشت ، اما مدیر او متوجه عشق دیوید به ترفندها و معماها شد و دید که چگونه خلاقیت ترکیبی و حل مساله او می تواند در علوم رایانه مطابقت خوبی پیدا کند. "او فقط می تواند بگوید که این برنامه مناسب من بود و فکر می کنم او ایده درستی داشت." "من هرگز ندیده ام که تعداد زیادی از دانش آموزان در خارج از مدرسه برای پروژه های خود وقت بگذرانند بدون این که در تمام حرفه من الزامی باشد."

"در کلاس اسپانیایی ام ، دانش آموزانی داشتم که یک پروژه را تمام کنید باید آخر هفته به خانه بروید و کار کنید. این قرار بود با مهلتی روبرو شود که بسیار متفاوت از چیزی است که اکنون می بینم. اکنون افرادی را می بینم که به خانه می روند زیرا واقعاً از این موضوع هیجان زده هستند. آنها روز بعد آماده می شوند تا آنچه دارند نشان دهند. ”

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

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

دیوید به یک دانش آموز در مدرسه راهنمایی گلاسکو کمک می کند. عکس از ویل پرکینز /گلاسکو دیلی تایمز < /img>

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

و لری و دیوید به معلمانی که در حضور در تردید دارند چه می گویند. کارگاه آموزشی و ارائه علوم رایانه به مدرسه آنها؟

«لازم نیست برنامه نویسی باتجربه در دنیای تجارت باشید تا بتوانید وارد شوید و کار خوبی انجام دهید. برنامه درسی برای تنظیم سطح بازی برای کودکانی که تجربه برنامه نویسی ندارند ، تنظیم شده است. احساس می کردم یادگیری حرفه ای به همان شیوه برای معلمان تنظیم شده است. "

" این برای من ساده نیست. دانش آموزان ما به این مهارت ها نیاز دارند. "

این بخشی از مجموعه" Profiles in CS "ما است که در آن می نشینیم و با افرادی که از طریق علوم رایانه در اجتماعات خود تغییر ایجاد می کنند ، گفتگو می کنیم.

< p> بیاموزید که چگونه می توانید به دانش آموزان خود این فرصت را بدهید که به یادگیری علوم کامپیوتر ادامه دهند و خلاقیت خود را بیدار کنند.

مگی اسوریو ، Code.org

کسی را می شناسید که باید با او چت کنیم؟ یک خط برای من بگذار!

معرفی اصطلاحات علوم کامپیوتر

معرفی اصطلاحات علوم کامپیوتر

علوم کامپیوتر

یک تعریف پیچیده: علم کامپیوتر مطالعه فناوری اطلاعات ، فرایندها و تعاملات آنها با جهان است.

یک تعریف ساده: علوم کامپیوتر مطالعه استفاده از رایانه برای حل مشکلات است.

مبانی کامپیوتر

رایانه دستگاهی است که محاسبات را بر اساس دستورالعمل انجام می دهد.

یک کامپیوتر از دو جزء تشکیل شده است:

سخت افزار نرم افزار

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

از طرف دیگر ، نرم افزار جزء فیزیکی نیست. نرم افزار شامل مجموعه ای از دستورالعمل ها برای سخت افزار است. این دستورالعمل ها معمولاً در فایل های رایانه شما ذخیره می شوند. دستورالعمل ها به زبان انگلیسی یا هیچ زبان گفتاری دیگری نیستند ؛ آنها در نوع خاصی از زبان هستند که زبان برنامه نویسی نامیده می شود. نرم افزار دستورالعمل هایی را ارائه می دهد که به سخت افزار می گوید چه کاری انجام دهد.

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

کد مترادف "دستورالعمل" موجود است یک فایل. همچنین مترادف با نرم افزار است. "کد" فقط مجموعه ای از کلمات و علائم نقطه گذاری در یک برنامه کامپیوتری است که به زبان برنامه نویسی نوشته شده است.

سخت افزار کامپیوتر

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

اجزای مختلف سخت افزار کامپیوتر هر کدام اهداف مختلفی را ارائه می دهند.

6 جزء اصلی وجود دارد که سخت افزار کامپیوتر را تشکیل می دهند:

پردازش مرکزی واحد (CPU) حافظه اصلی ذخیره ثانویه دستگاه های ورودی/خروجی (دستگاه های ورودی/خروجی) شبکه Bus

CPU اغلب "مغز" رایانه نامیده می شود. مسئول اجرای دستورالعمل ها ، مانند کد در برنامه است.

حافظه اصلی ، که به آن "حافظه دسترسی تصادفی" (RAM) نیز گفته می شود ، برای ذخیره موارد زیر استفاده می شود: برنامه ها و 2) داده هایی که کد در حین اجرای فعال برنامه اجرا می کند. وقتی برنامه ای مانند Microsoft Word را در رایانه خود باز می کنید ، کد اجرای Microsoft Word در حافظه اصلی بارگذاری می شود.

Secondary Storage برنامه ها و داده های شما را هنگامی که به طور فعال مورد استفاده قرار نمی گیرند ذخیره می کند.

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

Bus گروهی از سیم ها است که اجزای سخت افزاری مختلف این سیم ها اجازه می دهند داده ها بین اجزای سخت افزاری مختلف منتقل شوند. به عنوان مثال ، هنگامی که برنامه ای را در رایانه خود اجرا می کنید ، گذرگاه داده (شامل کد واقعی برنامه) ذخیره شده در Storage Storage را به حافظه اصلی ارسال می کند.

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

اصطلاحات برنامه نویسی - مترادف

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

"کد" = "دستورالعمل رایانه" = "نرم افزار" = "برنامه" = "برنامه" = "برنامه" < /oli> "برنامه نویسی" = "برنامه نویسی" = "توسعه نرم افزار" = "مهندسی نرم افزار" "برنامه نویس" = "برنامه نویس" = "توسعه دهنده نرم افزار" = "توسعه دهنده وب" = "نرم افزار engineer ”

زبان ماشین در مقابل زبان برنامه نویسی

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

هر زمان که داده ها را ذخیره می کنید (مانند سند Word ) در رایانه شما ، رایانه همه کاراکترهایی را که تایپ می کنید در قالب خاصی ذخیره می کند ، به نام باینری ، همچنین به عنوان زبان ماشین معروف است. هر کاراکتر روی صفحه کلید شما دارای یک نمایش دوتایی منحصر به فرد است که کاراکتر را از بقیه متمایز می کند.

یک کاراکتر می تواند یک حرف ، رقم عددی ، علامت نقطه گذاری ، نماد ، فاصله ، بازگشت خط بعدی ، برگه و غیره باشد. هر شخصیت دارای یک کد عددی منحصر به فرد است که آن را از دیگران متمایز می کند. می توانید کد عددی (کد ASCII) برای هر کاراکتر را با جستجوی آن در یک جدول ASCII ، مانند اینجا پیدا کنید: https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html

توجه داشته باشید که کاراکتر "A" به طور جداگانه از "a" متمایز شده است.

"A" دارای کد عددی است: 65

'a 'دارای کد عددی است: 97

این بدان معناست که هر زمان که کاراکتر' a 'در سند شما ظاهر می شود ، رایانه شما داده ها را برای آن در دوتایی معادل مقدار 97 ذخیره می کند.

توجه داشته باشید که 97 یک فرمت قابل خواندن برای انسان است که به آن قالب "دهدهی" گفته می شود. "اعشاری" نام قالب مقادیر عددی است که در مبنای 10 نشان داده شده است ، بدین معنی که از اعداد 0 تا 9 برای تشکیل مقادیر استفاده می شود.

قالب "دودویی" به این معناست که مقادیر عددی نشان داده می شوند در base-2 ، به این معنی که از رقم 0 و 1 برای تشکیل مقادیر استفاده می شود. این ممکن است کاملاً انتزاعی به نظر برسد ، اما می توانید با استفاده از فرمول های ریاضی یک عدد اعشاری را به دوتایی (و دودویی به اعشاری) تبدیل کنید. نیازی به انجام این کار نیست - این فقط برای اطلاع شما است. اگر واقعاً می خواهید نمای دوتایی یک عدد اعشاری را دریافت کنید ، می توانید از ماشین حساب استفاده کنید ، مانند: https://codebeautify.org/decimal-binary-converter

هنگام ذخیره سند Word خود و برنامه Word خود را ببندید ، کامپیوتر شما در واقع سند شما را در 0s و 1s ذخیره می کند. مردم رایانه ها را طوری طراحی کردند که بطور م byثر توسط انسان استفاده شود. از آنجا که زبان دوتایی وسیله ارتباطی کارآمد برای انسان ها نیست ، برای انسان منطقی نیست که اسناد ورد خود را در قالب دوتایی ببینند. به همین دلیل ، هنگامی که بعداً سند خود را دوباره باز می کنید ، از فرمت دوتایی ترجمه می شود و دوباره به انگلیسی (یا هر زبانی که استفاده می کردید) ترجمه می شود.

دوتایی ("زبان ماشین") به عنوان " زبان سطح پایین " این زبان "سطح پایین" در نظر گرفته می شود زیرا زبانی است که ماشین ها آن را می فهمند.

برنامه نویسان برنامه های خود را با یک زبان برنامه نویسی تایپ می کنند. زبان سطح بالا ”زیرا زبانی است که انسان می تواند بخواند و بفهمد.

درست مانند انگلیسی ، یک زبان برنامه نویسی نیز دارای قوانین یا نحو خاص خود است. همچنین شامل مجموعه ای از کلمات تعریف شده به نام کلمات کلیدی (یا "کلمات محفوظ") است که هنگام استفاده در برنامه معنای خاصی دارد. زبانهای گفتاریزبانهای برنامه نویسی مختلفی نیز وجود دارد که برنامه نویسان برای ایجاد برنامه از آنها استفاده می کنند.

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

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

در اینجا یک تعریف ساده برای کلمه "پارادایم" آمده است.

پارادایم یک روش تفکر است یا راهی برای انجام کاری پارادایم یک طرز فکر است.

پارادایم برنامه نویسی راهی برای طبقه بندی زبان برنامه نویسی بر اساس سبک یا روش برنامه نویسی است.

در اینجا چند نوع رایج از پارادایم های برنامه نویسی آورده شده است:

پارادایم برنامه نویسی کاربردی پارادایم برنامه نویسی رویه ای پارادایم برنامه نویسی ضروری پارادایم برنامه نویسی شی گرا

به عنوان مثال ، جاوا و C نمونه هایی از زبان های برنامه نویسی هستند. زبان برنامه نویسی جاوا نمونه ای از زبان برنامه نویسی شی گرا است. زبان برنامه نویسی C نمونه ای از زبان برنامه نویسی رویه ای است.

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

نوشتن و ذخیره کد

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

وقتی می خواهید مقاله بنویسید ، از یک برنامه رایانه ای مانند Word یا هر ویرایشگر متن استفاده می کنید. شما به سادگی برنامه ویرایشگر متن را باز می کنید ، یک فایل ایجاد می کنید ، قسمتی از متن را تایپ می کنید و سند خود را در قالب فایل دلخواه مانند .docx یا .pdf ذخیره می کنید.

روند نوشتن کد مشابه است.

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

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

پس از ایجاد برنامه خود ، باید کد خود را در یک فایل ذخیره کنید ، به نام فایل منبع. یک فایل منبع به سادگی یک فایل حاوی کد منبع است که کد برنامه شما است. ذخیره کد شما در یک فایل منبع مستلزم نامگذاری پرونده با نام ریشه و پسوند است. نام ریشه نام منحصر به فردی است که شما انتخاب می کنیدفایل خود را که شامل نویسه هایی است که در سمت چپ نقطه (.) نام فایل شما ظاهر می شوند ، بدهید و پسوند آن چیزی است که در سمت راست نقطه ظاهر می شود. با توجه به زبان برنامه نویسی کد منبع خود ، پسوند مورد نظر را به فایل منبع می دهید. به عنوان مثال ، پسوند .java برای فایلهای منبع نوشته شده در جاوا استفاده می شود ، در حالی که پسوند .c برای فایلهای منبع نوشته شده در C.

کامپایل و اجرای کد

فرض کنید شما یک برنامه به زبان برنامه نویسی C نوشته اید و برنامه خود را به عنوان myprogram.c ذخیره کرده اید. در مرحله بعد ، می خواهید کد خود را اجرا کنید تا ببینید برنامه شما همان کاری را که شما در نظر داشتید انجام می دهد.

قبل از اینکه بتوانید کد خود را اجرا کنید ("اجرا") ، فایل منبع شما باید از C (زبان سطح بالاتر) به یک فایل اجرایی باینری (زبان سطح پایین). یک فایل اجرایی (یا "قابل اجرا") فایلی است که حاوی ترجمه دوتایی کد شما است و در صورت راه اندازی ، برنامه شما را اجرا می کند ("اجرا"). این فرایند ترجمه Compilation نامیده می شود.

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

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

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

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

توجه: بسیاری از این موضوعات در کتاب آموزشی مقدماتی زیر برای برنامه نویسی C پوشش داده شده است: The Art and Science of C ، توسط اریک رابرتز