시간이 왜 이렇게 빠르게 흐르는 걸까요?!
맨날 블로그 회고에 시간이 너무 빠르게 흐른다는 얘기만 적어서 반복하기 싫지만!!! 정말로 시간이 빠르게 흘러요!!!
저도 얼마 뒤면 추석이란 게 믿기지가 않아요!!!
게다가 최종 프로젝트 시작까지 얼마 안 남았다는 게... 믿기 힘들지만... 받아들여야겠죠...^^
하루하루 열심히 공부한 덕분에 시간이 빨리 흐르는 것이라 생각할래요.
남은 기간 동안에도 힘내서 공부하겠습니다!
● 성취
이전부터 백엔드를 경험해 보고 싶었는데, 이번에 처음으로 django를 배웠습니다!
AI를 다루는 동안에 백엔드 지식도 일부 알고 있으면 좋을 것 같다고 생각했거든요.
Python으로 백엔드 지식을 경험한 다음에 서서히 범위를 넓혀야겠습니다.
언어와 프레임워크로 얽매이기 보다는, 시장 흐름을 읽을 줄 알고 적절한 해결방안을 제시할 줄 아는 사람이 되고 싶습니다!
아무래도 기존에 AI를 다룬 적 있기 때문에, 앞으로 백엔드를 배우면서 데이터를 기반으로 사고하게 될 것 같습니다.
데이터가 어떤 식으로 저장되는지 열심히 이해해 보도록 노력하겠습니다!
tmi에 해당하는 이야기지만, 전산 베이스의 통계를 학습 시작점으로 잡은 건 정말 좋은 선택이었다고 생각합니다.
학과에서 배운 내용 덕분에 데이터 기반으로 사고하는 기반이 생겼거든요.
말이 길어졌지만... 이번 주에는 파이썬 백엔드 라이브러리 중 하나인 django를 시작한 것이 가장 큰 성취입니다 ^_^
● 학습 & 개선
이번 주에는 Linux 가상환경과 django 라이브러리를 베이스로 백엔드 다루는 법을 배웠습니다.
django가 아직 익숙하지 않은 관계로 학습과 개선을 나눠서 생각하는 것은 현재 입장에서 무의미한 것 같습니다.
따라서 이번 주는 '학습 & 개선' 파트로 묶어서 설명하겠습니다.
아직 django 진도가 남았지만, 배운 부분들과 복습한 내용을 다시 정리한다는 생각으로 작성해 보겠습니다~!
# 리눅스 파일 권한 확인
리눅스에서는 'ls -al' 명령문을 사용해서 파일 권한을 확인할 수 있어요.
리눅스 CLI 창에서 'ls -al' 명령문을 입력하면 아래와 같은 결과가 나옵니다.
저는 python으로 작업을 많이 했기 때문에 python 환경설정과 관련된 파일 및 폴더가 주를 이루네요...^^
# 리눅스 권한 설정 (숫자 ver.)
사용자 (User) | 그룹 (Group) | 다른 사용자 (Other) | ||||||
r | w | x | r | w | x | r | w | x |
4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 |
rwx = 4 + 2 + 1 = 7 rw- = 4 + 2 + 0 = 6 r-x = 4 + 0 + 1 = 5 r-- = 4 + 0 + 0 = 4 -wx = 0 + 2 + 1 = 3 -w- = 0 + 2 + 0 = 2 --x = 0 + 0 + 1 = 1 |
위 숫자 설정을 참고해서 chmod 명령문을 입력합니다.
중요한 내용이라서 패턴을 어느 정도 인지하고 있는 것이 좋아요!
# 리눅스 권한 변경
리눅스에서는 권한 변경 시에 'chmod' 명령문을 사용해요.
예시를 통해 리눅스 권한 변경 방식을 알아보겠습니다.
• 예시 1
지금 제게 test_1이라는 파일이 하나 있습니다.
사용자, 그룹, 다른 사용자 모두에게 읽고 쓰고 실행할 수 있는 권한을 주고 싶습니다.
이때 chmod 명령문을 어떻게 입력할까요? 아래를 참고해 주세요!
chmod 777 test_1
• 예시 2
이번에는 test_2 파일의 권한을 변경하려고 합니다.
'사용자 : rwx 권한, 그룹 : rx 권한, 다른 사용자 : x권한' 형태로 부여하려고 합니다.
이 경우에는 chmod 명령문을 어떤 식으로 입력할까요? 이번에도 하단을 참고해 주세요!
chmod 751 test_2
# django : URL과 뷰
django를 조금 다뤄보면서 느낀 건데... URL과 뷰 관계를 잘 이해하는 것이 핵심인 것 같더라구요.
그래서 오늘은 이 부분 위주로 정리해 보겠습니다!
+) 해당 명령문들을 입력하기 전에 앞서 Python 환경을 조성한 후, django 라이브러리를 설치해야만 합니다!
cd ~
mkdir mysite
cd mysite
django-admin startproject config .
홈으로 이동 후, mysite 폴더를 만든 다음에 해당 폴더로 진입하세요.
진입이 끝난 후, 해당 디렉터리에서 프로젝트 시작 및 설정 명령문을 입력합니다.
django-admin startapp pybo
pybo라는 이름의 앱을 생성합니다.
# ./config/urls.py 에 입력
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('pybo/', include('pybo.urls')),
]
urlpatterns 변수를 통해 특정 url 링크와 매칭되는 파이썬 파일을 지정해 줍니다.
'pybo/'로 끝나는 링크를 예시로 들어 보겠습니다.
해당 링크는 pybo 폴더 내부에 있는 urls.py 파일과 매칭됩니다.
# ./pybo/urls.py 에 입력
from django.urls import path
from . import views
urlpatterns = [
path('', views.index),
]
위 코드를 입력하면 pybo로 끝나는 링크의 세부 항목 링크들을 지정해 줄 수 있습니다.
여기서는 단순하게 빈 문자열 처리를 함으로써, 세부 항목을 따로 만들지 않았습니다.
# ./pybo/views.py 에 입력
from django.http import HttpResponse
def index(request):
return HttpResponse("안녕하세요 pybo에 오신것을 환영합니다.")
pybo 폴더 내부에 있는 views.py에 위와 같이 입력하면, pybo로 끝나는 링크에서 "안녕하세요 pybo에 오신 것을 환영합니다." 문구를 페이지에서 보여줍니다.
python manage.py runserver
위 코드를 리눅스/아나콘다 등의 CLI 창에 입력함으로써 서버를 구동시킬 수 있습니다.
그러면 위 화면처럼 '안녕하세요 pybo에 오신 것을 환영합니다' 문구가 나타납니다!
백엔드 공부는 처음에 가까워서 아직 낯선 느낌이 드네요...!
그렇지만 이것도 하나씩 공부하다 보면 어느 순간 실력이 올라가 있을 거라 생각합니다 :)
처음에는 가볍게 시작하더라도 꾸준하게 하다 보면 어느 순간 백엔드 지식 역시 풍성해지겠지요!!
힘내보겠습니다~!!
+) 부족한 부분이 있으면 댓글로 말씀해 주세요! 겸허한 마음으로 더 공부하겠습니다.
'활동 > SK네트웍스 Family AI 캠프 2기' 카테고리의 다른 글
SK네트웍스 Family AI 캠프 2기 : 19th week (9월 3주차) (0) | 2024.09.23 |
---|---|
SK네트웍스 Family AI 캠프 2기 : 18th week (9월 2주차) (12) | 2024.09.17 |
SK네트웍스 Family AI 캠프 2기 : 16th week (8월 5주차 + 8월 회고) (10) | 2024.09.02 |
SK네트웍스 Family AI 캠프 2기 : 15th week (8월 4주차) (2) | 2024.08.26 |
SK네트웍스 Family AI 캠프 2기 : 14th week (8월 3주차) (0) | 2024.08.19 |