3월, 2020의 게시물 표시

laravel-3 send data to blade

laravel-3 send data to blade 다음과 같은 것도 가능하다. php에서는 이것이 기본 문법이지만 라라벨에서는 @형태로 간단히 쓸수 있다. *추가적으로 변수를 보낼때 with를 쓰는 방법도 있다. from http://h0n9670.tistory.com/45 by ccl(A) rewrite - 2020-03-23 00:20:26

laravel-2 blade layout

laravel-2 blade layout resources/views에 3개의 파일을 만들고 web.php에 각각 주소를 할당해 주었다. contact를 누르면 주소가 127.0.0.1:8000/contact로 바뀌면서 내용이 바뀐것을 확인 할 수 있다. 하지만 여기서 위에 메뉴는 바뀌지 않고 코드가 중복되는 것을 확인 할 수 있다. 이럴때 필요한 것이 레이아웃이다. 레이아웃을 쓰기 위해선 첫번째로 layout.blade.php(레이아웃 페이지)를 만들고 기존의 코드를 넣는다. 그 후 페이지마다 바뀌는 부분에 @yield( ,)로 영역을 잡아놓는다. 두번째로 각페이지는 @extends('layout') 레이아웃페이지를 쓴다고 선언하고 마지막으로 @section( )과 @endsection( )을 잡고 그 내부에 @yield( ,)부분에 들어갈 코드를 입력하면된다. 레이아웃을 쓰게되면 중복을 삭제하여 코드의 가독성이 좋아지고 수정을 할때 한번에 처리할 수 있어 편리해진다. from http://h0n9670.tistory.com/44 by ccl(A) rewrite - 2020-03-22 23:54:23

laravel-1 라우트 & 뷰

laravel-1 라우트 & 뷰 Java에 Spring이 있다면 php에는 laravel이라는 프레임워크가 존재한다. 물론 php에는 laravel말고도 다른 framework가 존재하지만 그 중 많이 사용되고 있는 laravel에 대하여 지금부터 알아보자. laravel의 설치는 php와 따로 설치해도 되지만 php의 작업환경을 설정해주는 Bitnami를 설치한다면 개별적으로 설치할 필요없이 설치중 같이 설치 할 수 있다. 개인적으로는 Bitnami를 설치하면서 laravel을 같이 설치하였기 때문에 설치가 되있다는 가정하에 실행방법을 알아보자. cmd 창에서 laravel이 설치된 폴더로 이동한다. laravel실행법 더보기 php artisan serve, http://127.0.0.1:8000 폴더에서 php artisan serve를 입력하면 서버가 실행됬다는 문구와 함께 주소가 나오는데 그 주소를 복사해서 주소줄에 쓰면 다음과 같은 창이 뜨면 성공이다. 이제 어떤 식으로 프로그램이 실행됬는지 알아보자. 라라벨의 폴더 중 routes/web.php을 보면 get('/'에 주소를 받아서 view('welcome')으로 반환해주는 것을 볼 수 있다. 이것은 welcome.blade.php파일의 모습이다. 이것은 우리가 첫화면에서 보았던 laravel페이지의 소스인 것을 쉽게 알 수 있다. 즉; 127.0.0.1:8000/ 에서 마지막 '/'는 get('/' 에서의 /이고 view('welcome')은 view/welcom.blade.php를 의미한다. from http://h0n9670.tistory.com/43 by ccl(A) rewrite - 2020-03-22 22:54:22

[PHP] 라라벨 루멘 DB문서 자동화

[PHP] 라라벨 루멘 DB문서 자동화 안녕하세요 제가 오늘 하려는건 DB문서를 자동으로 문서화 해주는 것 입니다 회사에서 저한테 하나하나 엑셀로 정리하라고 하시는거에요 그래서 처음에는 그냥 엑셀로 정리를 했었어요! 문제점 1. DB Table 갱신 후 엑셀 문서 갱신 누락 (귀찮음) 2. 매번 엑셀 문서경로를 찾아서 들어가야함 (귀찮음) 3. 새로운 DB마다 똑같은걸 반복함 (많이 귀찮음) = 많이 귀찮은 노가다의 반복 해결 방법 Composer를 이용하여 빠르고 쉽게 문서를 자동화함 https://packagist.org/packages/unisharp/doc-us 적용하는 방법 라라벨 같은 경우는 위에 방법으로 바로 적용이 가능하지만 제가 사용하는 프레임워크는 라라벨 루멘이였습니다.. 그래서 루멘에서 해당 doc-us를 적용하는 방법을 알아보겠습니다 위에 packagist에 들어가보시면 이렇게 순서가 나와요 composer를 통해서 unisharp/doc-us 다운 받았습니다 잘 받아집니다 여기까지는 문제가 없네요 이렇게 .env 파일에 EANBLE_DOC_US도 추가해줍니다 다른사람은 못 알아볼수 있기 때문에 주석도 추가했어요 그런데... 여기서 문제가 생깁니다 .. 라라벨은 기본적으로 config/app.php가 존재합니다 그러나 루멘은 config폴더부터 생성해서 작성하기 시작해야해요 이때 문득 루멘 괜히 썻다라고 삼십분정도 생각했는데 어차피 루멘은 라라벨에서 기능을 뺀 프레임워크이기 때문에 구조를 조금보면 가능할껍니다 UniSharp\DocUs\DocUsServiceProvider::class를 뜯어보니 이런 구조로 되어있네요 routes를 추가하고 view를 이용해 table,json 등등 다양한 형태로 보여줍니다 providers에 추가 한다는건 페이지가 열릴때 해당 class를 호출한다는건데 lumen에서는 bootstrap/app

PHP 라라벨프레임워크 설치하기 in CentOS 7

PHP 라라벨프레임워크 설치하기 in CentOS 7 # 구글클라우드플랫폼을 활용한 VM내부의 CentOS7 환경에서 설치를 진행 # 환경 : PHP + MariaDB + Apache + CentOS 7 라라벨 프레임워크 설치 아파치, php같은 것들은 이미 설치되어있다고 가정하겠습니다. 1. 라라벨 프레임워크를 사용하려면 php용 관리도구 Composer를 설치하기 Composer 다운로드 공식문서 https://getcomposer.org/download/ Command-line installation 하단상자안의 4줄을 복사해서 cmd창에 입력 설치가 끝나면 composer.phar란 파일이 있을겁니다. 전역으로 사용할것이기 때문에 cmd창에 입력해주세요 mv composer.phar /usr/local/bin/composer 이동이 안되면 sudo 입력해서 관리자권한으로 이동시켜주시면 됩니다. 2. 라라벨 프레임워크 설치하기 라라벨 공식문서 한국어버전 https://laravel.kr/docs/5.5/installation 쉬운 라라벨 설치 따라하기 http://laravelfromscratch.com/ 라라벨 설치환경을 만들기위해 cmd에 입력 composer global require "laravel/installer" 설치중에 unzip이라던지 mbstring 등등 미설치라고 뜨는 경우있는데 cmd에 sudo yum install unzip 입력하면 설치됩니다. changed current directory to .. 뜨는데 home내부의 사용자폴더를 확인해봅시다. composer global require "laravel/installer" 입력후 폴더확인 사용자 디렉터리 내부에 .config내부에 composer디렉터리가 있죠? 그럼 OK 그 이후 laravel new blog를 입력하면 되는데 안됩니다. PATH가 입력되어있지않

[Laravel] multiple Database using

[Laravel] multiple Database using How to use multiple databases in Laravel I want to combine multiple databases in my system. Most of the time the database is MySQL; but it may differ in future i.e. Admin can generate such a reports which is use source of heterogeneous stackoverflow.com from http://wondongho.tistory.com/150 by ccl(A) rewrite - 2020-03-17 16:54:27

1. 라라벨설치 설정

1. 라라벨설치 설정 1. 라라벨을 설치 composer create-project --prefer-dist laravel/laravel blog 2. AppServiceProvider.php use Illuminate\Support\Facades\ Schema ; public function boot () { Schema :: defaultStringLength ( 191 ); } from http://anko3899.tistory.com/430 by ccl(A) rewrite - 2020-03-15 11:20:28

[PHP - Laravel] 팝빌 홈택스 현금영수증 조회 API 연동 가이드

[PHP - Laravel] 팝빌 홈택스 현금영수증 조회 API 연동 가이드 안녕하세요. 고객의 가치를 연결하는 비즈니스 파트너 링크허브 입니다. 본 포스팅에서는 PHP Laravel 개발환경에서 고객사들이 팝빌 홈택스 현금영수증 조회 API SDK를 쉽고 빠르게 이용할 수 있도록, 예시를 이용하여 연동 설정 방법을 안내드리겠습니다. 먼저, Composer를 이용하여 SDK 추가한 후 홈택스 현금영수증 조회 함수를 구현하는 순서로 진행하겠습니다. 팝빌 PHP Composer SDK는 PHP v7.1.3 이상의 환경에서 이용이 가능하며, API 호출과 응답의 메시지 인코딩은 "UTF-8 Character-Set"을 지원합니다. "팝빌은 링크허브에서 자체 개발하고 직접 운영하는 홈택스 현금영수증 서비스 Brand Name 입니다." 아래 설명하는 예시는 [ Laravel 5.7 | PHP v7.1.16 ] 기준으로 작성되어 있어, 이용 중이신 개발환경과 차이가 있을 수 있는 점 감안해 주시기 바랍니다. 1. 서버환경 구성 SDK 설치를 위해 PHP Composer 와 PHP (v7.1.3 이상) 이 설치 되어 있어야 합니다. $ php -v PHP 7.1.16 (cli) (built: Mar 31 2018 02:59:59) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies $ composer ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer v

Web Programming이란?

Web Programming이란? 1. 인터넷과 웹 사이트 - 인터넷 : Inter + Network의 합성어로, 전 세계에 걸친 컴퓨터 네트워크 시스템 - 최초의 인터넷 : 미국의 아파넷(ARPAnet) - 웹 사이트 : 도메인 이름, IP 주소, 루트 경로로 이루어진 URL을 통하여 보이는 웹 페이지의 묶음 - DNS(Domain Name System) : 숫자로만 이루어진 IP 주소는 실질적으로 사용하기에 불편하기 때문에, 쉽게 외워서 사용하기 위한 인터넷 주소 2. 웹 프로그래밍 - Front-end Programming : 브라우저 또는 사용자 영역의 프로그래밍, HTML, CSS, JavaScript등을 사용 HTML 페이지의 구성(기본 구조) CSS 색상이나 크기 등 디자인적인 요소 JavaScript 기존 페이지의 내용 변경이나 움직임 등의 동적인 작업 - Back-end Programming 서버에서 실행되는 코드를 작성하는 것 Server-side Programming이라고도 하며 대부분의 언어를 사용 가능 Framework : 웹 페이지를 개발하는 과정에서의 기본 구조를 잡는 도구, Java - Spring / JS - Node.js / PHP - Laravel 3. 웹 서버와 웹 애플리케이션 서버 - 웹 서버 : 웹 서비스를 이용하기 위해서는 컴퓨터에서 웹 애플리케이션이 동작하고 있어야 하는데, 그 컴퓨터를 웹 서버라고 부름. 정적인 기능 수행(아파치, NGINX, IIS 등) - 웹 서버 프로그램 : 사용자의 요청을 정리하고 웹 애플리케이션으로 해당 요청을 전달하는 프로그램 - 웹 애플리케이션 서버 : 웹 서비스가 돌아가는 서버, 동적인 처리를 위해 만들어진 서버 - 웹 서버의 구조 4. 인프라 - 인프라 : 웹 서비스를 위해 여러 종류의 컴퓨터들이 동작하는 환경 from http://sorious77.tistory.com/58 by ccl(A) rewrite - 20

LIKE문으로 검색하고 연관성 깊은 것부터 출력하기

LIKE문으로 검색하고 연관성 깊은 것부터 출력하기 환경 Lalavel PHP mySql 문제 보통 유사한 결과값을 찾을 때 like문을 사용하면 쉽게 찾을 수 있다. *데이터베이스* SLECT * FROM user WHERE name LIKE '%이름%' *Laravel* $query = $this->select('*') ->where('name', 'LIKE', '%이름%'); 하지만 이러한 데이터가 있을 때 연관성이 깊은 순서대로 출력하고 싶은데 어떻게 해야할까 검색을 하다가 발견했다! 데이터 출력하고 싶은 순서 이름1 이름 이름 이름1 1이름 1이름 바로 ORDER BY CASE THEN을 사용하는 것이다! 해결 *데이터베이스* SELECT * FROM user WHERE name LIKE '%이름%' ORDER BY CASE WHEN name = '이름' THEN 0 WHEN name = '이름%' THEN 1 WHEN name = '%이름%' THEN 2 WHEN name = '%이름' THEN 3 ELSE 4 END *Laravel* $query = $this->select('*') ->where('name', 'LIKE', '%이름%') ->orderBy(DB::raw(' CASE WHEN name="이름" THEN 0 WHEN name="이름%" THEN 1 WHEN name="%이름%" THEN 2 WHEN name="%이름" THEN 3 ELSE 4 END )); 이렇게하면 원하는 유사한 결과값을 정렬된 상태로 가져올 수 있다 ☺️ from http://become-a-deve

Remove Laravel bootstrap cache config.php uploaded to AWS

Remove Laravel bootstrap cache config.php uploaded to AWS AWS 테스트 서버에 코드를 배포했다. 하지만 수정된 코드만 배포된 게 아니라 laravel.log와 bootstrap/cache/config.php까지 같이 배포되었다. 소스트리를 사용해서 확인해봐도 코드 파일들만 테스트 브랜치에 merge되어 있었는데... 어떻게 저게 올라갔지... .gitignore에 명시해놔도 이상하게 올라간다.? 이미 저 파일들이 테스트 서버로 올라간 이상 테스트 서버에 ssh로 접속해서 rm -rf로 디렉토리를 지워봤자 또 다른 에러들이 나게 된다. 라라벨이 동작할 때 bootstrap을 통해 준비하는데 로컬 경로들 때문에 테스트 서버 상에서는 경로를 못찾아서 나는 에러들이었다. 방법은 AWS 테스트 서버를 정상 상태로 재배포(롤백)한 다음 로컬에 있는 브랜치에서 올라가지 말아야 할 파일들을 제거하는 것이다. Laravel 프로젝트의 bootstrap/cache 디렉토리의 config.php를 제거하고 laravel.log도 제거한 뒤 다시 배포했다. 그 결과 성공. 초반에는 어떻게 해야할 지 몰라서 소스 트리에서 파일이 잘못 올라갔나 한참을 봤다. 새로 브랜치를 만들고 코드를 다시 적용해서 올려야하나 생각했는데, 코드를 하나도 작성하지 않은 경우에도 동일 문제가 있었다. 여기서 힌트를 얻어서 테스트 서버에서 에러가 나올 때 특정 파일에 대한 경로가 있었는데 그 경로를 바탕으로 로컬 프로젝트에서 올라가면 안되는 파일들을 찾아낼 수 있었다. 참 쓸데 없는 삽질이었다. php artisan cache:clear를 해도 config.php는 제거되지 않는다. 그냥 지워야한다. from http://oneshottenkill.tistory.com/623 by ccl(A) rewrite - 2020-03-11 02:20:38

디버그바 설치

디버그바 설치 1. 컴포저 설치 composer require barryvdh/laravel-debugbar --dev 2. .env 3. 디버그바 설치화면 from http://anko3899.tistory.com/420 by ccl(A) rewrite - 2020-03-11 01:54:37

laravel modal crud list

laravel modal crud list 1. index (데이터가져오기) https://www.youtube.com/watch?v=7Pl5T5jf3Kk&list;=PLRheCL1cXHrsVMqY-ZFuEaHIjPB7xcnli 2. store (데이터 삽입) https://www.youtube.com/watch?v=YxTErC4a7sA&list;=PLRheCL1cXHrsVMqY-ZFuEaHIjPB7xcnli 3. edit updata (업데이트_ https://www.youtube.com/watch?v=V7v8zWexpQ4&t;=923s 4. delete (삭제) https://www.youtube.com/watch?v=I-B9TvjukLg&list;=PLRheCL1cXHrsVMqY-ZFuEaHIjPB7xcnli from http://anko3899.tistory.com/427 by ccl(A) rewrite - 2020-03-11 01:20:38

파이썬에서 서버로 데이터 전송(post 방식)

파이썬에서 서버로 데이터 전송(post 방식) 환경 Ubuntu php laravel python 파이썬에서 php 서버로 데이터 전송 후 서버에서 데이터베이스로 삽입 또는 수정하는 작업을 진행하려고 한다. 검색을 하면 파이썬에서 서버로 전송하는 방법은 많이 나오는데 서버에서 어떻게 값을 받는지에 대한 게시글은 찾기 힘들다ㅠ 또 나는 전송할게 그냥 dict나 list가 아니라 dict list로 되어있는 데이터인데 이런경우 또한 찾기 힘들다ㅠㅠㅠ 많은 시행착오 끝에 해결!!!ㅠㅠㅠ python data = [{"data":1, "data1":2}, {"data":3, "data1":4}] data = json.dumps(data) headers = {'Content-Type': 'application/json', 'Accept': 'application/json'} res = requests.post(url, params={'result':data}, verify=False , headers=headers) print(res.text) # 서버에서 전송하는 return 값 출력 print(res.status_code) #서버 상태값 ex)200, 500... server(php 기준) Input::get("result") json.dumps 할때 숫자가 들어가있을 경우 오류가 발생할 수 있다. int64 not json serializable 나는 이런 오류가 발생했는데 이게 발생했을 경우 숫자 값을 넣을때 그냥 넣지 말고 int(숫자) 이렇게 넣자! from http://become-a-developer.tistory.com/52 by ccl(A) rewrite - 2020-03-11 01:07:38

Client vs. Server vs. Framework

Client vs. Server vs. Framework client vs. server vs. framework * 프론트 엔드 vs 백엔드 vs 클라이언트 측 vs 서버 측 프론트 엔드 == 클라이언트 사이드 프론트 엔드 프레임 워크 백엔드 == 서버 사이드 백엔드 프레임 워크 화면에 보여주는 뷰 정적 페이지 클라이언트 측에서 발생하는 모든 것 사용자 인터페이스 구축 코드 작성 프론트 엔드 + Dom selector + 동적 화면 처리 + 서버 비동기 요청 기본 : jQuery 로직, 시스템 동적 페이지 DB 연동(MySQL, Oracle,...) 사용자 인터페이스와 관련없는 서버 측에서 일어나는 모든 일 html, css, js로 만든 파일을 생성 가능 범용 웹 프레임 워크 HTML및 CSS의 서버 측 렌더링 모두 수행 1) Zend, Symfony, CakePHP - PHP 프레임워크 2) SVN, CVS, Git - 버전제어 3) Linux - 개발,배포 시스템 HTML, CSS, JavaScript(JSON) Bootstrap, Foundation, Backbone, EmberJS Ajax, Vue, Angular, React ... Ruby, PHP, JSP, ASP, ASP.Net, Python, NodeJS ... php-Laravel, python-Django, Flask, node.js-Express, java/jsp - Spring, ruby-Rails, ... * 웹 발전 - 초창기 웹은 참 단순했음 서버 사이드 언어 존재하지 않음. *** 인터넷의 3요소 (팀버너스리) ① HTML (Hyper Text Markup Language) : 웹 브라우저가 사용자에게 정보를 보여줄 때 정보가 담겨있는 것 ex> 편지. 메시지 ② HTTP (Hyper Text Transfer Protocol) : HTML을 서버와 클라이언트가 주고 받기 위한 통신 규약 ex> 운송 담당. 편지를 주고받기 위한

JPA(Java Persistence Api) - 입문

JPA(Java Persistence Api) - 입문 ■JPA(Java Persistence Api) 간단 설명! - 먼저 ORM이 무엇인지 알아야 한다! ORM(Object-Relational Mapping)은 객체지향적인 db 개발 패러다임, 쉽게 말하면 객체지향적인 db 개발 방법이라고 말할 수 있다. 객체지향 언어의 객체와 관계형 데이터베이스의 데이터 사이에서 나타나는 미묘한 차이와 이로 인한 문제들을 극복하기 위해 등장한 개발 방법이다. - ORM을 구현한 프레임워크는 상당히 많다. php 기반의 Laravel, python 기반의 Django, java 기반의 Spring 등 - 여기서는 ORM이라는 개념을 Spring 프레임워크에 맞게 명세된 JPA를 배울것이다. 정확히는 ORM을 java에 맞게 구체화한 JPA, 그리고 그 JPA를 구현한 Hibernate를 배울것이다. 다른 jpa의 구현체로는 OpenJPA, EclipseLink, TopLink Essentials 등이 있다. (Hibernate가 규모가 가장 큼) - Hybernate는 엔티티를 중심으로 돌아간다! ■엔티티가 뭘까?? - 엔티티는 테이블과 매핑되는 클래스다! - 엔티티 작성 방법은 XML 파일에 작성하는 것과 Java 파일에 직접 어노테이션으로 작성하는 것이 있다 .어노테이션을 사용하는 편이 나중에 읽기 편하다고 한다 ■Persistence(영속성)가 뭘까?? - 사전적 정의는 엔티티를 영구 저장하는 특징... 인데 와닿지 않는다. 엔티티를 저장하고 관리하는 특징이라고 생각하면 될 듯하다. ■JPA를 사용하고 있는 기업은? - 배민,쿠팡 등등등 ■Hibernate vs Mybatis 사용 현황 - 이미지 출처 : https://trends.google.com/trends/explore?q=mybatis,hibernate ■JPA(Hibernate)의 장점은?? (Mybatis 사용의

프레임워크 정리 비교 글

프레임워크 정리 비교 글 Funny Programing Carry 2017. 12. 21. 09:26 프레임워크의 개념을 한번에 잡아주는 좋은 글이다.. 프레임워크란 단어처럼 많이 쓰이면서도 애매한 단어가 없는 것 같다. 일단 구글링을 해 본 결과 다음과 같은 정의를 찾을 수 있었다. ========================================================================== GoF의 디자인 패턴으로 유명한 랄프 존슨(Ralph Johnson) 교수는 프레임워크를 "소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것" 이라고 정의하였다. 프레임워크는 라이브러리와 달리 애플리케이션의 틀과 구조를 결정할 뿐 아니라, 그 위에 개발된 개발자의 코드를 제어한다. 프레임워크는 구체적이며 확장 가능한 기반 코드를 가지고 있으며, 설계자가 의도하는 여러 디자인 패턴의 집합으로 구성되어 있다. ========================================================================== 아, 저 말이 바로 이해가 간다면 굳이 다음 글을 읽을 필요는 없다. 이 글은 저 말을 이해하지 못하는 사람들 (나 자신을 포함하여) 을 위해 같은 이야기를 길게 풀어놓은 것에 불과하니까 말이다. 그런 분은 그냥 조용히 뒤로 가기 버튼을 눌러 주시거나, 가볍게 읽으시고 이 글에 잘못된 점이나 미비한 부분을 바로 잡아주셔도 된다. 위에서 프레임워크와 라이브러리를 비교한 글귀를 찾을 수 있듯이, 일단 프레임워크를 라이브러리의 연장선상에서 생각하는 것으로 프레임워크에 대한 이해를 시작해 보자. 라이브러리의 정의는 다들 대강은 알다시피 자 주 쓰일 만한 기능들을 모아 놓은 유틸(클래스)들의 모음집 정도로 정의할 수 있겠다. 사용자(프로그래머)와 실

Vue.js 소개

Vue.js 소개 따라서 Vue.js는 평생만큼 다른 프레임 워크에서 새롭지도 덜 인기도 없습니다. 이제 Vue.js에서 승리하는 요소가 무엇인지 살펴 보겠습니다. Vue.js가 특별한 이유는 무엇입니까? Vue의 가장 큰 장점은 혈통이 없다는 것입니다. 신선하고 약간의 수하물이 있습니다. 그것은 React & Angular의 실수와 성공으로부터 배웠습니다. Vue는 가볍고 쉽게 배울 수 있습니다. 그것은 꽤 기본적인 문서를 가지고 있지만 좋은 일을합니다. 그리고 각도에 비해 많은 것을 배울 것도 없지만, 이것은 믿을 수 없을만큼 강력합니다. PageKit, Python China는 Vue를 많이 사용하는 프로젝트 중 두 가지입니다. 여기에 목록이 있습니다. 또한 React와 같은 Angular 및 Virtual DOM과 같은 양방향 데이터 바인딩 기능을 갖추고 있습니다. 이제 Vue.js에 대한 기본 개념이 매우 분명해졌습니다. 따라서 Angular and React와 비교해보십시오. Angular- Related : React vs Angular 2 : 귀하의 비즈니스에서 어떤 점이 더 좋습니까? Angularjs 대 Vue.js 대 Angularjs 이 두 가지를 비교하면서 앵귤러 ( 앵귤러 2 출시 이후 대부분 )가 매머드이며 Vue.js가 곧 배가 고팠다 고 선언하자. 그러나 개발자가 Vue 로 전환 하는 데는 여러 가지 이유가 있습니다 . Vue의 소유자 인 Evan You는 이유를 올바르게 설명합니다. Vue.js는 (융통성보다) 유연하고 덜 독창적 인 솔루션입니다. 이렇게하면 각도 방식으로 모든 작업을 수행하는 대신 앱을 원하는 방식으로 구성 할 수 있습니다. 인터페이스 레이어 일 뿐이므로 전체 SPA가 아닌 페이지의 가벼운 기능으로 사용할 수 있습니다. 이제 기본적인 통찰력을 줄 수있는 몇 가지 코드를 볼 수 있습니다 (크레딧 : fadeit.dk). Vue.js와 Angularjs의 결론 : Ang

Sublime Text 설치 및 PHP 개발 환경 구축

Sublime Text 설치 및 PHP 개발 환경 구축 import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation') from http://lesstif.tistory.com/278 by ccl(A) rewrite - 2020-03-07 11:56:08

라라벨 설치하기 (Linux Centos7)

라라벨 설치하기 (Linux Centos7) CentOS7에 라라벨 설치를 해보도록 하겠습니다. 다음 글은 다음 문서를 번역하였습니다. https://devops.profitbricks.com/tutorials/install-the-laravel-php-framework-on-centos-7/ PHP와 Nginx 설치하기 php7을 사용할 것이기 때문에 가능한 패키지를 확득하기 위해서 EPEL과 Webtatic 저장소를 추가해줍니다. rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 먼저 위의 두 명령어를 입력한 후, 성공하면 다음을 실행시키세요. yum check-update 그리고 나서 다음 명령어를 실행합니다. yum search php71 다음 두 패키지가 리턴되어야 합니다. mod_php71w.x86_64 : PHP module for the Apache HTTP Server php71w-fpm.x86_64 : PHP FastCGI Process Manager 우리는 웹서버로 nginx를 사용하고, php를 다루기 위해서 fpm을 사용할 것입니다. 우리는 이미 Webtatic repo를 구성했기 때문에, 우리는 업데이트된 버전의 nginx를 획득할 수 있습니다. 우리는 Laravel을 실행시키기 위해서 다음의 필요한 컴포넌트들을 설치해줍니다. yum install nginx1w php71w-fpm php71w-pdo php71w-mbstring php71w-xml php71w-common php71w-cli openssl과 tokenizer PHP extentions은 php71w-common에 있어 별도로 설치하지 않았습니다. php71w-cli를 사용하면 커맨드 라인에서 PHP로 작

Token 인증 개념 JWT (Login 기능을 위한)(2)

Token 인증 개념 JWT (Login 기능을 위한)(2) Session 와 Token 인증 개념 (Login 기능을 위한)(2) Token 인증을 사용하기 위해서 표준이 있습니다. 그건 JWT 입니다. JSON Web Token 이 뭘까? 기본 정보 JSON Web Token (JWT) 은 웹표준 (RFC 7519) 으로서 두 개체에서 JSON 객체를 사용하여 가볍고 자가수용적인 (self-contained) 방식으로 정보를 안전성 있게 전달해줍니다. 수많은 프로그래밍 언어에서 지원됩니다 JWT 는 C, Java, Python, C++, R, C#, PHP, JavaScript, Ruby, Go, Swift 등 대부분의 주류 프로그래밍 언어에서 지원됩니다. 자가 수용적 (self-contained) 입니다 JWT 는 필요한 모든 정보를 자체적으로 지니고 있습니다. JWT 시스템에서 발급된 토큰은, 토큰에 대한 기본정보, 전달 할 정보 (로그인시스템에서는 유저 정보를 나타내겠죠?) 그리고 토큰이 검증됐다는것을 증명해주는 signature 를 포함하고있습니다. 쉽게 전달 될 수 있습니다 JWT 는 자가수용적이므로, 두 개체 사이에서 손쉽게 전달 될 수 있습니다. 웹서버의 경우 HTTP의 헤더에 넣어서 전달 할 수도 있고, URL 의 파라미터로 전달 할 수도 있습니다. JWT 는 어떤 상황에서 사용될까? 다음과 같은 상황에서 JWT 가 유용하게 사용 될 수 있습니다: 회원 인증: JWT 를 사용하는 가장 흔한 시나리오 입니다. 유저가 로그인을 하면, 서버는 유저의 정보에 기반한 토큰을 발급하여 유저에게 전달해줍니다. 그 후, 유저가 서버에 요청을 할 때 마다 JWT를 포함하여 전달합니다. 서버가 클라이언트에게서 요청을 받을때 마다, 해당 토큰이 유효하고 인증됐는지 검증을 하고, 유저가 요청한 작업에 권한이 있는지 확인하여 작업을 처리합니다. 서버측에서는 유저의 세션을 유지 할 필요가 없습니다. 즉 유저가 로그인

[IT용어] 프레임워크(Framework)와 라이브러리(Library)

[IT용어] 프레임워크(Framework)와 라이브러리(Library) 프레임 워크 ( Framewor k ) 개념 원하는 기능 구현에만 집중하여 빠르게 개발할 수 있도록 기본적으로 필요한 기능을 갖추고 있는 것 프로그램의 기본이 되는 뼈대라고 보면 된다. 뼈대? 뭔 뼈대? 이해가 잘 가지 않는다. 예를 들면 공룡제작 프레임워크를 다운받아서 써보자. 기본으로 공룡 뼈대가 제작돼있다. -티라노사우루스 뼈대 -벨로키랍토르 뼈대 -스피노사우루스 뼈대 -알로사우루스 뼈대 그럼 우리가 티라노사우루스 뼈대(프레임워크)를 골라 제작(코딩)을 한다고 가정했을 때, 티라노의 형태가 이미 만들어져있으니 살을 어떻게 붙일까만 집중해서 코딩할 수 있겠죠 그리고 뼈대엔 팔이 2개 있는데 새로운 뼈를 만들어서 팔을 3개 만들 순 없다. 왜? 팔 2개라고 정의 해놨으니까요 "티라노사우르스 뼈대는 팔이 2개다." 라고 말이죠 하지만? 팔을 굵게 만들고, 꼬리는 짧게 다리는 길게(메소드길게(메서드) 만들순 있습니다. 사용 이유 만약 공룡 제작 프레임워크가 없다면 그 뼈대 자체를 만드는데만 한 세월이 걸리게 됩니다. 하지만 프레임워크를 이용한다면 더욱 빠르게 만들 수 있고, 팔 2개 다리 2개 꼬리 1개 이렇게 정해져있으니 표준을 정할 수 있습니다. 예를 들어 공룡 제작프레임워크 소스를 받는다면 "아 팔 2개 다리 2개 꼬리 1개이겠구나" 알 수 있습니다. 언어별 대표 프레임워크 Java - Spring Python - Django PHP - Laravel JavaScript - React GO - Revel Ruby - Rails 라이브 러리( Library ) 개념 필요한 기능을 미리 준비 해놓은 개념 굉장히 범위가 포괄적이다. 미리 작성된 코드, 서브루틴(함수), 클래스, 값, 자료형 이 모두가 라이브러리에 속한다. 한

XE3에서 COMPOSER_HOME 설정하기

XE3에서 COMPOSER_HOME 설정하기 XE3는 라라벨(Laravel) 기반으로 작성된 CMS(Content Management System)이다보니 라라벨에서 사용하는 컴포저(Composer)라는 의존성 관리 툴을 활용하고 있다. 이 툴을 활용해서 플러그인과 같은 것들을 생성할 수 있다고 한다. 필자의 경우 이 Composer 설치 경로를 설정하지 않아서 'COMPOSER_HOME environment variable must be set for composer to run correctly.'라고 에러가 났었다. XE3 컴포저 오류 화면 XE3의 경우 컴포저를 내장하고 있으므로 XE3 내에서 컴포저 관련 파일들이 저장될 공간을 만들고 그 경로를 XE3 관리자 페이지에서 설정하면 해결된다. 컴포저 저장소 생성 사이트 루트경로로 가서 컴포저 저장소로 활용할 폴더를 '.composer'라는 이름으로 생성하였다. 기본 설정 화면 다음 경로 '사이트주소/setting/setting'로 가서 하단의 '사이트 COMPOSER 홈 디렉토리'에 '.composer'이라고 값을 입력해주자. 컴포저 경로가 설정된 화면 마지막으로 잘 적용되었는지를 확인하면 다음과 같이 입력한 명령이 잘 수행된 것을 볼 수 있다. from http://engineeringcode.tistory.com/18 by ccl(A) rewrite - 2020-03-07 09:55:53

[Vue] Angular 2 대신에 Vue.js를 선택한 이유

[Vue] Angular 2 대신에 Vue.js를 선택한 이유 들어가며 이 글은 Medium 의 "Why we moved from Angular 2 to Vue.js(and why we didn't choose React)" 글을 번역한 글입니다. 항상 이상적일 수만은 없는 실제 프로젝트 여건에서 신중하게 프레임워크를 고민하고 선정해 나가는 과정을 상세하게 기술한 글입니다. Angular 2로 구축되어 있는 프로젝트를 업그레이드 & 마이그레이션 하는 과정에서 프로젝트의 현 상황과 여건을 반영한 프레임워크 선정 기준을 세우고, Vue.js 프레임워크를 적용해 나가는 개인 경험담이 담겨져 있습니다. 급격하게 요동치는 프론트엔드 프레임워크 시대에, 프론트엔드 개발자로서 항상 어떤 프레임워크를 선정해야 할지 고민하는 데 인사이트를 제공하는 글이 되길 바랍니다. 본문 우리는 최근에 Rever 라는 사이트에 Vue.js로 개발한 웹 페이지를 오픈했습니다. 16주 동안 641 개의 커밋이라는 강도 높은 개발 과정을 지나고 나니, Vue.js 도입하기를 잘했다는 생각이 듭니다. 8 달 전에 우리는 Angular 2를 쓰고 있었습니다. 정확하게 말하자면 Angular 2 베타 9 버전이었죠. 외주가 Angular 2로 제작해놓은 웹 사이트가 있었는데, UX/UI부터 설계까지 한 번도 만족한 적이 없었습니다. 심지어 어느 부분에 대해서는 Angular 2 자체가 맘에 들지 않았어요. 경험담을 더 얘기하기 전에, Angular 2 베타 9와 Angular 2.0는 완전히 다른 제품이라고 말하고 싶습니다. 그렇기 때문에 문제가 있었죠. Beta 9부터 2.0.0까지 8 개의 Beta 버전이 있었습니다. RC 8 개와 2.0.0 버전, 그리고 업그레이드까지 합치면 총 17 개의 버전이 있었죠. 우리는 Beta 9에서 2.0.0으로 업그레이드를 시도했지만, 상당히 많은 부분들이 호환되지 않아 업그레이드 작업이 버거워졌습니다.

snipeit install for centos 7.x

snipeit install for centos 7.x centos 7.x 기준이다. centos 6.x 에 설치를 하려고 했으나 설치가 안된다. hostname: Unknown host 어쩌구 저쩌구 하면서 안되는걸 봐선 OS 미지원인거 같다. 뭐 방법이 있겠지만 귀찮아서 centos 7.x 로 설치했다. 설정부분은 거의 대부분 default 로 엔터만 치면 된다. # setenforce 0 # firewall-cmd --zone=public --add-port=http/tcp --permanent # firewall-cmd --reload # yum install -y install epel-release # mkdir -p /var/www/html; cd /var/www/html/ # wget https://raw.githubusercontent.com/snipe/snipe-it/master/install.sh && chmod 744 install.sh && ./install.sh 2017-05-02 11:09:23 (573 KB/s) - 'snipeit.sh' saved [18343/18343] _____ _ __________ / ___/____ (_)___ ___ / _/_ __/ \__ \/ __ \/ / __ \/ _ \______ / / / / ___/ / / / / / /_/ / __/_____// / / / /____/_/ /_/_/ .___/\___/ /___/ /_/ /_/ Welcome to Snipe-IT Inventory Installer for Centos, Debian and Ubuntu! The installer has detected centos version 7 as the OS. Q. What is the FQDN of your server? (localhost): localhost Setting to lo

[Docker]Apache-CodeIgniter-FrontEndPackageManager(Bower)-Php-Ubuntu

[Docker]Apache-CodeIgniter-FrontEndPackageManager(Bower)-Php-Ubuntu 이 포스팅 분류는 Docker를 정확히 어떻게 사용할지를 다루지 않는다. 대신 Docker로 특정 상황에 어떻게 환경을 구축해야하는지의 예제를 담고 있다. 만약 이 Docker에 대해서 어떻게 관리하는 지를 알고싶다면 인터넷을 검색을 활용하거나 필자의 블로그에서 Software-Docker를 확인해주기를 바란다. 현재 여기 업로드 되어있는 모든 예제들은 필자의 github repository에 올라와있다. 그 주소는 아래와 같다. https://github.com/kukaro/Eris-DockerExampleTemplate 예제를 직접 확인하고 싶다면 해당 repository를 참조하라. Php를 어느 정도의 사람이 하는지는 필자도 잘 모른다. 필자가 Php를 하는 것도 순전히 취미이기 때문에 한국에서는 php를 선택하는 사람이 얼마 없는걸로 알고있다. 그래도 만약 php를 사용한다면 보통 프레임워크를 선택할것이다.(개발자라면) Php는 유명한 프레임워크로는 laravel과 codeigniter가 있다. 그래도 소수지만 만난 php유저들 중에서는 laravel이 인기가 좀 있는 편인거 같다. 하지만 필자는 codeigniter로 시작했고 이 역시 인기 있는 편이다. 이번에는 codeigniter를 apache에서 사용할 건데 사실 초기 설정이 매우매우 귀찮다. php의 장점인 쉽다는걸 무시해도 좋을 만큼 초기 설정이 귀찮은 편이다. 하지만 우리는 Docker가 있으므로 Docker를 쓰면 여러모로 편리하게 사용할 수 있다. CodeIgniter를 사용하기 앞서 참고할 부분은 아래와 같다. [CodeIgniter]CodeIgniter설치하기 [CodeIgniter]url에서 index.php 제거하기 또한 우리는 FrontEndPackageManager를 쓸거고 Bower를 쓸것이다. 사

ORM(Object relational Mapping)이란?

ORM(Object relational Mapping)이란? 안녕하세요 냥장판 입니다🐱‍👤🐱‍👤 이번 게시글에서는 SQL ORM(Object relational Mapping)에 대해서 알아보도록 하겠습니다. 1. ORM이란 데이터베이스와 객체 지향 프로그래밍 언어 (Python, node JS 등)간의 호환되지 않는 데이터를 변환, 맵핑하는 프로그래밍 기법이다. 객체 지향 프로그래밍언어(OOP, Object Oriented Programming)는 클래스라는 개념이 있고, RDBMS 에는 테이블이라는 개념이 있다. OOP를 사용해서 작성된 클라이언트 프로그램이 압도적으로 많다. OOP를 사용하는 데 제약을 받지 않고, RDBMS를 이용하기 위한 프레임워크(Framework)로 이해하면 된다. 한 예로 클래스로 스키마(Schema)를 매핑하고, 메소드(Method)로 쿼리(Query)를 작성하면, 객체로 이뤄진 테이블을 가져올 수 있다. 2. ORM 장, 단점 ORM의 장점은 별도 SQL을 사용하지 않고 OOP 언어 그대로를 사용할 수 있다. DBMS에 대한 종속성을 줄일 수 있다. ORM의 단점은 직접 SQL을 사용하는 것보다 복잡할 수 있다. (자동으로 생성되는 쿼리 때문) 속도나 생산성이 저하될 수 있다. ORM 액세스용 드라이버(for MS SQL Server) 클라이언트 응용 프로그램이 Microsoft SQL 데이터베이스에 연결 하는 데 사용하는 ORM 프레임워크는 아래와 같다. 그럼 이만! from http://miaow-miaow.tistory.com/46 by ccl(A) rewrite - 2020-03-07 07:55:46

[Book] 프로그래밍 언어도감 - 스크립트 언어

[Book] 프로그래밍 언어도감 - 스크립트 언어 목차: 스크립트 언어 JavaScript ActionScript CoffeeScript Dart TypeScript Perl Python Ruby PHP JavaScript 🔥 탄생 : 1995년 주요 용도 : 웹 브라우저 분류 : 절차형 객체지향형/인터프리터 ✎ DHTML & Ajax : DHTML(Dynamic HTML, 동적 HTML)에 의해서 동적으로 페이지를 변화시킬 수 있다. 또한 Ajax 비동기 방식으로 페이지 전환 없이 새로운 콘텐츠를 표현할 수 있다. (실제 사례: Google Maps JavaScript API) ✎ 프로토타입 기반 : JavaScript는 객체지향 언어이지만 클래스 기반이 아니라 프로토타입 기반이다. 기존 객체를 복제하여 새로운 객체를 생성한다. (더 알아보기: JavaScript 프로토타입 이해하기) ✎ JSON : JavaScript Object Notation. 텍스트 기반의 데이터 구조로 eval 함수로 평가해서 JavaScript 객체로 변환할 수 있다. XML 대신에 사용되는 경우가 많고, 많은 언어에서 지원하고 있다. ✎ 다양한 프레임워크 : jQuery, AngularJS, PrototypeJS 등이 있다. 서버 측에서 실행하는 Node.js도 있다. ✎ AltJS : JavaScript 대신 사용되는 환경. 예를 들어, TypeScript, Haxe, Dart, CoffeeScript 등이 있다. ✎ ECMAScript : JavaScript 표준화 사양. 각 브라우저마다 동일한 사양으로 통일하기 위함. JavaScript 컴파일러인 Babel 툴도 있다. 1999년 - ECMAScript 3 2009년 - ECMAScript 5 2015년 - ECMAScript 2015 (ES6) 2016년 - ECMAScript 2016 (ES7) 2017년 - ECMAScri

Cordova로 Facebook Login을 연동해보자!

Cordova로 Facebook Login을 연동해보자! 환경 cordova 9.0.0 android 8.1.0 mac php laravel 개요 일반적인 안드로이드나 ios, web이 아닌 하이브리드에서 페이스북 로그인을 연동해야한다! 개발하는게 다 그렇지만 나는 내가 하나하나 개발하는게 아니라 이렇게 api를 연동하면 내가 개발하는 것보다 2배이상은 삽질을 한다. 먼저 페이스북개발자 사이트에서 app을 만들어준다 https://developers.facebook.com/ 여기서 로그인하고 앱을 만들어주면된다 플러그인 설치 그 다음에 plugin을 설치해주는데 https://github.com/jeduan/cordova-plugin-facebook4 페이스북에서 공식으로 만든 plugin이다! 여기서 하라는대로 $ cordova plugin add cordova-plugin-facebook4 --save --variable APP_ID="" --variable APP_NAME="" 플러그인 오류 하지만 plugin 설치후 오류가 발생했다. APP_ID 또는 APP_NAME이 무엇인지 인지를 못하는데 여기서 정말 많은 시간을 들였다. github에 있는 문서에서는 다른 git에 들어가서 local로 plugin을 다운받으라고 했는데 .../node_module/.bin/shjs를 못찾는다는 오류였다. 터미널로 들어가서 경로를 확인 해봤지만 shjs 있지만 찾지를 못했다 그래서 다시 깔아보고 삭제해보고 다르게 해보고 여러가지 방법을 시도 한 결과 config.xml 파일에 plugin 정보를 추가해주고 cordova build를 하는게 답이었다. .config.xml $ cordova build 이렇게 해주니 APP_ID 나 APP_NAME이 무엇인지 못찾는다는 오류는 발생하지 않았다. * 혹시 다른 오류때문에 고생하는 사람들을 위한 ur