[서평] 수학공부 이렇게 하는거야 (중)
수학공부 이렇게 하는거야 수학공부 이렇게 하는거야(중) COUPANG www.coupang.com 수학공부에 대한 어려움을 해결하기 위해 일본수학교육협의회에서 만든 책입니다. 학생들이 읽는 책이기 보다는 교사나 부모들이..
키자드에 등록된 총 446개의 포스트를 확인하실 수 있습니다.
수학공부 이렇게 하는거야 수학공부 이렇게 하는거야(중) COUPANG www.coupang.com 수학공부에 대한 어려움을 해결하기 위해 일본수학교육협의회에서 만든 책입니다. 학생들이 읽는 책이기 보다는 교사나 부모들이..
새해를 맞아서 워드프레스를 개설하게 되었습니다. 티스토리에 포스팅 하면서 3개월이 정도 운영한 소감을 기록합니다. 티스토리를 놔두고 워드프레스를 또 개설하는 이유? 현재 티스토리도 운영하고 있는데 워드..
XAMPP 의 설치 XAMPP은 PHP를 개발하기 위한 대중적인 개발환경입니다. 윈도우10 환경에서 설치하고 테스트를 해보겠습니다. 크로스 플랫폼이라서 윈도우, 리눅스, OS X에 설치할 수 있습니다. 이름이 특이한데 발..
PHP 입문 쉬운 코드로 PHP에 입문할 수 있습니다. 천리길도 한걸음 부터라고 쉬운 코드부터 시작하는 것은 좋은 방법입니다. 다음의 코드는 브라우저에 문자열을 출력합니다. php 는 C언어 문법과 비슷한 점이 있..
const 포인터 (const pointer) const 포인터를 시작하기 전에... 우선 이번 포스팅은 아마 C++에서도 가장 헷갈리는 파트중의 하나가 아닐까 싶습니다. const 와 pointer 가 마구 나와서 쓰다보면 이게 맞는지??를..
레퍼런스의 바른 사용법 레퍼런스는 편리하지만 단점도 있기 때문에 올바르게 사용해야 합니다. 레퍼런스의 특성인 초기화가 끝나면 을 변경할 수 없다는 점은 동적할당(힙메모리)을 사용할 때 단점이 됩니다. 메..
함수 오버로드 - Overloading Functions 오버로드 (Overload) 라는 뜻은 어떤 사물을 Over 해서 적재 load 한다는 뜻입니다. 스타크래프트의 유명한 오버로드 (Overlord 위에 있는 군주)와 발음이 같으나 뜻이 다..
레퍼런스로 함수에 인수 전달하기 C++에서 함수에 인수를 전달하는 방법은 크게 세가지가 있습니다. ① 값을 전달하는 방식 - Pass by Value ② 포인터를 사용한 참조 전달 방식 - Pass by Reference using Pointe..
함수의 리턴값 C++의 함수는 기본적으로 하나의 값만 반환할 수 있습니다. [ return 값 ] 의 형식이 바로 그것이죠. 참고로 main 함수도 값을 리턴합니다. 습관적으로 써놓는 return 0; 는 런타임에게 프로세스의..
객체를 함수에 전달하기 이번 포스팅은 객체를 함수에 전달한다는 조금 어려운 개념에 대한 내용입니다. C++로 이 정도 챕터까지 학습을 진행했다면 밑에서 부터 기초를 착실히 쌓아둬야 그 다음 학습이 수월합니..
0은 무엇인가? 수의 세계에서 0은 특별한 위치를 갖고 있습니다. 현대인은 0의 개념을 무리없이 받아들이지만 0이 발견된 것은 5세기경 인도에서 사용하기 시작했다고 합니다. 그러니까 그 전에 0이라는 개념이 설..
const 메소드와 const 객체와 const 포인터 const 키워드를 사용해서 변수를 심볼릭 상수(symbolic constant)로 변형할 수 있다는 것은 이미 배운바 있습니다. 또한 const를 포인터에 사용하는 방법이 두가지 있었..
레퍼런스(reference) 레퍼런스란? C++에서 객체를 조작하기 위해서 변수와 포인터를 사용합니다. 여기에 레퍼런스(reference)라는 이름의 변수가 하나 더 등장합니다. 레퍼런스(reference)라고도 하고 참조 변..
this 포인터 class 코딩을 하다보면 this 라는게 나오는데 처음 봤을 때 이게 무슨 의미인지 궁굼한 적이 있었죠. 간단히 말하면 this 포인터는 객체의 주소를 저장한 포인터 변수입니다. 사용자가 작성하지 않아..
const 포인터 (const pointer) const는 변수의 값을 상수로 만드는 키워드입니다. 예를 들어 다음의 코드는 myValue의 값을 이후 변경할 수 없습니다. const int myValue = 500; [변수와 상수] 변수와 상수에 대하..
C 언어 독학 가이드 C 언어를 배우겠다고 결심하는 것은 머나먼 코딩여정의 첫번째 발걸음을 떼는 것과 같다고 할 수 있습니다. C 언어는 현대 사회의 거의 모든 전자기기에 사용되는 만큼 우리 생활에 알게 모르..
이 포스팅은 MASM 어셈블리어의 기초에 대한 내용이다. *어셈블리어의 간단한 덧셈 어셈블리어로 Hello World를 출력하는 것은 좀 어렵다. C언어 처럼 printf 함수가 없기 때문이다. 다행히 마이크로 소프트 어셈..
가끔 윈도우10이 느려지거나 여러가지 프로그램이 자동으로 실행되는 경우도 있을 겁니다. 시스템이 불안정하다고 느낄 때 처음으로 확인해야 할 곳이 윈도우10 작업관리자 입니다. 윈도우10의 작업관리자는 윈도..
힙메모리상의 속성 member data on the heap 클래스의 멤버 중에는 포인터도 포함될 수 있다. 포인터는 기본 자료형을 가리킬 수도 있고 또 다른 객체를 가리킬 수도 있다. 여기가 이제 헷갈리는 부분이다. 지난..
vi 에디터 실행하기 vi 에디터는 터미널에서 vi 를 입력해서 실행합니다. vi 에디터는 향상된 vi 에디터라는 의미의 vim Vi IMproved 을 의미합니다. 윈도우 환경에 익숙한 사람들은 약간 혼동스러울 것입니다...
자바에서 예외를 Exception 이라고 한다. 프로그램의 예외란 무엇일까? 예외란 일반적인 실행이 아니라 예외적인 상황에서 실행되는 것을 의미한다. 컴퓨터에는 오류라는 개념이 있다. 예전에 인터넷에 많이 돌던..
C++ 에서는 메모리를 직접 운영해야 한다. 다른 많은 프로그래밍 언어에서 가상머신이 메모리를 관리해주는 것에 비해서 C++에서는 메모리를 직접 운영하기 때문에 메모리의 구조에 대한 지식이 필요하다. 프로그..
이산수학은 컴퓨터학부에 입학하면 1, 2학년 과정에는 필수로 들어있는 과목이다. 컴퓨터를 배우는데 왜 이산수학이 필요할까라는 의문이 있다? 분명 수학이 필요할 것 같은데 어떤 사람들은 또 수학이 필요없다고..
*MASM 설치와 세팅 침고 링크 : MS Macro Assembler 설치하기 | Irvine32 라이브러리 | 어셈블리어 (tistory.com) MOVZX (move with zero-extended) movzx 는 move with zero-extended 로 피연산자에 값을 복사하..
루프(loop)란 무엇인가? 많은 프로그래밍의 문제들이 동일한 데이터에 반복적인 작업을 함으로써 풀린다. 컴퓨터 프로그램은 단순한 계산의 반복이지만 이 단순작업도 한두번이 아니라 100번 1000번 반복하면 어려..
for 루프 for 루프는 정해진 특정 코드를 정해진 횟수만큼 반복하는데 사용한다. for (초기화; 조건식; 증감연산) { 코드블록 } 초기화는 한번 발생하고 조건식이 참이면 코드블록을 실행한다. 반복 횟수를 결정하..
포인터를 설명하기 위해서는 컴퓨터 메모리에 대하여 어느정도 이해가 필요하다. 힘들게 포인터 챕터까지 와서 C++을 접는 사람이 많은데 과거에는 컴퓨터 전공수업을 듣지 않고 배우기 힘들었던 것이 사실이다...
언리얼 엔진의 설치와 테스트 언리얼 게임엔진은 에픽게임즈에서 게발한 3D게임 엔진이다. 유니티와 더불어 가장 인기 있는 상업용 게임 엔진이다. 3D의 성능에서는 말할 것 없이 최고의 평가르 받고 있다. 게임..
루아 Love 2D엔진 게임만들기 튜토리얼 3이다. 이 문서에는 Love 2D 게임으로 간단한 도형 클릭 게임을 만들어 본다. 튜토리얼 2까지 진행했다면 이제 도형(사각형, 원)을 게임창에 자유자재로 그릴 수 있을 것 이..
접근제어자 (Access Control Keywords) C++의 클래스안에 있는 메소드와 속성은 기본값이 private 이다. 사용하기 위해서는 public 영역으로 지정해준다. * public 영역에 있으면 외부에서 접근이 가능하다. * pr..
클래스 생성자 (Constructor) / 소멸자 (Destructor) 클래스 생성자란 무엇인가? - 클래스의 생성자도 클래스가 가진 멤버 함수의 하나이다. - 생성자의 이름은 클래스의 이름과 같다. - 생성자는 멤버 변수들의..
게임 개발환경 설치 Love2 는 루아(Lua)에서 사용할 수 있는 2D게임 엔진이다. Love 2D 게임엔진을 사용해 게임을 제작하기 위해서는 루아와 러브 프레임워크를 설치해야 한다. 1) 첫번째 루아를 설치한다. *루아..
*Love 프레임워크 구조 Love 프레임워크는 C++ 로 작성되었다. love를 다운로드 받은 폴더를 보면 C++의 SDL2이나 OpenAL 라이브러리 등 C++의 dll이 사용되었다. Lua의 스크립트로 love 프레임워크를 직접 구동하..
루아 Love 2D 게임만들기 튜토리얼 1번에서 사각형을 그려봤다. 이 포스트에서는 원을 그리고 배경색상과 도형에 색상을 입혀본다. 원 그리기 원그리기도 사각형 그리는 것과 비슷하다. 사각형은 너비와 높이를 가..
테이블은 루아의 핵심 데이터 구조이다. 테이블이라고 하니까 왜 HTML의 table tag 가 생각나는데 그것과 상관은 없고 배열, 세트, 해시 등 다양한 데이터 구조를 심플하고 효율적으로 만들어 놓은 구조다. 테이블..
if 문 루아의 if 문은 다음의 형식을 사용한다. if 조건 then 코드 end 루아를 메인 언어로 사용하는 경우는 많지 않을 것이라 생각해서 비교를 해보면 이종 언어간에 문법에는 사용하는 단어가 일부 차이가 난다...
while문 while 문은 조건이 유지되는 동안 반복한다. 아래 코드의 경우 a라는 테이블에서 값을 다 꺼내올 때 까지 조건이 유지되고 조건식이 a[count]가 nil 이 되었을 때 false 가 되어 반복을 탈출한다. local c..
루아의 함수 (function) 동적 타입 언어 (dynamic type) 함수에 대해 들어가기 전에 동적 타입에 대하여 생각해볼 필요가 있습니다. 현재 대표적인 동적타입 언어는 자바스크립트, 파이썬 그리고 루아 정도가 있겠..
코딩을 안정적으로 하기위해 자신의 코딩스타일에 대하여 한번은 정립하는 시간이 필요하다. 먼저 코딩 스타일은 사람에 따라 호불호에 차이가 있고 또 그룹(속해있는 커뮤티티)에 따라 차이가 있다는 점에서 시작..
어떤 언어를 배우더라도 문자열 다음에 공통으로 다뤄야 하는게 있다면 시간을 다루는 함수이다. 시간에 관해서는 보통 운영체제(OS)를 통해서 시스템 값을 얻어오도록 되어있다. 컴퓨터의 시간 체계는 조금 특이..
필자는 현재 유튜브를 하고 있지는 않지만 유튜브에 관심이 많다. IT 기술이나 정보 다양한 응용에 대한 영상을 무료로 폭넓게 보여주는 곳은 유튜브 밖에 없기 때문이다. 예전에는 상당수 돈을 내고 그 장소로 가..
루아의 랜덤 함수 math.random 루아의 랜덤 함수에 대해서 알아보겠습니다. 루아의 랜덤 함수는 소프트웨어적으로 생성한 의사 난수입니다. 무작위의 숫자를 생성하기 위해 사용합니다. temp = math.random() pri..
루아는 스크립트 언어이다. 오픈 소스이고 주로 게임에 많이 사용되는 스크립팅 언어로 알려져 있다. 이 문서는 루아의 설치부터 비주얼 스튜디오 코드에서 실행하는 것 까지의 방법을 설명한다. 루아를 다운로드..
루아 튜토리얼 시작하기 루아의 튜토리얼을 시작해보겠습니다. 스크립트 언어는 쉬운 접근성 때문에 묘한 매력이 있죠? 스크립트 언어를 배우기 위해서 비장한 각오같은 것은 하지 않아도 됩니다 그냥 타이핑을..
로블록스 스튜디오 이 문서는 로블록스의 게임을 제작할 수 있는 로블록스 스튜디오를 설치하고 간단한 스크립트를 테스트해보겠습니다. 프로그래밍의 지식이 없어도 스크립트를 쓸 수 있습니다만, 객체지향 프로..
루아의 수 (number) 루아에서 사용하는 수(number) 즉 자료형에 대하여 알아보겠습니다. 루아의 5.2 버전까지는 모든 숫자들을 배정도 (double precision) 부동소수점으로 표현했습니다. 5.3 버전 부터는 64비트..
루아의 print 함수 사용법에 대하여 알아본다. print 함수는 이름은 다르지만 어느 언어에나 표준출력으로 있는 함수로 GUI가 발달한 현대에는 print 함수를 사용해서 유저에게 메시지를 전달하는 일은 많이 없어..
루아에서 문자열은 바이트의 연속이다(sequences). 이 바이트들을 텍스트로 인코딩 하는 방식에 대하여 특정한 방식을 취하진 않는다. 유니코드도 사용할 수 있는데 가급적이면 UTF-8 인코딩을 권하고 있다. (UTF-..
연산자는 쉽게 말하면 계산을 하는 규칙이다. 한국같이 교육을 잘 받는 나라에서는 중학생만 되도 사칙연산은 할 수 있다. 프로그래밍 언어에서 연산자(operator)는 조금 다르지만 수학의 사칙연산을 할 수 있다면..
*파이썬 장고 설치하는 법 장고의 설치를 순서대로 정리한 내용이다. 파이썬은 이미 컴퓨터에 설치된 후에 진행한다. 파이썬은 아래 웹사이트에서 최신 버전을 다운로드 할 수 있다. Download Python | Python.org..
제어문은 프로그램의 흐름을 조절하는 기능을 한다. 학창시절 flow chart 를 배울 때 나오는 조건 분기문이다. 제어문이라고 너무 어렵게 생각할 필요는 없다. 아래 그림처럼 단순한 원리로 작동한다. '되냐? 안..
티스토리 스킨 만들기 로그 두번째 에피소드 네이버 블로그와 티스토리의 다른 점이 설치형 유무에 따른 차이가 있다. 장단점이 있는데 어느 한 쪽이 더 좋은 것은 아니고 운영자의 취향이나 상황에 따라 차이가..
지난 포스팅에 캔버스에 도형을 그리는 것을 했다. 이것만 가지고는 게임이나 애니메이션을 표현하기에 부족하다. HTML5를 사용해서 멀티미디어 웹을 구현하려면 이미지와 오디오를 사용할 수 있어야 한다. HTML5..
이 문서에서는 그리드 레이아웃을 사용한 반응형 레이아웃의 예시를 들어본다. 다른 레이아웃들보다 한참 늦게 웹의 세계에 등장한 그리드 레이아웃은 반응형 레이아웃의 속성을 가지고 있다. flex 레이아웃과 비..
스킨 제작은 티스토리를 운영하는 블로거라면 한번 쯤 관심을 가져볼 소재이다. 필자는 프론트엔드에 대해 잘 모르지만 티스토리를 운영하다 보니 자연스럽게 관심을 가지게 되었다. 그래서 거창한 프로젝트는 아..
서론 프로그래밍 튜토리얼을 진행하면서 변수, 자료형, 연산자는 각각 따로 챕터를 나누어서 다루는게 일반적인데 각각의 챕터를 빠르게 속독하는 것도 도움이 된다. 속독하면 서로간 관계에 대하여 알기 쉽다. 변..
자료형에 대한 내용은 학습하기에는 지루한 파트다. 하지만 컴퓨터 프로그램에서 자료형의 중요성이 크기 때문에 소홀히 할 수 없는 부분이다. 컴퓨터를 진정 쓸모있게 하는 것은 결국 자료들이다. 자료들이 모여..
Canvas는 HTML5에서 새로 등장한 가장 획기적인 요소 중 하나다. 그림을 그릴 수 있고 애니메이션과 스프라이트도 표현할 수 있다. 이 기능이 생기기 전 까지 flash player 나 다른 써드파티 플러그인에 의존해야..
문자열에는 이스케이프 문자라는게 있다. Escape Codes 혹은 Escape Sequence 라는 한글로 번역하면 탈출 문자, 탈출 시퀀스라고 한다. Escape Squence 가 처음 도입된 것은 C와 C++ 언어였고 파이썬도 영향을 받..
텍스트 출력하기 HTML5로 canvas에 텍스트를 출력한다. 먼저 HTML5 코드를 body 안에 넣는다. canvas 의 위치는 항상 상단에 있는게 아니라 body 안의 box 상황에 따라 정해진다. Your browser does not support H..
클래스, 객체, 인스턴스의 차이에 대하여 여러번 들어도 헷갈리는 경우가 많다. 이 세개의 차이를 C++의 예제로 알아보자. 1. 클래스 상식적으로 접근하자. 클래스라는 말은 일상의 용어이기도 하다. class room..
파이게임제로 (Pygame Zero)는 Pygame의 교육용 버전이다. Pygame의 문법이 어렵지는 않지만 아이들에게는 부담스러울 수 있다. 문법을 좀 더 쉽게 지원하여 학교의 선생님들이 쉽게 아이들을 지도할 수 있도록 만..
웹의 번영과 함께 자바스크립트의 인기는 나날이 더해가고 있다. 자바스크립트가 나왔던 초창기에는 자바의 유사 언어로 오해를 사기도 했다. 선 마이크로 시스템즈에서 만든 객체지향언어가 자바이고 자바스크립..
DOM 객체 모델의 최상의 객체는 Window이다. 하나의 뿌리에서 뻗어나가는 이 모형을 DOM TREE 라고 하는데 객체지향의 부모와 자식의 개념이 적용된다. 부모에서 자식에게 접근하기 위해서는 . 도트 연산자를 사..
자바에는 정수형 부터 실수형까지 다양한 기본 자료형이 있다. int salary; long population; double angle; 위와 같이 변수를 사용하기 위해서는 자료형을 지정해야 한다. 자바는 자료형에 엄격하기 때문에 조금..
웹부라우저에서 제대로된 애니메이션을 지원하게 된 것은 최근의 일이다. HTML5이전에 웹브라우저에서 애니메이션을 사용하기 위해서는 Flash 가 필요했다. 윈도우를 설치하고 웹브라우저에 들어갈 때 마다 지겹게..
컴퓨터 프로그램이라는 단어가 있고 프로세스라는 단어가 있다. 컴퓨터를 좀 다뤄봤다면 어디서 들어본 말 같은데 정확하게 뭔지 모르겠다. 다른 전문 분야도 마찬가지지만 컴퓨터에는 용어가 많다. 기술적인 용어..
추상화와 가상화는 무엇인가? 컴퓨터 공학을 제대로 이해하기 위해서 알아야 할 가장 핵심적인 용어다. 추상성을 클래스화 해버리는 객체지향 프로그래밍은 물론 현대 소프트웨어의 큰 방향성을 이해할 수 있는 키..
파이썬 Kivy 프레임워크로 만드는 Pong Game 이다. Kivy Documentation 2.0.0rc4 의 Tutorial 을 참고해서 작성한다. Documentation 에 따르면 오픈소스 프로젝트인 Kivy Project 의 철학은 다음과 같다. - Fresh,..
버튼 위젯은 하나씩 활용해도 좋지만 여러개 묶어서 사용한다면 유용할 것이다. 라디오 버튼도 묶어서 사용하는 것인데 그것과 비교가 되니까 이 버튼은 QPushButton 이라 해놨다. 말 그대로 누르는 Push 버튼이다..
파이썬 키비(Kivy)는 파이썬의 크로스 플랫폼 GUI 프레임워크다. 파이썬의 GUI 중에서도 터치패드를 지원하여 모바일 앱을 만들 수 있다는 것과 kv 언어(자체 HTML 같은 것)를 사용한다는 것이 특징적이다. PC에서..
이번 포스팅은 파이썬 Kivy 로 타이머를 만들어 본다. GUI 환경에서 타이머를 만들어 보는 경험은 큰 도움이 된다. 이벤트 루프(Event Driven Loop)의 작동원리에 대해서 배울 수 있기 때문이다. 대부분의 GUI 프..
현대 웹페이지의 레이아웃은 상당히 중요하다. 웹의 기획자들은 2000년대 후반에 스마트폰의 보급이 시작되면서 반응형웹 같은 새로운 UX/UI 개념을 적용해야 했고 하나의 컨텐츠를 다양한 장치와 미디어에 최적화..
QCheckBox 는 체크박스 위젯이다. 체크박스와 비슷하게 생긴 라디오버튼과 차이점만 알면 쉽게 이해할 수 있다. 체크박스는 체크하는 칸이 네모칸이고 라디오버튼은 체크하는 칸이 동그란 버튼이다. 체크박스는 다..
파이큐티의 라인에디트(Line Edit)는 사용자의 입력을 받는 텍스트필드와 같은 것이다. 사용자 아이디나 패스워드를 입력받을 때 사용하는 입력창이다. 파이큐티는 위젯 클래스가 많기로 유명한데 위젯들의 가지..
노드 JS를 설치한 후 다음에 해야할 일은 서버를 작동시켜보는 일이다. 이 포스팅에서는 노드 JS의 첫번째 프로그램을 만들어 본다. 노드JS 설치는 어렵지 않다. 아래 포스팅을 참고한다. NODE.JS(노드JS) 설치 및..
컴파일러 프로그래밍을 배우기 시작하면서 첫부분에 배우는 주제 중에 가장 이해하기 힘든 것은 무엇일까? 전세계에 55만 부 이상 판매한 C 기초플러스(Stephan Prata)의 서장에서는 C언어의 특징과 컴퓨터에 구조..
뷰의 튜토리얼 2번이다. 데이터 바인딩은 간단한 개념인데 Vue 의 인스턴스를 HTML 에서 바로 적용하는 기술이다. 아래는 Vue 객체이다. 인스턴스를 받을 참조 변수를 명시하면 변수를 가지고 브라우저에서 사용할..
NODE.JS (노드JS)는 Chrome V8 JavaScript 엔진으로 빌드된 오픈소스이며 크로스 플랫폼 자바스크립트 런타임 환경입니다. 노드JS를 사용하면 웹브라우저 밖에서 자바스크립트를 사용할 수 있어서 서버 기능을 구..
QGridLayout 을 알아보자. GridLayout 이란? 꼭 파이큐티가 아니더라도 GUI 프로그램을 만들다 보면 항상 마주치는 것이 GRID(그리드) 라는 녀석이다. 코드를 시작하기 전에 이 문서에서 한번쯤 짚고 넘어가려고..
QPushButton - 버튼 이벤트 처리 파이큐티5의 버튼 이벤트 처리에 대하여 알아본다. 간단한 버튼을 만들기 위해 레이아웃은 QVBoxLayout 을 사용한다. QPushButton 클래스로 버튼을 생성한다. 레이블이나 버튼이나..
파이큐티5 (PyQt5)는 파이썬의 GUI 프레임워크이다. PyQt5는 크로스 플랫폼 GUI 인 QT(큐트)를 파이썬에서 사용할 수 있게끔 바인딩 한 것이다. 바인딩이란 말이 좀 어렵다. QT는 C++로 만들어졌는데 다른 언어에..
파이큐티의 윈도우창을 생성할 수 있게 되었다면 그 다음은 위젯을 사용해 볼 차례다. 가장 보편적인 위젯은 역시 레이블과 버튼이다. 우리는 일상생활에서 GUI를 너무 많이 쓰기때문에 이미 익숙해져 버렸다. 그..
뷰의 설치는 아래 포스팅을 참고한다. 이번 포스팅 부터는 뷰JS 튜토리얼을 기록한다. 뷰 JS CDN 으로 쉽게 시작하기 | 프론트엔드 프레임워크 시작하기 (tistory.com) 뷰 JS CDN 으로 쉽게 시작하기 | 프론트엔드..
C++ 은 객체지향 프로그램으로 클래스를 사용해서 프로그래밍을 한다. 객체지향프로그래밍의 대표인 자바와 닮은 점도 있고 다른 점도 있다. 자바와 C++ 어떤 것을 먼저 접했느냐에 따라서 C++의 클래스를 대하는..
자바FX 의 Scene Builder 를 설치한다. 이전에는 Oracle 에서 받을 수 있었는데 JavaFX가 기본 패키지에서 빠진 이후 변경되었다. 아래 Gluon 웹사이트에서 Scene Builder를 다운로드 받을 수 있다. 이 포스팅은 W..
이 문서는 웹개발을 위한 텍스트 에디터 아톰을 설치합니다. 설치 후 웹페이지를 개발하기 위한 기본 확장 프로그램(플러그인 패키지) 3개를 설치하고 테스트를 해보겠습니다. 설치 환경은 윈도우10입니다. 아톰은..
뷰 JS (Vue.js)는 웹 애플리케이션의 사용자 인터페이스를 만들기 위한 프론트엔드 프레임워크 입니다. 웹을 단순하게 정리해서 만들 수 있게 개발된 자바스크립트 프레임워크입니다. 이 문서에서 뷰 JS 를 시작하..
* 이글은 웹페이지 기초 레이아웃에 대한 포스팅을 작성하다 잡설이 길어져서 분리한 글이다. 처음에 HTML을 배울 때는 같은 간단한 태그부터 시작한다. 처음으로 몇 개의 태그를 달아놓으니 인터넷에 글자가 써지..
HTML 코드을 작성하려면 문서의 기본 구조부터 작성해야 한다. ... 이렇게 시작되는 내용이다. 템플릿 파일을 복사해서 사용하는 방법도 있지만 비주얼 스튜디오에서 기본적으로 제공하는 자동완성 기능과 HTML Sn..
보통 HTML을 처음 시작하면 h1, 와 같은 태그들을 배운다. 어쩔 수 없지만 '기초' 를 쌓는 것은 지루한 일이다. HTML 을 배우고자 마음을 먹고 달려들어도 코드 다음에 나오는 코드를 머리속에 넣다 보면 지치기..
이전까지의 JavaFX 튜토리얼로 코드를 사용해서 JavaFX를 다룰 수 있었다. JavaFX의 GUI 클래스에 CSS도 사용해봤다. 마지막으로 알아야 할 부분은 Java FXML 이다. FXML은 자바에서 사용할 수 있는 HTML 이다. 요..
함수를 이야기 할 때 용어들의 혼란이 있다. 인수 (Arguments) 와 매개변수 (Parameters) 가 그들 중 하나인데 왜 그런지 알고 싶다는 생각이 들었다. 간단히 말하면 인수는 전달하는 변수고 매개변수는 전달받은..
웹사이트와 블로그를 돋보이게 하는 것은 디자인이다. 폰트는 항상 웹에서 빼놓을 수 없는 중요한 요소다. 폰트의 역사를 잠깐 알아보면 가장 오래된 폰트 중의 하나는 굴림체이다. 인터넷 초창기 시절부터 MS 윈..
자바는 자바 가상머신이라는 시스템에서 돌아간다는 것은 자바를 시작할 때 배우는 것이다. C언어나 파이썬을 배울 때도 그렇지만 프로그래밍 언어는 항상 첫부분에 가르치는 내용이 가장 어려운 주제 중에 하나..
자바FX GUI 프로그램에 CSS 파일을 적용하는 방법이다. CSS 파일을 처음 듣는 사람은 아래의 내용을 참고한다. 이 포스팅은 CSS의 선택자를 JavaFX에 적용할 것이다. CSS HTML 태그선택자, 전체전택자,아이디선택..
파이썬의 모듈 opencv를 사용하여 이미지와 동영상을 출력해본다. opencv를 사용하면 이미지를 다루는 일이 얼마나 쉬워지는지를 단적으로 보여준다. 다른 모듈에 비해서는 설치가 조금 어려우니까 아래의 포스팅..
프라퍼티는 속성을 말한다. 자바FX에서 프라퍼티 클래스를 사용하면 한 클래스의 값이 바뀌었을 때 이와 바인딩 되어 있는 다른 하나의 클래스 값도 바꿀 수 있다. 이렇게 말하니 어려운데 바인딩은 우리 일상생활..
JavaFX 의 객체를 사용해서 메뉴를 쉽게 만들 수 있다. 아래는 윈도우10에서 실행한 모습이다. 일단 아무 디자인적 요소를 추가하지 않아도 기본 창이 깨끗해서 마음에 든다. 여기에 CSS적 요소를 더하면 더 좋은..