Programming/기초

1. os가 프로그램에게 메모리를 할당한다. 2. 컴퓨터가 실행할 코드를, 메모리의 코드영역에 저장한다. ( C언어를 기준으로 설명 ) 변수 선언 - 메모리를 할당하는 것 전역변수 - 프로그램 전체 내에서 사용할 수 있는 변수 지역변수 - 프로그램 블록{} 내에서 사용할 수 있는 변수 블록외부에 선언된 변수는, 데이터 영역에 저장되며, 프로그램 종료시에 지워진다. 블록안에 선언된 변수는, 스택영역에 저장되며, 블록 내부에서만 사용할 수 있다. 이때, 블록 내부에서 선언된 변수를 지역변수라고 부른다. 지역변수는 함수가 종료되면(리턴), 메모리의 스택영역에서 지워진다. ( 스택이 함수 호출전으로 돌아감 ) static 변수는 데이터 영역에 저장므로, 지역변수로 선언 되더라도 없어지지 않는다. 사용자가 직접 ..
[ 웹, 앱 개발에서 보안 ] 사용자는, 개발자가 만든 함수외에 그 어떤 함수도 실행할 수 없도록 해야한다. 정상적인 통신과정 사용자 요청 -> 서버 함수 실행 -> 함수 결과 전달 비정상적인 통신과정 사용자가 함수 만들어 전달 -> 서버에서 사용자 함수 실행 -> 함수 결과 전달 사용자가 직접 함수를 만들어 서버에 제공할 수 있으면 사용자 마음대로 서버의 데이터를 다룰 수 있어, 매우 위험하다. 그러므로 개발자는, 사용자가 서버에 함수를 전달 할 수 없도록 개발해야한다.
👉 오버로딩 객체의 메소드를 중복정의하는 것 ( 여러개 만들기 ) ( 이름은 같지만, 인자는 다른 메소드 만듬 ) // 이름은 같지만, 인자의 유형과 개수가 다른 메서드를 만들 수 있다. class Post { def test(one, two) { ... } def test(A, B, C) { ... } } 오버로딩의 장점 매개 변수의 생김새에 따라서, 다른 메서드가 호출되게 만들 수 있다. ( 유동적인 메서드 호출 ) - 그냥 다른이름의 메서드를 사용하는 것이 낫지 않나? 👉 오버라이딩 객체의 메소드를 재정의하는 것 ( 새로 덮어쓰기 ) ( 부모객체의 메소드를 무시하고, 새로운 메소드 만들기 ) // Post 객체 class Post { def test() { ... } } // Post 객체의 자식인..
WebSocket이란? HTTP와 같은 데이터 송수신 규칙(프로토콜) WebSocket의 특징 첫 요청과 응답 이후로는, server가 user에게 데이터를 보낼 수 있다. ( HTTP는 사용자의 요청없이, 데이터를 받아올 수 없다. ) WSS ( Secure Web Socket ) WebSocket 작동방식 브라우저가 서버로 웹소켓 요청을 보냄 서버가 웹소켓 요청을 승낙 or 거절하여 응답 요청과 응답이 한번 성립되면, 연결이 성립(establish) 된다. ( 유저정보 기억 ) 브라우저의 요청없이, 서버가 브라우저로 데이터를 보낼 수 있다.
👉 객체란? (Object) 프로그램을 구성하는 코드를 역할과 의미에 맞게 분리하여, 그에 맞는 여러가지 형태의 변수와 ( variable ) 그 변수들을 다룰 함수( function )를 한 군데 묶어서 저장해 놓은 묶음 이때 객체에 담은 변수를 "멤버변수"( property ) 라고 부르고, 객체에 담은 함수를 "메서드"( method ) 라고 부른다. 👉 클래스란? 같은 의미를 가진 객체를, 여러개 만들기 위한 설계도 클래스 만들기 // 동물 객체 틀(클래스) 만들기 class Animal { // 생성자 - 새로운 객체를 만들때, 그 객체의 상태를 설정하는 함수 // 클래스 실행시, 인자를 받고 처음 1번 실행된다. constructor(name, live) { console.log("constr..
Native란? 운영체제를 만들때 사용한 프로그래밍 언어로 만든 프로그램 Window native - C언어로 만든 모든 프로그램 Android native - Java로 만든 모든 프로그램 IOS native - 오브젝티브-C로 만든 모든 프로그램
call by value ( 값 ) 스택에 쌓아놓고, 직접 값을 꺼내서 사용함 call by reference ( 포인터 ) 포인터에서 주소값을 꺼내서 값을 찾아감
코딩, 프로그래밍 이란? 컴퓨터 cpu 에게 일을 시키는 것 cpu에게 시킬 수 있는 일 메모리에 데이터를 쓴다 (write) 메모리의 데이터를 읽는다 (read) 메모리에 데이터를 읽고 쓰려면, 필요한 정보 메모리 주소 해야할 작업 (read, write) 쓸 데이터 프로그램이란? cpu에 시킬 작업을 모아둔것 cpu에게 시킬일을 사람이 알아볼 수 있는 언어로 정리해놓은 것 ( 클락 - cpu, 메모리 간의 싱크 맞추기 위한 용도 ) 컴파일러란? 사람의 언어를, cpu의 언어(기계어)의 명령에 대응시킨 약속. 컴파일이란? 사람의 언어를, cpu의 언어(기계어)로 변환하는 작업 아스키코드란? 사람의 언어(영어)를 8비트의 기계어에 대응시켜 만든 규칙 - 7비트만 사용 C언어 시작하기 #include //..
정적 페이지 순수 HTML로 이루어진 페이지 동적 페이지 javascript를 이용하여 만들어진 페이지
MOONCO
'Programming/기초' 카테고리의 글 목록 (4 Page)