大統領と 布告 今後10年間で10万人の優秀なSTEM教師を育成、採用、維持するために、科学、技術、工学、数学の強力なバックグラウンドを持つ学生をさらに育成するという大きな推進力があります。実践的なプロジェクトを使用すると、学生がこれらのトピックに興味を持ち、コンピュータサイエンスがそれほど難しくないことを生徒に示すことができます。 (これらの印刷物をダウンロードするには、アドビ。)
プロジェクト1:Javaを使用したプログラミング
プログラミングはコンピューティングの核心であり、学生がプログラミング言語を早く紹介するほど、概念を習得しやすくなります。このプロジェクトは、プログラミング理論を開始するために、ユーザーに3つの数字を入力させ、プログラムにどの数字が最大かをユーザーに通知させるという単純なアイデアを採用しています。このレッスンでは、オブジェクト指向プログラミングや言語構文などの重要な概念について説明します。
関連記事- シニアナイトのアイデア
- 卒業ギフトギャラリー
- 日常生活の本当の十代の写真

Javaの基本理論
Javaは オブジェクト指向プログラミング言語(OOP) これはモジュール式であることを意味するコードであり、任意のプログラムで必要に応じてコーディングの小さなビットを使用および再利用できます。学生がOOPをよりよく理解するための1つの方法は、コンピュータプログラミングのオブジェクトのように、これらのオブジェクトには状態と動作があるため、周囲の日常のオブジェクトを観察することです。たとえば、彼らの電話には、犬と同じように状態(オン、オフ)と動作(呼び出し音、充電)があります。犬の状態は、品種、名前、または色である可能性があり、その行動は吠える、うなる、または走っている可能性があります。
構文
このレッスンは、Javaプログラミングでクラスがどのように利用されているかを学生が理解するのに役立ちます。学生は、クラスをオブジェクトの青写真と考えることができます。彼らがこの考えを理解するのを助けるために、彼らにオラクルのクラスの説明を読んでもらいます 自転車 。教師は、整数割り当てのクラスを作成するときに構文が重要であることを生徒に説明する必要があります。
書くとき:
チップ
上級生の方は、そのままレッスンをご利用いただけます。ただし、他の学生にとっての目標は、実用的なプログラムを作成することではなく、プログラミングの概念に関連する困難の汚名を取り除く方法である可能性があります。すべての生徒に問題を解決する方法を教えてもらいたいので、紙と鉛筆でプログラムを書いてもらいます。生徒に紙と鉛筆を使ってプログラムを書かせることで、生徒は目標をさまざまなステップに減らす(最大数を見つける)ことを余儀なくされます。
追加リソース
コーディングを学ぶ最良の方法はコーディングすることです。幸いなことに、Webには、コーディングスキルを開発するための実践的なオプションがたくさんあります。開始するための3つの優れた場所は次のとおりです。
- OracleJavaチュートリアル :「トレイル」を選び、その主題に関連する概念を学びます。このサイトには、学生が概念を習得するのに役立つ実践的なレッスンとコードの実例が満載です。
- TutorialPoints :マサチューセッツ工科大学のこの紹介コースは、大学レベルの学生を対象としており、上級レベルの高校生にとって優れたオプションです。
プロジェクト2:アプリを作成する
このプロジェクトはまだプログラミング中ですが、新入生がしばしば嫌う障害の1つである構文の学習を取り除きました。学生はプログラミング言語を見ることはありません。代わりに、コードがバックグラウンドで記述されている間に、「パズル」のピースを一緒に配置してアプリケーションを構築します。このサイトは、学生に次のことを奨励する運動の一部です。 1日1時間のコード 。
このレッスンは、多くの1年生の高校のプログラマー、特にコードの記述に脅迫されている、または飽きているプログラマーにとって、優れた出発点です。このサイトには優れたビデオと書面による指示があり、プログラムは人のAndroidスマートフォンで動作するように設計されていますが、オンラインシミュレーターはAndroidスマートフォンを持たない学生には完全に機能します。動作する電話アプリを作成することで、学生はプログラミングのモジュラーコンセプトに慣れることができます。

レッスンをダウンロードするには、ここをクリックしてください。
基本理論
コーディングは舞台裏で書かれているので、このプロジェクトでは、プログラミングとはタスクを可能な限り最小の部分に減らすことであるという概念を探ります。この課題では、学生はワークスペースにさまざまなモジュールを配置し、(コマンドの一部にテキストを追加して)文字列変数を作成し、さまざまな部分をスナップしてアプリケーションを完成させます。
チップ
学生が初心者向けアプリを習得し、ワークスペースに慣れたら、TalkToMeをに変えて次のレベルのアプリのいずれかを試してください。 マジック8ボール またはBallBounceに ミニゴルフゲーム 。これらのアプリが作成されると、学生はイベントに応答するプログラミングの概念をよりよく理解する必要があります。
追加リソース
生徒は、次のいずれかのサイトでアプリやゲームを作成することで、プログラミングの概念についての理解をさらに深めることができます。
- 考える :このサイトは、すべての年齢とスキルレベルの子供を対象としており、さまざまなゲームベースの方法でプログラミングへの愛情を取り入れようとしています。
- TouchDevelop :このMicrosoftサイトは、Hour of Codeムーブメントの一部であり、クラウドベースのテクノロジーを使用して、ユーザーがiPad、iPhone、Android、PC、Mac、およびWindowsPhoneでアプリを作成できるようにします。
- コンピュータサイエンス教育週間 :さまざまなコンピュータサイエンススキルの実践的なプロジェクトを探しているなら、これは素晴らしいリソースです。学生は、JavaScript、Python、さらには紙と鉛筆のタイプのプロジェクトを掘り下げたり、ビデオを見たりして、概念を適用することができます。
追加の自主プロジェクト
追加のインタラクティブプロジェクトをお探しの場合は、
- ライブコード -Live Codeでは、学生は独自のビデオゲームを作成できます。
- Codecademy これは、より自主的なアプローチ、特にPythonを学びたい学生にとっては優れた選択肢です。
- 高校生のためのJavaプログラミング マークハイデンリーまたは ヘッドファーストジャバ キャシー・シエラの著書はどちらも、Javaを学びたい学生にとって優れた本です。
- アリス プログラミングの概念を単純化するために設計されたプログラムです。ザ・ アリスチャレンジ 子供たちが自分のゲームやアニメーションなどを作っています。
- 上級生向けに、Courseraはほぼ 100無料の自主 コンピュータサイエンスコース。
ハードウェアプロジェクト
これらのプロジェクトはソフトウェアを扱っていますが、オンラインで見つけることができるハードウェア用の優れたDIYプロジェクトがいくつかあります。
- オハイオ州立大学 電気コンピュータ工学科は、アウトリーチ部門の一部として、サイトでいくつかのプロジェクトを提供しています。
- 作る ユーザーと編集者がプロジェクトを提供する熱狂的なサイトを持つ雑誌には、高校生が興味を持つはずのいくつかがあります。学生は作成することができます ペットの猫のGPSタグ 、そして猫の友達が日中にどこに行くかを監視するか、 人間工学的に正しいワイヤレスマウス 彼らのコンピュータのために。
コンピュータ工学の重要性
STEM教育に重点を置き、子供たちに1日1時間コーディングさせることで、コンピューターエンジニアリングは急速に誰もが持つスキルになります。幸いなことに、アプリの作成、ゲームのコーディング、その他の楽しいプロジェクトによって、コンピューターエンジニアリングを学ぶことはもはや困難な作業ではありません。
エディターズチョイス
ベジタリアンスパゲッティとミートボール
サルビア・ネモロサ「クリスタルブルー」
最高の冬の花の低木
無料の簡単なダンスの動き