yeolco의 등록된 링크

 yeolco로 등록된 티스토리 포스트 수는 115건입니다.

C# 기초다지기 - 상속 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C# 상속에 대해 알아보도록하겠습니다. 상속은 객체지향 프로그래밍에서 가장 중요한 개념으로, 클래스를 다른 클래스로 정의할 수 있으며 프로그램을 쉽게 만들고 유지관리..

C# 기초다지기 - 클래스 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C# 클래스에 대해 알아보겠습니다. 클래스는 구조체와 비슷한 사용자 정의 자료형이지만 메소드(함수)를 가질 수 있습니다. 객체(Object)는 클래스의 인스턴스입니다. 클래스..

C# 기초다지기 - 구조체 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C# 구조체(Struct)에 대해 알아보도록 하겠습니다. - 구조체란? 구조체는 사용자 정의 데이터 유형(Data Type)으로 int, double 등과 같은 기본적으로 제공되는 변수 유형이..

C# 기초다지기 - 문자열 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C# 프로그래밍의 문자열에 대해 알아보도록 하겠습니다. C#에서는 다른 언어에서와 마찬가지로 문자열을 문자배열(char[])로 사용할 수 있습니다. 하지만 C#에서 기본 제공..

C# 기초다지기 - 배열 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C# 프로그램에서 배열 사용법에 대해 알아보도록 하겠습니다. 1. 배열이란 - 배열은 동일한 데이터 유형(Type)의 순차적인 모음을 의미합니다. - num1, num2, ... num99 와..

C# 기초다지기 - 상수 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C# 프로그램에서 상수에 대한 사용법에 대해 알아보도록 하겠습니다. 1. 상수란? - 상수란 프로그램이 실행 중 변경되지 않는 고정된 값을 말합니다. (이러한 고정 값을 컴퓨..

C# 기초다지기 - 캡슐화 [내부링크]

안녕하세요 열코입니다. 이번시간에는 캡슐화에 대해 알아볼건데요. 캡슐화는 객체 지향프로그래밍의 중요한 기능중 하나입니다. 캡슐화란 물리적, 논리적 패키지내에 하나이상의 항목을 포함하는 프로세스라고 정..

C# 기초다지기 - 프로그램 구조 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C# 프로그램의 구조에 대해 살펴보도록 하겠습니다. C# 프로그램은 다음 부분으로 구성됩니다. 네임 스페이스 선언 클래스 클래스 메소드 클래스 속성 메인 메소드 명령문과..

C# 기초다지기 - 변수 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C# 프로그래밍 변수에 대해 알아보도록 하겠습니다. 변수는 프로그램에서 조작 할 수 있는 저장 영역에 주어진 이름을 말합니다. C#의 각 변수에는 특정 유형이 있습니다...

Object 클래스에 대해 [내부링크]

안녕하세요 열코입니다. 이번시간에는 자바의 Object 클래스에 대해 알아보도록 하겠습니다. 일전에 Object 클래스에대해 언급했던적이 있는데, 자바의 모든 요소들은 클래스로 정의되어있으며, 직접 또는 간접적..

자바 표준 입력 클래스 Scanner 사용법 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 자바의 기본 입력 클래스인 스캐너(Scanner) 클래스에 대해 알아보도록 하겠습니다. 자바의 스캐너 클래스는 java.util 패키지 내에 존재하는 클래스로, 정수(int), 실수(do..

C 정적(static) 변수 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C언어에서의 정적(static) 변수(variable)에 대해 알아보도록 하겠습니다. C언어에서 기본적인 변수는 동적(dynamic)변수로써 변수 선언과 동시에 메모리에 할당되며 변수 사..

C 변수 선언 및 키워드 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C언어 변수 선언 및 키워드에 대해 알아보겠습니다. 변수(variable)란 메모리에 할당된 기억장소를 일컫는말이며 기본적으로 어떤 형태의 데이터를 저장하는데 사용됩니다...

C 표준 입력 함수 scanf [내부링크]

안녕하세요 열코입니다. 저번 시간에 C언어 표준 출력 함수인 printf() 함수에 대해 알아봤는데요. 이번 시간에는 C언어 표준 입력 함수인 scanf() 함수에 대해 알아보겠습니다. scanf() 함수 역시 printf()와 같..

C 표준 출력 함수 printf() [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C언어 표준 출력 함수인 printf() 함수에 대해 알아보겠습니다. printf() 함수는 stdio.h 헤더파일에 정의되어 있으며, 사용하기 위해서는 1 #include <stdio.h> cs 코드를..

프로그래밍 언어별 정리 [내부링크]

지속해서 업데이트 됩니다. (11/08) ctrl + d를 눌러 북마크를 추가할 수 있습니다. 모든 질문은 커뮤니티 Q&A 게시판에서 받습니다. 세모지 <- 바로가기 C/C++ 변수 선언 및 키워드(Naming Rule) 표준 출력(print..

C++ 가상 함수(Virtual Function) [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C++ 클래스의 가상 함수(Virtual Function)에 대해 알아보도록 하겠습니다. 가상 함수는 기본 클래스(상속되지 않은 클래스) 내에서 선언되어 파생 클래스에 의해 재정의되..

워드프레스 kboard rss 문제 [내부링크]

워드프레스에서 kboard 플러그인을 사용하면 rss를 제출하기 위해 다음과 같은 주소를 사용합니다. 홈페이지주소/wp-content/plugins/kboard/rss.php 하지만 어떤 테마와 플러그인과의 충돌 때문에 다음과 같은 오..

자바 상속 [내부링크]

안녕하세요 열코입니다. 상속은 객체지향 프로그래밍의 중요한 기능중 하나입니다. 주요 용어 - Super Class : 기능이 상속 된 클래스 (기본, 상위 클래스) - Sub Class : 다른 클래스를 상속하는 클래스(파생, 하..

자바 싱글톤 클래스(Singleton class) [내부링크]

안녕하세요 열코입니다. 이번시간에는 자바에서의 싱글톤 클래스에 대해 알아보도록 하겠습니다. ☞ 싱글톤 클래스란 객체지향 프로그래밍에서 싱글톤 클래스는 한번에 하나의 객체(Instance)만 가질 수 있는 클래..

자바 Wrapper Class [내부링크]

안녕하세요 열코입니다. 이번 시간에는 자바의 래퍼(Wrapper) 클래스에 대해 알아보도록 하겠습니다. ☞ 래퍼 클래스란 래퍼(Wrapper) 클래스는 기본 자료형(Data Type)을 래핑하거나 포함하는 클래스입니다. 여기..

개발자 Q&A 커뮤니티 추천 - 세모지(세상의 모든 지식) [내부링크]

안녕하세요 열코입니다. 이번에 컴퓨터 프로그래밍 관련 괜찮은 커뮤니티가 있어 소개해드리려고 합니다. 사이트 이름은 '세상의 모든 지식'이며 줄여서 세모지 라고 하네요 ㅎㅎ 세모지 - http://semog.co.kr 커..

C++ 연산자 오버로딩 [내부링크]

안녕하세요 열코입니다. 저번시간에 함수 오버로딩에 대해 알아보았는데요. 이번시간에는 연산자 오버로딩에 대해 알아보도록 하겠습니다. ☞ 연산자 오버로딩이란 기존의 제공하고 있는 연산자를 재정의하여 사용..

C++ 함수 오버로딩 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C++ 에서 함수 오버로딩에 대해 알아보겠습니다. ☞ 함수 오버로딩이란? 같은 함수의 이름을 가지고 있지만 파라미터(매개변수) 및 리턴 타입 등의 특징이 다른 여러개의 함..

C/C++ 메모리 동적할당 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C/C++에서의 메모리 동적할당에 대해 알아보도록 하겠습니다. ☞ 메모리 동적 할당이란? C/C++에서 실행 시간동안 사용할 메모리 공간을 할당하는 것을 말합니다. 메모리 공..

C++ friend 클래스와 함수 [내부링크]

안녕하세요 열코입니다. 저번시간에 C++ 클래스와 접근제한자에 대해 알아보았는데요. 이번에는 저번시간 protected 제한자 부분에서 언급했던 friend(친구) 클래스와 함수에 대해 알아보겠습니다. ☞ freind 클래..

C++ 클래스 접근제한자 [내부링크]

안녕하세요 열코입니다. 지난시간에 C++ 클래스에 대해 배워보았습니다. (공부하러가기) 클래스 멤버 선언 시 지정해 줄 수 있는 접근 제한자에 대해 기본적인 것만 짚고 넘어갔는데요. 3가지 접근 제한자가 존재..

C++ 클래스와 객체 [내부링크]

안녕하세요 열코입니다. 저번 시간에 C/C++ 구조체에 대해 알아보았습니다. (구조체 공부하러가기) 이번시간에는 구조체와 비슷한 형태의 구조를 가진 클래스에 대해 알아보겠습니다. (여담으로 C++이 세상에 나오..

C/C++ 구조체 사용법 및 예제 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C/C++에서 구조체의 사용법과 간단한 예제에 대해 알아보도록 하겠습니다. ☞ 구조체란? 구조체는 C/C++에서 사용자 정의 데이터 형식입니다. 구조체는 다른 유형의 항목들을..

안드로이드 블루투스 통신 예제 소스 코드 [내부링크]

안녕하세요 열코입니다. 이번에 블루투스 프로그램 개발 도중 백업 파일을 업로드합니다. 연결 및 통신 코드 첨부되어있습니다. 참고하시기바랍니다. activity_main.xml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1..

파이썬 파일 입출력 [내부링크]

안녕하세요 열코입니다. 저번시간에 C/C++과 자바에서 파일처리에 대해 알아보았습니다. 이번에는 파이썬에서의 파일 입출력에 대해 살펴볼텐데요. C/C++에 비해 자바가 조금 더 쉽고 편한것 보다 C/C++, 자바보다..

C/C++ 배열 사용법 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C/C++에서 배열의 사용법에 대해 알아보겠습니다. 컴퓨터 공학에서 배열(array)이란 번호(index)와 그에 대응하는 데이터들로 이루어진 자료구조를 뜻합니다. 일반적으로 배..

자바 파일 입출력 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 자바에서 파일 처리하는 방법에 대해 알아보겠습니다. 자바에서 파일 입출력을 하기 위해서 사용되는 클래스는 여러가지가 있는데요 그 종류에는 입력에 대한 클래스가 다음..

HTML에 CSS 적용하기 [내부링크]

안녕하세요 열코입니다. 이번시간에는 CSS를 HTML에 적용하는 방법에 대해 알아보겠습니다. ☞ CSS란? 종속형 시트라고 불리며 Cascading Style Sheet의 줄임말입니다. HTML이 뼈대면 CSS는 이 뼈대에 살을 붙이는..

C 파일처리 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 C언어에서 파일처리에 대해 알아보겠습니다. 지금까지 했던 작업은 어디에도 저장 되어있지 않고 오로지 명령 프롬프트(터미널)에서만 수행됐지만, 실제 소프트웨어 프로그..

Atom Editor 설치 [내부링크]

안녕하세요 열코입니다. 지금까지는 노트패드(메모장)에 코딩하느라 힘드셨죠? ㅜㅜ 이번시간에는 HTML을 포함, CSS, JavaScript 등을 지원하는 텍스트 에디터 아톰(Atom) 설치에 대해 알아보겠습니다. 먼저 아톰..

HTML 기본 문법 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 HTML 기본 문법에 대해 알아보겠습니다. 먼저 HTML은 HyperText Markup Language의 약자로 웹페이지를 구성하는 마크업 언어입니다. 자바 스크립트와 CSS 등을 같이 사용하..

자바 가비지 컬렉션(Java Garbage Collection) [내부링크]

안녕하세요 열코입니다. 이번시간에는 자바의 가비지 컬렉션에 대해 알아보겠습니다. 우리가 C/C++ 프로그래밍을 할 때 메모리 누수(Memory Leak)를 막기 위해 객체를 생성한 후 사용하지 않는 객체를 파괴(메모리..

안드로이드 설정 화면 호출 [내부링크]

안녕하세요 열코입니다. 프로그램 개발 중에 설정 화면을 불러와야 하는 상황이 발생할 수도 있죠? 이번에는 안드로이드 프로그래밍 중 설정 화면을 호출하는 방법에 대해 알아보겠습니다. 저는 먼저 activity_mai..

SELECT, ORDER BY 사용법 [내부링크]

안녕하세요 열코입니다. SELECT는 SQL에서 가장 일반적으로 사용되는 문으로, 데이터 베이스에서 데이터를 검색해서 가져오는데 사용됩니다. SELECT문을 통해 전체 테이블을 가져오거나 규칙을 지정하여 테이블의..

C++ 벡터 사용법 [내부링크]

안녕하세요 열코입니다. C++에서 벡터는 표준 템플릿 라이브러리(STL)에서 제공하는 동적 배열구조 클래스입니다. C의 배열처럼 빠른 랜덤 접근이 가능하며 자동으로 배열의 크기 조절과 추가 삭제가 가능합니다...

C언어 포인터 [내부링크]

안녕하세요 열코입니다. 이번시간에는 C언어 포인터에 대해 알아보겠습니다. 포인터(Pointer)란 프로그래밍 언어에서 변수의 메모리 주소를 가리키는 변수를 말합니다. 포인터는 Low Level 언어(C/C++/어셈블리.....

파이썬 난수(random) 생성 [내부링크]

안녕하세요 열코입니다. 이번시간에는 파이썬의 랜덤(난수) 클래스에 대해 알아보도록 하겠습니다. 파이썬에서 난수를 생성하기 위해서는 random 모듈을 사용합니다. 프로그래밍을 하면 난수를 생성해야하는 일이..

자바 벡터(Vector)와 어레이리스트(ArrayList) 비교 [내부링크]

안녕하세요 열코입니다. 이번에는 자바에서 크기가 동적인 배열을 사용할 때 주로 사용하는 두가지 클래스 벡터(Vector)와 어레이리스트(ArrayList)에 대해 비교분석 해보겠습니다. 먼저 벡터에 대한 설명입니다...

파이썬으로 이메일 보내기(SMTP) [내부링크]

안녕하세요 열코입니다. 이번에는 파이썬을 활용하여 지메일(Gmail)로 메일 보내기에 대해 알아보겠습니다. 파이썬에서 메일을 보내기 위해서는 외부 라이브러리가 별도로 필요하지 않으며, 'SMTP lib' 이라는 기..

안드로이드 WakeLock 잠들어있는 폰 깨우기 [내부링크]

안녕하세요 열코입니다. 안드로이드 앱 개발 중 알림 기능을 구현하는 도중 휴대폰이 꺼져있는 상태에서 알림이 발생하면 화면을 깨우는 기능이 필요하여 검색하는 도중 안드로이드에서 제공하는 WakeLock에 대해..

안드로이드 진동(Vibrator) 사용하기 [내부링크]

안녕하세요 열코입니다. 오늘은 안드로이드 앱에서 진동 사용하는 방법에 대해 알아보겠습니다. 이 진동 기능은 사용자에게 어떤 알림을 직관적으로 주기 위해 사용하는데요. 보통 기존에 앱에서는 소리와 진동을..

파이썬 간단하게 코딩하기 [내부링크]

안녕하세요. 열코입니다. 파이썬은 간결하고 높은 가독성으로 프로그래머들에게 선호되는 언어 중 하나입니다. 이번 시간에는 파이썬 프로그래머를 위해 최대한 간단한 코딩 방법에 대해 소개합니다. 시작하겠습니..

안드로이드 Activity class does not exist. 오류 해결법 [내부링크]

안드로이드앱 개발중 뜬금없이 프로젝트가 실행되지 않았다. Run App을 눌러봐도 다음과 같은 오류만 나올 뿐 Error: Activity class { ... } does not exist. 전혀 실행되지 않았다. 프로젝트를 처음 실행하면 앱..

파이썬 집합(Set) 자료형 사용법 [내부링크]

이번 시간에는 파이썬의 Set 자료형에 대해 알아볼건데요. Set는 한글로 집합입니다. 중학교 수학시간에 집합이라고 배우죠? 네 맞습니다 바로 그 집합입니다. 실제로 집합이 필요한 상황에서 적절히 사용할 수 있..

안드로이드 notification 간단한 사용법 [내부링크]

푸시알림이 아닌 앱 자체에서 알림을 발생 시키고 싶을 땐 Notification을 사용하면 됩니다. 다음 코드를 통해 간단하게 작성가능합니다. NotificationManager notificationManager; PendingIntent intent; 먼저 N..

안드로이드 FCM 푸시알림 예제 [내부링크]

안드로이드 앱을 개발하다보면 푸시알림 기능이 필요한 부분이 존재합니다. 기존의 GCM(Google Cloud Messaging) 서비스가 대표적이었는데, 최근 구글에서 Firebase를 인수, FCM(Firebase Cloud Messaging) 서비스..

파이썬 튜플(Tuple) 사용법 [내부링크]

파이썬에서 튜플이란 쉼표로 구분 된 객체의 모음입니다. 말로만 들으면 리스트와 비슷하다고 생각 되시겠지만 엄연한 차이가 있습니다. 그중 가장 두드러진 차이점은 바로 다음과 같습니다. ☞ 튜플은 생성 후 요..

파이썬 리스트 사용법2 - 활용 [내부링크]

파이썬의 리스트는 수학적 문장들을 한줄로 표현할 수 있습니다. 리스트로 제곱 표현하기 기존의 파이썬 리스트를 활용하여 반복문으로 1의 제곱부터 9의 제곱까지 출력하는 방법입니다. 예제 코드 - 제곱 출력 sq..

파이썬 리스트 사용법 [내부링크]

안녕하세요 열코입니다. 리스트는 파이썬에서 가장 강력한 도구 중 하나로 다른 언어에서의 배열과 비슷합니다. 리스트의 최대 장점은 리스트의 요소들이 항상 같은 타입일 필요가 없다는 것입니다. 리스트에는 정..

안드로이드 블루투스 연동 예제 소스 [내부링크]

안녕하세요 열코입니다. 이번에는 안드로이드에서 블루투스 연동하는 방법에 대해 알아보겠습니다. 먼저 안드로이드 프로젝트를 빈 프로젝트로 생성합니다. 그리고 안드로이드에서 블루투스에 관한 권한을 얻기 위..

카카오톡 pc버전 설치하기 [내부링크]

카카오톡 PC버전 설치하는 방법에 대해 알아보겠습니다. 카카오톡 PC버전은 Windows XP이상에서 모두 사용 가능하며 32bit, 64bit 운영체제에 따른 제한이 없으며 설치프로그램을 다운로드 받아 간단하게 설치 가..

Visual Studio 2017 설치하기 [내부링크]

이번에는 PC에 비주얼 스튜디오 2017버전을 설치하는 방법에 대해 소개합니다. 먼저 비주얼 스튜디오를 다운로드 받기위해 아래 사이트에 접속합니다. 다운받기 ☜ 클릭 비주얼 스튜디오에는 Community, Professio..

정렬 알고리즘 종류 [내부링크]

현재 많은 수의 알고리즘이 존재하지만 그중 실제 구현에서는 몇가지 알고리즘만 사용됩니다. 자바, C++ 등의 언어에서는 라이브러리로 O(n log n) 하한의 정렬 알고리즘을 제공하여 그냥 사용하면 되지만, 정렬..

검색 알고리즘 종류 [내부링크]

1. 선형 검색 (Linear Search) - 배열의 가장 좌측부터 시작하여 찾으려는 값과 하나씩 배열의 각 요소와 비교합니다. - 찾으려는 값을 발견한다면 배열의 해당 인덱스를 반환(return)합니다. - 찾으려는 값이 없..

java.lang.NullPointerException 해결법 [내부링크]

자바에서 NullPointerException은 RuntimeException입니다. 특수한 널 값은 객체 참조에 할당할 수 있습니다. 프로그램에 널값을 가지는 객체 참조를 사용하려고하면 NullPointerException이 throw됩니다. + null..

java.lang.ArrayIndexOutOfBoundsException 해결법 [내부링크]

자바는 배열의 작성 및 조작을 데이터 구조로 지원합니다. 배열의 크기를 n이라고 했을 때 배열의 인덱스는 1부터 n까지가 아닌 0부터 n-1까지입니다. 프로그래밍 중 ArrayIndexOutOfBoundsException이 가장 많이..

자바 foreach문 사용법 [내부링크]

foreach(For-each)문은 for, while, do-while 반복문과 같은 배열 탐색 기법입니다. 사용방법은 다음과 같습니다. ☞ 일반적인 for 반복문과 동일하게 for 키워드를 사용합니다. ☞ 반복문 내에 카운터 변수를 선..

C++ 자바 상속 비교 [내부링크]

상속의 목적은 C++과 자바 모두 동일합니다. 우리가 상속을 받는 목적은 코드를 재사용하거나 is-a 관계를 생성하기 위함입니다. 그렇다면 이 두 객체지향언어(Object-Oriented Laguage)의 상속의 차이점에 대해..

안드로이드 문자인식 [내부링크]

저번에 Tesseract와 OpenALPR을 이용하여 C# 프로그램을 만들었는데 이번에는 안드로이드에서 만들어보겠습니다!! 참고 ☞ C# 문자인식 프로그래밍 안드로이드에서 문자인식을 하기위해서는 기본적으로 OpenCV 라..

자료구조 그래프(Graph) [내부링크]

※ 그래프란 비선형(non-linear) 자료구조이며 노드(node)와 엣지(edge)로 구성되어 있습니다. - 노드는 꼭짓점(vertex)으로 표현됩니다 - 엣지는 두 노드를 연결하는 선(line)으로 표현됩니다. 위 그래프를 V(ve..

안드로이드 텍스트뷰 사용법 [내부링크]

안드로이드 프로그래밍 중 텍스트를 출력시키고 싶다면 TextView를 사용해보세요. TextView는 View클래스를 상속받아 만들어진 클래스입니다. ※ 참고 만약 유저가 수정할 수 있는 텍스트란을 원하신다면 EditText..

C 랜덤 - 난수 생성하기 [내부링크]

C언어 프로그래밍에서 코드를 작성하다보면 무작위의 숫자가 필요한 경우가 존재합니다. 보통 무작위 숫자를 난수라고 표현합니다. C언어에서 난수를 표현하기 위해서는 라이브러리를 사용해야합니다. ※ 알고가기..

자바 배열 사용법 [내부링크]

배열이란 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료 구조입니다. 같은 데이터 타입을 가진 여러개의 변수를 할당하기위해 사용합니다. 자바에서 배열 사용하는 방법입니다. 1. 1차원 int형..

안드로이드 findContours 오류 해결 [내부링크]

안드로이드 OpenCV의 findContours 사용중 다음과 같은 오류가 발생했을 때 해결하는 방법입니다. 오류 : Caused by: CvException [org.opencv.core.CvException: cv::Exception: OpenCV(3.4.3) /build/3_4_pack-a..

자바 유료화에 대해 [내부링크]

Oracle의 Java 1.8의 유료화 정책이 공개됬습니다. 2019년 부터 Oracle에서 배포하는 Java 1.8 SDK 및 JRE 모든 공개용 패키지를 이용하여 상업 목적의 개발 및 사용에 대한 유료화 정책입니다. ♠ Java의 저작권..

자료구조 힙(Heap) [내부링크]

이진 힙 이진 힙은 다음 특징(Properties)을 가진 이진 트리입니다. 1. 완전 트리(Complete Tree)이며 배열(Array)안에 저장되기 적합(Suitable)합니다. 2. 이진 힙은 최소(Min) 힙 또는 최대(Max) 힙 중 하나입니..

아두이노 블루투스(HC06) 연동 [내부링크]

이번에는 아두이노끼리 블루투스 통신 하는 방법에 대해 알아보겠습니다. 블루투스 통신을 위해 다음 모듈이 필요합니다. HC06 모듈입니다. 제원은 다음과 같습니다. ○ 범위 : ~10M ○ 동작 전원 : 3.6 ~ 6V ○..

안드로이드 OpenCV 관심영역(ROI) 추출 [내부링크]

이번 시간에는 OpenCV를 이용하여 관심역영(ROI)을 추출하겠습니다. 관심영역 추출은 문자인식 전처리 기법 중 하나로 인식 할 범위를 대폭 축소시켜 프로그램 전반적인 실행속도를 향상 시키고 인식률 또한 높일..

안드로이드 OpenCV 설치 [내부링크]

안드로이드에 OpenCV를 설치하는 방법에 대해 알아봅시다. 아래에 링크에 들어가서 OpenCV 3.4.3 android sdk를 다운받고 적절한 폴더에 설치합니다. https://github.com/opencv/opencv/releases OpenCV를 설치할..

자료구조 이진 탐색 트리(Binary Search Tree) [내부링크]

이전 시간에 트리에 대해 공부했습니다. (참고 : 자료구조 트리) 이번 시간에는 이진 탐색 트리에 대해 공부해보겠습니다. ♪ 이진 탐색 트리(Binary Search Tree) : 노드기반(Node-Based) 이진 트리 자료구조입니..

C# 소켓 프로그래밍 - 비동기 채팅 프로그램 만들기 (1:n 통신) [내부링크]

지난번에 1:1 소켓프로그래밍으로 채팅 프로그램을 만들어보았습니다. 참고 : http://yeolco.tistory.com/31 이번 시간에는 1:n 비동기 방식 채팅프로그램을 만들어보겠습니다. 각 클라이언트 소켓마다 쓰레드를..

자료구조 트리(Tree) [내부링크]

◎ 트리(Tree) : 배열(Array), 링크드 리스트(Linked List), 스택(Stack), 큐(Queue) 같이 선형 자료구조(Linear Data Structure)와 달리 트리는 계층적 자료구조(Hierarchical Data Structure) 입니다. ◎ 용어(T..

데이터베이스 책 추천 [내부링크]

* 데이터베이스 책 추천 * 해당 책 제목을 누르면 구매 사이트로 이동합니다. 1. 가장 쉬운 데이터베이스 설계 책 - 적절한 데이터베이스 디자인을 위한 지침서 ☞ 설계 초보자를 위한 책 ☞ DB설계자, PL, PM이..

C# DB연동 [내부링크]

C#에서 MySQL DataBase 연동하는 방법입니다. 먼저 C# 프로그램에서 MySQL과 연동하기 위해서는 Connector가 필요합니다. 아래 링크로 들어가 다운받아 줍니다. https://dev.mysql.com/downloads/connector/net/8...

안드로이드 핀치 줌 구현 - 멀티 터치 [내부링크]

안드로이드로 핀치 줌 (두 손가락으로 벌리고 좁힘으로써 화면을 확대, 축소 하는 기능)을 멀티 터치 이벤트로 구현하는 방법입니다. 먼저 변수 선언입니다. (클래스 내부입니다.) private double touch_interval_..

안드로이드 이미지 뷰 여백 없애기 [내부링크]

ScorllView에 ImageView를 넣었을 때 위 아래로 여백이 생기는 것을 확인했습니다. 이를 제거하기 위해 ScaleType을 모두 적용했지만 원하는데로 적용되지 않았습니다. 해결 방법은 간단합니다. 스크롤 뷰, 이미지..

안드로이드 카메라 줌 기능 구현 [내부링크]

SeekBar를 이용한 카메라 줌인, 줌아웃 기능 제어하는 방법입니다. 먼저 Layout입니다.

[안드로이드] 실시간 SurfaceView 화면 캡쳐하기 [내부링크]

어플리케이션 제작 중에 SurfaceView에 CameraPreview를 이용하여 카메라를 제어하는 프로그래밍 중 실시간으로 SurfaceView를 캡쳐해야하는 코드가 필요해 처리하는 과정 등을 정리하여 포스팅합니다. SurfaceVie..

[안드로이드] 비트맵 이진화 처리 [내부링크]

비트맵 이진화 처리 함수입니다. 먼저 비트맵을 받아 복사한 후 모든 픽셀을 탐색하며 색깔을 변경해줍니다.(GetNewColor) 그리고 새로운 비트맵을 반환합니다. private Bitmap GetBinaryBitmap(Bitmap bitmap_src..

안드로이드 특수키 제어하기 [내부링크]

안드로이드 프로그래밍에서 특수키 제어하는 방법입니다. 특수키란 키보드로 입력하는 키 외에 뒤로가기, 홈버튼, 볼륨버튼.. 등을 말합니다. 먼저 실행 될 activity에서 우클릭 - Generate를 눌러줍니다. 생성자..

[데이터베이스] 데이터베이스 정규화 [내부링크]

정규화란? 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스 * 정규화의 목적 - 중복성 및 종속성 제거 : 유연성 향상, 데이터 보호, 테이블 규칙성, 테이블 간의 관계 설정 - 데..

[C#] 자동차 번호판 인식 프로그램 with Tesseract-OCR, OpenALPR [내부링크]

안녕하세요 열코입니다! OpenCV로 영상처리 및 패턴인식을 공부하는 동안 가장 기본적인 자동차 번호판 인식 프로그램을 간단하게 제작해 보았습니다. * 개발 환경 개발 툴 : Visual Studio 2017 개발 언어 : C# *..

[C#] 유니코드 한글로 변환하기 [내부링크]

API를 사용하다보면 보통 해외에서 만든 소스가 대부분입니다. 따라서 한글을 지원하기도 하고 안하기도 하는데 한글을 지원하더라도 유니코드로 문자열이 처리가 되면 난감합니다. 그래서 이번엔 유니코드를 한글..

[Arduino] 아두이노 DIY 스마트 책상 만들기! [내부링크]

1. 개요 아두이노와 각종 센서를 통해 책상에 오래 앉아 있는 직장인 또는 학생의 편의와 건강을 위한 스마트 책상 만들기 프로젝트입니다. 2. 회로도 회로도가 조금 복잡합니다... USB 모듈에는 USB 선풍기를 연..

[Android] 안드로이드 내부 저장소 텍스트 파일 읽기 및 쓰기 [내부링크]

Android 내부 저장소에 텍스트 파일(.txt) 읽기 및 쓰기 방법입니다. /////////////////////// 파일 쓰기 /////////////////////// String str = input_text.getText().toString(); // 파일 생성 File saveFile =..

[TCP/IP] C# 소켓 프로그래밍 - 채팅 프로그램 만들기 [내부링크]

TCP/IP 는 패킷 통신 방식으로 IP(인터넷 프로토콜)와 TCP(전송제어 프로토콜)로 구성되어있습니다. 이번에는 C#으로 TCP/IP 통신 프로그램을 이용하여 간단한 채팅프로그램을 만들어보겠습니다. * 개발 환경 개..

자바 String 문자열 사용법 정리 [내부링크]

안녕하세요 열코입니다. 이번 시간에는 자바에서 String(문자열) 사용법에 대해 알아보겠습니다. 자바에서 문자열 사용 시 자바에서 제공하는 String class를 참조합니다. ※ 선언 및 정의 ⇒ 문자열을 사용하기..

C++ String 문자열 사용법 정리 [내부링크]

♣ string 헤더파일을 include 해준다. #include ← 추가! ※ append : 문자열 추가 ⇒ 추가 하고자 하는 문자열이 기존 문자열 뒤에 추가됨. 사용법 : str.append("문자열"); * str += "문자열"; 또는 s..

[Java] 자바 웹 크롤링 - 실시간 데이터 수집 [내부링크]

1. 개요 크롤링(Crawling) 이란? 정식명칭은 Scraping 또는 Web Scraping 으로 웹 사이트에서 원하는 정보를 추출하는 것을 의미합니다. 보통 웹 사이트는 기본적으로 Html 기반입니다. 크롬에서 Ctrl + U 또는 우..

[Android] 안드로이드 SurfaceView 카메라 연동하기 [내부링크]

안드로이드로 카메라를 연동 및 제어 방법입니다. 소스코드는 주요소스코드만 첨부합니다. 설명은 주석을 참고하세요. 1. AndroidManifest.xml 에 접근 권한 추가

안드로이드 EditText 사용법 정리 [내부링크]

Android Studio에서 EditText 사용시 필요한 Methods에 대한 정리입니다. 1. ems : 최초 기본 너비 설정 사용 : android:ems="8" 2. maxLength : text 최대 길이 설정 사용 : android:maxLength="12" 3. textColor..

[Android] 안드로이드 키보드 입력 창 올리기/ 내리기 [내부링크]

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); // 키보드 객체 받아오기 imm.hideSoftInputFromWindow(input_text.getWindowToken(), 0 ); // 키보드 숨기기 im..

[MySQL] Server에서 Client에게 접근 권한 주기 [내부링크]

Server에서 MySQL Console 관리자 ID로 접속 후, 다음 명령어 실행 GRANT ALL PRIVILEGES ON *.* TO 아이디@'ip주소' IDENTIFIED BY '비밀번호' WITH GRANT OPTION; 아이디, 비밀번호는 Server 관리자 아이디 입력..

[2018.04.28] 정보처리기사 해설 - 5. 데이터 통신 [내부링크]

[5과목 : 데이터 통신] 81. 맨체스터 코드 - 맨체스터 코드는 하나의 비트가 전송될 때, 각 비트타임 중앙에서 전압의 전이가 발생 - 아래는 맨체스터 코드의 예 82. HDLC(High-Level Data Link Control) 전송 모..

[C++] C# 연동하기 / C# dll 파일 만들기 [내부링크]

[C# DLL 파일 생성 및 C++ 연동법 ] 1. C#에서 DLL파일 생성 0) VS 관리자 권한으로 실행! 1) 새 프로젝트 - 클래스 라이브러리(.NET Framework) 2) using System.Runtime.InteropServices; 코드 추가 3) 프로젝트..

[자료구조] 큐 QUEUE [내부링크]

1. 의미 - 큐(Queue)의 사전적 의미는 무엇을 기다리기 위해 서는 줄, 대기열입니다. 예를들어 우리가 게임을 할 때 '큐를 잡는다, 큐를 기다린다'라는 말의 큐는 바로 줄, 대기열을 의미합니다. 우리가 줄을 서면..

[자료구조] 스택 STACK [내부링크]

1. 의미 - 스택 자료구조는 아래가 막혀있는 긴 통에 물건을 층층이 쌓아둔 상태로 보시면 됩니다. 예를들어 물건을 쌓기위해서는 현재 쌓여있는 물건 중 가장 위쪽에 쌓일 것이고, 꺼내기 위해서는 현재 쌓여있는..

C# 바코드 인식 프로그램 [내부링크]

* 개발환경 개발 툴 : Visual Studio 15.0 (2017) 개발 언어 : C# 데이터베이스 : MySQL 5.7 * 데이터베이스 테이블 Table 1 : User - Num(PK), ID, PW, Manager Table 2 : Data - Code, Date, User(FK) * 기능 -..

파이썬 DB연동 - PyMySQL + MySQL [내부링크]

Python에서 MySQL DB를 사용하기 위해서는 PyMySQL을 설치해야 합니다. PyMySQL은 다음 공식 사이트에서 다운로드 가능합니다. https://github.com/PyMySQL/PyMySQL PyMySQL/PyMySQL PyMySQL - Pure Python MySQL..

자바 DB연동 - JDBC + MySQL [내부링크]

이번에는 Java Eclipse에서 JDBC를 통해 Mysql DB를 연동하는 방법에 대해 알아보겠습니다. - JDBC란? Java DataBase Connectivity로 자바에서 데이터베이스에 접속 할 수 있도록 자바에서 제공하는 API입니다. *..

[C#] Visual Studio 2017 C# OpenCV 라이브러리 설치 [내부링크]

본 게시글은 Visual Studio 2017 및 OpenCV 2.4.10 버전 기준으로 작성되었음을 알려드립니다. * 설치하기 1. https://opencv.org/releases.html 링크에 접속합니다. Releases - OpenCV library Releases 3.4.2 20..

[BOJ] 1912 연속합 - 동적계획법 풀이 [내부링크]

* 동적계획법이란? https://ko.wikipedia.org/wiki/%EB%8F%99%EC%A0%81_%EA%B3%84%ED%9A%8D%EB%B2%95 동적 계획법 - 위키백과, 우리 모두의 백과사전 동적 계획법 수학과 컴퓨터 공학, 그리고 경제학에서 동적 계..

[BOJ] 8979 올림픽 - 문제 풀이 [내부링크]

문제의 조건은 3가지로 단순합니다. 1. 금메달 수가 더 많은 나라 2. 금메달 수가 같으면, 은메달 수가 더 많은 나라 3. 금, 은메달 수가 모두 같으면, 동메달 수가 더 많은 나라 얼핏보면 if문을 사용하여 조건을..

카카오 개발자 컨퍼런스 2018 'if kakao' 개최 [내부링크]

카카오 개발자 컨퍼런스 2018 if kakao가 2018년 9월 4일 삼성동 COEX에서 개최됩니다. 홈페이지 https://if.kakao.com/ 를 방문하면 여러가지 정보와 신청 할 수 있습니다. if kakao 개발자 컨퍼런스 2018 세상은..

[2018.04.28] 정보처리기사 해설 - 4. 소프트웨어 공학 [내부링크]

[4과목 : 소프트웨어 공학] 61. HIPO(Hierarchy Input Process Output) - 하향식 소프트웨어 개발을 위한 문서화 도구 - 시스템 분석 및 설계, 문서화 시 사용되는 기법으로 입력, 처리, 출력 기능 - 체계적 문서..

[2018.04.28] 정보처리기사 해설 - 3. 운영체제 [내부링크]

[3과목 : 운영체제] 41. 가상 기억장치 - 보조기억장치의 일부를 주기억장치처럼 사용, 현재 운영체제에서 흔히 사용 - 주기억장치의 용량보다 큰 프로그램을 실행하기 위해 사용 - 가상 기억장치의 프로그램을 실..

[2018.04.28] 정보처리기사 해설 - 2. 전자 계산기 구조 [내부링크]

[2과목 : 전자 계산기 구조] 21. 다중처리(병렬처리)의 특징 - 프로세서를 여러 개 사용하여 여러 작업을 동시에 수행 : 작업 속도 향상 - 프로세서 중 일부에 문제가 발생하더라도 다른 프로세서가 이를 처리 :..

[Arduino] 아두이노 ESP8226 OV2640 영상처리 및 패턴인식 프로그래밍 [내부링크]

ESP8266 + OV2640 ESP8266 과 OV2640을 이용하여 영상처리와 패턴인식 프로그래밍을 해보려고 합니다. 위 사진은 ArduCam ESP8266 과 OV2640 결합 사진입니다. 배선은 따로 필요없으며 위 사진과 같이 결합 해주시..

[2018.04.28] 정보처리기사 해설 - 1. 데이터 베이스 [내부링크]

[1과목 : 데이터 베이스] 1. 카디널리티(Cardinality)는 튜플(행)의 수를 의미합니다. 2. 버블 정렬은 2개의 숫자씩 짝을 비교해서 정렬하는 방법입니다. 다음은 [9, 6, 7, 3, 5]의 버블 정렬(오름차순) 수행 과정..