[혼공단9기] 개발직군, 개발용어 내용 정리 [chapter 01 기본 미션]

2023. 1. 3. 18:35·◈ 공부모임/혼공학습단⏰


- 개발직군, 개발용어 내용 정리 [chapter 01 기본 미션]

1-1. 개발자란 누구인가요?

개발자가 하는 일은, 무에서 유를 창조하고 누군가 이해할 수 있도록 작성한다는 부분에서 작가가 하는 일과 매우 비슷하다. 다만, 개발은 컴퓨터가 이해할 수 있는 언어로, 작가는 사람이 이해할 수 있는 언어로 작성한다는 점이 다르다.

개발자와 작가 비교 / 출처 : 혼공얄코


1-2. 개발직군은 무엇이 있나요?

작가도 종류에 따라 소설가, 시나리오 작가, 시인이 있듯이 개발자 또한 여러 분야로 직군이 나눠진다.
 

[혼공단9기] 개발자와 연관된 직군 정리 [chapter 01 선택 미션]

- 개발자와 연관된 직군 정리 [chapter 01 선택 미션] 1. 웹 개발자 : 웹사이트를 만드는 개발자 웹 개발자는 웹사이트를 개발하는 개발자이다. (PC나 스마트폰에서 웹서핑을 하며 방문하는 웹사이트

yermi.tistory.com


1-3. 확인 문제 풀기

확인 문제 1-1 / 출처 : 혼공얄코

정답 : ③
→ 스위프트는 ios 개발 언어이므로, 모바일 앱 개발자가 다루는 언어이다.

 

확인 문제 1-2 / 출처 : 혼공얄코

로봇 청소기의 기기 제어 소프트웨어 개발 : 임베디드 개발자
커뮤니티 웹사이트의 회원 정보를 데이터베이스에 저장하는 과정을 개발 : 백엔드 개발자
윈도우용 화면 캡처 프로그램을 개발 : 응용 프로그램 개발자
디자이너가 작업한 이미지대로 웹 화면을 개발 : 프론트엔드 개발자(웹 퍼블리셔)
아이폰용 사진 꾸미기 앱을 개발 : 모바일 앱 개발자
운전자의 조작 없이 움직이는 자율주행 자동차 개발 : AI 개발자

 

확인 문제 1-3 / 출처 : 혼공얄코

프론트엔드 개발자 → (웹 화면 개발) → 클라이언트 개발
백엔드 개발자 → (데이터베이스 관련 개발) → 서버 개발
모바일 개발자 → (모바일은 앱 개발) → 앱 개발

 

확인 문제 1-4 / 출처 : 혼공얄코

크로스 플랫폼으로 사용되는 언어 조합
→ 플러터x다트, 리액트 네이티브x자바스크립트, 자마린xC# 등

 

확인 문제 1-5 / 출처 : 혼공얄코

정답 : ⑤
→ 임베디드 개발자는 하드웨어를 제어하는 소프트웨어를 개발한다.

2-1. 코딩 : 프로그래밍 언어로 코드 작성하기

코딩은 소스 코드를 작성하는 작업이다. (키보드로 타이핑해서 코드를 입력 단순 작업을 의미)
→ 코더는 컴퓨터가 처리할 수 있는 명령어로 코드(부호)를 작성하는 사람을 지칭

소스 코드는 작업을 어떻게 수행할 것인지를 알려주는 설계문, 컴퓨터에 각종 지시를 내리는 명령문, 각 코드가 어떤 내용인지 설명해주는 주석 등의 정보로 이루어져 있다.

소스코드 예시 / 출처 : 혼공얄코


2-2.  프로그래밍 : 컴퓨터가 할 일 설계하기

프로그래밍은 컴퓨터에서 작동하는 프로그램을 설계하고 개발하는 전 과정을 의미. (코딩보다 더 넓은 개념)

프로그래머는 단순히 코드만 작성하는 코더와는 다르게, 개발할 프로그램에 어떤 기능을 추가하고, 어떤 방식으로 구현할지 미리 계획할 수 있어야 한다.

- 알고리즘이란?

아래와 같은 순서도를 컴퓨터가 어떤 순서로, 발생할 수 있는 상황은 무엇이고 그에 따라 어떤 행동을 할지, 어떤 과정을 몇 번 반복할지 등을 설계하는 것이다.
→ 이것을 프로그래밍 언어로 작성하는 과정이 프로그래밍이고, 그 결과물이 소스 코드이다.

순서도 예시 / 출처 : 혼공얄코


2-3. 개발 : 소프트웨어를 만들고 운영하는 과정

개발은 코딩이나 프로그래밍보다 더 포괄적인 개념으로, 소프트웨어의 기술적 계획부터 제작, 사후 관리까지 모두 포함하는 용어이다.

소프트웨어가 만들어지는 과정을 정리하면 아래와 같다.

① 요구 사항 분석 : 기획팀에서 '○○한 기능을 수행하는 스마트폰 앱을 만들어달라'
② 시스템 명세 : 개발자가 기획팀의 요구 사항을 구체화
③ 구조 설계 : 어떻게 구현할지 전반적인 구상
④ 구현 : 언어, DB, 서버 결정, 구조 설계 및 제작
⑤ 테스트 : 오류 점검, 기능 테스트, 코드 수정
⑥ 유지보수 : 버그 해결, 기능 업데이트, 안정적인 운영 관리

소프트웨어 개발 순서 / 출처 : 혼공얄코


2-4. 소프트웨어 vs 프로그램 vs 애플리케이션

- 소프트웨어와 프로그램

소프트웨어는 하드웨어와 반대로 보이지 않는 부분! (프로그램, 라이브러리, 데이터 등으로 이뤄짐)
→ 하드웨어 : 컴퓨터 본체와 CPU, 메모리 등 눈에 보이고 만져지는 부분

소프트웨어와 프로그램이라는 단어는 일반적으로 혼용해서 사용한다. 하지만, 정확히 파고들면 프로그램은 소프트웨어에 포함되는 개념이다. 이메일을 보내는 소프트웨어를 만든다고 가정을 해보면,
  - 데이터 : 받는 사람의 이름과 주소, 내용 등의 정보
  - 라이브러리 : 내용 쓰기, 서식 지정, 이미지 삽입 등의 기능
  - 프로그램 : 받는 사람, 메일 내용을 입력하는 것부터 보내기 버튼을 누르기까지의 과정

그리고 이 모든 것을 아우르는 것이 소프트웨어이다.

소프트웨어 구조 / 출처 : 혼공얄코


- 애플리케이션

오늘날에는 스마트폰이 널리 사용되면서, 어플 또는 앱이라고도 부른다.
→ 애플리케이션은 윈도우 PC에서의 응용 프로그램이다.

- 시스템 프로그램 vs 응용 프로그램

시스템 프로그램 : 운영체제를 구성하는 소프트웨어. 사용자가 컴퓨터를 사용할 수 있는 환경 제공
응용 프로그램 : 각각의 목적에 따라 사용자가 활용하는 프로그램.
→ 우리가 사용하는 워드, 포토샵, 게임, 크롬 등은 모두 응용 프로그램. 다른 말로 애플리케이션이다.

시스템 프로그램과 응용 프로그램 예시 / 출처 : 혼공얄코


2-5. 확인 문제 풀기

확인 문제 2-1 / 출처 : 혼공얄코

라이브러리는 소프트웨어 내에 있는 구성요소이며, 이메일을 보내는 과정에서 내용 쓰기, 서식 지정하기, 이미지 삽입하기, 파일 첨부하기 등과 같은 기능들을 묶어놓은 것이다.

 

확인 문제 2-2 / 출처 : 혼공얄코

프로그램은 운영체제를 구성하는 시스템 프로그램과 앱이라고도 불리는 응용 프로그램으로 나눌 수 있다.

 

확인 문제 2-3 / 출처 : 혼공얄코

코딩이란 부호를 나타내는 'code' 뒤에 'ing'를 붙여 '부호를 작성한다'라는 뜻을 가진 단어이다. 작가가 펜을 잡고 글을 쓰는 것처럼 키보드로 타이핑해서 코드를 입력하는 단순 작업을 의미한다.

 

확인 문제 2-4 / 출처 : 혼공얄코

소프트웨어 완성 이후, 버그 해결, 기능 업데이트, 안정적인 운영 관리 등의 유지보수라는 작업이 남아있다.

 

확인 문제 2-5 / 출처 : 혼공얄코

요구 사항 분석 → 시스템 명세 → 구조 설계 → 구현 → 테스트 → 유지 보수

'◈ 공부모임/혼공학습단⏰' 카테고리의 다른 글
  • [혼공단9기] 프론트엔드와 백엔드, 프레임워크 등 [chapter 03 기본 미션]
  • [혼공단9기] 디버깅과 빌드 개념 정리 [chapter 02 선택 미션]
  • [혼공단9기] 프로그래밍 언어 & 디버깅, 빌드, 릴리스 등 [chapter 02 기본 미션]
  • [혼공단9기] 개발자와 연관된 직군 정리 [chapter 01 선택 미션]
예르미(yermi)
예르미(yermi)
끊임없이 제 자신을 계발하는 개발자입니다👨🏻‍💻
  • 예르미(yermi)
    예르미의 코딩노트
    예르미(yermi)
  • 전체
    오늘
    어제
    • 분류 전체보기 (973)
      • ◎ Java (133)
        • Java☕ (93)
        • JSP📋 (26)
        • Applet🧳 (6)
        • Interview👨🏻‍🏫 (8)
      • ◎ JavaScript (48)
        • JavaScript🦎 (25)
        • jQuery🌊 (8)
        • React🌐 (2)
        • Vue.js🔰 (6)
        • Node.js🫒 (3)
        • Google App Script🐑 (4)
      • ◎ HTML5+CSS3 (17)
        • HTML5📝 (8)
        • CSS3🎨 (9)
      • ──────────── (0)
      • ▣ Framework (67)
        • Spring🍃 (36)
        • Spring Boot🍀 (12)
        • Bootstrap💜 (3)
        • Selenium🌕 (6)
        • MyBatis🐣 (10)
      • ▣ Tools (47)
        • API🎯 (18)
        • Library🎲 (15)
        • JitPack🚀 (3)
        • Jenkins👨🏻 (7)
        • Thymeleaf🌿 (4)
      • ▣ Server (30)
        • Apache Tomcat🐱 (14)
        • Apache HTTP Server🛡️ (1)
        • Nginx🧶 (7)
        • OracleXE💿 (4)
        • VisualSVN📡 (4)
      • ▣ OS : 운영체제 (18)
        • cmd : 명령프롬프트💻 (10)
        • Linux🐧 (8)
      • ▣ SQL : Database (56)
        • Oracle SQL🏮 (26)
        • PL SQL💾 (9)
        • MySQL🐬 (6)
        • MariaDB🦦 (6)
        • H2 Database🔠 (3)
        • SQL 실전문제🐌 (6)
      • ────────── (0)
      • ◈ Human Project (86)
        • Mini : Library Service📚 (15)
        • 화면 설계 [HTML]🐯 (10)
        • 서버 프로그램 구현🦁 (15)
        • Team : 여수어때🛫 (19)
        • Custom : Student🏫 (9)
        • Custom : Board📖 (18)
      • ◈ Yermi Project (40)
        • 조사모아(Josa-moa)📬 (5)
        • Riddle-Game🧩 (6)
        • 맛있을 지도🍚 (2)
        • 어디 가! 박대리!🙋🏻‍♂️ (5)
        • 조크베어🐻‍❄️ (4)
        • Looks Like Thirty🦉 (2)
        • Toy Project💎 (12)
        • 오픈소스 파헤치기🪐 (4)
      • ◈ Refactoring (15)
        • Mini : Library Service📚 (8)
        • 서버 프로그램 구현🦁 (1)
        • Team : 여수어때🛫 (0)
        • 쿼리 튜닝일지🔧 (6)
      • ◈ Coding Test (80)
        • 백준(BOJ)👨🏻‍💻 (71)
        • 프로그래머스😎 (2)
        • 코드트리🌳 (7)
      • ◈ Study (129)
        • 기초튼튼 개발지식🥔 (25)
        • HTTP 웹 지식💡 (4)
        • 클린코드(Clean Code)🩺 (1)
        • 디자인패턴(GoF)🥞 (12)
        • 알고리즘(Algorithm)🎡 (14)
        • 다이어그램(Diagram)📈 (4)
        • 파이썬(Python)🐍 (16)
        • 에러노트(Error Note)🧱 (34)
        • 웹 보안(Web Security)🔐 (11)
        • 인공지능 AI🛸 (8)
      • ◈ 공부모임 (50)
        • 혼공학습단⏰ (18)
        • 코드트리 챌린지👊🏻 (2)
        • 개발도서 100독👟 (8)
        • 나는 리뷰어다🌾 (13)
        • 국가기술자격 서포터즈🌻 (9)
      • ◈ 자격증 공부 (37)
        • 정보처리기사🔱 (16)
        • 정보처리산업기사🔅 (9)
        • 컴퓨터활용능력 1급📼 (12)
      • ─────────── (0)
      • ◐ 기타 (120)
        • 알아두면 좋은 팁(tip)✨ (46)
        • 개발자의 일상🎈 (51)
        • 개발도서 서평🔍 (10)
        • 개발관련 세미나🎤 (2)
        • 블로그 꾸미기🎀 (9)
        • 사도신경 프로젝트🎚️ (2)
  • 인기 글

  • 최근 댓글

  • 태그

    코딩
    jsp
    코딩 테스트
    spring
    javascript
    SQL
    Java
    Database
    Project
    꿀팁
    프로그래밍
    BOJ
    백준
    html
    Error Note
    Oracle
    자바스크립트
    백준 티어
    일상
    CSS
  • hELLO· Designed By정상우.v4.10.3
예르미(yermi)
[혼공단9기] 개발직군, 개발용어 내용 정리 [chapter 01 기본 미션]
상단으로

티스토리툴바