inflearn logo
知識共有
inflearn logo

コンピューティング思考(第1部) - ソフトウェアによる問題解決

読み書きや計算と並んで、AI時代を生きる誰もが必ず身につけるべき能力が、コンピューティング思考力である。コンピューティング思考とは、簡単に言えば、プログラマーのように考えること、あるいはコンピュータ科学者のように考えることと定義できる。本講義は、大学で実際に行われている一学期分の講座をそのまま収録したものであり、プログラミングに初めて触れる人や、コンピュータを専攻しようとする入門者にとって必要不可欠な内容を扱っている。また本講義を通じて、コンピュータを専門としない人や人文学を背景に持つ人が、専門のプログラマーと円滑に意思疎通するための能力を身につけることができる。AIバイブコーディングのためにプロンプトを学ばなければならない時代においても、コンピューティング思考を通じて、AIにより正確かつ効果的に指示を出す能力を養うことができる。

難易度 入門

受講期間 12か月

Algorithm
Algorithm
software-design
software-design
Business Problem Solving
Business Problem Solving
Algorithm
Algorithm
software-design
software-design
Business Problem Solving
Business Problem Solving

受講後に得られること

  • プログラマーやコンピューターサイエンティストのように考える方法を身につけられる。

  • 初めてコーディングを始める入門者が、コンピューティング思考に親しむことができる。

  • さまざまな分野にコンピューティング思考を取り入れ、問題解決ができる。

  • プログラミング言語の文法ではなく、コーディングのための基礎概念を学べる。

プログラミング(コーディング)を初めて学ぶ前に必ず受講すべき講義

  • 人文系出身で、プログラミング(コーディング)に関する基礎教養を身につけたい初心者に適した講座

  • プログラミング分野のバックグラウンドはないものの、バイブコーディングに入門してみたい初心者に必要な講義

  • プログラミング言語の文法を学んだことはあるものの、コーディング分野に踏み出せずにいる「コポジャ」にこそ必要な講義

  • コンピューティング思考(第1部)を受講した後にコンピューティング思考(第2部)を受講するのがおすすめです!!!!!!

大学の講義をそのまま移しました。

コンピューティング思考の講義をぜひ受講すべき人は誰だろうか?

  • 本講義は大学の1学期分の講座(1部と2部の両方を含む場合)をそのまま移したものであり、プログラマーやコンピューターサイエンティストのように考える方法を学びます。

  • プログラミングに初めて触れる人やコンピューターを専攻しようとする初心者にとって、必須の内容を扱っている。

  • 非専攻者や人文科学を背景とする人々が、プロのプログラマーと円滑にコミュニケーションを取るための概念を、例を挙げながらわかりやすく説明している。

本講義で参考にした教材

学習内容

セクション(1)第1章 計算論的思考

  • 現代的なコンピューターとソフトウェアの発明に貢献した歴史的な出来事を見ていく。

  • プログラム概念の最初の機械と、プログラム可能な最初のコンピューターについて見ていく。

  • プログラム内蔵方式の概念と、プログラムの実行およびデータが処理される過程について理解する。

  • 最初のアナログコンピュータと最初のデジタルコンピュータについて学ぶ。

  • プログラム内蔵方式の最初のデジタルコンピュータについて見ていく。

  • 現代的なコンピュータの基本構成と特徴について学ぶ。

  • ソフトウェアを通じた問題解決能力であるコンピュテーショナル・シンキングの実質的な定義について考察する。


セクション(2) 第2章 現実世界の情報とデータ

  • 情報とデータの関係、アナログとデジタルの違いについて理解する。

  • データサイズの測定と、実世界の情報を保存するために必要な容量を定義する。

  • コンピュータシステムでデータをビット列として表現するために符号化される方法を理解する。

  • 位置記数法を理解し、整数と実数がどのように符号化できるかを学ぶ。

  • テキスト文字をビット列に符号化するために、整数として符号化する方法について考察する。

  • アナログ音声をデジタルビット列に符号化するために必要なサンプリング方法を理解する。

  • 色を表現する方法を理解し、画像をデジタルビット列に符号化する方法を理解する。

  • デジタル画像を保存または伝送するために、より小さく短いビット列に圧縮する原理を理解する。


セクション(3) 第3章 論理とは何か

  • 正しく合理的に考えるために、論理が必要であり有用であることを理解する。

  • 帰納的論理と演繹的論理を理解し、論理的推論を試みることができる。

  • 自然言語の命題と論理がどのように記号(シンボル)で表現されるかを学ぶ。

  • 論理値と論理演算子を定義し、真理値表、恒真式および矛盾を理解する。

  • 論理的否定と含意を通じて、論理的推論を組み立てることができる。

  • 実世界の問題(検索エンジン、データベースクエリ、デジタル回路、映像合成、ソフトウェア要件の作成など)を解決するために、論理がどのように適用されるのかを学ぶ。


セクション(4) 第4章 問題解決

  • コンピューティングにおける問題定義の核心となる機能要件について学ぶ。

  • 要件に基づいて、ソフトウェア開発のための問題定義を行うことができる。

  • 問題定義を原因と結果の推論、演繹的推論、帰納的推論などの論理的推論を通じて分析する。

  • 複雑な問題をより小さな問題に分解し、分割統治によって問題を解決できる。

  • 二分探索を通じて、データ分解と分割統治の概念を理解できる。

  • 複雑な問題を単純化するために、制御の抽象化を使用できる。

  • データ資料の抽象化のためにクラス図(class diagram)を使用できる。

  • 行為の抽象化には、ユースケース図(use case diagram)を使用できる。


セクション(5) 第5章 アルゴリズム的思考

  • アルゴリズムの起源と、アルゴリズムにおける詳細な動作の順序が重要であることを理解する。

  • プログラム設計段階で必要なアルゴリズムは、論理的条件文を通じて選択が動作することを理解する。

  • アルゴリズムにおいて、変数はその位置によってメモリ空間になることもあれば、データそのものになることもあることを理解する。

  • コンピューティングにおける計算状態、イベント、演算の概念を理解する。

  • アルゴリズムにおける計算状態の変化とは、メモリ内の変数の値が変化する状態を意味する。

  • フローチャート(アクティビティ図)において、変数の命名、選択、反復命令文がどのように表現されるかを理解する。


  • アルゴリズムにおける複雑な詳細動作は、制御の抽象化によってモジュール化できる。

  • 10個程度の状態を持つ逐次アルゴリズムをモデル化してみることができる。


セクション(6) 第6章 解決策のモデリング

  • アルゴリズムのモデリングのためのアクティビティ図と状態図について理解する。

  • 行動と条件および制御フローが含まれたアクティビティ図を解釈できる。

  • アクティビティ図の3つの制御形式(順次、選択、反復)を理解する。

  • アクティビティ図で複雑なアクティビティを抽象化するために、制御抽象化を使用できる。

  • 与えられたアルゴリズムについてアクティビティ図を作成できる。

  • コンピュータシステム内の計算状態の変化を示す状態図を解釈できる。

  • システム内部に潜在する変化を理解するために、状態とイベントを認識できる。

  • 単純な状態図で全体を表現し、拡張状態図で詳細な内容を表現できる。

  • do、entry、exitアクションを含む状態図を解釈できる。

受講前の参考事項

前提知識および注意事項

  • 高校課程の集合と論理、および整数と実数についての理解があると大いに役立ちます

  • 初期の講義動画の品質(音質・画質)が十分でないため、今後更新される可能性があります。

  • 気になる点は質問/回答を通じて確認できます


こんな方に
おすすめです

学習対象は
誰でしょう?

  • コンピューティング分野に関する必須の概念を習得したい初心者または非専攻者

  • プログラミングに初めて触れるものの、今後のバイブコーディングに向けた基盤を築きたい初心者

  • ビジネスシナリオを実装するプログラマーたちと円滑な意思疎通を図りたい非専攻者

前提知識、
必要でしょうか?

  • 特別な基礎知識は必要なく、コンピューティング的思考に対して柔軟な考え方ができること。

こんにちは
strandkingsです。

キャリア認証

102

受講生

18

受講レビュー

4.9

講座評価

2

講座

e-mail: strandnero@gmail.com

ベンチャー企業、ETRI、サムスン電子に勤務/米国シリコンバレー、ロンドンのIT企業に勤務/ソウル市内の大学のコンピューター工学科教授(17年間)

[サイバーセキュリティ専攻]課程の科目開講予定(全12科目・36単位)- 学部3・4年次および修士課程レベルの講義

コンピューティング思考/システムソフトウェア/Linuxカーネル/コンピュータセキュリティ/インターネット通信/ネットワークセキュリティ/モバイルコンピューティング/移動通信ネットワーク/モバイルセキュリティ/量子コンピューティング/量子通信/量子セキュリティ

もっと見る

カリキュラム

全体

25件 ∙ (9時間 1分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

10件

4.9

10件の受講レビュー

  • phc93142856님의 프로필 이미지
    phc93142856

    受講レビュー 5

    ∙

    平均評価 5.0

    5

    33% 受講後に作成

    • jy07533212님의 프로필 이미지
      jy07533212

      受講レビュー 5

      ∙

      平均評価 5.0

      5

      17% 受講後に作成

      • jucicoola1462님의 프로필 이미지
        jucicoola1462

        受講レビュー 15

        ∙

        平均評価 5.0

        5

        33% 受講後に作成

        • inchon11236063님의 프로필 이미지
          inchon11236063

          受講レビュー 1

          ∙

          平均評価 5.0

          5

          33% 受講後に作成

          • pk30000002371님의 프로필 이미지
            pk30000002371

            受講レビュー 5

            ∙

            平均評価 5.0

            5

            33% 受講後に作成

            strandkingsの他の講座

            知識共有者の他の講座を見てみましょう!

            似ている講座

            同じ分野の他の講座を見てみましょう!

            期間限定セール、あと3日日で終了

            ¥46,200

            30%

            ¥8,463