TIL
-
TIL.56 SPA_UX 및 개발자TIL 2020. 12. 4. 15:18
UX = User experience 사용자 경험(使用者經驗, User Experience 유저 익스피리언스[*], 간단히 UX)은 사용자가 어떤 시스템, 제품, 서비스를 직, 간접적으로 이용하면서 느끼고 생각하게 되는 총체적 경험을 말한다. 단순히 기능이나 절차상의 만족뿐 아니라 전반적인 지각 가능한 모든 면에서 사용자가 참여, 사용, 관찰하고 상호 교감을 통해서 알 수 있는 가치있는 경험이다. 긍정적인 사용자 경험의 창출은 산업 디자인, 소프트웨어 공학, 마케팅, 및 경영학의 중요 과제이며 이는 사용자의 니즈의 만족, 브랜드의 충성도 향상, 시장에서의 성공을 가져다 줄 수 있는 주요 사항이다. 부정적인 사용자 경험은 사용자가 원하는 목적을 이루지 못할 때나 목적을 이루더라도 감정적, 이성적으로나 경제..
-
TIL.55 Python 정규표현식 사용하기TIL/Python 2020. 12. 3. 17:20
정규표현식 사용하기 정규표현식 (regular expression)은 일정한 규칙(패턴)을 가진 문자열을 표현하는 방법이다. 복잡한 문자열 속에서 특정한 규칙으로 된 문자열을 추출하거나 바꿀때 사용하며 또한, 문자열이 정해진 규칙에 맞는지 판단할때도 사용한다. 쪼개서 학습하면 이해가 빠르다고 한다. 정규 표현식은 re 모듈을 가져와서 하용하며 match 함수와 serch 함수를 사용한다. 문자열 판단하기 특정 문자열이 포함되어 있는지 판단해보자 re.match('패턴', '문자열') >>> import re >>> re.match('Hello', 'Hello, world!') # 문자열이 있으므로 정규표현식 매치 객체가 반환됨 >>> re.match('Python', 'Hello, world!') # 문..
-
TIL.54 Httpie를 이용해 통신해보기(Django, MySQL)TIL/Django 2020. 12. 2. 19:25
Django_CRUD_2 이전 CRUD_1에서는 모델과 데이터베이스간에 다뤘던 Django QuerySetAPI를 사용하고 연습해봄으로써 손에 익히기 위한 공부였다면 CRUD_2에서는 위에서 배운 내용1의 기본기를 통해서 실제로 클라이언트 통신을 보내 정상적으로 통신이 이루어지는 과정에 대한 이해이다. 클라이언트 Tool로서는 더 개발자스러운(?) Httpie를 이용하도록 하자. 다시 한번 HTTP 를 이용한 통신이 이루어지는 과정 세션이 끝나면 간단한 백엔드 API를 만들 수 있다고 볼 수 있다. 클라이언트에서 서버로 요청이 들어오면 가장 먼저 URLconf 로 들어가서 들어온 URL이 우리 서버에서 처리할 수 있는 URL인지 하나하나 따져본뒤 이상이 없다면 뷰로 그 처리를 위임하고 뷰에서 요청에 대해..
-
TIL. 53 CSV 파일 데이터로 집어넣기 (Django, MySQL)TIL/Python 2020. 12. 1. 17:52
CSV 파일이란 CSV(Comma Seperated Value) 데이터는 쉼표를 기준으로 항목을 구분하여 저장하는 데이터를 말하며 콤마로 규칙적으로 구분되어 있기 때문에 엑셀과 같은 프로그램으로도 읽을 수 있고, 또 생성할 수도 있다. 주로 테이블 형태로 구성된 자료나 텍스트 자료를 저장할 때 사용한다. Python은 어떻게 CSV파일을 읽을 수 있을까 대부분의 프로그래밍 언어가 텍스트 파일을 읽을 수 있다. 특히 파이썬에는 CSV 파일을 다루기 위한 모듈이 있으며 그 중 csv.reader( ) 또는 csv.DictRedader( )라는 메소드를 이용하면 매우 쉽게 .csv 파일을 다룰 수 있다. 예제 import csv #csv파일을 다루기 위한 라이브러리를 import 합니다. with open('..
-
TIL.52 Bs4와 selenium 을 이용한 크롤링TIL/Python 2020. 11. 30. 19:12
스타벅스 코리아 홈페이지에서 모든 음료와 이미지를 csv 파일로 저장해보자 Bs4 / selenium / webdriver 사용 코드 리뷰 1. csv 파일 열어두기 CSV는 몇 가지 필드를 쉼표(, )로 구분한 텍스트 데이터 및 텍스트 파일이다. 확장자는 .csv이며 MIME 형식은 text/csv이다. comma-separated variables라고도 한다. # CSV 파일 열어두기 csv_name = "books.csv" csv_open = open(csv_name, "w+", encoding='utf-8') csv_writer = csv.writer(csv_open) csv_writer.writerow( ('title','imag_url' ) ) 2. 크롬을 사용할 예정으로 크롬의 웹드라이버를 ..
-
TIL.51 API 란?TIL/Django 2020. 11. 29. 23:27
API의 사전적 정의 “API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다.”(위키디피아) API는 어떠한 응용프로그램에서 데이터를 주고 받기 위한 방법을 의미한다고 볼 수 있다. 어떤 사이트에서 특정 데이터를 공유 할 경우 어떤 방식으로 특정 데이터의 정보를 요청해야 하는지, 어떤 데이터를 제공 받을 수 있을지에 대한 규격들을 API라고 부른다. 다시 한번 정리하자면, API는 응용 프로그램에서 사용할 수 있도록, 운영 체제 혹은 프로그래밍 언어에게 제공하는 인터페이스(규격)을 의미한다. 기상청의 공공 API로 예를 들어보..
-
TIL.50 Django Model 과 ORM 정리TIL/Django 2020. 11. 28. 23:00
Model 장고에서 모델이란 데이타 서비스를 제공하는 layer이다. 부가적인 메타데이터를 가진 데이터베이스의 구조(layout)이라 할 수 있다. 장고의 모델은 각 장고 App안에 기본적으로 생성되는 models.py 모듈 안에 정의하게 된다. models.py 모듈 안에는 하나 이상의 모델 클래스를 정의할 수 있으며 모델 클래스 하나는 데이터베이스에서이 하나의 테이블에 해당한다. 모델을 선언한 뒤에는 데이터베이스에 해당 모델을 위한 테이블을 생성해야하므로 반.드.시 migration 으로 활성화 시켜 내가 모델을 변경했다는 사실(또는 생성했다는 사실)과 이 변경사항을 migration에 저장시키고 싶다고 Django에게 알려주는 것과 같다 그다음 migrate 명령어로 데이터베이스에 모델과 관련된 테..
-
TIL.49 How the web works?TIL 2020. 11. 27. 14:51
만약 위코드 사이트를 접속하면 어떤 일들이 일어날지 알아보자. 웹은 어떻게 동작할까? 간단하게 설명한다면 사용자는 브라우저를 통해 요청을 보내고 서버로부터 응답을 받는 방식으로 동작한다 Hosting (호스팅, web hosting service) 호스팅은 서버 컴퓨터의 전체 또는 일정 공간을 이용할 수 있는 서비스를 일컫는다. 우리가 브라우저를 눈으로 볼 수 있는 이유는 우리의 요청으로에 대한 서버의 응답으로 홈페이지의 구성파일들(html, css, js)은 서버에 저장되어 있는 상태에서 서버의 응답으로 사용자에게 랜더링된 화면을 브라우저를 통해서 전달해주기 때문에 우리가 눈으로 볼 수 있다는 것이다. 즉, 위의 홈페이지 구성파일들은 서버에 저장되어있는데, 이때 서버는 "항상" 인터넷에 연결되어 있어야..