개발자 ↔ 소프트웨어 ↔ 하드웨어

ㄴ 관계

더보기

 

하드웨어는 스스로 움직이지 않는다.
소프트웨어가 명령하고,
개발자가 그 명령을 만든다.

ㄴ 전제 1. 하드웨어란?

더보기
  • 기계다
  • 컴퓨터 시스템을 구성하는 물리적인 장치다.
  • 예시
    • CPU, 메모리(RAM)
    • 저장장치(HDD, SSD)
    • 키보드, 마우스, 모니터
    • 네트워크 장비

ㄴ 전제 2. 소프트웨어란?

더보기
  • 소프트웨어란 하드웨어가 무엇을, 어떤 순서로, 어떻게 처리해야 하는지를 정의한 명령의 집합이다.
  • 소프트웨어는 하드웨어를 직접 바꾸지 않고,
    하드웨어의 동작 방식을 논리적으로 제어한다.
    • 운영체제(OS)
    • 응용 프로그램
    • 펌웨어
    • 서버 프로그램

ㄴ 전재 3. 개발자란?

더보기
  • 개발자는 하드웨어를 직접 조작하지 않는다.
     소프트웨어를 통해 간접적으로 제어한다.
    1. 개발자는 소스 코드를 통해 로직(소프트웨어 동작)을 구현하고
    2. 그 로직이 소프트웨어(로직 집합)로 실행되어
    3. 하드웨어가 올바르게 동작하도록 만드는 사람이다.

ㄴ 결론

더보기
  • 모든 소프트웨어는 결국 하드웨어 위에서 실행된다.

  • 하드웨어를 모르는 개발자는
    문제를 ‘만지는’ 사람이지,
    문제를 ‘해결하는’ 사람은 아니다.

  • 따라서
    개발자는 코드를 작성하는 사람이지,
    하드웨어를 모르는 사람이어서는 안 된다.