마토의 세상

MATO WORLD

8기 8

컴퓨터 개론 03. 프로그래머의 세계 이해하기 (3)

트렌드를 읽는 능력 01. 프로그래밍은 선택의 연속 보통 같은 용도의 프레임워크, 라이브러리가 존재하는데 배우는 데 걸리는 시간을 고려하여 하나를 선택한다. 이후 변경하기 어렵기 때문에 신중히 선택할 필요가 있다. 프로그래밍 언어 자체에 대한 선택은 더더욱 돌이키기 어렵다. 어떤 디자인 패턴, 스타일 가이드를 사용할 지 선택하기도 한다. * Tip : 유행은 쉽게 변하기도 한다. 주의할 것 !! 02. 트렌드를 읽는 방법 1 - 활발한 기술 프로그래밍에서 트렌드를 판단하는 기준 1 : 얼마나 활발한지 ( 많은 사용자가 있는지 ) 선순환 구조 파악 ! 좋은 언어/프레임워크/기술 -> 사람들이 많이 사용 -> 커뮤니티 혹은 좋은 자료 및 문서 많이 생성 -> 더 많은 사람이 기술 사용 활발한 기술은 stac..

컴퓨터 개론 03. 프로그래머의 세계 이해하기 (2)

프로그래밍의 다양한 분야 05. 테스트 프로세스 - 버그 : 프로그램에서 잘못 실행되는 동작, 의도하지 않은 에러 -> 버그를 방지하기 위해 테스트 필요 기본적인 테스트는 개발자가 직접 개발하면서 함께 진행함. 테스트는 대부분 똑같은 작업을 반복하는 것이기 때문에 자동화 테스트 도구를 활용하거나 테스트 코드를 개발하여 직접 자동화하기도 한다. 하지만 개발 단계에서 발견하지 못하거나 특정 상황에서만 발생하는 문제가 있기 때문에 추가 테스트를 하거나 테스트 부서가 따로 있기도 하다. * Tip : 신뢰성이 중요한 제품일 경우 추가 테스트를 여러 차례 거치기도 한다. 테스트 과정에서 버그를 발견하면 담당 개발자에게 알려 고쳐야 한다. - 버그를 처리할 때 고려해야 할 점 1. 얼마나 시급한지 2. 담당자가 누..

컴퓨터 개론 03. 프로그래머의 세계 이해하기

프로그래밍의 다양한 분야 01. 컴퓨터 사이언스의 기본기 프로그래밍의 여러 영역은 서로 꽤 밀접하게 연결되어 있다. 비슷한 접근방식과 문제해결방식을 공유하고 있기 때문에 하나의 언어를 마스터한 사람은 다른 언어나 새로운 기술에도 빠르게 적응할 수 있다. 따라서 기본기가 제일 중요하다. - 컴퓨터 사이언스의 기본 1. 객체 지향 프로그래밍 2. 알고리즘 3. 자료구조 * Tip : 이 세 과목은 필수 ! - 추가적으로 알아야 할 기본 과목들 1. 컴퓨터 구조 2. 운영체제 3. 컴파일러 4. 웹개발 5. 데이터베이스 6. 네트워크 * Tip : 이 과목들도 기본적인 이해를 갖출 것 ! 깊이 있는 공부는 필요에 따라 선택적으로 하면 된다. 02. 소프트웨어 공학 개발자가 프로그램을 만들 때 하는 일 = 협업..

컴퓨터 개론 02. 프로그래밍 언어 이해하기 (3)

프로그래밍 언어 제대로 사용하기 03. 스타일 가이드 활용하기 가독성 높은 코드 1. 상황에 맞는 적절한 코멘트 작성하기 -> Comment 코멘트 : 사람에게만 전하는 메시지 2. 변수명 잘 짓기 -> 전체적인 코드의 흐름 안에서 충분히 구체적이고 간결한 이름 => 사람마다 주관적이다. 따라서 일정한 규칙이 있어야 더 깔끔하게 작성할 수 있다. 예 ) 코멘트 : 코드 옆 or 코드 위 예 ) 변수명 : math score(X) math_score (snake 표기법) mathScore (pascal 표기법) MathScore (camel 표기법) 이를 위해 각 언어마다 스타일 가이드가 존재한다. - 스타일 가이드 검색하는 방법 : 언어이름 + 스타일가이드 예 ) 파이썬 스타일가이드 - https://w..

컴퓨터 개론 02. 프로그래밍 언어 이해하기 (2)

프로그래밍 언어 Overview 01. 프로그래밍 언어의 스펙트럼 - 프로그래밍 언어 분류 기준 1. 객체 지향 지원 여부 2. 변수의 자료형 지정 여부 3. 컴퓨터와 인간 중 어디에 더 가까운지 (상대적 개념 - 스펙트럼-> 추상화의 정도) - 프로그래밍 언어를 추상화가 얼마나 되었는지를 기준으로 분류하는 방법 기준 : 변수의 자료형 컴퓨터에 가까운 언어 = 저수준 언어 (Low-Level Programming Language) -> 사람이 이해하기 어렵다. -> 1, "1"을 다르게 인식 (자료형을 필요로 한다) -> 추상화가 적게 되어있는 언어 사람에 가까운 언어 = 고수준 언어 (High-Level Programming Language) -> 컴퓨터가 이해하기 어렵다. -> 1, "1"을 동일하게..

컴퓨터 개론 02. 프로그래밍 언어 이해하기

프로그래밍 언어 살펴보기 : 프로그래밍 언어의 공통적인 원리 01. 프로그래밍을 배우기 힘든 이유 - 제대로 공부하기 쉽지 않은 프로그래밍 언어가 다양하여 방향성을 정하지 못하고 비전공자가 판단하기 매우 어려움. 어떤 분야에 관심이 있는지, 성향은 어떤지에 따라 언어를 다르게 선택하게 됨. 03. 프로그래밍 언어란? (+ 컴퓨터, 프로그램, 프로그래밍 언어에 대한 이해 필요) - 컴퓨터 : 일을 대신 해주는 기계 - 프로그램 : 컴퓨터가 어떤 일을 해야 할 지 알려주는 설명서 -> 컴퓨터가 할 일이 프로그래밍 언어로 적혀 있는 것 - 프로그래밍 언어 : 설명서를 쓰기 위해 사용하는 언어 05. 프로그래밍 언어의 발전 컴퓨터가 발전하면서 프로그래밍 언어도 함께 발전하였음. 예 ) 컴퓨터 -> 파스칼 계산기..

컴퓨터개론 01. 프로그래밍 시작하기 in Python (2)

프로그래밍 기본 개념 03. 추상화 개요 - 추상화 (Abstraction) 정의 : 복잡한 내용은 숨기고 주요 기능에만 신경쓰자 장점 : 내부적인 복잡한 원리를 모르더라도 편리하게 사용할 수 있다 - 추상화의 3단계 1. 변수(Variable) : 값을 저장하는 것 -> 복잡한 값을 외울 것 없이 변수를 사용하여 그 값을 활용할 수 있음. 2. 함수(Function) : 명령을 저장하는 것 -> 복잡한 원리를 모르더라도 함수를 사용하여 원하는 값을 출력할 수 있음. 3. 객체(Object) 04. 변수 - 변수를 사용하는 목적 1. 복잡한 값을 편리하게 활용하기 위해 2. 실수로 값을 잘못 입력하는 것을 방지하기 위해 3. 코드를 보고 쉽게 이해할 수 있도록 하기 위해 4. 값이 변경되었을 때, 여러 ..

컴퓨터개론 01. 프로그래밍 시작하기 in Python

기록 : 오전 10시 15분 ~ 11시 랜선스터디 참여 # 프롤로그 - 파이썬으로 프로그래밍을 하기 전 준비해야할 프로그램 1. Python interpreter : 우리가 쓴 파이썬 코드를 컴퓨터가 이해할 수 있도록 머신 코드로 번역해주는 프로그램. 2. PyCharm : 코딩을 더욱 편하게 할 수 있도록 도와주는 서빗프로그램들을 통합하여 제공해주는 올인원 솔루션으로, 통합개발환경(IDE)라고 한다. - MAC에서 파이참 설치하기 #1 파이참 사용해보기 - 프로젝트 내 파일 생성 1) 디렉토리 오른쪽 마우스 클릭 -> new -> file -> 파일명.py 로 저장 2) 디렉토리 오른쪽 마우스 클릭 -> new -> pythonfile -> 파일명 으로 저장(.py 필요없음) - print(~) - 파..