본문 바로가기

분류 전체보기

(72)
CheerLeader https://github.com/ThreeFive85/FirstProject-cheerleader ThreeFive85/FirstProject-cheerleader Contribute to ThreeFive85/FirstProject-cheerleader development by creating an account on GitHub. github.com
S3, EC2, RDS 자신이 만든 웹 서비스는 배포가 되지 않는다면, 더 이상 의미를 가질 수가 없다. 따라서 웹 개발자는 배포에 대한 기본 지식을 탑재하고 있고 간단한 배포 정도는 혼자 할 수 있어야 한다. 웹 서비스의 배포는 AWS이전과 이후로 나누어진다. AWS가 없었다면 아직도 직접 서버를 구축하고 관리를 했을지도 모른다. AWS에서는 웹 서비스의 제작 및 구현, 뿐만 아니라 배포를 통한 고객에게 직접 서비스를 제공한다. AWS 서비스는 프리티어로 이용하면 대부분 무료로 사용할 수 있다. 다만, AWS에서 요구하는 조건을 충족하지 않으면 소액 과금이 될 수 있으므로 단순 개발 공부하는 자에게는 주의를 요한다. S3 Simple Storage Service의 약자로 파일 서버의 역할을 하는 서비스이다. 일반적인 파일서버..
C++이란 C++ 언어의 개요 C++는 AT&T 벨 연구소의 비야네 스트롭스트룹이 C언어를 확장하여 만든 객체지향 프로그래밍 언어이다. 따라서 C 언어가 가지고 있는 모든 기능이 C++ 안에 포함되어 있으며, 이와 더불어 몇가지 새로운 내용이 C++에 추가되었다. C 언어는 절차적 프로그래밍 언어이지만, C++는 객체지향 프로그래밍을 지원하기 위한 부분이 포함된 것이다. C++는 C언어를 기반으로 개발된 언어이므로 몇 가지 예외를 제외하고는 C의 문법을 그대로 따른다. 그러므로 C 언어처럼 범용 프로그래밍 언어로서 다양한 응용프로그램을 개발하는 데 활용될 수 있고, 시스템 프로그래밍을 위한 언어로도 활용할 수 있다. 프로그래밍 방식 측면에서도 C++를 이용하여 C언어와 같이 절차적 프로그래밍 방식으로 프로그램을 만..
Callback 콜백을 이해하기 위해선 우선 비동기 처리라는 단어의 뜻을 알 필요가 있다. 자바스크립트에서의 비동기 처리는 코드 진행을 순차적으로 하는 것이 아니라 특정 코드는 코드 진행 순서를 지나가도 종료되지 않고 대기하고 있다가 다른 코드들의 실행이 끝난 뒤 처리가 이루어진다. 비동기 처리가 필요한 이유는 만약 내 블로그에서 글을 작성하면 만 명의 구독자들에게 이메일을 보내고 글 작성을 완료한다는 순서를 가정했을 때 1명당 1초의 시간을 들여 이메일을 보낸다고 하면 약 3시간이 걸린다. 그러면 글을 작성하고 3시간을 기다렸다가 글 작성이 완료되는 셈이다. 이것은 너무 비효율적이다. 자바스크립트에서 함수는 Object이다. 이 때문에 함수는 다른 함수의 인자로도 쓰일 수도 있고 어떤 함수에 리턴이 될 수도 있다. 인..
super class calCul{ constructor(name,first,second){ this.name = name; this.first = first; this.second = second; } sum(){ return `${this.name} : ` + (this.first + this.second); } } let park = new calCul('park',10,20); console.log(park.sum()); 위 코드 내용을 살리고 추가적으로 더 함수 인자를 받거나 메소드를 만들고 싶다면 extends 로 calCul을 상속받아 새로운 class를 작성할 수 있다. class calCul{ constructor(name,first,second){ this.name = name; this.firs..
class class는 객체를 찍어 내는 공장이라고 생각하면 된다. 원래 javascript에서는 class를 지원하지 않았다. 대신에 constructor를 통해 객체를 찍어 내고 있다가 class라는 문법을 도입하였다. 클래스 표현 방법 function calCul(name,first,second){ this.name = name; this.first = first; this.second = second; }; calCul.prototype.sum = function(){ return `${this.name} : ` + (this.first + this.second); }; let park = new calCul('park',10,20); 위 코드를 class 로 다시 정리해 보면 class calCul{ co..
prototype javascript에서 거의 모든 객체는 Object의 인스턴스이다. 일반적인 객체는 Object.prototype 에서 속성과 메소드를 상속받는다. function Food (){} Food.prototype.foodDrop = true; function Fruit (){} Fruit.prototype = new Food(); function Apple (){} Apple.prototype = new Fruit(); var a = new Apple(); console.log(a.foodDrop); 위 코드의 내용을 보면 Food, Fruit, Apple 이라는 3개의 생성자가 정의 되어 있다. 그리고 a 에 Apple이라는 객체를 만들었을 때 a의 foodDrop이라는 프로퍼티에 접근했을때 true라는..
객체지향 프로그래밍 언어(object-oriented programming language) OOP란 객체(object) 개념(클래스(class) 개념)을 정의하고, 객체에 대한 연산(메서드)과 성질(멤버 변수)을 정의하여 프로그램을 작성 하는 언어이다. 구조적인 프로그래밍 언어와 달리 객체 중심의 사고의 틀을 제공한다. OOP의 역사 최초로 클래스 개념을 갖춘 시뮬라 67(Simula 67)은 1960년대 말에 등장했지만 C++, 스몰 톡-80(Smalltalk 80) 등 영향력 있는 객체지향 언어들은 1980년대에 등장해서 현재까지 활발하게 사용되고 있다. 1990년대 중반에 등장한 자바(JAVA)도 현재 가장 대표적인 객체지향 프로그래밍 언어이다. 스크립트 언어인 자바스크립트(Javascript) 또한 객체지향 프로그래밍이 가능하다. OOP를 위한 추상 자료형 프로그래밍 언어에서 추상화라는..