전체 글 41

MyBatis 설치하는 방법

자바의 관계형 데이터베이스 프로그래밍을 쉽게 할 수 있게 도와 주는 개발 프레임 워크 JDBC를 통해 데이터베이스에 엑세스하는 작업을 캡슐화하고, 일반 SQL 쿼리, 저장 프로 시저 및 고급 매핑을 지원하며 모든 JDBC 코드 및 매개 변수의 중복작업을 제거한다. ★ 데이터베이스 연동하는 부분에서 성능을 높이려 하는데 기본적으로 connection pool 이라는 객체를 사용함. 데이터베이스와 연결하는 connection을 미리 만들어 둠. 필요할 때 pool에서 갖다 쓰고 다시 반납해서 데이터베이스의 성능을 개선시킴. Mybatis에서는 프로그램에 있는 SQL쿼리들을 한 구성파일에 구성하여 프로그램 코드와 SQL을 분리할 수 있다. 따라서 유지보수가 용이하고 개발이 편리하다는 장점을 가지고 있다. 먼저..

FrameWork 2021.05.04

[JAVA] 참조형(레퍼런스) 변수, 그게 뭔데?

변수(Variable)는 문자, 숫자와 같은 데이터를 담는 저장소(container)이다. 여기에 담겨진 데이터는 다른 데이터로 바꿀 수 있으며, 변수에 담을 수 있는 데이터의 종류는 데이터 타입으로 정해져 있다. 자바에서 변수는 기초 변수와 참조형 변수로 구분된다. 오늘은 참조형 변수에 대해 자세하게 알아보자! 기초 변수 : int, double, char 등 자료형으로 선언된 변수. 자료형으로 선언된 변수는 객체라고 하지 않는다. 레퍼런스 변수 : 메모리상에 생성된 인스턴스를 가리킬 때 사용하는 변수다. 인스턴스란? 객체를 소프트웨어에 실체화하면 그것을 인스턴스라고 부른다. 즉, 메모리에 할당 된 객체를 인스턴스라고 한다. 인스턴스는 객체에 포함되며, OOP 관점에서 객체가 메모리에 할당되어 실제로 ..

Programming 2021.04.26

[Machine Learning] KonlPY 라이브러리 설치하는 방법

이번 포스팅에서는 KonlyPY 을 설치하는 방법에 대해 알아보려고 한다. KonlyPY는 한국어를 자연어처리, 형태소 분석 할 수 있도록 지원해주는 라이브러리를 말한다. 공식 홈페이지에는 설치 방법을 간단하게 세단계의 절차로 적어놨지만 각 단계에서 해야하는 작업들이 있기에 자세하게 남겨본다. 필요한 선행작업 1 : Python 버전 확인 주피터에서 '!python --version' 을 입력해서 버전을 확인한다. (다운 받을 JPype 파일이 파이썬의 버전에 따라서 달라진다.) 필요한 선행작업 2 : 환경 변수 설정 1) [내 PC] - 우클릭 - [속성] 2) [속성]창의 왼쪽에 [고급 시스템 설정] 클릭 3) [고급 시스템 설정] - [고급] - [환경변수] 4) [환경 변수] - 시스템 변수 목록..

Machine Learning 2021.04.22

[Machine Learning] Support Vector Machine (SVM)

Support Vector Machine (SVM) 가장 떨어진 선을 예측 값으로 사용하겠다. 두 데이터 집단, 사이의 거리가 동일할 때 선과의 거리를 margine이라고 한다. 이 margine의 길이가 가장 긴 선형함수를 찾아내는 과정이다. 선형 함수와 가장 가까이 있는 데이터를 'support vector' 라고 한다. 회귀 선형 모델 : alpha 선형 분류 모델 강도 : C C값이 클수록 규제가 약해진다. 기본적으로 L2규제를 사용, 하지만 중요한 특성이 몇 개 없다면 L1규제를 사용해도 무방. (주요 특성을 알고 싶을 때 L1규제를 사용하기도 함) / 선형 모델의 장점 선형 모델은 학습이 빠르고 예측도 빠르다. 매우 큰 데이터 세트와 희소한 데이터 세트, 모두 잘 동작한다. 특성이 많을 수록 ..

Machine Learning 2021.04.22

[Android] 4대 컴포넌트 그게 뭔데?

Android 4대 컴포넌트에는 Activity, Sercive, Content Provider, Broadcast Receiver 가 있다. 이 네가지 컴포넌트에 대해 자세히 알아보자! Activity 사용자 인터페이스 화면을 구성, 관리하는 컴포넌트 액티비티 역할을 하기 위해서는 Activity 클래스를 상속해야 하며, 액티비티가 기본적으로 가지고 있는 생명주기 메소드를 재정의해서 원하는 기능을 구현해야 한다. 다른 애플리케이션의 액티비티를 불러낼 수 있다. 액티비티의 크기는 상태바(Status Bar) 영역을 제외한 화면 전체로 고정(원하는 위치에 원하는 크기로 변경할 수 없음)되어 있다. 두 개의 액티비티를 동시에 보여줄 수 없다. Java 파일과 xml 파일이 속한다. Activity 메소드 *..

Android 2021.04.22

[Android] Intent와 Intent filter

안드로이드의 4대 컴포넌트 사이에서 정보를 전달하는 요소, 'Intent'에 대해 알아보자! 인텐트 (Intent) 4가지 요소 사이에서 정보나 액션을 담아 전달해주는 역할 컴포넌트에 액션, 데이터 등을 전달하는 메시지 객체 애플리케이션 간의 데이터 공유를 위해서 표준화된 인터페이스를 제공하는 컴포넌트. 인텐트는 액션과 데이터로 이루어져있다. ex) 액션 -> 전화를 거는 것, 데이터 -> 전화 번호 인텐트 필터(IntentFilter) 특정 인텐트를 받을지 말지를 정의하는 역할을 수행하고, 이를 통해 컴포넌트의 특징이 정해진다. 인텐트 필터를 구성하는 요소는 인텐트에 작성할 수 있는 요소들과 동일하다. 표준 액티비티 액션, 표준 브로드캐스트 액션, 표준 카테고리, 표준 추가 데이터, 플래그와 같은 다양..

Android 2021.04.22

[MachineLearning] 지도 학습 - 회귀

머신러닝은 크게 세종류로 나눠진다. 지도 학습, 비지도 학습, 강화 학습 세 종류가 있으며 지도 학습은 분류와 회귀로 나눠진다. 이번 포스팅에서는 지도 학습의 회귀에 대해 알아보자. 회귀 연속적인 숫자를 예측하는 것을 말한다. 분류보다 회귀를 많이 사용하며, 오랜 기간 현대 통계학에서 발생되어 다양하게 이용되는 학문 분야이다. 선형 모델 (Linear Model) 데이터가 있을 때 가장 잘 설명할 수 있는 선을 찾는 방법 입력 특성에 대한 선형 함수(예측값)을 만들어 예측을 진행한다. 다양한 선형 모델이 존재한다. 분류와 회귀에 모두 사용 가능하다. 선 하나하나가 예측 값이 된다. 선형 함수 = 예측 값 회귀 계수 (W,b) w : 가중치(weight), 계수(coefficient) b : 편향(bias..

Machine Learning 2021.04.21

[Android] Button 비활성화 / 클릭 이벤트 없애는 방법

1. setClickable( ) click 이라는 이벤트를 비활성화시킴 비활성화 : .setClickable(false) 활성화 : .setClickable(true) → false 값을 줬을 경우 버튼 UI는 활성화 되어있고 이벤트만 비활성화한 상태 (아래의 'seEnabled()' 메소드와의 차이) btn_start.setClickable(false); 2. setEnabled( ) Button 객체 자체를 비활성화 비활성화 : .setEnabled(false) 활성화 : .setEnabled(true) btn_start.setEnabled(false); 프로그래밍 공부를 위해 여러 자료들을 토대로 작성한 기록입니다. 개인 공부에만 사용해주시고, 상업적인 활용과 재배포를 금지합니다.

Android 2021.04.20

MVC 패턴 그게 뭔데, 어떻게 하는건데?

M V C MVC는 'model–view–controller'의 약어로서, 소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴을 말한다. Model, View, Controller 세 부분으로 나눠지며, 사용자 인터페이스로부터 비즈니스 로직(사용자의 요청을 처리하는 부분)을 분리한다. 즉, 어떤 특정한 역할들에 대해 역할분담을 할 때 가이드라인을 제시하는 방법 중 하나이다. 애플리케이션의 시각적 요소와 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다. Model : 애플리케이션의 정보(데이터) View : 텍스트, 체크박스 항목 등과 같은 사용자 인터페이스 요소 Controller : 데이터와 비즈니스 로직 사이의 상호동작을 관리 뷰에 대한 행동 / 사용자가 재생 버튼을 클릭 ↓ 뷰에서 ..

Programming 2021.04.20

[Python] Pandas : DataFrame (loc 인덱서)

Pandas DataFrame에서 특정 행/열을 선택하는 방법은 여러가지가 있다. iloc indexer, loc indexer 두 가지 함수를 사용하는 방법으로 나눠진다. Indexer는 행과 열을 한번에 인덱싱하거나 슬라이싱 해주는 함수를 말한다. loc 인덱서는 실제 인덱스를 사용해서 데이터를 가지고 올 때 사용한다. 즉, label or 조건 표현으로 선택하는 방법이다. iloc 인덱서는 numpy의 array방식으로 행을 가지고 올 때 사용하는데, 간단하게 말해서 행 번호로 선택하는 방법이다. 이번 글에서는 loc 함수에 대해 알아보자! . l o c ( ) index label과 index를 사용해서 인덱싱 ex ) 행과 열의 label을 사용해서 인덱싱하는 경우 * 행 넘버와 다르게 마지막 ..

Python/Pandas 2021.04.19