개인 프로젝트 15

HTML

브라우저의 특징과 장단점 우리가 외국어를 말할 때 아무리 이상하게 말해도 누가 막지 않는 것처럼 이상한 코드가 담긴 html이라도 브라우저에서 실행할 수는 있다. 다만, 이상하게 말하면 외국인이 이해하지 못하듯 브라우저도 html 문서를 이해하지 못할 것이다. - 장점 : 우리가 실수를 하더라도 페이지에 접속한 유저는 콘텐츠를 볼 수 있다. - 단점 : 브라우저는 잘못된 부분을 알려주지 않는다. HTML(Hyper Text Markup Language)이란? - HyperText(웹 페이지에서 다른 페이지로 이동할 수 있도록 하는 것) 기능을 가진 문서를 만드는 언어 HTML을 대할 때 반드시 필요한 마음가짐과 팁 - 절대 외우지 말기!!! 암기 금지!!! - 중요한 것은 암기가 아니라 구글링이다. - ..

Git과 Github

Git란? 로컬에서 관리되는 버전 관리 시스템 (VCS : Version Control System) 소스코드 수정에 따른 버전을 관리해주는 시스템 Github란? 클라우드 방식으로 관리되는 버전 관리 시스템(VCS) 자체 구축이 아닌 빌려쓰는 클라우드 개념 오픈소스는 일정 부분 무료로 저장 가능, 아닐 경우 유로 사용 깃허브는 '개발자들의 놀이터'라고도 불리며, 2008년 설립된 기업으로 '프로그래머들의 페이스북'이라고도 합니다. 2,400만 명의 소프트웨어 개발자들이 사용 중이며, 8,000만 개에 달하는 소스코드를 보유하고 있다고 합니다. 개발자들은 깃허브에 자신이 짠 코드를 저장하거나, 다른 개발자들과 공유 할 수 있으며, 공개한 코드를 놓고 여러 사용자가 아이디어를 덧붙여가며 더 나은 결과물을 ..

도메인 시스템(Domain System)이란?

IP란? 인터넷에 연결되어 있는 장치(컴퓨터, 스마트폰, 타블릿, 서버 등등)들은 각각의 장치를 식별할 수 있는 주소를 가지고 있는데 이를 IP라고 한다. 예) 115.68.24.88, 192.168.0.1, 125.209.222.141 도메인이란? IP는 사람이 이해하고 기억하기 어렵기 때문에 이를 위해서 각 IP에 이름을 부여할 수 있게 했는데, 이것을 도메인이라고 한다. 예를 들어 네이버에 접속하고 싶다면 누구나 쉽게 www.naver.com 통해서 접속할 수 있다. 하지만 도메인이 없다면 우리는 IP주소를 입력해서 네이버에 접속해야한다. 당연하게도 네이버의 IP주소를 외우고 다니는 사람은 거의 없을 것이다. 현재 기준(2020-11-25)으로 네이버의 IP주소는 "125.209.214.79"이다...

[메이플스토리] 스타포스 시뮬레이터 코드

전에 만들었던 스타포스 시뮬레이터의 코드 GUI조차 없는 허접한 시뮬이었지만 나름 스스로만든 첫작품 import random import math import os class ItemSample: # 입력받을 정보 # Item_Kind = 0 # 아이템 종류 : 일반템(Nomal), 타일런트(Tyrant) Item_Level = 0 # 아이템 레벨 : 1 ~ 200 사이의 정수 Star_Catch_Percent = 0 # 스타캐치 확률 : 0 ~ 5 % Star_Catch_Kind = 0 # 스타캐치 종류 : 1. 미적용, 2. 합적용, 3.곱적용 Start_Star = 0 # 시작 별 개수 : 0 ~ 24 사이의 정수 Goal_Star = 0 # 목표 별 개수 : 1 ~ 25 사이, Start_Star..

[Airbn* Clone Coding #3] Admin.py와 Models.py

Contents Django Documentation settings.py Admin.py와 Models.py Django Models 모듈의 종류 Django Documentation Django Documentation : docs.djangoproject.com/ Django Documentation은 말그대로 Django에 관한 정보를 문서화 해놓은 것입니다. Django에 관련된 모든 정보들이 위 URL의 사이트에 들어가 있다고해도 과언이 아닙니다. 주로 이용되는 세부주소를 조금씩 추가해나갈 예정입니다. ① settings.py : docs.djangoproject.com/en/3.1/ref/settings/ setting.py 파일에 대한 문서 Settings.py settings.py에는 d..

[Airbn* Clone Coding #2] DJANGO 소개

Contents Linter 와 Formatter Django Start!! Django의 주요 파일들 Linter 와 Formatter 1. Linter Python은 Compile 언어가 아닙니다. 때문에 Compile을 통하여 에러를 감지할 수가 없습니다. 일단 실행시키고 에러가 발생하면 그때서야 발견이 가능합니다. Linter는 에러가 생길 부분을 미리 감지해서 알려주기 때문에 불편한 상황을 피할 수 있습니다. 간단하게 말해서 코드에 틀린 부분이 있다면 Linter가 "거기 틀렸어."라고 알려주는 것과 같습니다. 대표적인 것 PEP 8 : 파이썬을 위한 스타일 가이드입니다. flake8 : 대표적인 Linter. "pipenv install flake8 --dev"으로 수동 설치가 가능합니다. 2..

[Nomad Coder - Airbn* Clone Coding #1] 환경설정하기

Contents 설치해야 할 프로그램과 이유 직접 설치하기 DJANGO vs FLASK vs REACT DeadSnakes 설치해야 할 프로그램 이 프로젝트를 진행하기 위해서 다운로드 해야 할 프로그램은 다음과 같습니다. Python3 WSL ( Window Subsystem for Linux ) 1, 2 : 윈도우에서 리눅스 명령어를 사용할 수 있게 해준다. Ubuntu 18.04 LTS Pipenv : npm + pkage.json 과 비슷한 것. Django [Pipenv을 설치하는 이유] 파이썬에는 pip( Package Install for Python )라는 패키지 관리자가 존재한다. 여기서 패키지 관리자란 컴퓨터의 운영 체제를 위해 일정한 방식으로 컴퓨터 프로그램의 설치, 업그레이드, 구성,..

Django란 무엇인가?

Contents Django란? 프레임워크(FrameWork) DJANGO vs FLASK vs REACT Django란? Django는 파이썬으로 만들어진 무료 오픈소스 웹 애플리케이션 프레임워크입니다. 프레임워크(FrameWork) Django는 프레임워크입니다. 그 외에도 많은 프레임워크가 있습니다. 대표적인 프레임워크는 다음과 같습니다. Spring : Java의 웹 프레임워크 Django: Python의 웹 프레임워크 Flask: Python의 마이크로 웹 프레임워크 Ruby on Rails: Ruby의 웹 프레임워크 Node.js의 Express.js 프레임워크 웹 프론트엔드의 SPA용 프레임워크 (AngularJS, Angular, Vue.js 등) 그렇다면 프레임워크란 무엇일까요? 그것을 ..

[Nomad Coder] 바닐라 JS로 크롬 앱 만들기 - 완성

강의에서 들은 내용을 응용해서 사이트를 만들어 봤다. 모르거나 강의에 나오지 않는 부분은 구글링을 통해서 보완했다. 완성작 디자인을 보기 좋게하기 위해서 각각 스크립트들의 위치를 계속 조정하면서 만들었다. Input Box는 보기 안좋아서 hidden으로 숨겼다. 폰트는 여러개를 사용해봤다. 인사말은 느낌있게 필기체를 사용해봤다. 할 일 리스트도 동일 "X" 표시가 맘에 안들어서 빼고 싶었는데.... 귀찮아서 일단은 놔두기로 했다. 나중에 바꿀 예정. 그리고 리스트의 숫자가 많아지면 보기 지저분해서 스크롤을 만들어줬다. 그 외에 랜덤 배경화면이라서 새로고침하면 총 4개의 배경화면 중에 1개가 랜덤으로 나온다. 근데 나오는 것만 계속 나오는거 같은데...

[Nomad Coder] 바닐라 JS로 크롬 앱 만들기 - 파트 2

4. 할 일 리스트 할 일 리스트는 정리하는데 좀 어려웠다. 로컬 스토리지에 데이터 저장, 요소 삭제, 요소 추가, 화면에 출력, 이벤트 발생시 처리 등 신경쓸게 많았다. const toDoForm = document.querySelector(".js-toDoForm"), toDoInput = toDoForm.querySelector("input"), // input 받은 데이터를 저장한다. toDoList = document.querySelector(".js-toDoList"); // 입력 받은 데이터 리스트를 저장한다. const TODOS_LS = "toDos"; let toDos = []; // 리스트를 지운다 function deleteToDo(event){ // event의 부모에 대한 정보를..