シラバス
授業科目名 | 年度 | 学期 | 開講曜日・時限 | 学部・研究科など | 担当教員 | 教員カナ氏名 | 配当年次 | 単位数 |
---|---|---|---|---|---|---|---|---|
プログラム言語(3)/プログラミング(3) | 2024 | 前期 | 木2 | 文学部 | 鈴木 裕信 | スズキ ヒロノブ | 1~4年次配当 | 2 |
科目ナンバー
LE-IM1-T403
履修条件・関連科目等
授業で使用する言語
日本語
授業で使用する言語(その他の言語)
授業の概要
プログラミング言語Pythonを用いてプログラムの構造やデータ構造を中心に学ぶ。最初は簡単なプログラミングから始め、徐々にステップアップし、最後はテキストマイニングを応用したプログラムを作成する。毎回実習をベースに授業を進める。
科目目的
ソフトウェア(プログラム)とは現代社会で欠かすことの出来ないものであるが、そのソフトウェアの作製する過程を通して情報社会に対する「幅広い教養」や「複眼的に思考」といったことを習得することを目的とする。また履修者にはオリジナルのプログラム作製を課すことで「主体的に自ら学ぶ」というプロセスを習得することも目的とする。
到達目標
最終的にオリジナルのプログラムを「企画(仕様)」「設計」「実装」「稼働(動作試験)」の製作過程を経て動かすことを到達目標とする。
授業計画と内容
1. オリエンテーション / ソフトウェアの役割についての理解
2. 基本的制御構造及び演算子と実習
3. 変数・データタイプと実習
4. 配列と連想配列と実習
5. 条件判断・繰り返しと実習
6. 正規表現とパターンマッチと実習(課題出題)
7. データ入出力・ファイル処理と実習
8. 関数・ライブラリ
9. オブジェクト指向の概念と実習(課題出題)
10. テキストマイニング基本
11. テキストマイニング応用
12.ペア・プログラミング実習のイントロダクションと実習
13.ペア・プログラミング実習(開発)<課題解決型の学習・グループワーク>
14.ペア・プログラミング実習(発表)<課題解決型の学習・グループワーク>
12~14までは2~3名からなる小さなチームを作りチーム単位でプログラムのアイデア出し、設計、プログラミング、テストといった一連の作業を行いオリジナルのインタラクティブな機能をもったプログラムを完成させることを目標とする。尚、受講者数が少ないなどやむを得ない場合や対面授業などがむずかしい状況の場合はチーム作業ではなく個人でのプログラム作成となる場合がある。
授業時間外の学修の内容
指定したテキストやレジュメを事前に読み込むこと
授業時間外の学修の内容(その他の内容等)
授業時間外の学修に必要な時間数/週
・毎週1回の授業が半期(前期または後期)または通年で完結するもの。1週間あたり4時間の学修を基本とします。
・毎週2回の授業が半期(前期または後期)で完結するもの。1週間あたり8時間の学修を基本とします。
成績評価の方法・基準
種別 | 割合(%) | 評価基準 |
---|---|---|
平常点 | 100 | 小課題は2題とし各々25%の配分とし、最終課題のオリジナルのプログラム作製は40%を配分する。 |
成績評価の方法・基準(備考)
課題や試験のフィードバック方法
授業時間内で講評・解説の時間を設ける
課題や試験のフィードバック方法(その他の内容等)
アクティブ・ラーニングの実施内容
PBL(課題解決型学習)/グループワーク/実習、フィールドワーク
アクティブ・ラーニングの実施内容(その他の内容等)
授業におけるICTの活用方法
その他
授業におけるICTの活用方法(その他の内容等)
毎回コンピュータを使っての実習
実務経験のある教員による授業
はい
【実務経験有の場合】実務経験の内容
1985年㈱SRA入社し現場でUNIXやネットワーク関連のソフトウェア開発を経験したあと、同社ソフトウェア工学研究所にてネットワーク・トラフィックの研究、ソフトウェア品質の研究を行う。96年に独立しソフトウェア・コンサルタントとして活動。1980年代よりフリーソフトウェア運動に参加し2002年からは特定非営利活動法人フリーソフトウェアイニシアティブ(FSIJ)事務局長という立場からフリーソフトウェア運動に携わる。オープンソース関連では、2006年から2009年にかけてGoogle Summer of CodeにFSIJのメンターの1人として参加した経験を持つ。ソフトウェア技術者協会の幹事として産学の垣根を越えて経験や技術の交流をしあうプロフェッショナルソサエティの場を作る活動に参加している。2017年よりユニバーサルシェルプログラミング研究所に所属しIoTに関連するソフトウェア開発の研究に従事している。
【実務経験有の場合】実務経験に関連する授業内容
My professional career started as a UNIX programmer at Software Research Association, Inc. Tokyo, Japan in 1985. In 1991, I moved from the industry department to the research department, SRA Software Engineering Laboratory. I have been working as an independent Software consultant since 1996. Also, I have been working in some Universities as a part-time lecturer that has been teaching UNIX operating system, Network, Programming, and practical skills of project management. I wrote four books, some papers for international/domestic industry/academic communities, and many articles for Japanese computer magazines. There are a lot of my contributions to Free Software community, computer security community and programmer community in Japan. Now, I joined Universal Shell Programming Laboratory, Ltd. and I've been studying for applying to security technology to USP's products to protect commercial/industrial systems.
テキスト・参考文献等
特に教科書は指定しない。
【参考文献】
[オンライン]
Python 3.10.0b2 ドキュメント
https://docs.python.org/ja/3/index.html
[書籍]
Pythonチュートリアル 第4版 単行本(ソフトカバー) – 2021/2/1 Guido van Rossum (著), 鴨澤 眞夫 (翻訳)
ISBN-10 : 4873119359
ISBN-13 : 978-4873119359
授業の資料配布などはGoogle Classroomを利用する。クラスコードはmanabaで通知する。
その他特記事項
ペア・プログラミングではオリジナルのテキストマイニング・プログラムを作成する。ただし、対面授業などがむずかしい状況の場合、ペア・プログラミングは個人作業となる可能性がある。
プログラムやデータのバックアップのためGoogle DriveやUSBメモリなどを用意し必要に応じて随時バックアップを行うこと。ファイルの破損等による課題の提出遅れは理由として認めない。