목록전체 글 (1208)
넘치게 채우기
구글이 내 콘텐츠를 찾게 하는 방법 구글에서 사이트가 검색되기 위해서는, 구글이 사이트를 발견할 수 있도록 해야 한다. 사이트맵을 제출하면 쉽게 발견시킬 수 있다. 사이트맵은 사이트에 있는 파일로서, 새 페이지나 페이지의 변경 사항이 생긴 경우, 검색엔진에 알려준다. 구글은 다른 페이지에 있는 링크를 통해서 페이지를 찾기도 한다. 구글에 크롤링하고 싶지 않은 페이지 명시 robots.txt파일은 검색엔진이 사이트의 일부에 액세스하여 크롤링할 수 있는지를 알려준다. 사이트의 루트 디렉터리에 있으며, 차단된 페이지가 계속 크롤링될 수 있으므로, 민감한 페이지의 경우는 더 안전한 방법이 필요하다. # brandonsbaseballcards.com/robots.txt # Tell Google not to cra..
모든 시스템에는 최소한 하나의 컴포넌트가 존재하고, 이 컴포넌트가 나머지 컴포넌트를 생성하고, 조정하며, 관리한다. 이 컴포넌트를 밥 아저씨는 메인(Main)이라고 부른다. 궁극적인 세부사항 메인 컴포넌트는 궁극적인 세부사항으로, 가장 낮은 수준의 정책이다. 메인은 시스템의 초기 진입점이다. 운영체제를 제외하면 어떤 것도 메인에 의존하지 않는다. 메인은 모든 팩토리와 전략, 그리고 시스템 전반을 담당하는 부분으로, 제어권을 넘기는 역할을 맡는다. 의존성 주입 프레임워크를 이용해 의존성을 주입하는 일은 바로 이 메인 컴포넌트에서 이뤄져야 한다. 메인에 의존성이 일단 주입되고 나면, 메인은 의존성 주입 프레임워크를 사용하지 않고도 일반적인 방식으로 의존성을 분배할 수 있어야 한다. 메인을 지저분한 컴포넌트 ..
https://leetcode.com/problems/buy-two-chocolates/ Buy Two Chocolates - LeetCode Can you solve this real interview question? Buy Two Chocolates - You are given an integer array prices representing the prices of various chocolates in a store. You are also given a single integer money, which represents your initial amount of money. You m leetcode.com leetcode - Buy Two Chocolates 문제 유형 : 배열, 구현 문제 ..
필수 용어 색인 - 구글에서는 아는 모든 페이지를 색인에 저장한다. 구글에서 페이지의 색인을 생성했다는 말은 구글에서 페이지를 가져와서 읽고 색인에 추가하였다는 뜻이다. 크롤링 - 신규 또는 업데이트된 웹페이지를 찾는 프로세스. 구글은 링크, 사이트맵, 다른 방법으로 URL을 찾아낸다. 크롤러 - 웹에서 페이지를 크롤링한 뒤, 색인을 생성하는 자동 소프트웨어 구글봇(Googlebot) - 구글 크롤러의 이름. SEO - 검색엔진 최적화(Search Engine Optimization) 사이트가 구글에 색인되었는지 확인하는 법 site:example.com으로 검색하여 찾아낸다. 다만, 색인이 생성된 URL을 모두 반환하지는 않으니 유의하자. 사이트가 구글에 안 뜨는 경우 - 잘 연결되지 않음 - 개설된지..
시스템이 세 가지 컴포넌트(UI, 업무 규칙, 데이터베이스)로만 구성된다고 생각하기 쉽다. 몇몇 단순한 시스템에서는 이 정도로 충분하다. 하지만 대다수는 이보다 훨씬 많다. 움퍼스 사냥 게임 1972년 발매된 움퍼스 사냥을 생각해보자. 텍스트를 기반으로 하는 이 게임은 Go East 와 Shoot West와 같은 매우 단순한 명령어를 입력한다. 플레이어는 명령어를 입력하며, 컴퓨터는 플레이어가 보고, 냄새 맡고, 듣고, 경험할 것들로 응답한다. 텍스트 기반 UI는 그대로 유지하되, 게임 규칙과 UI를 분리해서 우리 제품을 여러 시장에서 다양한 언어로 발매할 수 있게 만든다고 해보자. 게임 규칙은 언어 독립적인 API를 사용해서 UI 컴포넌트와 통신할 것이고, UI는 API를 사람이 이해할 수 있는 언어로..
https://leetcode.com/problems/image-smoother/description/ Image Smoother - LeetCode Can you solve this real interview question? Image Smoother - An image smoother is a filter of the size 3 x 3 that can be applied to each cell of an image by rounding down the average of the cell and the eight surrounding cells (i.e., the average of the nin leetcode.com leetcode - Image Smoother 문제 유형 : 행렬 문제 난이도..
구글의 자동 순위 시스템은 기본적으로 사람들에게 도움을 주기 위해 제작된 유용하고 신뢰할 수 있는 정보를 인기 검색결과로 표시하도록 설계되었습니다. 크리에이터가 자신이 이러한 콘텐츠를 제작하고 있는지 평가할 수 있는 방법을 살펴보자. 콘텐츠 자체 평가하기 다음 질문을 토대로 콘텐츠를 평가하면 제작 중인 콘텐츠가 유용하고 신뢰할 수 있는지 판단하는 데 도움이 된다. 자신에게 이러한 질문을 받는 것 외에도 사이트와 관련이 없는 신뢰할 만한 사람에게 솔직한 평가를 받는 것도 좋다. 콘텐츠 및 품질 관련 질문 - 콘텐츠에서 고유한 정보나 보고, 조사, 분석 자료를 제공하는가? - 콘첸트가 주제와 관련하여 본질적이거나 완전하거나 포괄적인 설명을 제공하는가? - 콘텐츠가 뻔하지 않은 유용한 분석이나 흥미로운 정보를..
마지막 단계를 건너뛰기 부분적 경계를 생성하는 방법 하나는 독립적으로 컴파일하고 배포할 수 있는 컴포넌트를 만들기 위한 작업은 모두 수행한 후, 단일 컴포넌트에 그대로 모아만 두는 것이다. 쌍방향 인터페이스도 그 컴포넌트에 있고, 입출력 데이터 구조도 거기에 있으며, 모든 것이 완전히 준비되어 있다. 하지만 이 모두를 단일 컴포넌트로 컴파일해서 배포한다. 아무리 보아도 이처럼 부분적 경계를 만들려면 완벽한 경계를 만들 때 만큼의 코드량과 사전 설계가 필요하다. 하지만 다수의 컴포넌트를 관리하는 작업은 하지 않아도 된다. 추적을 위한 버전 번호도 없으며, 배포 관리 부담도 없다. 이 차이는 가볍지 않다. 일차원 경계 완벽한 형태의 아키텍처 경계는 양방향으로 격리된 상태를 유지해야 하므로 쌍방향 Bounda..
https://leetcode.com/problems/maximum-product-difference-between-two-pairs/description/ Maximum Product Difference Between Two Pairs - LeetCode Can you solve this real interview question? Maximum Product Difference Between Two Pairs - The product difference between two pairs (a, b) and (c, d) is defined as (a * b) - (c * d). * For example, the product difference between (5, 6) and (2, 7) is (5 *..
구글 검색 엔진에 잘 노출되려면, 우선 구글 검색이 어떻게 작동하는지에 대해 아는 것이 좋겠다. 나를 알고 적을 알면 백전백승 아니겠는가? 구글 검색엔진은 웹 크롤러를 이용한다. 웹 크롤러는 정기적으로 웹을 탐색하여 구글 색인에 추가할 페이지를 찾는다. 구글 검색결과에 표시되는 페이지의 대부분은 웹 크롤러에 의해 자동으로 추가되는 페이지다. 구글 검색의 3단계 크롤링: 크롤러라는 자동화된 프로그램을 이용하여 인터넷에서 찾은 페이지로부터 텍스트, 이미지, 동영상을 다운로드한다. 색인 생성: 페이지의 텍스트, 이미지, 동영상 파일을 분석하고, 대규모 데이터베이스인 Google 색인에 정보를 저장한다. 검색결과 게재: 사용자가 검색하면, 검색어와 관련된 정보를 반환한다. 크롤링 - 색인 생성 - 검색결과 게재..