전체 글 9

PHP: Hypertext Preprocessor(서버 사이드 스크립트 언어)

PHP는 서버 사이드 스크립트 언어로, 주로 웹 개발에 사용된다.동적 웹 페이지 생성, 데이터베이스 상호 작용, HTML 코드 내에 삽입 가능 등의 특징을 가지며, 다양한 웹 사이트와 애플리케이션 개발에 널리 사용되고 있다고 한다.PHP는 원래 "Personal Home Page"의 약자였다. 그러나 시간이 지나면서 PHP의 기능이 확장되고 그 사용 범위가 넓어지자, 현재는 재귀적 약자인 "PHP: Hypertext Preprocessor"로 정의된다. PHP: PHP 자신을 가리킨다.Hypertext: 웹 페이지를 만드는 데 사용하는 HTML(하이퍼텍스트 마크업 언어)을 의미한다.Preprocessor: HTML 코드를 생성하기 전에 PHP 코드를 처리하고 실행하는 것을 의미한다. 유튜브 Dani Kr..

Vue.js

JavaScript를 기반으로 한 프레임워크로서, 웹 개발에서 중요한 역할을 한다. ## 개발환경 초기세팅(터미널)npm install -g @vue/cliExtensions 가서 vetur , html css support , vue 3 snippets 설치하기설치 중 에러 발생한다면, 에러 참고 폴더 즐겨찾기 참고 /  —global yarn 입력하기만들어 놓은 폴더 열고, 다시 터미널에 vue create 프로젝트명(예: vuedongsan) 입력해서 하위폴더 생성해 준다. >> (중간선택) vue으로 선택해서 만들어주기  App.vue 가 메인임! >> index.html 으로 컴파일해서 만들기!Template 안에는 HTML, Script 안에는 JS, Style에는 CSS 만들어 준다. ## ..

깊은 복사(Deep Copy) , 얕은 복사 (Shallow Copy)

배열의  깊은 복사(Deep Copy) , 얕은 복사 (Shallow Copy) 자바에서는 객체를 복사할 때, 2가지 방법을 사용한다.깊은 복사(Deep Copy)와 얕은 복사 (Shallow Copy)가 있는데 객체가 참조하는 다른 객체들을 어떻게 다루는지에 따라서 달라진다.   1. 깊은 복사(Deep Copy) :깊은 복사는 원본과 복사본 둘 중 한가지의 값을 변경해도 다른 하나에 영행을 주지 않는다. 따라서 복사 대상 객체의 내부에 있는 객체들까지 모두 복사하면서 새로운 객체를 생성하므로복사된 객체와 원본 객체는 완전한 독립적인 객체라고 생각하면 된다. 예]import java.util.Objects;class Person { String name; Address address; // ..

배열(Array)

[사진 출처: Unsplash의Faris Mohammed ] 배열이란?배열은, 유형의 데이터를 순차적으로 저장하는 자료 구조이다. 배열을 선언하고, 생성 및 초기화할 수 있다.생성할 때 크기를 저장하는데 그 크기를 변경할 수 없고, 고정되어 있는 특징 때문에 미리 메모리를 할당하고 사용할 수 있는 특징이 있다.그리고 고정된 크기를 가지고 [인덱스]를 통해 접근할 수가 있다. - 배열 선언 :int[] numbers; // 정수형 배열을 선언String[] names; // 문자열 배열을 선언double[] scores; // 실수형 배열을 선언- 배열 생성 :numbers = new int[5]; // 크기가 5인 정수형 배열을 생성names = new String[3]; // 크기가 3인 문자열 배열을..

패키지(Package), 임포트(import)

1. 패키지(Package) 패키지(=폴더)는 보통 컴퓨터에서 사용하고 있는 폴더의 개념과 유사하다. 코드의 구조화와 관리를 위해 사용되는 방법이다. 관련된 클래스(=파일)들을 그룹화해서 구분하고, 이름 충돌을 방지하고 코드의 유지보수성을 높이는데 도움이 된다. ** 패키지 만들 때 규칙 (3가지)패키지 이름 규칙:패키지 이름은 소문자로 작성한다.패키지 이름은 보통 도메인 이름을 역순으로 나열하여 사용한다.예를 들어, com.example.myproject와 같이 사용한다.패키지 이름은 유니크해야 하며, 중복되지 않도록 선택해야 한다.패키지 이름에는 공백이나 특수 문자를 포함할 수 없다.오직 영어 알파벳, 숫자, 밑줄(_), 점(.)만 포함될 수 있다.디렉터리 구조 규칙:패키지 이름에 따라 디렉터리 구조..

메소드(Method)

1. 메소드(Method)  자바에서 클래스는 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가진다.메소드는 특정 작업을 수행하는 코드 블록으로 전체의 문장을 하나로 묶어서 실행할 수 있게 하는 명령문의 집합이다.보통 프래그래밍 언어는 위에서 아래로 읽히는데, 메서드를 중간에 삽입하면 호출이 가능하다.(메소드를 호출한 곳으로 돌아옴)호출 시, 어떠한 값을 미리 주고(전달인자: Arguments) → 그 값을 받는 변수(매개변수: Parameters)로 활용해서 메소드 수행이 가능하다.  메소드를 사용하는 목적은 코드를 재사용할 수 있고, 모듈화(코드를 논리적인 단위로 나눌 수 있다) 할 수 있다는 점에서 코드의 가독성을 향상하고, 유지보수에 용이하다. 그..

연산자(Operator) 종류와 연산자의 우선순위

1. 연산자자바에서는 다양한 연산자가 사용이 되는데 우선순위에 따라 계산이 된다. 우선순위가 높은 것부터 낮은 것 순으로 나열이 된다.  연산자 우선순위는 하기와 같다. >괄호 () (가장 높은 우선순위)증감 연산자 ++, --산술 연산자 +, -, *, /, %비교/ 관계 연산자 , =, instanceof비교/ 등호 연산자 ==,!=논리 AND &논리()  XOR ^논리 OR |논리 AND &&논리 OR ||조건?:대입 =, +=, -=, *=, /=, %=, &=, |=, ^=, >=, >>>= (가장 낮은 우선순위)이 우선순위를 고려하여 연산이 수행된다.예를 들어, 곱셈과 나눗셈은 덧셈이나 뺄셈보다 먼저 계산되고, 논리 연산자는 대입 연산자보다 먼저 계산이 된다.연산자 우선순위를 정확히 기억하지 ..

오버플로우 (Overflow), 언더플로우(Underflow) / 형변환(Typecasting)

1. 오버플로우 (Overflow) 허용된 범위 이상의 수의 값을 저장할 때 발생한다.이 경우, 강제형변환을 시켜야 하는데  큰 값에서 작은 값의 자료형으로 옮겨져 가야 하기 때문에 데이터 손실 발생이 있다.  그렇기 때문에 식에서 반드시 변하는 값을 앞에 명시해 주어야 한다. 예)public class Main { public static void main(String[] args) { // 더 큰 데이터 타입을 더 작은 데이터 타입으로 변환 (강제 형변환 필요) double bigValue = 123.45; int intValue = (int) bigValue; System.out.println("intValue: " + intValue); //..

변수(Variable), 상수(Constant)

1. 리터럴 (Literal)  프로그래밍 언어에서 미리 정해놓은 값의 형태를 말한다. 변하지 않는 데이터(고정된 값) 그 자체를 의미한다.리터럴 값으로 산술 연산 할 수 있다. # 리터럴의 종류 :숫자 (정수, 실수), 문자 (한 글자), 문자열 (두 글자 이상), 논리(참/거짓) 2. 변수 (Variable)데이터(data)를 저장할 수 있는 메모리 공간을 의미한다. 그리고 저장된 값을 변경될 수 있다.- 변수를 사용하는 이유는,i) 값의 의미를 부여해서 코드 의미를 파악하는데 용이하다.ii) 재사용할 수 있어 프로그램에서 가독성을 높여주고 유지보수성에 좋다. # 자료형(Type) 자바 데이터의 기본적인 타입은 참조 자료형 1가지를 제외한 나머지는 총 8가지가 있다.  ▶ 기본저장형- 논리 타입 (1..