목록분류 전체보기 (139)
럿고의 개발 노트
[프로그래머스] 자바 입문 Part4. 배열 1. 배열만들기 1차원 배열 배열은 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료 구조. 같은 데이터 타입을 가진 여러개의 변수가 필요할때 사용 선언방법 데이터타입[] 배열명 = new 데이터타입[배열길이]; // 선언 데이터타입[] 배열명 = { 데이터값 }; // 선언 및 초기화 public class ArrayExam { public static void main(String[] args) { int[] array1 = new int[100]; // 타입[] 배열명 = new(객체생성) 타입[길이] array1[0] = 50; // 값 넣는 법, index는 0번부터 시작 array1[10] = 100; int[] array2 = new ..
[프로그래머스] 자바 입문 Part3. 제어문 1. if문 if 조건문 조건식의 연산 결과에 따라 블록 내부 문장 실행 여부 결정 결과가 true일 경우에만 실행문이 실행 if문의 { }(블럭)을 생략 가능. 단, 실행문은 단 한줄만 포함 if(조건식) { 실행문; 실행문; } if-else 문 조건식이 true일 경우 if블록 실행문이 실행되고, false일 경우 else블록의 실행문이 실행 if(조건문) { 실행문; 실행문; } else { 실행문; } if / else if / else 문 처음 if문 조건식의 조건문이 true일 경우 처음 if문 블록이 실행되고, false일 경우 다음 조건식의 결과에 따라 실행 else if문의 수는 제한이 없지만, 많은 else if문은 실행 속도를 느리게 함..
JSON 개요 JSON 개요 JSON(JavaScript Object Notation) 경량의 DATA-교환 형식 사람과 기계가 사용하고 분석하기에 용의함 토대를 두고 있는 것 JavaScript Programming Language Standard ECMA-262 3rd Edition - December 1999 JSON은 언어로부터 독립적이지만, 프로그래머들에게는 친숙한 관습을 사용하는 텍스트 형식 구조 name / value 형태의 쌍으로 collection 타입. 당양한 언어들에서, 이는 object, record, struct, dictionary, hash, table, 키가 있는 list, 연산배열로서 구현 값들의 순서화된 리스트 대부분의 언어들에서 array, vector, list, se..
[프로그래머스] 자바 입문 Part2. 변수와 계산 1. 변수 변수 자바는 강형 언어로써 모든 변수의 타입이 컴파일 시에 결정됨. 변수란, 값을 저장할 수 있는 메모리 공간 / 값이 변할 수 있는 수 변수의 선언 타입 변수명; 명명 규칙 변수의 이름을 정할 때 자바 언어에서 정해 놓은 규칙 Java Code Conventions Naming Java Code Conventions 식별자(identifier)는 클래스, 메소드, 변수 등 다양한 대상에 대해 이름이 붙여지는 경우 그 이름을 뜻함 식별자 명명 규칙 하나 이상의 글자로 이루어져야 함 첫 번째 글자는 문자이거나 '$', '_'이어야 함 두번째 이후의 글자는 숫자, 문자, '$', '_'이어야 함 '$', '_'외 특수문자 사용 불가능 길이 제한 ..
[프로그래머스] 자바 입문 Part1. 자바 시작하기 1. 자바란? 자바 언어 탄생 1995년 5월 썬 마이크로시스템즈에서 발표한 객체 지향 언어 (1996년 1월, JDK 1.0 발표 현재 썬 마이크로시스템즈는 오라클에 인수되어, 자바는 오라클 소유 객체지향언어(Object-Oriented Language) 1960년대 말 Simula언어에서 발전 시뮬라 위키백과 C++문법을 기본으로 개발 C언어에 객체지향 특성 확장 C와 C++에서 포인터, 다중상속 부분 제거 자바 언어 특징 C계열 언어에 비해 배우기 쉬움 플랫폼에 독립적 JVM(자바 프로그램 실행 도구)가 가능하게 해줌 JVM은 OS에 종속적 객체지향 프로그래밍 대표적인 장점 직관성, 재활용성이 강함 Garbage Collector C계열 언어는 ..
운영체제 - Thread(쓰레드) Thread의 개념 프로세스의 처리속도를 높이기 위해 프로세스가 수행해야 할 여러 작업들을 나누어서 수행할 수 있도록 설계된 것 프로세스는 자신만의 영역을 가지고 있지만, 쓰레드는 자신만의 영역이 존재하지는 않음 모든 쓰레드는 프로세스의 상태를 공유 즉, 쓰레드간 별도 통신이 필요하지 않음 Light Weight Process 각 프로세스간에 데이터 접근이 불가 접근하기 위해서는 IPC가 필요 IPC(Inter-Process Communication) : 프로세스 간 통신 주요 방식은 파일, 신호, 소켓, 메시지 큐, 파이프, 지명 파이프, 세마포어, 공유 메모리 등등이 있음 https://ko.wikipedia.org/wiki/%ED%94%84%EB%A1%9C%EC%8..
● 자바스크립트 엔진- 대표적 엔진의 예는 Google V8로 Chrome, Node.js에서 사용- Memory Heap : 메모리 할당이 일어나는 곳 - Call Stack : 코드 실행에 따라 호출 스택이 쌓이는 곳 ● 런타임- 자바스크립트 개발자는 브라우저 내장 API를 사용, 하지만 이 API는 자바스크립트 엔진에서 제공하지 않음- WEB APIs은 브라우저에서 제공 ● 호출 스택(Call Stack)- 싱글 쓰레드 기반 언어로 호출 스택은 하나, 즉 한 번에 한 작업만 처리 가능- 호출 스택은 기본적으로 우리가 프로그램 상에서 어디에 있는지를 기록하는 자료구조- 예를 들어 함수를 실행하면 해당 함수는 호출 스택 가장 상단에 위치- 함수 실행이 끝나면(리턴 값을 돌려준다면) 해당 함수는 호출 스..
● Semantic HTML = 의미론적 HTML- 문서 의미에 맞게, 앱의 의미에 맞게 HTML을 작성하는 것이 중요- 예제)■ 안녕하세요. 럿고입니다.■ 안녕하세요. 럿고입니다.- 예제 2개 중 저 의미를 잘 전달하는 것이 무엇일까요? 한번 고민해보세요.- 기계에는 명확한 의미를 부여해줘야 한다는 점을 꼭 숙지하고 코딩을 하는 것이 중요(스마트 리더, 크롤러 등)- HTML코드를 작성할때 정답이 존재하지 않기때문에 가장 최선이라고 생각하면서 코드를 작성해야 함- semantic하게 짜는 것도 중요하지만, 디자인 시안처럼 똑같이 구현하는 것도 무척 중요- HTML와 CSS와 JavaScript가 조화롭게 이루어져야 한다는 점을 생각하고 코딩할 것! ● - 해당 페이지의 main 콘텐츠- 한페이지에 한번..
[프로그래머스] 자바 중급 Part1. Object 클래스 1. Object와 오버라이딩 Object 클래스는 모든 클래스의 최상위 클래스 아무것도 상속받지 않는다면 자동으로 Object 클래스를 상속 받음 Object가 가지고 있는 메소드는 모든 클래스에서 사용이 가능하다는 의미를 뜻함. public class Student { /* object 클래스 : 모든 클래스의 최상의 클래스 * 아무것도 상속받지 않으면 자동으로 Object를 상속 * Object가 가지고 있는 메소드는 모든 클래스에서 다 사용 가능 * * 아래의 3개는 모두 오버라이딩을 해서 사용해야 함 * equals : 객체가 가진 값을 비교할 때 사용 * 같은지를 기능을 제공하지만 기준은 오버라이딩으로 해줘야함. * toString :..