분류 전체보기
-
프로젝트를 기획하고 개발에 들어가기 직전에 유즈케이스(Use Case) 작성과 API 설계 과정을 거쳐야 합니다. 1. 유즈케이스 유즈케이스 또는 유즈케이스 다이어그램이란 사용자, 그리고 사용자가 수반한 다른 유즈 케이스 간의 관계를 보여주는 사용자-시스템 간 상호작용의 표현이다. 유즈케이스 다이어그램은 각기 다른 종류의 시스템 사용자와 각기 다른 유즈 케이스 를 식별할 수 있으며 다른 유형의 다이어그램이 수반되기도 한다. 유즈케이스는 보통 원이나 타원으로 표현된다. (위키피디아 인용) 우리는 개발에 앞서 유즈케이스를 만듦으로써 하고자 하는 것을 더욱 명확하게 할 수 있다. 그래서 어떤 시스템이나 서비스를 설계할 때 전체적인 사용자의 이용패턴을 분석해 놓은 것이라고 보면된다. 대표적인 도구로는 Lucid..
[프로젝트 방법론] 유즈케이스 작성 및 API 설계프로젝트를 기획하고 개발에 들어가기 직전에 유즈케이스(Use Case) 작성과 API 설계 과정을 거쳐야 합니다. 1. 유즈케이스 유즈케이스 또는 유즈케이스 다이어그램이란 사용자, 그리고 사용자가 수반한 다른 유즈 케이스 간의 관계를 보여주는 사용자-시스템 간 상호작용의 표현이다. 유즈케이스 다이어그램은 각기 다른 종류의 시스템 사용자와 각기 다른 유즈 케이스 를 식별할 수 있으며 다른 유형의 다이어그램이 수반되기도 한다. 유즈케이스는 보통 원이나 타원으로 표현된다. (위키피디아 인용) 우리는 개발에 앞서 유즈케이스를 만듦으로써 하고자 하는 것을 더욱 명확하게 할 수 있다. 그래서 어떤 시스템이나 서비스를 설계할 때 전체적인 사용자의 이용패턴을 분석해 놓은 것이라고 보면된다. 대표적인 도구로는 Lucid..
2023.02.11 -
개발자를 희망하는 사람으로서 프로젝트를 진행하게 될 일이 굉장히 많았다. 그러나 많은 경험에 비해 매번 아쉬웠던 점들이 많았는데 특히나 이 프로젝트를 기획하는 단계와 시작 단계에서 어떤 규약을 정하지 않았던 것이 가장 컸던 것 같다. 그래서 이번 포스팅에서는 프로젝트를 시작할 때 팀원들과 고려해야할 점들과 그에 대한 상세한 설명을 정리하여 두고두고 보면서 적용할 수 있는 나만의 가이드라인을 만들어보려 한다. 요구사항을 구현하는 데 도움이 되는 각종 문서 작업이 이루어지는데 이 과정이 어떻게 진행되는지 세부적으로 알아볼 것이다. 임의의 프로젝트인 게시판 서비스 만들기라는 목표를 가지고 여러 준비 과정들에 대해서 적용할 것이다. 0. 주제 정하기 (+개발 목적 이해하기, 마인드 세팅) 프로젝트의 시작은 당연..
[프로젝트 방법론] 프로젝트 시작할 때 팀원들과 맞춰야 하는 몇 가지(feat. git, github, 애자일, Agile)개발자를 희망하는 사람으로서 프로젝트를 진행하게 될 일이 굉장히 많았다. 그러나 많은 경험에 비해 매번 아쉬웠던 점들이 많았는데 특히나 이 프로젝트를 기획하는 단계와 시작 단계에서 어떤 규약을 정하지 않았던 것이 가장 컸던 것 같다. 그래서 이번 포스팅에서는 프로젝트를 시작할 때 팀원들과 고려해야할 점들과 그에 대한 상세한 설명을 정리하여 두고두고 보면서 적용할 수 있는 나만의 가이드라인을 만들어보려 한다. 요구사항을 구현하는 데 도움이 되는 각종 문서 작업이 이루어지는데 이 과정이 어떻게 진행되는지 세부적으로 알아볼 것이다. 임의의 프로젝트인 게시판 서비스 만들기라는 목표를 가지고 여러 준비 과정들에 대해서 적용할 것이다. 0. 주제 정하기 (+개발 목적 이해하기, 마인드 세팅) 프로젝트의 시작은 당연..
2023.02.11 -
이번 포스팅에서는 2월 7일부터 시작한 Fastcampus 국비지원에 대한 내용을 작성하도록 할 것이다. 지난 1, 2월 동안 자바/스프링을 공부하기로 계획을 했었고 실제로 패스트캠퍼스 강의를 구매하여 수강하였다. 그러나 해당 강의 특성상 입문하기에는 다소 어려운 부분이 있었고 자바도 배운지 오래돼서 가물가물하여 다른 국비지원 교육을 찾아보고 있었고 같은 패스트캠퍼스에서 Java & Spring 웹 개발 종합반이라는 이름의 국비지원 교육을 하는 것을 찾아 내일배움카드를 바로 발급하였고 집에 카드가 도착하자마자 신청을 하였다. 학습 서비스 학습 서비스로는 다음과 같은 것들이 있다고 한다. 1:7 소수 정예 학습 관리 및 1:1 화상 멘토링 4회권 제공 완주 후 개인부담금 전액 환급 우수수료자 본 강의 평생..
[Fastcampus 국비지원] 0. 시작에 앞서...이번 포스팅에서는 2월 7일부터 시작한 Fastcampus 국비지원에 대한 내용을 작성하도록 할 것이다. 지난 1, 2월 동안 자바/스프링을 공부하기로 계획을 했었고 실제로 패스트캠퍼스 강의를 구매하여 수강하였다. 그러나 해당 강의 특성상 입문하기에는 다소 어려운 부분이 있었고 자바도 배운지 오래돼서 가물가물하여 다른 국비지원 교육을 찾아보고 있었고 같은 패스트캠퍼스에서 Java & Spring 웹 개발 종합반이라는 이름의 국비지원 교육을 하는 것을 찾아 내일배움카드를 바로 발급하였고 집에 카드가 도착하자마자 신청을 하였다. 학습 서비스 학습 서비스로는 다음과 같은 것들이 있다고 한다. 1:7 소수 정예 학습 관리 및 1:1 화상 멘토링 4회권 제공 완주 후 개인부담금 전액 환급 우수수료자 본 강의 평생..
2023.02.10 -
운영체제란?사용자의 컴퓨터와 컴퓨터 하드웨어 사이에서 중개 역할을 하는 프로그램운영체제의 목표:사용자 프로그램을 실행하고 사용자 문제 해결을 더 쉽게 만든다.사용자가 프로그램을 실행할 수 있는 환경을 제공한다.컴퓨터 시스템을 더 편리하게 사용할 수 있도록 한다.(편리성; convenience)컴퓨터 하드웨어를 더 효율적으로 사용한다.(효율성; efficiency) 컴퓨터 시스템 구조컴퓨터 시스템은 네 가지 구성 요소로 나눌 수 있다:하드웨어(Hardware) - 기본적인 컴퓨팅 자원을 제공한다.CPU, 메모리, I/O장치운영체제(Operating system)여러 애플리케이션과 사용자 사이에서 하드웨어 사용을 제어하고 조정한다.애플리케이션 프로그램(Application Programs) - 시스템 자원..
[운영체제 | OS] 1. 운영체제 시작운영체제란?사용자의 컴퓨터와 컴퓨터 하드웨어 사이에서 중개 역할을 하는 프로그램운영체제의 목표:사용자 프로그램을 실행하고 사용자 문제 해결을 더 쉽게 만든다.사용자가 프로그램을 실행할 수 있는 환경을 제공한다.컴퓨터 시스템을 더 편리하게 사용할 수 있도록 한다.(편리성; convenience)컴퓨터 하드웨어를 더 효율적으로 사용한다.(효율성; efficiency) 컴퓨터 시스템 구조컴퓨터 시스템은 네 가지 구성 요소로 나눌 수 있다:하드웨어(Hardware) - 기본적인 컴퓨팅 자원을 제공한다.CPU, 메모리, I/O장치운영체제(Operating system)여러 애플리케이션과 사용자 사이에서 하드웨어 사용을 제어하고 조정한다.애플리케이션 프로그램(Application Programs) - 시스템 자원..
2023.01.23 -
이번에 포스팅 할 주제는 자바/스프링과 Node.js의 차이점에 대한 내용입니다. 각각이 나오게 된 이유와 어떠한 이유로 사용되고 있는지에 대해 역사부터 시작하여 차근차근 적었으니 굉장히 알찬 포스팅이 될 것 같습니다. 제일 중요한 내용은 4, 5, 6번에 있기때문에 해당 내용으로 건너 뛰셔도 좋습니다. 1. 내가 사용하고 있는 프레임워크 개발자를 지망하시는 분들 혹은 IT업계 현업에서 종사하시는 분들이시라면 "대기업은 자바를, 스타트업은 Node.js를 대개 사용한다."라는 말을 많이 들어보셨을텐데요.내로라하는 기업의 백엔드 개발자 채용 공고를 살펴보면 'Java 기반 개발 경험이 있는 분'을 찾는다는 문구가 눈에 띕니다. 이와 반대로 스타트업의 채용공고에서는 Node.js로 개발을 해 본 경험이 있는..
[BackEnd] 자바/스프링(Java/Spring)와 Node.js | 대기업은 자바, 스타트업은 Node.js(노드)? (Spring과 Nodejs 중에 고민이신가요?) + 스프링과 노드(node)의 역사이번에 포스팅 할 주제는 자바/스프링과 Node.js의 차이점에 대한 내용입니다. 각각이 나오게 된 이유와 어떠한 이유로 사용되고 있는지에 대해 역사부터 시작하여 차근차근 적었으니 굉장히 알찬 포스팅이 될 것 같습니다. 제일 중요한 내용은 4, 5, 6번에 있기때문에 해당 내용으로 건너 뛰셔도 좋습니다. 1. 내가 사용하고 있는 프레임워크 개발자를 지망하시는 분들 혹은 IT업계 현업에서 종사하시는 분들이시라면 "대기업은 자바를, 스타트업은 Node.js를 대개 사용한다."라는 말을 많이 들어보셨을텐데요.내로라하는 기업의 백엔드 개발자 채용 공고를 살펴보면 'Java 기반 개발 경험이 있는 분'을 찾는다는 문구가 눈에 띕니다. 이와 반대로 스타트업의 채용공고에서는 Node.js로 개발을 해 본 경험이 있는..
2023.01.22 -
1. JDBC 개념 소개 JDBC(Java Database Connectivity)란 자바 애플리케이션에서 DB(Database) 프로그래밍을 할 수 있도록 도와주는 표준 인터페이스입니다. 표준 인터페이스이기 때문에 DBMS 종류와 상관이 없습니다. JDBC 인터페이스들을 구현한 구현체들은 각 데이터베이스 벤더 사들이 제공해주고 있으며, 이를 'JDBC Driver'라고 합니다. 자바 코드에서는 보통 JDBC 인터페이스에만 의존하기 때문에 DB를 변경하더라도 코드를 변경하지 않아도 됩니다. 위 이미지가 앞서 설명한 내용을 나타내는 것입니다. 이에 대해 더 자세한 내용은 실습을 통해 진행하도록 하겠습니다. 2. DB 커넥션 풀 개념 소개 2-1. DBCP (Database Connection Pool) D..
[Spring] Part 1-5. 나만의 MVC 프레임워크 만들기 | JDBC 프로그래밍(+CRUD)1. JDBC 개념 소개 JDBC(Java Database Connectivity)란 자바 애플리케이션에서 DB(Database) 프로그래밍을 할 수 있도록 도와주는 표준 인터페이스입니다. 표준 인터페이스이기 때문에 DBMS 종류와 상관이 없습니다. JDBC 인터페이스들을 구현한 구현체들은 각 데이터베이스 벤더 사들이 제공해주고 있으며, 이를 'JDBC Driver'라고 합니다. 자바 코드에서는 보통 JDBC 인터페이스에만 의존하기 때문에 DB를 변경하더라도 코드를 변경하지 않아도 됩니다. 위 이미지가 앞서 설명한 내용을 나타내는 것입니다. 이에 대해 더 자세한 내용은 실습을 통해 진행하도록 하겠습니다. 2. DB 커넥션 풀 개념 소개 2-1. DBCP (Database Connection Pool) D..
2023.01.16 -
이번시간에는 지난 시간에 다루었던 서블릿을 만들어볼 것입니다. Part1에서 계속 다루었던 계산기 서블릿을 만들어보겠습니다. 이론 - 서블릿 만들어보기에 앞서 서블릿에 대한 간단한 이론 설명을 하도록 하겠습니다. 사진을 보시면 맨 위에 Servlet 인터페이스가 있고, 이를 구현한 GenericServlet, 그리고 이를 상속할 HttpServlet 이 있습니다. 이번 포스팅에서 계산기를 만들면서는 HttpServlet을 상속하여 만들 것입니다. 하지만, 서블릿 인터페이스와 제네릭 서블릿, 그리고 최종적으로 HttpServlet이 왜 등장하게 되었는지는 계산기 프로그램을 서블릿으로 만들어보면서 설명하도록 하겠습니다. Servlet 인터페이스는 호출 규약이라고 볼 수 있습니다. 즉, 서블릿 컨테이너(톰캣)..
[Spring] Part 1-4-3. 나만의 MVC 프레임워크 만들기 | 계산기 서블릿 만들기이번시간에는 지난 시간에 다루었던 서블릿을 만들어볼 것입니다. Part1에서 계속 다루었던 계산기 서블릿을 만들어보겠습니다. 이론 - 서블릿 만들어보기에 앞서 서블릿에 대한 간단한 이론 설명을 하도록 하겠습니다. 사진을 보시면 맨 위에 Servlet 인터페이스가 있고, 이를 구현한 GenericServlet, 그리고 이를 상속할 HttpServlet 이 있습니다. 이번 포스팅에서 계산기를 만들면서는 HttpServlet을 상속하여 만들 것입니다. 하지만, 서블릿 인터페이스와 제네릭 서블릿, 그리고 최종적으로 HttpServlet이 왜 등장하게 되었는지는 계산기 프로그램을 서블릿으로 만들어보면서 설명하도록 하겠습니다. Servlet 인터페이스는 호출 규약이라고 볼 수 있습니다. 즉, 서블릿 컨테이너(톰캣)..
2023.01.15 -
1. CGI 프로그램과 서블릿 CGI란? CGI는 웹 서버와 애플리케이션 사이에 데이터를 주고 받는 규약입니다. CGI 규칙에 따라서 만들어진 프로그램을 CGI 프로그램이라고 할 수 있는 것입니다. CGI 프로그램 종류로는 컴파일 방식 (C, C++, Java 등)과 인터프리터 방식(PHP, Python 등)이 존재합니다. 위 그림은 웹서버와 CGI 규칙을 통해서 데이터를 주고 받는 프로그램을 도식화한 것입니다. 인터프리터 방식 CGI 프로그램 인터프리터 방식 CGI 프로그램에서 웹서버는 Script engine(스크립트 엔진)을 실행시키며, 스크립트 엔진은 스크립트 파일을 해석하여 웹서버에게 결과값을 리턴하는 방식의 프로그램입니다. 위 그림에서 웹서버와 스크립트 엔진 사이 CGI 규칙을 통해 통신을 한..
[Spring] Part 1-4-2. 나만의 MVC 프레임워크 만들기 | CGI 프로그램과 서블릿 (Servlet)1. CGI 프로그램과 서블릿 CGI란? CGI는 웹 서버와 애플리케이션 사이에 데이터를 주고 받는 규약입니다. CGI 규칙에 따라서 만들어진 프로그램을 CGI 프로그램이라고 할 수 있는 것입니다. CGI 프로그램 종류로는 컴파일 방식 (C, C++, Java 등)과 인터프리터 방식(PHP, Python 등)이 존재합니다. 위 그림은 웹서버와 CGI 규칙을 통해서 데이터를 주고 받는 프로그램을 도식화한 것입니다. 인터프리터 방식 CGI 프로그램 인터프리터 방식 CGI 프로그램에서 웹서버는 Script engine(스크립트 엔진)을 실행시키며, 스크립트 엔진은 스크립트 파일을 해석하여 웹서버에게 결과값을 리턴하는 방식의 프로그램입니다. 위 그림에서 웹서버와 스크립트 엔진 사이 CGI 규칙을 통해 통신을 한..
2023.01.13