전체 글 (432) 썸네일형 리스트형 라이브러리(Library) 라이브러리 1. 라이브러리란? 라이브러리는 모듈과 비슷한 개념이다. 모듈이 프로그램을 구성하는 작은 부품으로서 로직을 의미한다면, 라이브러리는 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합이다. 두 개념은 크게 다르진 않다. 이미 누군가 만들어 놓은 좋은 라이브러리들이 많으므로, 좋은 라이브러리를 선택하고 잘 사용하는 것도 프로그래밍에서 중요하다. 예제 현재 가장 유명한 라이브러리로 jQuery가 있다. jQuery를 사용하기 위해선 두 가지를 해야 한다. ▪ 첫 번째로 jQuery 로직을 사용하기 위해서 jQuery 자바스크립트 파일을 우리의 웹페이지로 가져오는 것이다. 이는 jQuery 웹 페이지에 접속하여 'Download jQuery'를 하면 된다. ▪ 또 하나는 AP.. 모듈(Module) 모듈 프로그램은 작고 단순한 것에서부터 크고 복잡한 것으로 진화한다. 그 과정에서 코드의 재활용성을 높이고, 유지보수를 쉽게할 수 있는 다양한 기법들이 있는데, 그 중 하나가 코드를 여러 개의 파일로 분리하는 것이다. 이것을 모듈화라고 한다. 이의 효과는 다음과 같다. 자주 사용되는 코드를 별도의 파일로 만들어서 필요할 때마다 재활용할 수 있다. 코드를 개선하면 이를 사용하고 있는 모든 애플리케이션의 동작이 개선된다. 코드 수정 시에 필요한 로직을 빠르게 찾을 수 있다. 필요한 로직만을 로드해서 메모리의 낭비를 줄일 수 있다. 한번 다운로드된 모듈은 웹브라우저에 의해서 저장되기 때문에 동일한 로직을 로드 할 때 시간과 네트워크 트래픽을 절약할 수 있다. (브라우저에서만 해당) 한 번 다운 받은 것은 브라.. 객체(Object) 객체 배열과 객체는 연관된 데이터들을 담아내는 그릇이다. 둘의 차이점은 배열은 인덱스의 값이 자동으로 0부터 숫자로 지정이 되지만 객체는 인덱스로 우리가 원하는 값을 지정할 수 있다. 이 인덱스를 이용하여 데이터를 가져올 수 있다. 또한 배열은 대괄호([])로 작성하지만 객체는 중괄호({})로 작성한다. 다른 언어에서는 객체를 연관배열, 맵, 혹은 딕셔너리라는 데이터 타입이라고 말하기도 한다. 1. 객체의 생성 객체 생성하기 객체를 생성해보자. 객체는 인덱스를 문자로 작성한다. 이 인덱스를 key라고 말한다. {'egoing': 10, 'k8805': 6, 'sorialgi': 80} 객체를 생성하면 객체를 대표하는 변수를 만들고, 그 변수에 객체를 담아낸다. 그럼 이제 변수를 통해 객체를 언제든지 관리.. VirtualBox란? VirtualBox란? VirtualBox란 컴퓨터 가상화 프로그램으로, 가상머신이라고도 불린다. 하드웨어를 소프트웨어적으로 구현하여 그 위에서 운영체제가 작동하도록 하는 기술이다. Windows, Linux, macOS, Solaris 등 현존하는 대부분의 OS들을 사용해 볼 수 있으며, 사용할 수 있는 모든 OS는 해당 사이트에서 확인할 수 있다. 무료인데다가 성능도 괜찮은 편이라 많은 사람들에 의해 사용된다. VirtualBox를 사용하는 이유 1. 다른 운영체제를 사용해야 하는 경우에 사용된다. 예로 들어서 MacOS에서 Windows, 혹은 Windows에서 Linux를 사용하고 싶은 경우이다. 2. 바이러스 회피나 백업과 같은 이유로 독립된 작업 공간이 필요한 경우에 사용된다. 3. 하나의 머.. 리눅스, 우분투란? 1. 리눅스(Linux) 리눅스란? 리눅스와 관련하여 검색을 했을 때 해당 펭귄 로고를 가장 많이 보았을 것이다. 이 펭귄은 리눅스의 심볼이다! 그럼 리눅스는 뭘까? 아래는 위키백과에서 정의한 리눅스이다. 리눅스(Linux)는 1991년 핀란드의 핼싱키 대학에서 리누스 토발즈가 커뮤니티 주체로 개발한 컴퓨터 운영체제이다. 혹은 커널을 뜻하기도 한다. 리눅스는 자유 소프트웨어와 오픈 소스 개발의 가장 유명한 표본으로 들 수 있다. 또 리눅스는 다중 사용자, 다중 작업(멀티 태스킹), 다중 스레드를 지원하는 네트워크 운영체제(NOS)이다. 리눅스는 '운영체제'이다. 우리가 사용하는 윈도우즈 운영체제처럼 말이다. 우리가 컴퓨터를 키면 윈도우즈 운영체제가 우리를 반겨준다. 이는 우리에게 프로그램도 설치하도록 해.. [작성중] PCL Tutorial 2 - PCL 설치하기 1. Intro 앞에서 살펴봤듯이, 현재 포인트 클라우드를 처리하기 위해 많은 라이브러리들이 있다. 개발 환경과 특성에 맞는 라이브러리를 골라 설치하면 된다. 그 중에서 PCL-C++, PCL-Python, Open3D-Python가 주로 사용된다. 나는 PCL-Python을 골라 설치하였다. 2. PCL 설치하기 2.1 PCL-Python 설치하기 설치 요구사항 Point Cloud Library 1.6.x 1.7.x 1.8.x 1.9.x NumPy 1.9+ Cython >= 0.25.2 패키지 설치 참고 자료 chapter02 : PCL 설치 (100%) pcl.gitbook.io PCL Tutorial 1 - PCL와 PCD란? 1. Point Cloud 1.1 Point Cloud란? 포인트 클라우드(Point Cloud)란 LiDAR 센서, RGB-D 센서 등으로 수집되는 데이터를 의미한다. 이러한 센서들의 동작 과정을 이해하기 위해서 Figure.1.를 살펴보자. 센서는 물체(Object)에 빛/신호를 보내고 돌아 오는 시간을 기록한다. 그리고 각 빛/신호 당 거리 정보를 계산하여 하나의 포인트(점)을 생성한다. 즉 포인트 클라우드란, 3차원 공간 상에 퍼져있는 여러 포인트(point)의 집합(set cloud)을 의미한다. 2D 이미지와는 다르게 각 포인트는 깊이(z) 정보를 가지고 있다. 그러므로 기본적으로 N x 3 Numpy 배열로 표현된다. 여기서 각 N 줄은 하나의 점과 맵핑이 되며 3(x,y,z) 정보를 가진다.. Webpack이란? (+Bable) 1. Webpack 1.1 Webpack이란? 웹팩은 자바스크립트 정적 모듈 번들러, 즉 모듈 번들링이라고 한다. 그렇다면 모듈 번들러는 무엇일까? Module 프로그램을 구성하는 구성 요소의 일부 모듈은 기능별로 서로 관련된 데이터와 함수들로 구성되어 있다. 모듈은 일반적으로 파일 단위로 나뉘어진다. (하나의 파일 = 모듈 하나) 모듈화 프로그래밍을 하면 기능별로 파일을 나눠가며 프로그래밍을 할 수 있으므로 유지보수가 쉬워진다. Bundler 번들러는 파일들을 지정한 단위에 의해 하나의 파일로 만들어서 요청에 대한 응답으로 전달할 수 있는 환경을 만들어주는 역할을 한다. 번들러를 사용하면 소스 코드를 모듈별로 작성할 수 있고, 모듈간 혹은 외부 라이브러리의 의존성도 쉽게 관리할 수 있다. Webpack.. 이전 1 ··· 24 25 26 27 28 29 30 ··· 54 다음