왜.... 오셨나요?

부끄러워요

전체 글 53

자료구조

자료구조 (DataStructure) - 프로그래밍에서 데이터를 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미 - 데이터 값의 모임, 또 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미 선형구조 : 자료 간 관계가 1 대 1인 구조 (배열, 연결리스트, 스택, 큐, 덱) 비선형구조 : 자료 간 관계가 1 대 다 혹은 다 대 다인 구조 (트리, 그래프) - 컴퓨터에서 알고리즘과 자료구조의 평가는 시간과 공간 두 자원을 얼마나 소모하는지가 효율성의 중점 - 평균적인 상황에서와 최악의 상황에서 자원 소모량이 기준이 됨 - 일반적으로 시간을 위해 공간이 희생되는 경우가 많음 - 시간복잡도 : 알고리즘의 시간적 자원 소모량 - 공간복잡도 : 알고리즘의 공간적 자..

기업의 CS 적성 정리

우선 컴퓨터공학에는 소프트웨어 하드웨어 두 분야를 같이 다룬다 기업에서는 소프트웨어의 최신버전보다 안전성을 중요시함 시니어와 주니어를 나누는 기준은 연차의 기준이 아니다 이유는 전문적인 기술력의 차이이면서 타 직업의 이해도와 직무의 대한 노련함이 생기는 경험에 의한 안목이 생길때 시니어라고 불릴수있다 본인의 특기 분야 이외 지식들을 접목시킨다면 좋은시니어가 될수 있다. 포부 : 본인의 설계, 발전방향성 등 구체적이면서 이상적인 생각을 자소서에 적어두는게 좋다 CS지식은 시대에 변화에 따라 같이 변화기 때문에 본인도 가지고 있는 CS지식을 변화에 맞춰 가는게 좋다 이미테이션 게임 영화에 나온 앨린튜링은 CS에 ai시초 를 기여한 인물이기도 하다 그래서 ai와 사람이 대답하는게 비슷함을 테스트하는 튜링..

객체지향 프로그래밍

* 프로그램 설계방법론이자 개념의 일종 * 프로그램을 서로 상호작용하는 객체를 기본 단위로 구성하는 방식 // 절차지향 : 프로그램의 순차적인 처리를 위주로 설계하는 방법론 // 객체지향 : 서로 상호작용하는 객체를 기본 단위로 구성하는 방법론 // 물리적인 하드웨어의 발전이 빠르게 진행되었으며, 소프트웨어의 중요성이 빠르게 올라감 // 기존 절차지향의 방식으로는 복잡한 구조에 대한 설계가 힘들어졌으며 객체지향의 방식이 대안이 됨 // 장점 : 1. 객체단위로 관리하기 때문에 디버깅이 유리함 2. 상속을 통해 코드의 재사용성이 좋음 3. 잘 설계된 클래스를 만들어서 독립적인 객체를 사용함으로 생산성을 향상 // 단점 : 1. 객체지향언어는..

메모리 구조

* 코드 영역 : 실행할 프로그램의 코드가 저장되는 영역, CPU가 코드영역에 저장된 명령어를 하나씩 처리 * 데이터 영역 : 정적(static) 변수가 저장되는 영역, 프로그램의 시작과 함께 할당, 프로그램 종료시 소멸 * 스택 영역 : 지역(local), 매개(parameter) 변수가 저장되는 영역, 블록의 시작과 함께 할당 블록 완료시 소멸, 컴파일 당시에 크기가 결정 * 힙 영역 : 인스턴스가 저장되는 영역, 사용하지 않을때 가비지 컬렉터에 의해 소멸, 런타임 당시에 크기가 결정

클래스 (Class)

* 데이터와 관련 기능을 캡슐화할 수 있는 참조 형식 (구조체는 값형식임) * 객체지향 프로그래밍에 객체를 만들기 위한 설계도 * 클래스는 객체를 만들기 위한 설계도이며, 만들어진 객체는 인스턴스라 함 * 참조 : 원본을 가리키고 있음 == 원본의 주소를 가지고 있음 (값은 주소에 있는 값자체를 갖고있음) /**************************************************************** * 값형식, 참조형식 * * 값형식 (Value type) : * 스택영역에 저장, 정적으로 메모리에 할당 * 복사할 때 실제값이 복사됨, 블록이 끝날때 소멸 * 구조체는 값형식 * * 참조형식 (Reference type) : * 힙영역에 저장, 동적으로 메..