Programming

; develop a program

반응형

기초 77

[Java] 변수(Variable)

이번 포스팅에서는 자바(Java)에서 변수(Variable)에 대하여 공부를 해보고자 한다. 변수(Variable)란 변수는 말 그대로 '변하는 수'를 뜻한다. 예를 들어, 게임 캐릭터는 모두 레벨이 있는데, 처음에는 1이었던 레벨이 사냥이나 퀘스트를 통해 경험치를 얻게 되면 2나 3으로 레벨업이 된다. 또한 사람의 나이는 시간이 지나면 변하고, 은행에 있는 잔액도 입금과 출금이 발생하면 변하게 된다. 프로그래밍에서 이렇게 변하는 값을 변수라고 한다. 변수 선언 및 값 대입 변수는 값을 넣을 수 있는 빈 그릇과 같다. (값을 저장하는 공간이라고 할 수 있다.) 변수를 사용하기 위해서는 어떤 형태의 자료를 저장할 것인지 정해야 한다. ex) 사람의 나이 >> 정수 형태 사람의 이름 >> 문자 형태 이 형태..

Back-End/Java 2023.01.25

[DB] SQL 개요

이번 포스팅에서는 SQL의 개요 및 특징에 대하여 공부를 해보고자 한다. SQL SQL은 관계형 데이터 베이스에서 사용되는 언어로 '에스큐엘' 또는 '시퀄'로 읽는다. 미국의 문화, 사회 경제 등을 배우고자 한다면 우선 영어를 잘 사용해야 가능한 것처럼, 관계형 DBMS를 배우고자 한다면 SQL을 익혀야 하는 것이 필수다. SQL이 비록 데이터베이스를 조작하는 '언어'지만 일반적인 프로그래밍 언어(C, C++, JAVA, C# 등)와는 조금 다른 특성을 갖는다. SQL 특징 SQL은 국제 표준화 기관에서 표준화된 내용을 계속 발표해 왔는데, 다음과 같은 특징을 갖는다. DBMS 제작 회사와 독립적 SQL은 모든 DBMS 제작회사에 공통적으로 공개되고 각 제각회사는 이 표준 SQL에 맞춰서 DBMS를 개발..

DataBase 2022.12.28

[DB] DBMS 개요

이번 포스팅에서는 데이터베이스와 DBMS에 대하여 공부를 해보고자 한다. 공부할 때 참고한 책: 이것이 MySQL이다. DBMS과 데이터베이스 데이터베이스를 간단히 정의하면 '대용량의 데이터의 집합'을 체계적으로 구성해 놓은 것이라고 할 수 있다. 또한 데이터베이스는 여러 명의 사용자나 응용 프로그램이 공유하고 동시에 접근이 가능해야 한다. MySQL에서는 '데이터 베이스'를 자료가 저장되는 디스크 공간(주로 파일로 구성됨)으로 취급하기 때문에 '데이터의 저장공간' 자체를 의미하기도 한다. DBMS(DataBase Management System)는 이 데이터 베이스를 관리 · 운영하는 역할을 하는 소프트웨어의 개념이다. 여러 명의 사용자나 응용 프로그램이 DBMS가 관리하는 데이터에 동시에 접속하고 데..

DataBase 2022.12.27

[Django] 장고(Django) 서비스 개발 - 추가 기능

현재 내가 공부하고 있는 교재에서 구현할 게시판의 기능은 아쉽지만 여기까지이다. 다루지 못했지만 구현하면 좋을 것 같은 기능들이 몇 가지 있는데 여기에 간단하게 소개하려 한다. 아래에 소개한 기능들을 내가 스스로 하나씩 구현해 가다 보면 장고에 대해서 더 깊게 이해할 수 있지 않을까 한다. 이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 추가 기능에 대하여 공부를 해보고자 한다. 답변 페이징과 정렬 현재 하나의 질문에 무수히 많은 답변이 달릴 수 있는 구조이다. 만약 답변이 100개가 된다고 상상해 보자. 성능을 위해서라도 답변의 페이징은 반드시 필요하다고 생각된다. 그리고 답변을 보여줄 때에도 최신순, 추천순 등으로 정렬하여 보여줄 수 있는 기능도 있으면 좋을 것 같다. 유명한 질문 답변..

Framework/Django 2022.12.26

[Django] 장고(Django) 서비스 개발 - 검색

이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 검색에 대하여 공부를 해보고자 한다. 검색 기능 질문답변에 대한 데이터가 계속 쌓여가는 게시판에 검색기능은 필수라고 할 수 있다. 검색의 대상은 제목, 질문의 내용, 질문 작성자, 답변의 내용, 답변 작성자 정도로 하면 적당할 것이다. 즉, "파이썬"이라고 검색을 하면 "파이썬" 이라는 문자열이 제목, 내용, 질문 작성자, 답변, 답변 작성자에 존재하는지 찾아보고 그 결과를 화면에 보여주어야 한다. 이런 조건으로 검색하려면 질문 목록을 조회하는 부분을 다음처럼 수정해야 한다. 지금은 실제 파일을 수정하지 말고 지금은 눈으로만 살펴본다. from django.db.models import Q kw = request.GET.get('kw', ''..

Framework/Django 2022.12.25

[Django] 장고(Django) 서비스 개발 - 마크다운(Markdown)

이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 마크다운(Markdown)에 대하여 공부를 해보고자 한다. 마크다운 설치 마크다운 기능을 추가하려면 마크다운 모듈을 설치해야 한다. 다음처럼 pip install markdown으로 마크다운을 설치한다. (mysite) c:\projects\mysite>pip install markdown Collecting markdown Downloading Markdown-3.4.1-py3-none-any.whl (93 kB) Installing collected packages: markdown Successfully installed markdown-3.4.1 마크다운 필터 등록 마크다운으로 작성한 문서를 HTML 문서로 변환하려면 템플릿에서 사용할..

Framework/Django 2022.12.24

[Django] 장고(Django) 서비스 개발 - 앵커(anchor)

더 많은 기능을 추가하기 전에 발견된 몇 가지 문제점을 해결하려고 한다. 발견된 문제점은 답글을 작성하거나 수정한 후에 항상 페이지 상단으로 스크롤이 이동되기 때문에 본인이 작성한 답변을 확인하려면 다시 스크롤을 내려서 확인해야 한다는 점이다. Ajax와 같은 비동기 통신 기술을 사용하여 이 문제를 해결할 수도 있지만 보다 쉬운 방법으로 이 문제를 해결해 보려 한다. 이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 앵커(anchor)에 대하여 공부를 해보고자 한다. 앵커(anchor) HTML에는 URL 호출 시 원하는 위치로 이동시켜 주는 앵커(anchor) 태그가 있다. 예를 들어 HTML 중간에 라는 앵커 태그가 있다면 이 HTML을 호출하는 URL 뒤에 #django 라고 붙여주면 ..

Framework/Django 2022.12.23

[Django] 장고(Django) 서비스 개발 - 추천

이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 "추천(좋아요)" 기능에 대하여 공부를 해보고자 한다. 모델 변경 우선 Question 모델에 추천인(voter) 속성을 추가하려 한다. 하나의 질문에 여러 명이 추천할 수 있고 한 명이 여러 개의 질문에 추천할 수 있으므로 이런 경우에는 "다대다(N:N)" 관계를 의미하는 ManyToManyField를 사용해야 한다. [파일명: projects\mysite\pybo\models.py] (... 생략 ...) class Question(models.Model): author = models.ForeignKey(User, on_delete=models.CASCADE) subject = models.CharField(max_length=200) ..

Framework/Django 2022.12.22

[Django] 장고(Django) 서비스 개발 - views.py 파일 분리

장고에 기능을 계속 추가하다 보면 뷰 파일(views.py)에 함수가 계속 늘어나 불편함을 느낄 수 있다. (현재 추가된 기능만으로도 뷰 파일이 매우 방대해졌다) view 파일에 함수가 많아지면 관리하기 힘들어지기 때문에 개선할 수 있는 두 가지 방법이 있다. 결론적으로 두 번째 방법을 사용할 것이지만 두 번째 방법을 진행하기 위해서는 첫 번째 방법을 적용한 후에 가능하다. 이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 views.py 파일 분리에 대하여 공부를 해보고자 한다. 첫 번째 방법 첫 번째 방법은 views.py 파일만 여러 파일로 분리하고 나머지는 고치지 않아도 되는 변화가 적은 방법이다. 먼저 projects\mysite\pybo\views 디렉터리를 다음과 같이 생성한다...

Framework/Django 2022.12.21

[Django] 장고(Django) 서비스 개발 - 수정과 삭제

작성한 질문과 답변을 수정하고 삭제할 수 있는 기능을 추가하려고 한다. 비슷한 기능을 반복적으로 구현해야 하므로 조금 지루할 수 있지만 장고 패턴에 익숙해질 수 있는 좋은 기회라고 생각하고 따라 해 보자. 이번 포스팅에서는 장고를 사용하여 게시판 서비스 개발에 필요한 수정과 삭제에 대하여 공부를 해보고자 한다. 수정 일시 질문이나 답변이 언제 수정되었는지 확인할 수 있도록 Question과 Answer 모델에 수정 일시를 의미하는 modify_date 속성을 추가한다. [파일명: projects\mysite\pybo\models.py] (... 생략 ...) class Question(models.Model): (... 생략 ...) modify_date = models.DateTimeField(null..

Framework/Django 2022.12.20
반응형