간단한 요즘 컴퓨터 개발에 대한 용어 설명1 [라이브러리, 크로스 플랫폼, 소스코드, 프로그래밍, 개발]
라이브러리 : 하나 이상의 프로그램에서 공통으로 사용할 수 있는 함수들을 모듈로 만들어 놓은 집합.
일종의 모듈이다. 자주 쓰이는 펑션들은 함수화 해놓으면 좋다. 재사용성
ㄴ 아두이노 라이브러리 등
백엔드 개발자 : 데이터 베이스에 저장되는 각종 정보의 입출력, 데이터의 분석과 가공, 로그인 등을 비롯한 보안 요소들이 백엔드 개발자를 통해서 진행된다.
ㄴ 서버, 네트워크, 데이터베이스 등 다양한 지식이 필요함.
안드로이드 개발자 : 안드로이드 기반으로 JAVA 혹은 코틀린을 많이 사용합니다.
iOS 개발자 : 과거 오브젝티브-C 를 썼으나 현재는 대부분 스위프트를 많이 사용합니다.
크로스 플랫폼 : 플러터 x 다트, 리액트 네이티브 x 자바스크립트, 자마린 x C# 등이 있습니다.
ㄴ 개인적으로 자마린은 망...
게임 개발자 : 컴퓨터, 수학, 프로그래밍 등 높은 수준의 숙련도를 요구하는 개발자, 주로 C++ 로 개발함., 유니티는 C샵을 이용하여 개발을 많이 함.
응용소프트웨어 개발자 : C++, C, JAVA, Python 등 다양한 프로그램으로 응용 소프트웨어 단을 설계하는 개발자임., 운영체제, 컴퓨터 구조, 소프트웨어 공학 등의 소양을 갖춰야 함.
소스 코드 : 설계문, 명령문, 주석 등과 같이 사용하여 작성한 코드
arr = [3, 5, 2, 4, 1] =============> 설계문(자료형)
# 배열의 크기만큼 반복 =============> 주석
def bubble_sort(arr): =============> 설계문(구조 선언)
# 배열의 크기만큼 1을 뺀 다음 i 만큼 반복 =============> 주석
for i in range(len(arr)) -1, 0, -1): =============> 명령문
for j in range(i):
프로그래밍 : 코딩 + 목적한 바 라고 할 수 있음., 간단히 설명하자면 아래 그림과 같이 순서도(Flow chart)를 사용하여 코딩을 하기 전 설계를 한 뒤 만드는 행위라 할 수 있다.
Flow chart
위와 같은 Flow chart를 일종의 Algorithm이라 할 수 있다.
이 Algorithm을 바탕으로 코딩을 하는 행위를 프로그래밍이라 할 수 있겠다.
논리적인 오류나 고려하지 못한 변수가 있게 되면 Error이 발생하게 되고 얘기치 못한 사고가 일어날 수 있으므로 프로그래머는 꼼꼼함이 필수 덕목이라 할 수 있다.
개발 : 코딩 + 프로그래밍 + 그 외 = 개발 이라 할 수 있다.
① 요구사항 분석
ㄴ 요구사항 구체화
② 시스템 명세
ㄴ 이를 어떻게 구현할 것인지, 전반적인 구상
③ 구조 설계
ㄴ 프로그래밍 언어는 어떤 것을 사용하며, 데이터는 어떤 방식으로 저장하고 관리할지, 어떤 서버에 구축할지 등 앱의 전반적인 구조를 설계하는 과정이다.
④ 구현
ㄴ 프로그래밍 + 코딩의 단계
⑤ 테스트
ㄴ 끊임 없는 오류 점검, 기능 테스트, 코드 수정
⑥ 유지보수
ㄴ 모든 과정을 마치고 앱이 안정적으로 운영되도록 관리하는 작업이 꾸준히 필요합니다.
이 외에 서비스가 모든 환경에서 제대로 작동하는지(Android 버전 별, 혹은 핸드폰 별 벤치 테스트 등), 기존 S/w가 문제점 혹은 비효율적인 부분이 있는지 찾아서 개선하는 것, 데이터베이스 체계를 구축하는 것, 개발 과정을 자동화 하고 설계를 문서로 정리하는 것 등 많은 역할이 있다.