분류 전체보기 155

토비의 스프링 STS 환경설정

토비의 스프링 3.1을 학습하기 전에 예제를 따라하기 위해 Windows OS에서 Spring 개발환경을 구축해보려고합니다.STS 다운로드구글에 STS로 검색합니다.제일 상위에 표기되는 Spring Tools 4를 클릭합니다. 원하는 IDE를 선택하여 다운로드합니다.저는 주로 사용하고있는 IDE인 Eclipse를 사용하기위해 Spring Tools 4 for Eclipse를 다운로드 하겠습니다. VS Code에서 사용을 원하시는 분은 VSCode에서 Spring시작하기 게시물을 참고해주시면 갑사하겠습니다.다운로드된 spring-tool-suite-4-4.3.1.RELEASE-e4.12.0-win32.win32.x86_64.zip의 압축을 풀고 sts-4.3.1.RELEASE 내부의 SpringToolSu..

BackEnd/Spring 2019.08.07

자바스크립트 스코프

유인동님의 함수형 자바스크립트 프로그래밍을 시작하며자바스크립트의 함수와 관련된 몇 가지 기능들에 대해 알아보고자 합니다. 스코프클로져에 대해 이해하기 위해서는 스코프의 개념을 필요로합니다.자바스크립트의 스코프는 변수들(variables)의 접근성을 정의한 것입니다. 좀 더 풀어말하자면 변수를 어디에서 어떻게 찾을지 정한 규칙입니다.스코프의 두 가지 종류에는 Global Scope(전역 스코프)와 Local Scope(지역 스코프)가 있습니다.Global scope모든 함수들 혹은 중괄호({})밖에 정의된 변수들을 Global Scope에 있다고 정의합니다.Global Variable(전역 변수)를 선언하였다면, 그 변수는 당신의 코드 어디서나 사용할 수 있습니다. 심지어 함수에서도 말이죠.Global S..

Language/JavaScript 2019.08.03

자바스크립트 일급함수

유인동님의 함수형 자바스크립트 프로그래밍을 시작하며 자바스크립트의 함수와 관련된 몇 가지 기능들에 대해 알아보고자 한다. 일급함수 자바스크립트의 함수는 일급 객체이자 일급 함수이다. 일급이라는 말이 직해하기는 다소 어렵다. 따라서 일급의 조건을 먼저 알아보면 다음과 같다. 변수에 담을 수 있다. 함수나 메서드의 인자로 넘길 수 있다. 함수나 메서드에서 리턴할 수 있다. 그렇다면 일급 함수를 만족하기 위해서는 어떤 조건들이 필요한지 알아보자. 아무 때나(런타임에서도) 선언이 가능하다. 익명으로 선언할 수 있다. 익명으로 선언한 함수도 함수나 메서드의 인자로 넘길 수 있다. 예시 function fnExample1() {} var a = typeof fnExample1 == 'function'..

Language/JavaScript 2019.08.02

Java while문 그리고 do, continue, break

for문을 사용하는 사람이라면 굳이 while문을 사용할 필요가 없다. (대학교졸업까지 코드를 짤 때, 단 한번도 while을 사용해보지 않았었다.) 하지만 while 문이 for문보다 코드를 간결하게 해주는 경우가 있다. (ex. 초기화가 필요하지 않은 경우, 증감식이 필요하지 않은 경우) 이는 아래의 for vs while에서 다뤄보고자 한다. while문 while(조건식) { // 조건식의 결과가 true인 경우, 반복될 문장을 적는다. } while문은 우선 조건식이 true인지 false인지 판별한 후에 조건식이 true라면 {}내의 문장을 이행하고, 다시 조건식을 판별한다. false일 경우에는 루프 밖으로(문장 밖으로) 벗어난다. for vs while for문과 while문은 항상 서로 ..

Language/Java 2019.06.08

객체지향 프로그래밍

**Java, C++**등 객체지향 언어들을 사용하여 프로그래밍을 하면서 부끄럽게도 객체지향이 무엇인지에 대해 생각해본적이 없었다. 객체지향의 기본 구성 요소와 특징, 객체지향 개발 5원칙을 바탕으로 이해해보려 한다. 기본 구성 요소 클래스 객체지향 프로그램의 기본적인 사용자 정의 데이터형으로 클래스는 연관되어있는 변수와 메소드의 집합이다. 객체 클래스가 실제 메모리상에 할당된 것(인스턴스)이다. 객체는 자신의 고유 속성을 가지며 클래스에서 정의한 행위를 할 수 있다. 메소드&메시지 메소드는 한 객체에서 객체의 속성을 조작하는데 사용된다. 메시지는 객체간의 통신을 가능하게하는 도구이다. 특징 추상화 객체들의 공통적인 속성이나 행동을 추출하는 것을 추상화라고 한다. 객체지향 프로그래밍은 객체의 구체적인 개..

Language/Java 2019.05.24

자바스크립트의 프로토타입

자바스크립트는 프로토타입에 기반한 언어입니다. 프로토타입 기반 프로그래밍에서는 Java의 Class처럼 프로토타입을 사용합니다. 하지만 Java에서 Class를 기반으로 인스턴스를 생성하여 객체를 사용하는 것과 다르게 JS에서는 프로토타입을 토대로 클로닝(Clonning)과 객체특성을 확장해나가는 방식으로 새로운 객체를 생성하여 사용합니다. 자바스크립트의 프로토타입은 크게 Prototype Object과 Prototype Link로 나뉩니다. Project Object function hello() {} var helloObject = new hello(); 자바스크립트에서 객체는 함수로 생성합니다. helloObject는 hello라는 함수로 생성한 객체입니다. 우선 함수가 정의될 때, 일어나는 일을 ..

Language/JavaScript 2019.05.24

같은 패키지 명으로 APP 2개 만들기

build.gradle AndroidStudio에서 app\src\build.gradle\app를 실행합니다. defaultConfig에서 applicationId를 변경합니다. defaultConfig { //applicationId "com.example.lim" applicationId "com.example.lim2" minSdkVersion 23 }AndroidManifest.xml AndroidStudio에서 app\src\main\AndroidManifest.xml을 실행합니다. APP Name 태그 내의 android:name을 수정합니다. (* 실행할 때, 구분하기 위해서 입니다.) 위의 소스코드는 @string/app_name을 참고하므로 strings.xml에서 app_name을 수정..

Mobile/Android 2019.05.13

Flutter 개발환경 설정

Flutter 개발환경 설정 Windows OS 에서의 Flutter 개발환경을 설정하려 합니다. Download Flutter 개발자 페이지로 이동하여 Get started버튼을 클릭합니다. https://flutter.dev/ Install의 3가지 OS중 Windows를 클릭합니다. System Requirements Flutter를 설치하고 실행시키기 위해서는 최소한의 개발환경이 필요합니다. OS : Windows 7 SP1 이상 (64-bit) Disk : 400MB 이상 (IDE/tools용량은 포함하지 않은 값입니다.) Tools Windows PowerShell 5.0(Window 10에는 이미 설치되어있습니다.) Git for Windows 2.x (Command 창에서 Git이 사용가능..

Mobile/Flutter 2019.05.10

Mosquitto 시작하기

Mosquitto https://mosquitto.org/download/ 위 주소로 들어가서 mosquitto를 다운로드합니다. 다운로드 한 Installer를 실행한 후, 설치를 진행합니다. OpenSSL C:\Program Files\mosquitto에서 readme-windows.txt를 실행하면 Dependencies에 OpenSSL이 있는 것을 확인할 수 있습니다. http://slproweb.com/products/Win32OpenSSL.html 위 주소에서 자신의 Win32 OpenSSL Installler를 다운로드합니다. ( * 자신의 비트수와 상관없이 Win32를 다운로드 합니다.) 다운로드한 Installer를 실행 후, 설치를 진행합니다. (*중간에 /bin 경로로 설정하는 것에 ..

Network 2019.04.26

MQTT 란?

MQTT Message Queuing Telemetry Transport 기존 프로토콜에서 다양한 커뮤니케이션의 요구사항을 수용할 수 없어 생겨났습니다. Publish / Subscribe 방식의 메시지 큐입니다. 메시지 큐 웹 서버 상에서 데이터를 처리하다보면 너무 많은 처리로 인하여 대기하는 요청이 쌓입니다. (병목현상이 일어납니다.) 그에 따라 서버의 성능이 저하되거나 심지어 서버가 다운되기도 합니다. 이를 방지하기 위해 기존에 로드밸런싱(부하분산)을 하거나 DB사이드에서 수정을 하기도 합니다. 하지만 기존의 방식들은 비용도 많이들고 쉽지 않습니다. 따라서 원할한 처리를 위해 비동기 메시지 방식을 구성하게 되는데 이를 메시지 큐라 합니다. Producer(Sender)가 메시지를 Queue안에 넣어..

Network 2019.04.26