본문 바로가기

분류 전체보기197

20230419 TIL 알고리즘, 비트 쉬프트 연산 합성수 찾기 def solution(n): cnt = {} answer = n for i in range(1,n+1): for j in range(1, i+1): if i % j == 0: try: cnt[i] += 1 except: cnt[i] = 1 if cnt[i] 2023. 4. 19.
20230418 TIL DRF 시작 전 준비운동하기 - HTTP, 웹 Django 심화 1주 - HTTP, 웹의 동작 방식 이해하기 1주차 학습 목표 프론트엔드와 백엔드의 역할 HTTP 메시지의 구조 Request와 Response 메시지의 역할 HTTP의 상태코드의 역할 HTTP의 헤더의 역할 웹의 요청 흐름 State와 Stateless Restful한 API 설계 선발대 1주차 과제 - 타입별 메소드, 프로세스와 스레드 GitHub - saddeveloper99/SBD-assignments: advanced party assignments advanced party assignments. Contribute to saddeveloper99/SBD-assignments development by creating an account on GitHub. github.com.. 2023. 4. 18.
DJANGO 심화 강의 주차별 내용 http와 웹의 동작 방식 drf tutorial 회원기능(쿠키,세션이 아닌 토큰 방식) 인스타그램 기능 클론(글 댓글 좋아요 팔로우) 테스트코드 작성해보기(수정사항들을 매번 수동으로 테스트x, 자동화) http와 웹의 동작 방식 더보기 drf 소개 postman http 여태까지 썼던 장고는 mvt 방식, 장고 템플릿 문법 불편한 점 > 댓글 작성이나 글 작성시마다 웹페이지가 새로고침이 된다. ajax 등으로 해당 부분만 업데이트 하고, 서버에서도 그 부분의 데이터만 보내줌 여태까지 쓰던 방식은 올드한 방식이고, 앞으로 강의에서 templates는 더 이상 작성하지 않을 것(아마) 그럼 어떤식으로 프론트 - 백이 통신할 것인가? postman 웹의 흐름 클라이언트 ↔ 서버 reques.. 2023. 4. 18.
선발대 1주차 - 프로세스와 스레드 프로세스 실행 중인 프로그램 실행되기 전까지는 보조 기억장치에 있는 프로그램 > 실행하면 프로세스가 된다. 프로세스는 기본적으로 메모리에 적재가 되어 있다. (except. 페이징) 윈도우는 작업관리자에서 실행중인 프로세스를 볼 수 있다. 포그라운드 프로세스 - 사용자가 볼 수 있는 공간에서 실행되는 프로세스 백그라운드 프로세스 - 사용자가 볼 수 없는 공간에서 실행되는 프로세스 사용자와 직접 상호작용이 가능한 백그라운드 프로세스 포그라운드 프로세스를 백그라운드로 전환하는 명령어를 사용 시 사용자와 상호작용하지 않고 그저 정해진 일만 수행하는 프로세스(데몬, 서비스) 보통 백그라운드 프로세스라고 하면, 데몬이나 서비스를 지칭한다. 프로세스 제어블록 PCB 모든 프로세스는 실행을 위해 CPU가 필요하다 프.. 2023. 4. 17.
20230417 TIL __contains, :=, HTTP_REFERER 선발대 1주차 - 프로세스와 스레드 발표 피드백 주요 사항들 KPT 회고 발표 피드백 > KPT 회고 새롭게 알게된 점 1. Validation은 프론트와 백엔드에서 둘 다 해야한다. 2. Django에서 HTTP_REFERER 헤더에서 이전 페이지의 URL을 가져와 해당 URL로 redirect하는 코드 redirect(request.META.get('HTTP_REFERER', 'redirect_if_referer_not_found')) 3. __contains는 title 필드의 값에 'python'이 포함되어 있는지를 검사하는 필터 조건 python_posts = Post.objects.filter(title__contains='python') 4. := 연산자를 사용하면 input() 함수로 입력.. 2023. 4. 17.
발표 피드백 20230417 장고 프로젝트 발표 피드백 공통사항 테스트할 때 사용한 코드는 삭제하는 것을 권장 인덴트 안맞는 부분 수정 시크릿키는 깃허브에서 관리하지 않도록 url나눌때 post-delete, post-update 이런식으로 나눌 필요 X http메소드로 구분 사용되지 않는 코드, 폴더, 이미지들 삭제 버전 관리 확실하게 하자(Semantic versioning) ex)v.1.0.0 try except 구문을 잘 사용할 것 메인 브랜치에는 최종 코드만 올리는 것이 좋다(충돌 방지 목적) 1조 조회수 기능 구현할때, 세션을 활용해 중복으로 처리 안되게 한 것 좋았다. 하지만 우회가능 필드 네이밍 시 중복되는 사항들은 제외 post 테이블 안에 굳이 필드명을 post_title로 할 필요없이, title.. 2023. 4. 17.
WIL 20230410 ~ 20230416 - 장고 찍먹하기 장고 기초주차 Python Django 개인과제 해설 Django 기초 타입별 메서드 프로세스와 스레드 브랜치 보호(PR 동의 후 Merge하기) Python 코드 포맷터 - black, isort GIT hook (추가예정) 저번주 목표 1. 팀 프로젝트 이번 주차 메인은 누가 봐도 팀 프로젝트. 프로젝트 진행기간 동안에는 알고리즘 문제풀이 시간도 시간표에서 빠져있을 만큼 집중도를 요구하는 것 같다. 최우선 사항으로, 강의 복습과 동기들의 코드를 뜯어보며 최대한 장고 활용을 높여보자. 이번이 협업으로는 4번째, 발표까지 있는 프로젝트로는 2번째이다. 4번의 협업에서 배운 것들을 착실하게 활용해보는 것을 목표로 삼자. > 프론트는 힘들었지만.. 나름 맛있었다 2. 알고리즘? 팀원과 협의 후 결정 예정 >.. 2023. 4. 16.
20230414 TIL 장고 정리 및 팀프로젝트 마무리 django / db용어 정리(db용어는 거의 공통) RDBMS(RDB) : Relational DataBase Management system 관계형 데이터베이스를 지칭한다 (MySql, OracleDB) NoSql :Not Only Sql의 약자로 관계형 데이터베이스가 아닌 다른 형태 mongoDB등 Sql : Structured Query Language 데이터베이스의 CRUD를 위해 사용되는 언어 (장고에서는 ORM을 사용해서 Sql을 대체한다.) ex). # sql select from user ... # django from user.models import User User.objects.filter or User.objects.get Table : DB는 기본적으로 테이블로 이루어져 있으며.. 2023. 4. 14.
20230413 TIL - migrations gitignore하기, 코드 포맷터 프로젝트 진행 중 gitignore에 migrations를 추가했는데, 두개의 애플리케이션의 migrations 디렉토리는 디렉토리 안의 파일들중 __init__.py를 제외한 나머지 파일들에 .gitignore가 적용, 그런데 하나의 애플리케이션의 migrations 디렉토리는 __init__.py까지 모두 .gitignore가 적용된다. 분명 장고의 같은 디렉토리 안에 있는 애플리케이션인데 어떤건 추적하고, 어떤건 추적하지 않는지 이유를 알 수 없었다. 심지어 __pycache__도 마찬가지로 되는것도 있고 안되는 것도 있다... 찾아보니 원래 __init__.py는 깃에서 추적하는게 맞다고 하는데 확실한 정보인지는 모르겠다. __init__.py는 없으면 안되니까 폴더 안의 나머지 파일들을 .git.. 2023. 4. 14.