전체 글 155

[Java] 럭키 스트레이트

Java로 풀어보는 간단한 백준 문제 풀이 18406번 럭키 스트레이트 문제입니다. 문제 요약 N이라는 점수가 주어질 때, 반으로 나눈 첫번째 자릿수의 합과 나머지 자릿수의 합이 동일해야 합니다. 여기서 저는 N이라는 숫자를 받아서, 첫번째 요소와 두번째 요소로 나누어보고자 했습니다. 그러기 위해서 문자열로 변환하고 반으로 나누어 각각의 배열 요소의 합을 구하는 것을 떠올렸습니다. 점수 N이 주어지고, 이를 반으로 쪼개어 첫번째 요소의 자릿수 합과 두번째 요소 자릿수 합이 일치하면 “LUCKY”, 아니면 “READY” 출력한다. 코드로 살펴보기. 백준에서 코드를 입력할 때, Java의 경우에는 Scanner 패키지를 사용해서 입력값을 받도록 만들어줘야 합니다. 1. 먼저 해당 점수를 Scanner로 입력..

[Ncloud] 나만의 리눅스 서버 만들기

네이버 클라우드로 Linux 서버를 만들어보겠습니다. 리눅스에 대해 먼저 살펴봐야겠죠? Linux: "Just For Fun!" 재미로 시작한 리눅스 리눅스는 헬싱키 대학 리누스 토발즈가 만들었습니다. 당시 자율소프트웨어 재단(FSF)에서 야심차게 내놓은 UNIX 유닉스라는 OS가 있었지만 성능이 안 좋았고 리누스가 재미로 만든 Linux가 좀 더 잘 만들어지고 성능도 더 좋았습니다. 이것을 FSF 재단에 기증했고, 그의 이름을 따서 리눅스가 되었죠. 리눅스는 커널, 라이브러리, 소프트웨어로 구성되어 있습니다. 이 리눅스는 다양한 재단에서 자유롭게 배포하고 사용할 수 있게 했습니다. 그에 맞게 다양한 리눅스 파생 OS들이 있죠! Suse, Ubuntu, CentOS, RedHat, AWS Linux 등이..

[Jquery] Selector

Selector(선택자) 직접 선택자 직접 선택자는 전체, 아이디, 클래스, 태그, 그룹 총 5가지 선택자로 구성됩니다. 전체 선택자는 DOM의 모든 태그를 한번에 선택합니다. 기호는 $("*") 이고 달러와 all(*) 표시만 기억하면 쉽게 쓸 수 있죠. 아이디 선택자는 해당 아이디명인 태그를 고르고, $("#아이디명") 으로 사용합니다. 클래스 선택자는 클래스를 고르고 $(".클래스명") 이렇게 씁니다. 그룹 선택자는 여러 선택자를 묶어서 고를 수 있고, $("선택자1, 선택자2, ...") 이렇게 사용합니다. 선택자 n에는 아이디, 클래스, 태그 선택자 등 다양하게 입력이 가능해서 유용합니다. 종류 코드 전체 선택자 $("*") 아이디 선택자 $("#아이디") 클래스 선택자 $(".클래스명") 태그..

[Jquery] Jquery 기초

Jquery Jquery는 자바스크립트의 DOM 객체 조작을 도와주는 라이브러리 입니다. 선택자부터 이벤트, 애니메이션 등 DOM 객체를 선택하거나 DOM 객체에 특정 이벤트를 만들고 애니메이션 효과를 추가할 때 유용합니다. 자바 스크립트만으로 작성하기 보다 편하죠. 예를 들어, 순수 자바스크립트로는 두 줄을 작성해야 box 객체를 조작할 수 있습니다. //순수자바스크립트 선택자 const box = document.getElementById("box"); const box = document.querySelector("#box"); jquery로 작성해보겠습니다. // jquery 선택자 const box = $("#box"); 훨씬 간단하죠? Jquery 장점 DOM 객체를 조작할 때 자바스크립트 네..

[JS] 변수 선언과 사용

자바스크립트의 변수: 타입이 존재하지 않는다. 기본 자료형인 숫자형, 문자열, 논리형, 배열, 객체, undefined, null 7개의 자료형이 존재하긴 하지만 변수를 선언할 때 자료형을 지정할 수가 없습니다. 자료형 유추 기능을 통해서 할당되는 변수의 값에 의해 자동적으로 자료형이 정해집니다. 자료형을 지정하지 않다보니까 에러잡기가 힘들어져 최근에는 타입스크립트(자바스크립트 + 타입)라는 언어가 유행합니다. 버전 별로 차이가 있습니다. ES 5는 아래와 같이 사용합니다. var num = 1; // 숫자형으로 사용. var numStr = "1"; // 문자열이나 숫자형으로 사용 var sum1 = num + 2; // 3 var sum2 = numStr + 2; // 3 ES 6로는 다음과 같습니다..

[JS] 자바스크립트 기초

JavaScript 1995년에 넷스케이프에서 제작한 인터프리터 언어입니다. 인터프리터는 각 브라우저에 내장되어, OS가 아니라 브라우저에서 동작합니다. HTML이 웹 문서의 구조를 담당하고 css가 웹 문서의 디자인을 담당한다면 JavaScript는 웹 문서를 동적으로(다이나믹하게) 구성할 수 있게 해줍니다. JavaScript의 특징 1) HTML 웹 문서의 태그들을 제어 가능합니다. - 사용자에 의해 이벤트(사용자가 행하는 동작)가 발생했을 때 스타일을 바꾼다든지 애니메이션 효과를 준다든지 등과 같은 태그 제어가 가능합니다. 2) 다양한 라이브러리나 API가 존재하여 개발 기간을 단축시킬 수 있습니다. - 데이터 시각화, 차트, 그래프, 통계 등에 활용되는 라이브러리나 지도 API, 주소 API 등..

[HTML] form (2)

select, optgroup, option 다양한 데이터들을 나열해서 보여주는 태그입니다. 드롭다운 메뉴를 들어보셨다면, 그것과 동일하다는 점을 알 수 있을 것입니다. 사용자가 직접 입력하는 게 아니고, 제공된 여러 옵션 중에서 선택하는 것입니다. 간단히 예시를 보겠습니다. 자신있는 프로그래밍 언어를 고르는 화면입니다. 그 중에서 MySQL을 골랐습니다. 이렇게 select 태그와 option 태그를 조합해서 간단한 드롭다운 목록을 만들 수 있습니다. 코드를 살펴보겠습니다. 자신있는 언어 자바 C언어 C++ MySQL 오라클 자바스크립트 파이썬 select 태그는 드롭다운의 시작과 끝을 표시하는 태그이며, option 태그는 드롭다운의 항목을 만들어줍니다. 이 select가 아주 큰 틀을 만들어주고 그..

[HTML] form(1)

폼 태그 폼(form)은 백엔드, 다른 페이지에 요청을 보내는 특수 기능을 가집니다. 요청을 보낼 때, 폼 내에 있는 데이터들도 함께 전송할 수 있습니다. 폼(form) 태그는 회원가입, 로그인, 회원 정보, 주문 페이지 등 다양한 곳에 활용됩니다. 아래는 로그인 페이지를 만들어 본 것입니다. 폼의 동작 방식을 로그인으로 알아보겠습니다. 사용자가 아이디와 비밀번호를 입력합니다. 사용자가 로그인 버튼을 클릭합니다. 폼에 매핑되어 있는 주소로 아이디와 비밀번호를 가지고 요청을 보냅니다. 백엔드 프로그램에서 요청으로 온 아이디와 비밀번호를 가지고 데이터베이스에서 아이디와 비밀번호가 일치하는 검사를 진행합니다. 일치하면 로그인되도록 처리 일치하지 않으면 아이디나 비밀번호가 틀렸다고 메시지를 띄워줍니다. 이렇게 ..

[HTML] HTML 기초

HTML 정의 html은 웹사이트에서 사용하는 파일의 형식이며, .html이라는 확장자를 가집니다. HTML은 Hyper Text Markup Language의 약자입니다. Hyper Text는 어떤 의미일까요? 하이퍼링크라는 말을 들어보신 적이 있을 것인데요, 그 말처럼 다른 문서나 사이트로 이동할 수 있는 링크입니다. 같은 맥락에서 이 Text도 다른 문서나 사이트로 이동이 가능한 텍스트가 됩니다. Markup은 태그로 볼 수 있고 HTML문서의 body 부분을 채워넣는 작업입니다. 마크업을 진행할 때, 약속된 표기법으로 작성하며 이 때 꺽쇠표기된 태그를 사용합니다. 대부분 태그는 열고 닫는 태그가 하나의 쌍으로 존재합니다. 내용, 물론 일부 태그들은 닫는 것이 없거나 생략하기도 합니다. , 또한, ..

[Oracle] Trigger

트리거 트리거는 DB 안의 특정한 상황이나 동작, 이벤트가 발생할 때 자동으로 실행되는 기능을 정의하는 서브 프로그램입니다. 트리거의 장점으로는 먼저 데이터 관련 다양한 작업에 필요한 PL/SQL을 여러개 작성는 수고로움을 줄입니다. 또한, 제약조건만으로 부족한 복잡한 데이터 규칙이 있다면 이를 정의할 수 있습니다. 마지막으로 데이터 변경과 관련된 일련의 정보를 기록할 수 있습니다. 기록하는 점으로 인해, 공유 데이터 관련 보안성, 안전성이 확보가 되고 오류가 발생하더라도 이전 데이터 기록을 통해 대처가 가능합니다. 다만 트리거는 주로 타 데이터 추가, 변경 작업이 일어나므로 마구잡이로 사용하면 DB의 성능이 하락할 것입니다. 그래서 용도를 제한할 필요가 있으며, 테이블부터 DB 전체에 대한 DML(IN..