본문 바로가기

전체 글198

04. MVC 패턴이란 무엇인가? 웹 프로그램 개발 시 일반적으로 적용되는 설계 구조를 의미한다. 어떤 의미로는 공식과 비슷한 것이라고 할 수 있다. MVC는 프로젝트의 구성 요소를 Model, View, Controller로 구분하며 각각의 구성 요소는 다른 요소들에게 영향을 미치지 않는다. Model은 데이터베이스에 저장되는 데이터와 그 데이터를 처리하는 유형과 방법을, View는 사용자의 요청에 대한 결과물을 시각적으로 보여주는 역할을, Controller는 요청에 따라 Model에게 적절한 로직을 가동하도록 지시하고 Model이 응답하면 그 결과를 View에 전달하는 역할을 한다. Model과 View를 이어주는 역할을 담당하는 것이다. 구체적인 예시는 아래와 같다. 사용자가 Controller에 요청을 보낸다.(ex. 로컬에 있.. 2021. 3. 23.
03. 파싱(parsing)이란 무엇인가? 웹페이지에서 원하는 데이터를 추출하여 가공하기 쉬운 상태로 바꾸는 것이다. 웹페이지에서 떠다니는 데이터(실제로는 떠다니지 않지만)는 리스트, 딕셔너리 같은 자료구조와 달라 사용자 마음대로 접근하고 자르고 추가하고 지지고 볶기가 쉽지 않다. 그렇기 때문에 이런 데이터들을 다루기 쉬운 형태로 바꿔주는 과정이 필요한데, 이 역할을 하는 함수나 프로그램을 파서(parser)라고 하며, 이 과정을 파싱(parsing)이라고 한다. 웹 크롤링을 할 때 필연적으로 만나게 되며, python에서는 beautifulSoup이라는 라이브러리를 사용하여 html 문서를 파싱한다. 2021. 3. 19.
02. 쿼리(query)란 무엇인가? 역시 쓸데없이 폼을 잡으면 안 된다는 것을 다시 배웠다. 허세가 좀 빠졌다고 생각했는데 웬걸, 앞의 글들을 다시 읽어보니 당장이라도 삭제 버튼을 누르고 싶은 충동이 솟구친다. 세상에, 알고리즘 풀이가 차라리 나았지. 어쨌거나 이제부터는 조금 얌전히 가기로 했다. 원래 이 게시판은 인공지능에 대한 부분만을 쓸 생각이었지만, 이참에 생소한 IT 용어들을 정리해놓는 용도로 쓰는 것도 괜찮겠다 싶다. 그래서 앞으로는 인공지능, 파이썬에 대한 것 말고도 잡다한 IT 용어들이 올라올 예정이다. 첫 번째 타자는 바로 쿼리(Query)다. 항상 딱 봤을 때 뭔지 모르겠으면 이름을 뜯어보는 게 먼저다. 이름을 막 짓진 않았을 거 아냐. 구글 번역 왈 query는 질문, 문의하다라는 뜻이다. 질문은 답을 달라는 일종의 요.. 2021. 3. 18.
[Python]리스트 문자열 값들 합치기 알고리즘 문제를 풀다 보면 리스트를 이리 저리 자르고 붙이다가 마지막에 하나의 문자열로 출력해야 할 때가 있습니다. 언제나와 같이 예를 들어보겠습니다. word='Python' li=list(word) # string(문자열)을 리스트로 만들기 >>> ['P', 'y', 't', 'h', 'o', 'n'] list 함수에 문자열을 넣을 경우 통째로가 아니라 한 자 한 자를 떼어 리스트 값으로 만듭니다. 이 문자열을 다시 합쳐서 'Python'으로 만들고 싶을 땐 어떻게 하면 될까요? 첫 번째로 for문을 써볼 수 있습니다. word='Python' li=list(word) li_to_word='' for w in li: # 리스트 안의 w를 li_to_word+=w # 하나씩 더해준다 print(li_t.. 2021. 3. 16.