이번 게시물은 데브기어가 진행하고 있는 델파이/C++빌더 마스터:취업 연계/신입 개발자 과정에 들어가기 전에 개발이 처음이시거나,   전공자인 분들 그외에 프로그래밍에 관한 전반적인 용어나 기초 지식이 필요하신 분들에게 조금이라도 도움을 드리고자 자료를 장 별로 게시하도록 하겠습니다.

 

프로그래밍 애피타이저 시리즈를 보시고 델파이 교육을 참석하시거나 동영상을 보시면 더욱 효과적일 것 입니다.

 

컴퓨터 프로그램이란 ?

프로그램밍이란 흔히 개발이라고 부르며 그대로 프로그램을 만드는 행위입니다. 이러한 프로그래밍을 하는 전문가를 프로그래머, 또는 개발자라고 부릅니다. 프로그램을 만드는 사람입니다, 그럼 프로그래밍,프로그래머에 공통적으로 나오는 단어 프로그램은 무엇일까요?

 

프로그램은 우리 주위에서 흔하게 찾아볼 있습니다. 지금 세상에서 프로그래밍과 관련되지 않은 것들을 찾아보기가 힘들 입니다

 

컴퓨터 게임, 카카오톡이나 라임과 같은 메신저, 페이스북, 트위터와 같은 SNS 물론 일상생활에서 사용하는 냉장고, 에어컨, 핸드폰, 컴퓨터와 같은 전자 제품 등에도 프로그램이 이용되고 있습니다.

 

프로그램은 한마디로 특정한 목적을 위해 컴퓨터에 내리는 명령의 묶음이 위에 사례에서 메신저는 채팅을 목적으로 만들어진 프로그램입니다.

 

프로그래밍을 배워야 하는가?

 

어떠한 목적을 가졌든 프로그래밍을 배우는 사람이 얻을 있는 것은 사고하는 법입니다. 어떠한 문제가 주어졌을 효율적으로 체계적으로 창의적으로 해결하는 사고를 판단력을 길러줍니다.

 

 컴퓨터가 없는 일상을 생각할 없는 지금의 세상에서 컴퓨터가 어떻게 움직이는지 알고, 이해하고, 그에 맞는 사고를 기르는 것은 우리 주변의 많은 것을 이해하는데 도움을 줍니다.

 

프로세스(실행중인 프로그램) 돌게 하는 규칙들로 엮어진 어떤 계산 일을 하기 위해, 어떤 프로세스(계산 주체)들을 어떤 순서로 밟아야 할지(계산 절차,프로시저), 미리 정해 놓은 , 알고리즘 문장으로 표현된 것입니다.

 

*알고리즘과 프로시저는 뒤에서 설명합니다.

 

프로그램 개발/프로그래밍 단계

 

프로그램 개발 단계 

 

1.     문제 정의 분석

2.     입출력 설계

3.     알고리즘 구하기 또는 개발

        4.     프로그래밍 (코딩)

        5.     테스트

 

프로그래밍 단계

 

1.     문제 분석을 생각하고, (개념화)

2.     일련의 순서적인 계산/풀이 절차화해서 (알고리즘으로 변환)

        3.     프로그램화해서 (특정 프로그래밍 언어 표현)

        4.     언어 번역기를 통해 실행 가능한 프로그램으로 만들고(컴파일러)

        5.     실제 컴퓨터에서 동작하도록 하는 (동작 가능) 

 

자료 구조 (Data Struture)

 

문제 해결을 위해 데이터를 조직화하고 저장하고 표현하는 방법

        -    문제에 맞게 쉬운 접근, 변경, 처리할 수 있도록 조직화시킵니다.

 

자료 및 그 처리를 함께 고려하는 데이터 형식

      -       , 자료와 그 작동을 함께 고려하면서 이를 컴퓨터에 효과적으로 표현, 저장, 처리하는 기술 특히,

          이 둘을 잘 감싸는(캡슐화) 것을 추상자료형 이라고 합니다.

 

 

자료구조의 목적/이유

 

효율적으로 데이터를 사용하기 위함입니다.

      -  일반적으로, 좋은 자료구조는 연산의 횟수를 작아지게 있습니다만

         모든 목적에 적합한 단일한 자료구조는 없으며, 응용에 따라 달라집니다.

 

자료구조 관련 연산의 다양성 효율성 재고

     - 통상의 사칙연산 이외에 읽기, 삽입, 삭제, 비교, 교환, 검색등의 용이성, 효율성도 고려합니다.

 

자료구조의 선택(고려 사항) 

 

l  데이터의

 

l  데이터 사용 횟수 방법

 

l  요구되는 기억장치의

 

l  데이터 수정에 필요한 시간

 

l  알고리즘 복잡도

 

 

알고리즘 (Algorithm) 이란?

 

알고리즘의 의미

 

특정 문제를 해결하기 위한 일련의 순서적인 계산/풀이 절차 (문제 풀이 과정) 이는 컴퓨터 프로그램(일련의 정의된 명령어들의 집합) 작성시 기초가 됩니다. 또한, 요구되는 해로 이끄는 일련의 단계 (프로시저) 다만, 이러한 절차/단계들이 보다 수학적으로 엄격하게 다루어져야 한다는 특징이 있습니다.

 

알고리즘의 목적 

 

궁극적으로, 문제의 해결을 기계 실행하기 위한 것입니다.

 

알고리즘의 어원

 

9세기경 아라비아의 천문학자, 수학자인 알고리즈미(al-Khowarizmi) 이름에서 유래되었으며 십진법 의해 덧셈, 뺄셈, 곱셈. 나눗셈, 제곱근, 원주율 구하는 방법을 아랍어로 기록했습니다.

(http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=635&id=507)

 

 

다운로드:  1장 컴퓨터 프로그램이란.pdf

 


프로그래밍을 제대로 공부해보고 싶다면, 다음 순서로 진행하시는 것을 권장합니다.

 

  1. 프로그래밍 애피타이저 시리즈
  2. [동영상] 데브기어 델파이 기초 시리즈
  3. [오프라인 강의] 델파이/C++빌더 기초 강화
  4. [오프라인 강의] 델파이/C++빌더 윈도우 프로그래밍

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 15427
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13961
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 16497
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 22054
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 23268
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 18922
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 39253
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 174698
383 델파이 개발자를 위한 파이썬 file 관리자 2020.09.23 569
382 [업데이트][핫픽스][10.2.2] RTL 호환성패치 및 안드로이드 애니메이션 문제 해결 - 2018년 2월 패치 file 험프리 2018.02.20 569
381 도커(Docker) 제대로 활용하기 험프리 2020.02.07 567
380 기술자료 TOP 7 - 개발자들이 가장 많이 클릭한 기술자료는? (2019년 상반기) 관리자 2019.06.25 566
379 [10.4 시드니 신기능 Deep Dive] 겟잇 패키지 매니저의 새로운 기능들 관리자 2020.06.22 565
378 주요 OS 시장 점유율 - 윈도우와 안드로이드! file 관리자 2019.11.19 565
377 프로젝트 경험을 통해 터득한 효과적인 마이그레이션 프로세스 file 험프리 2020.01.22 563
376 [시애틀] 스타일북 컴포넌트에 여러개의 플랫폼 스타일을 담을 수 있습니다. Humphery 2015.09.04 563
375 [도서/PDF/소스코드] 델파이 Begin...End - 17장. DataSnap REST 관리자 2019.08.20 562
374 [10.3 리오] 기타 컴파일러, 데이터, RTL 개선사항 험프리 2018.12.06 561
373 RAD 스튜디오에서 iOS 12에 대응 험프리 2018.09.27 559
372 [10.3 리오][업데이트 2] 새로운 RAD서버 관리 콘솔 관리자 2019.08.28 558
371 [10.4 시드니][업데이트 2] What's NEW! 신기능 자세히 보기 관리자 2021.02.26 557
370 [베를린 U1] TGrid가 네이티브 렌더링을 지원해 더 부드럽고 강력한 기능을 제공합니다. file 험프리 2016.09.20 555
369 [마이그레이션][팁] 배치파일(커맨드 명령어)을 이용해 손쉽게 소스파일 갯수를 파악할 수 있습니다. 관리자 2019.04.11 554
368 [고객사례-유틸리티, 델파이] TreeSize - 하드 디스크 공간 관리 프로그램 관리자 2020.02.18 554
367 [도서/PDF] 한 번에 개발하는 안드로이드&iOS 앱 with 델파이 1편 - 8장(실습). TFrame [1] 관리자 2020.02.04 554
366 [데모 영상] 델파이 프로젝트에 구글 시트 연동하기 (엔터프라이즈 커넥터 활용) 관리자 2019.11.08 554
365 [고객사례-위치확인, 배터리 문제 해결, 모바일, 델파이] WhereontheMap [1] 관리자 2018.03.29 553
364 [다음 버전 정보] C++11을 32비트 윈도우 앱 개발에서 사용할 수 있습니다. Humphery 2015.08.25 553