シラバス参照

授業情報/Course information

科目一覧へ戻る 2024/03/14 現在

科目名/Course title プログラミングB/Programming (B)
担当教員(所属)/Instructor 島崎 俊介 (基礎教育センター)
授業科目区分/Category 共通科目 
授業形態/Type of class 演習
開講期/Semester 2024年度/Academic Year  後期/AUTUMN
開講曜限/Class period 火/TUE 4
対象所属/Eligible Faculty 文学部国語国文学科/Faculty of Liberal Arts Department of Japanese Language and Literature,文学部フランス語フランス文学科/Faculty of Liberal Arts Department of French Language and Literature,文学部英語英文学科/Faculty of Liberal Arts Department of English Language and Literature,人間総合学部児童文化学科/Faculty of Human Studies Department of Children's Culture,人間総合学部発達心理学科/Faculty of Human Studies Department of Developmental Psychology,人間総合学部初等教育学科/Faculty of Human Studies Department of Child Care and Primary Education
対象学年/Eligible grade 1年 , 2年 , 3年 , 4年
単位数/Credits 2
副題
/SubTitle
Pythonプログラミング基礎
授業のねらいと達成目標
/Course Objectives
プログラミングBの目的は、 プログラミングAで学んだ内容をベースに、Pythonプログラミングをより深く学ぶことです。Pythonを用いた処理の自動化・デジタル化、生成AI技術を用いた画像生成、プロンプトエンジニアリングなどついて理解を深めます。近年、プログラムはChatGPTを代表とするような生成AIに「仕様」を提示するだけで簡単にプログラムが自動生成されます。このようなことから、本授業ではプログラムを作成することのみをゴールとせず、プログラム作成の考え方を学びます。プログラミングAを履修していない学生の履修も大歓迎です。本授業は、ICT関連の業種に就職を希望する人、プログラミングをより深く学びたい人に対して、将来のキャリアを考える様々な情報を提供します。
授業概要
/Course description
Pythonを題材に、国家資格である基本情報技術者試験で出題されるレベルの内容を含むプログラミングを学びます。授業の冒頭は毎回、最新の技術に関する話題提供を行い、プログラミングが求められる背景、科学技術と社会の関係について一緒に考えたのち、演習を行います。授業の半分以上をプログラミングの時間にする予定です。個人やグループでプログラミングを行い、クラス内で発表を行う形式をとります。

プログラミング言語は、時代に応じて進化しますが、初歩的な理論はどの言語にも通ずるものがあります。そこで本講義では、理論を丁寧に解説します。本授業は基礎教育センターで開講している他の情報科目、「はじめてのデータサイエンス」や「コンピュータ概論」・「情報ネットワークとセキュリティ」等を同時に履修すると、プログラミングとデータサイエンスのつながりを理解しやすくなります。本講義は、他の関連科目とのつながりも意識して進めます。授業の進度に応じて、担当教員の勤務先である電気通信大学の学生と遠隔で演習する回(電通大ハイブリッド)を複数設ける予定です。
授業計画(授業の形式、スケジュール等)
/Class schedule
第1回:プログラミングAの復習・プログラム管理ツールGitHubの使い方
第2回:Python基礎1:関数(プログラミングAのプログラムの関数化)
第3回:Python基礎2:クラス(プログラミングAのプログラムのクラス化)
第4回:Python基礎3:GUIプログラミング(tkinter)(プログラミングAのプログラムのGUI化)
第5回:Python基礎4:Webスクレイピング(selenium)(プログラミングAのプログラムの自動化)
第6回:総合演習(タイピング自動化)・テーマ決め
第7回:Pythonデータサイエンス基礎1:自然言語処理(SNSのテキストデータ分析入門)/コンピュータサイエンス基礎(2進数の計算、コンピュータの仕組み入門)
第8回:Pythonデータサイエンス基礎2:Google Colabを用いた画像処理/コンピュータサイエンス基礎(アルゴリズム、ネットワーク、情報処理技術者試験の概要)
第9回:Pythonデータサイエンス基礎3:プロンプトエンジニアリング/AI基礎(機械学習入門)
第10回:Pythonデータサイエンス基礎4:生成AIプログラミング
第11回:総合演習②:プロジェクト:3つのテーマからグループで1つを選択・演習(電通大ハイブリッド)
第12回:総合演習②:プロジェクト:3つのテーマからグループで1つを選択・演習(電通大ハイブリッド)
第13回:総合演習②:プロジェクト:3つのテーマからグループで1つを選択・演習(電通大ハイブリッド)
第14回:プロジェクト発表会(電通大ハイブリッド)
第15回:期末試験(用語確認/時間制限内でプログラム作成)とまとめ
授業内容は受講者の進度によって変更することがあります。
準備学習・履修上の注意
/Notices
プログラミング初心者大歓迎です。プログラミングAを履修してなくても履修可能です。
この授業は演習が中心になるため、全回出席することが基本になります。授業では毎週提出課題があります。欠席した場合には、授業で実施した演習課題を自分で調べ、自ら遅れを取り戻して次の授業に出席する姿勢が求められています。
なおこの授業は各回の予習復習にかかる時間は4時間程度を想定しています。
ノートPCを持っているとプログラミングの学習に有効です。
教科書・参考書等
/Textbooks
【教科書】なし 
教材は、担当教員が作成する電子教材をベースとして使えるようにしており、教科書購入は必要ありません。教材のプログラムをそのままコピー&ペーストせず、考えて悩みながら、自分で作成したプログラムが動いた時の楽しさを学びましょう。
毎回、授業の半分程度を演習の時間にして、様々なプログラムを一緒に作ります。出来るだけ履修者の身近な内容を扱います。

【参考書】なし 
※授業の進度に応じて紹介します。授業の補足やさらに深く学びたい人に対しても授業で紹介していきます。
成績評価の方法
/Evaluation
【評価方法】
出席プログラム15回提出(40%)、演習プログラム2回提出(20%)、期末試験(40%)

成績評価は、毎回の授業で提出する出席プログラム、総合演習の最終成果で提出する演習プログラム、期末試験を総合して行います。期末試験は、講義で学んだ用語確認とプログラム作成を予定していますが、授業を受講することで十分に回答可能な内容を想定しています。

【評価基準】
出席プログラム、演習プログラム、期末試験は下記の評価基準で評価します。

出席プログラム:授業で学んだ内容を1つ以上含んだプログラムを作成できる
演習プログラム:順次・分岐・反復をそれぞれ1つ以上含めて、個人またはグループで取り組んだテーマに関する内容のプログラムを作成できる
期末試験:
 ・プログラミングにおける順次・分岐・反復の概念を説明できる
 ・順次・分岐・反復の処理をそれぞれ1つ以上含め、授業で学んだ内容から2つ以上含めたオリジナルのプログラムを作成できる

【課題(試験やレポート)に対するフィードバックの方法】
授業に関する質問は、授業後、あるいは、白百合女子大学のメールアドレスを用いてメールで受付けます。授業外でプログラミングの時間が増えるほど、プログラムの上達も期待できます。
備考
/Notes
要素III(基礎的素養)
・この授業は、課題解決型学習、グループワーク、プレゼンテーションを取り入れている。
・この授業はICTを活用した学習支援を取り入れている。eラーニングシステム: manaba course
・この授業はオープンな教育リソースを取り入れている:Python 3.12.2 ドキュメント https://docs.python.org/ja/3/

科目と卒業/修了認定に関する方針(ディプロマ・ポリシー)の対応一覧
/Diploma Policy
https://www.shirayuri.ac.jp/campus/enrollment/diploma01.html

科目一覧へ戻る