목록Web (7)
tmxklab
1. 개발 환경 Framework : Laravel IDE : Visual Code(vscode) Language : php server & DB : XAMPP(Apache, MySQL) browser : Chrome 2. 프로젝트 생성 및 vscode로 프로젝트 열기 1) 프로젝트 생성 및 확인 $laravel new [프로젝트명] 설치 후 프레임 워크 버젼 확인 $php artisan --version 추가로 $php artisan명령을 많이 사용할 텐데 커맨드 옵션 확인하려면 다음 $php artisan 라라벨 실행 $php artisan serve localhost:8000으로 접속하면 웹 페이지가 뜨는 것을 확인할 수 있다. 여기까지는 그 전 내용이랑 겹칠 것이다. 2) vscode로 프로젝트 ..
1) DAO(Data Access Object) DAO는 DB의 data에 접근하기 위한 객체로 직접 DB에 접근하여 데이터를 삽입, 삭제, 조회 등 조작할 수 있는 기능을 수행한다. MVC 패턴의 Model에서 이와 같은 일을 수행한다. 2) DTO(Data Transfer Object) DTO는 계층간(Controller, View, Business Layer) 데이터 교환을 위한 자바 빈즈(Java Beans)를 의미한다. DTO는 로직을 가지지 않는 데이터 객체이고 getter/setter메소드만 가진 클래스를 의미한다. +) Java Beans Java로 작성된 소프트웨어 컴포넌트를 지칭하는 단어 비즈니스 로직 부분을 담당하는 Java 프로그램 단위 (장점) JSP페이지가 복잡한 자바 코드로 구..
1. MVC 패턴 MVC는 Model, View, Controller의 약자로 비즈니스 로직과 사용자 뷰(인터페이스) 영역을 분리하기 위한 소프트웨어 개발 방법론이다. 이렇게 영역을 분리함으로써 유지보수를 높이고 각각의 영역마다 개발자들이 맡아 집중할 수 있도록 하여 개발의 효율성을 극대화시킬 수 있다. 프로젝트를 구성할 때 다음과 같이 3가지 형태로 나누어 개발하는 패턴. ① Model 내부 비지니스 로직을 처리하기 위한 역할 알고리즘, DB와 상호작용, 데이터 처리 등등 Java로 구현 ② Controller 사용자의 입력 처리와 흐름 제어를 하는 역할 사용자로부터의 입력을 받고 Model 또는 View의 중개인 JSP, 서블릿 등 Server Side 언어로 구현 ③ View 클라이언트와 서버 간의..
1. 프레임워크(Framework) 1.1 정의 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것 추가 설명) 혼자서 개발을 할 때는 문제가 되지 않지만 만약 대규모 프로젝트를 진행할 경우 여러 사람이 공동으로 작업을 진행하게 되면서 개발자간에 서로 결과물을 공유하거나 신경써야할 점이 많아 문제가 발생할 수 있다. 프레임워크는 이러한 문제점을 해결하기 위해 개발자들이 원하는 기능 구현에만 집중하여 빠르게 개발할 수 있도록 개발 표준 가이드를 정의한다. 1.2 특징 및 장,단점 ① 특징 정해진 개발 가이드라인이 있다. 개발할 수 있는 범위가 존재한다. 개발자를 위한 다양한 도구들이 지원된다. ② 장점 체계적인 코드관리로 유지보수 용이 높은..
0. client-side & server-side 처리되는 작업의 위치에 따라 client-side & server-side로 구분된다. 1) client-side 클라이언트 측(브라우저)에서 수행하는 처리를 뜻한다. 3대장 : HTML(구조), JavaScript(동작), CSS(디자인) Ajax, jQuery 등등.. 2) server-side 서버 측에서 수행하는 처리를 뜻한다. PHP, JSP, ASP Ruby, Python 등등... 1. 웹 서버(Web Server) 웹 브라우저(클라이언트)의 요청(http request)을 받아 해당하는 웹 페이지를 찾아서 보내주는(response) 역할을 수행한다. 또한 웹 서버는 HTML 문서 파일을 찾아서 보내주는 것 외에도 HTML문서를 생성하는 프..
웹 사이트 개발에 앞서 먼저 윈도우에서 라라벨 개발환경 구축하는 방법에 다루기로 한다. 라라벨은 GUI환경보다는 CLI환경에 적합하므로(명령행 도구를 많이 씀) 윈도우에서 사용하기 불편하다. 하지만 나는 git bash나 wsl이 깔려있기 때문에 게의치 않고 윈도우에서 라라벨 개발환경 구축을 하기로 한다.ㅋㄷㅋㄷ 그리고 여기서 다루는 내용은 라라벨 홈스테드를 사용하지 않는다. 라라벨 홈스테드로 개발환경을 구성하려면 다음 사이트를 참고하길 바란다. 라라벨 7.x - 홈스테드 라라벨 한글 메뉴얼 7.x - 홈스테드 laravel.kr 0. 라라벨 동작에 필요한 php버젼 및 필요 모듈 해당 문서를 작성한 시점인 2020-10-09에서 laravel 개발환경 및 요구사항 조건은 다음과 같다. 개발환경 및 서버..
이번에 웹 해킹을 공부하기 위해 바로 워게임 사이트에서 문제를 풀면서 공부하는 것이 아니라 전체적인 웹에 대한 이해도를 높이기 위해 직접 웹 개발을 하기로 한다. 직접 웹 개발을 하면서 기본적으로 서버 사이드 언어(php, jsp, ...)의 문법을 익힐 수 있고 추가로 더 필요한 공부(웹 프레임워크, http헤더, ...)를 하면서 이후에 웹 해킹할 때 도움이 될 것이다. 웹 사이트 개발은 Laravel프레임워크를 사용해서 php웹 사이트를 구축하기로 한다. php와 프레임워크를 사용한 이유는 예전에 학교에서 프레임워크를 사용하지 않고(스프링 과목을 듣지 못해서ㅠ) jsp를 사용해서 웹 사이트를 개발했었던 적이 있어 이번 기회에 써보지 않았던 php와 프레임워크를 공부겸? 개발하고자 한다. 01. 프로..