강의

멘토링

커뮤니티

NEW
Programming

/

Algorithm & Data Structure

Computational Thinking (Part 2)

Along with reading, writing, and arithmetic, computational thinking is an essential skill that everyone living in the AI era must possess. Simply put, computational thinking can be defined as thinking like a programmer or a computer scientist. This course replicates an actual one-semester university lecture and covers essential content for those new to programming or beginners planning to major in computer science. Additionally, through this course, non-computer science majors or those with a humanities background can develop the ability to communicate easily with professional programmers. Even in an era where learning prompts for "AI vibe coding" is necessary, computational thinking allows you to develop the ability to instruct AI more accurately and effectively.

1 learners are taking this course

Level Basic

Course period 6 months

  • strandkings
데이터구조
데이터구조
소프트웨어검증
소프트웨어검증
계산의한계
계산의한계
동시적행동
동시적행동
정보보호
정보보호
Algorithm
Algorithm
software-design
software-design
Business Problem Solving
Business Problem Solving
데이터구조
데이터구조
소프트웨어검증
소프트웨어검증
계산의한계
계산의한계
동시적행동
동시적행동
정보보호
정보보호
Algorithm
Algorithm
software-design
software-design
Business Problem Solving
Business Problem Solving

What you will gain after the course

  • You can learn how to think like a programmer or a computer scientist.

  • Beginners starting coding for the first time can become familiar with computational thinking.

  • Computational thinking can be applied to various fields to solve problems.

  • You can learn the basic concepts of coding rather than just programming language syntax.

A must-take course before learning programming (coding) for the first time

  • A course suitable for beginners from a humanities background who wish to build foundational knowledge in programming (coding).
  • A must-take course for beginners with no prior background in programming who want to get started with Vibe Coding.
  • A course for those who have learned programming language syntax but failed to break into the field and eventually gave up on coding.
  • It is recommended to take Computational Thinking (Part 1) before taking Computational Thinking (Part 2)!!を先に受講することをおすすめします!! nhé!!

The university lecture has been brought over exactly as it is. Nội dung bài giảng đại học được chuyển tải nguyên vẹn.

Who are the people who absolutely must take the Computational Thinking course? 

강의에서 참고한 교재

This course is a direct adaptation of a full-semester university curriculum (when including both Part 1 and Part 2), and you will learn how to think like a programmer or a computer scientist.

It covers essential content for those new to programming or beginners planning to major in computer science.

It uses simple examples to explain concepts that help non-majors or those with humanities backgrounds communicate easily with professional programmers.


Learning Content 📚

Section (1) Chapter 7 Data Organization

  • Understand the importance of naming variables.
  • Understand how data is organized and stored in memory.
  • Understand how lists are stored in memory as arrays.
  • Explore implementation methods for linked lists, which are convenient for adding or deleting items.
  • Examine examples of how graphs are used in road networks, subway lines, and flight routes.
  • We will define graphs mathematically and implement them in memory.
  • Define trees and examine various examples of their use.
  • Understand how indexing is used to organize data.
  • Understand how linking is used to organize data.

Section (2) Chapter 8 Data Processing

  • Understand the architecture of the von Neumann stored-program computer.
  • Understand that the von Neumann architecture is similar to the way cell-based spreadsheets operate.
  • Understand that arithmetic operations, formulas, and functions in cell-based spreadsheets are similar to the principles of programming.
  • Understand how strings such as email addresses and date formats are processed in programs.
  • Examine various patterns and different pattern rules within strings.
  • Understand how to represent various patterns using regular expressions and practice applying them.

Section (3) Chapter 9 Software Verification and Validationセクション(3) 第9章 ソフトウェアの検証と確認

  • Understand the reasons why errors occur in computers.
  • Understand that software design and implementation are similar to architectural design and construction.
  • Understand that the procedures for software correctness verification and construction supervision are similar.
  • Understand requirements, design verification, and product validation for software.
  • Understand the advantages and limitations of AI vibe coding, and recognize the necessity of review and verification.
  • Understand the reasons for using software testing for software verification and validation, as well as the limitations of testing.
  • Understand the necessity of documentation, scenarios, test cases, and test reports for software testing.
  • Understand the differences between black-box testing and white-box testing for software testing.
  • Examine various detailed examples of black-box testing and white-box testing.

Section (4) Chapter 10 Limits of Computation

  • Understand the improvement of computer performance and the physical limits of Moore's Law.
  • Understand that computational performance can be defined by storage capacity and processing speed.
  • Understand the reasons why multi-core processors are difficult to sustain.
  • Examine examples of how benchmarking is used to measure computer performance.
  • Understand algorithm performance evaluation methods and the performance difference between linear search and binary search (including sorting).
  • Understand algorithm time complexity and impractical (exponential time) algorithms.
  • Understand that impractical classical algorithms can exist as practical solutions on quantum computers.
  • Understand that there are uncomputable algorithms that can never be solved, such as the halting problem.
  • Understand what the Turing Test and CAPTCHA aim to measure in relation to artificial intelligence.

Section (5) Chapter 11 Simultaneous Behavior

  • A soccer match in a tournament can be compared to an executing program, and the number of soccer fields can be likened to the number of CPUs.
  • Understand that assigning each match to a soccer stadium is similar to concurrency in CPU scheduling.
  • Understand the difference between parallelism and concurrency in computing through the technique of spinning many plates at once.
  • Understand how to improve performance using concurrency through the operational process of sorting networks.
  • Understand the fundamental constraints (dependencies and race conditions) that prohibit concurrent execution.
  • Examine the potential of concurrency for performance improvement and how shared resources constrain concurrency.
  • Understand how race condition (TOCTOU) situations cause errors.
  • You can recognize and explain deadlock and livelock situations.

Section (6) Chapter 12 Information Security

  • Understand the components of security and common forms of cybercrime (malware, identity theft, phishing, etc.).
  • Understand how authentication technologies and personal authentication work.
  • Understand cryptographic concepts (symmetric-key cryptography, public-key cryptography, signatures, message authentication, certificates, etc.).
  • Understand security breach mitigation strategies (firewalls, antivirus, software updates, backups, logs, etc.).
  • You can recognize and apply the fundamental security principles of attack mitigation strategies (protecting weak links, reducing attack surfaces, defense in depth, compartmentalization, etc.).
  • Understand how openness, such as in open-source software, contributes to security.

Notes before taking the course 📢

Prerequisite Knowledge and Important Notes

  • It is very helpful to have an understanding of high school-level polynomial and exponential function graphs.
  • The lecture video quality (audio/video) is not optimal and may be updated in the future.
  • Any questions can be checked through the Q&A section.

Recommended for
these people

Who is this course right for?

  • Beginners or non-majors who want to learn essential concepts in the field of computing.

  • Beginners who are new to programming but want to build a foundation for future vibe coding

  • Non-technical professionals who want to communicate smoothly with programmers implementing business scenarios.

Need to know before starting?

  • No special prior knowledge is required, but you should have an open mind toward computational thinking (Computational Thinking Part 1 is a prerequisite).

Hello
This is

벤처, 대기업, 정부출연연구소, 대학에서 두루 근무

네트워크/보안/블록체인/암호/모바일통신/소프트웨어개발/운영체제/양자컴퓨팅

Curriculum

All

24 lectures ∙ (14hr 12min)

Published: 
Last updated: 

Reviews

Not enough reviews.
Please write a valuable review that helps everyone!

Limited time deal

$26.40

38%

$42.90

strandkings's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!