전체 글

멋진 개발자가 되자
프로그래밍을 하면서 수도 없이 들었던 용어이다. 그러나 REST API, RESTful API 등 종류도 다양할 뿐 아니라 어디에서나 흔하게 쓰이는 기술이다. 그만큼 중요하지만 나는 확실하게 알고 사용하기 위해 API가 무엇인지 찾아보았다. 함께 API가 무엇인지 확실하게 이해하고 개발해보자! API 우선 구글 검색에 의하면 api는 Application Programming Interface로 응용 프로그램에서 사용할 수 있도록, 운영체제나 프로그래밍 언어가 제공하는 기능을 제어 할 수 있게 만든 인터페이스를 뜻하고 있습니다. 쉽게 풀어보면 Interface란 서로 다른 두 물체간의 접점, 상호작용을 뜻하고, Application Programming은 응용프로그램을 뜻한다. 즉, API란 내가 만들 ..
· 언어/JAVA
static키워드는 매번 쓰지만 정확히 알지 못하고 써온 것 같다. 그래서 static이 무엇인지 자세히 알아보자! 클래스를 설계할 때, 멤버변수 중 모든 인스턴스에 공통적으로 사용해야하는 것에 static을 붙인다.- 인스턴스를 생성하면, 각 인스턴스들은 서로 독립적이기 때문에 서로 다른 값을 유지한다. 경우에 따라서는 각 인스턴스들이 공통적으로 같은 값이 유지되어야 하는 경우 static을 붙인다. static이 붙은 멤버변수는 인스턴스를 생성하기 않아도 사용할 수 있다. - static이 붙은 멤버변수(클래스변수)는 클래스가 메모리에 올라갈때 이미 자동적으로 생성되기 때문에. static이 붙은 메서드(함수)에서는 인스턴스 변수를 사용할 수 없다. - static이 붙은 메서드는 인스턴스 생성 없이..
· 언어/JAVA
스프링을 공부하면서 JAVA의 기초적인 부분을 탄탄히 해야겠다고 느꼈다. 그래서 자바의 기초부터 하나씩 정리해 나가보려고 한다. 오늘은 가장 기초적인 자바의 접근제한자에 대해 알아보자! 접근 제한자(Access Modifier) 접근 제한자는 모든 접근을 허용하는 public, protected, default(friendly), private 이렇게 4가지 종류가 있다. public Public은 package, Class가 동일하지 않아도 모든 접근이 가능한 제한자이다. 같은 클래스내에서 허용, 같은 패키지 내의 다른 클래스 허용, 다른 패키지의 다른 클래스에서 허용 protected Protected는 같은 package에서만 접근을 허용하고 다른 package에서 접근하려면 해당 Class를 상속..
· Node.js
Node.js가 궁금하여 공부 해보기로 했습니다. 생활코딩에서 제공하는 강의를 보면서 Node.js에 대한 기초를 공부해보겠습니다!! Node.js 설치 1. 구글에 node.js를 검색해 맨 위에 있는 홈페이지를 들어가거나, https://nodejs.org/ko/ 이 링크로 들어가면 다음과 같은 화면이 나옵니다. 2. 두가지 버전이 있는데 왼쪽 LTS버전을 설치해 줍니다. 현재 버전과 LTS버전의 차이 더보기 LTS 버전 밑에는 '안정적, 신뢰도 높음' 이라는 문구가 적혀있습니다. 반면 현재 버전 밑에는 '최신 기능' 이라는 문구가 적혀있습니다. LTS 버전은 Long Term Support의 줄임말입니다. 말 그대로 오랜 기간 지원이 가능하다는 의미입니다. 여기서 말하는 '지원'이란, 해당 버전에 ..
동적 계획법은 큰 문제를 작은 문제로 나눠서 최종 문제를 해결하는 알고리즘이다. 작은 문제를 처리할 때 수행되는 답을 저장해 놓고 다음번에 필요할 때 그 값을 불러와서 처리한다. 재활용 개념이라고 이해하면 쉽다. 분할 정복과 비슷한 개념이지만 분할 정복과 동적 계획법의 차이점은 분할 정복에서의 쪼개진 작은 문제들은 중복되지 않지만 동적 계획법에서 쪼개진 문제는 서로 연관성이 있다는 점이다. (분할 정복에 대해서는 나중에 공부한 후 포스팅 예정입니다.) 개념 동적 계획법은 문제를 풀 때 하나의 문제를 여러 하위 문제로 나누어 풀고, 그것들을 결합해서 최종 목적에 도달하는 방식의 알고리즘입니다. 피보나치 수열을 재귀로 표현했을 때 결함이 생기는데 이를 동적 계획법으로 보완한 사례를 보면서 알아 보겠습니다. ..
JAVA로 파일 전송 프로그램을 만들게 되어 FTP서버를 이용해 만들어 보았습니다. FTP란 FTP는 인터넷에서 파일 송수신 만을 위해 고안된 프로토콜이기 때문에 동작 방식이 대단히 단순하고 직관적입니다. 사용법도 간단합니다. 파일을 빠른 속도로 한꺼번에 주고 받을 수 있다는 것이 FTP의 가장 큰 장점입니다. 빠른 파일 전송이 주된 목적이기 때문에 사진이나 음악, 동영상 등의 멀티미디어 콘텐츠는 내려 받기가 완료된 다음에 확인할 수 있습니다. ( 스트리밍 서비스가 되지 않습니다. ) FTP는 명령어 기반의 통신 서비스입니다. 클라이언트 프로그램이 없더라도 윈도우에서 기본적으로 제공하는 서비스를 사용할 수 있으며 클라이언트 프로그램이 있다면 좀 더 간단하게 혹은 쉽게 사용할 수 있는 인터페이스를 제공하기..
데이터베이스 객체 테이블 - 기본 저장 단위 행과 열로 구성 뷰 - 논리적으로 하나 이상의 테이블에 있는 데이터의 부분 집합을 나타냄 시퀀스 - 숫자 값 생성기 인덱스 - 질의의 성능을 향상 동의어 - 객체에 다른 이름을 제공 테이블 이름 지정 규칙 문자로 시작해야 한다. 1자부터 30자까지 가능합니다. A-Z, a-z, 0-9, -, $, #만 포함해야 한다. 동일한 사용자가 소유한 다른 객체의 이름과 중복되지 않아야 한다. Oracle 서버의 예약어가 아니어야 한다. 테이블 생성 테이블을 생성합니다. 테이블 구조에 대한 정보를 보여줍니다. 현재 생선된 테이블은 빈 공간이기 때문에 INSERT 문을 이용해 데이터를 삽입해 봅시다. 추가된 행들을 확인하기 위해 dept 테이블 내용을 확인해 봅시다. RO..
while문 (반복 횟수를 모를때 사용) [구조] while 조건식: 실행문장 실행문장 조건식이 True일 때 무한반복 때문에 무한반복에서 벗어나기 위해서 특정 조건에 break를 삽입하여 반복 중지 가능 예시) 두개의 정수를 입력받아 두 수의 합을 구한다. 만약 두 수가 모두0이면 프로그램을 종료시킨다. while True: #> 2 두 정수의 합 : 7 첫 번째 정수 입력 >> 1 두 번째 정수 입력 >> 6 두 정수의 합 : 7 첫 번째 정수 입력 >> 81 두 번째 정수 입력 >> 3 두 정수의 합 : 84 첫 번째 정수 입력 >> 0 두 번째 정수 입력 >> 0 프로그램이 종료되었습니다. for문 (반복 횟수를 알 때 사용) [구조] for 변수 in 문자열(or리스트or튜플): print(변수..
트랜잭션이란 단어를 많이 들어봤을 것이다. 그러나 정확한 뜻은 잘 모르고 있었고, 자주 눈에 띄었던 거 같다.. 정확히 알고 넘어가야 직성이 풀리니까 정리하면서 공부해보자!! 우선 단어 뜻으로 파악해보자 Transaction은 네이버 영어사전에서 찾아본 결과 처리(과정)이라는 뜻이 있다. 무엇을 처리하는 과정을 나타내는 용어일까? 컴퓨터 용어에서 트랜잭션은 데이터베이스 용어이다. 데이터 처리에 관련된 용어라 추측할 수 있다. 트랜잭션이란? 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업의 단위로서, 데이터베이스 시스템에서 복구 및 병행 시행 시 처리되는 작업의 논리적 단위이다. 다시 말해서 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다. 데이터베이스의 상태를 변화시킨다는 것..
스크럼(Scrum) 이란? 럭비에서 양 팀 선수들이 서로 대치해 있는 대형을 말한다. 이는 팀이 중심이 되어 개발의 효율성을 높인다는 의미가 내포되어있다. 스크럼은 - 팀원 스스로가 팀을 구성해야 한다.(Self-Organizing) - 개발 작업에 관한 모든 것을 스스로 해결할 수 있어야 한다. (Cross-Functional) 스크럼 팀 제품 책임자(PO / Product Owner) 더보기 이해관계자*들 중 개발될 제품에 대한 이해도가 높고, 요구사항을 책임지고 의사 결정할 사람으로 선정. 주로 개발 의뢰자나 사용자가 담당 [*이해관계자 : 소프트웨어 개발 의뢰자, 소프트웨어 개발자, 소프트웨어 사용자 등] - 이해관계자들의 의견을 종합하여 제품의 요구사항을 작성 - 요구사항이 담긴 백로그(Back..
나는이지훈
나는이지훈