Programming (467) 썸네일형 리스트형 3. 사용자 인터페이스 구현 (2) - UI 작성법 : JAVA vs XML [2/2] 앞선 아티클에서 우리는 자바 코드만으로 레이아웃에 뷰를 적용하고, 이를 출력하는 실습까지 진행해 보았습니다. 3. 사용자 인터페이스 구현 (2) - UI 작성법 : JAVA vs XML [1/2] 안드로이드 프로그래밍에서 UI를 만드는 방법은 이론적으로는 자바 코드로 직접 작성하기, 레이아웃 XML로 작성하기 - 이렇게 두 가지 방법이 있습니다. 물론 실제로는 대부분 레이아웃 XML을 활 nozeroslope.tistory.com 이번에는 익숙한(?) 방식인 XML을 사용해 UI를 구성하는 방법에 대해서 살펴보도록 하겠습니다. 이번에는 이전 아티클에서 생성했던 모듈에서, MainActivity는 그대로 두고 새로운 액티비티를 추가로 생성해서 진행해 보겠습니다. 프로젝트 메뉴에서 패키지명 com.examp.. 3. 사용자 인터페이스 구현 (2) - UI 작성법 : JAVA vs XML [1/2] 안드로이드 프로그래밍에서 UI를 만드는 방법은 이론적으로는 자바 코드로 직접 작성하기, 레이아웃 XML로 작성하기 - 이렇게 두 가지 방법이 있습니다. 물론 실제로는 대부분 레이아웃 XML을 활용하는 것이 사실이지만, 기본적인 원리를 학습하는 차원에서 두 가지 방법 모두 학습해 보도록 하겠습니다. ○ 자바 코드 사용 자바 코드를 통해서 화면을 구성하게 되면 - 레이아웃 XML을 사용하지 않고, 자바 코드만으로 뷰 생성을 진행하고 메서드를 활용해 뷰의 속성 등을 일일이 지정하게 됩니다. 그리고 이렇게 준비한 뷰를 setContentView( ) 함수의 파라미터로 넘기는 방식으로 화면을 구현하게 됩니다. 안드로이드 스튜디오를 실행하고, 우리가 앞서서 사용한 AndroidLab 프로젝트를 다시 활용해 봅시다... 2. Javascript ES2015 (4) - 구조 분해 할당 구조 분해 할당을 사용하면, 객체와 배열로부터 속성 / 요소를 쉽게 꺼낼 수 있습니다. 우선 예를 들어서 바로 살펴보도록 하겠습니다. 아래 예제에서는, candyMachine이라는 객체에 할당된 속성 중 getCandy라는 함수 속성, 그리고 status 속성 내의 count라는 속성을 - 동일한 이름을 가진 전역 변수에 할당하는 코드입니다. (함수 자체를 할당하는 것입니다! 리턴 값을 할당하는 것이 아니기에 실행하지는 않습니다) var candyMachine = { status: { name: 'node', count: 5 }, // 호출 객체의 count를 1 감소하고 리턴한다. getCandy: function(){ this.status.count--; return this.status.count;.. 2. Javascript ES2015 (3) - Arrow Function(화살표 함수) ES2015에서는 화살표 함수(arrow function)가 추가되었습니다. 물론 기존의 함수 리터럴도 그대로 사용이 가능합니다. 여기서 설명하는 화살표 함수는 람다식과 비슷한 형태로 생각해 주시면 이해가 빠를 것입니다. 간단한 add 함수 선언 예제를 살펴보겠습니다. function add1(x, y){ return x + y; } const add2 = (x, y) => { return x + y; }; /* const add2 = function(x, y){ return x + y; }; */ const add3 = (x, y) => x + y; const add4 = (x, y) => (x + y); function not1(x){ return !x; } const not2 = x => !x; a.. 2. Javascript ES2015 (2) - 템플릿 문자열, 객체 리터럴 ○ 템플릿 문자열 ES2015 문법에 새로 생긴 문자열 표현에 대해서도 살펴보겠습니다. 요약하면, 이 새로운 문자열은 (큰 or 작은) 따옴표가 아닌 백틱(` , Tab 상단 키)을 사용한다는 점입니다. 이 새로운 문자열 사용 방식이 왜 필요한지에 대해서도 살펴보겠습니다. 우선, 우리가 아래 변수들을 이용해서 결과적으로 1 더하기 2는 '3' 이라는 텍스트를 출력한다고 가정해 보겠습니다. var num1 = 1; var num2 = 2; var result = 3; var string1 = num1 + ' 더하기 ' + num2 + ' 는 \'' + result +'\''; console.log(string1); // 1 더하기 2 는 '3' 잘 알고 있는 방식이지만, 생각보다 string1 변수를 선언.. 2. Javascript ES2015 (1) - const, let 우선 자바스크립트와 관련해서 2015년 발표된 ES2015(ES6) 이후의 최신 문법에 대해서 차근차근 살펴보도록 하겠습니다. 본 블로그 내의 기본 자바스크립트 문법만을 공부한 상태라면, ES2015 이후의 업데이트 된 자바스크립트 문법에 대해서도 충분히 학습해야 할 필요성이 있습니다. ○ const, let 간단하게 요점만 먼저 설명하자면, const와 let은 var를 대체합니다. var와 const / let의 차이점은 무엇일까요? 코드에서의 스코프의 차이가 있습니다. 아래 예제를 비교해 보겠습니다. if (true) { var x = 3; } console.log(x); // 3 if (true) { var y = 3; } console.log(y); // Uncaught ReferenceErro.. 1. Node.js 핵심 개념 이해 (5) - 서버로서의 노드 이번 아티클에서는 노드의 특성, 장단점 등에 대해서 살펴볼 예정입니다. 코드 예제 같은 내용보다는 개념적 내용에 대한 기술에 가까우니, 차근차근 읽어보시기 바랍니다. 우선 앞선 아티클에서 설명한 특성을 다시 상기하겠습니다. 자바스크립트 언어의 특성이 노드에서도 그대로 이어지기 때문에, 기본적으로 노드는 싱글 스레드 - 논블로킹 모델을 사용하게 되고 여기서 기인하는 특성을 갖게 됩니다. 참고로 이 논블로킹 특성은 노드가 libuv 라이브러리를 사용하는데서 오게 됩니다. 1. Node.js 핵심 개념 이해 (4) - Single Thread 기본적으로 노드는 싱글 스레드 시스템입니다. 우리가 코드를 동시에 실행할 수 없다는 이야기를 앞의 아티클에서 했었는데, 이것 역시 이 영향에서 비롯됩니다. 일단은 스레드.. 1. Node.js 핵심 개념 이해 (4) - Single Thread 기본적으로 노드는 싱글 스레드 시스템입니다. 우리가 코드를 동시에 실행할 수 없다는 이야기를 앞의 아티클에서 했었는데, 이것 역시 이 영향에서 비롯됩니다. 일단은 스레드 설명을 위해서 항상 나오게 되는 프로세스와 스레드의 차이점에 대해서 살펴보도록 하겠습니다. · 프로세스 : OS에서 할당하는 작업의 단위입니다. 일반적으로 하나의 프로그램을 실행하는 것을 상상하면 됩니다. 프로세스 단위는 서로 메모리 등의 자원을 공유하지 않는 독립적인 방식으로 운영됩니다. · 스레드 : 프로세스 내에서 생성되는 작업 단위입니다. 프로세스는 스레드를 여러 개 생성할 수 있고, 이를 통해 여러 작업을 동시에 처리가 가능하죠. 각 스레드들은 부모 프로세스의 자원을 공유하고, 같은 주소의 메모리에 접근하기 때문에 데이터 공유도.. 이전 1 ··· 21 22 23 24 25 26 27 ··· 59 다음