[음악 연주] DAVID 마란 : 좋아요. 다시 오신 것을 환영합니다. 이 CS50이며,이는 주 하나는, 계속. 그래서 우리가 통과해온 이유 중 하나 같은 기술의 주위에 구글 유리는 그들이 함께 있다는 것입니다 API로 알려진 것을, 응용 프로그램 프로그래밍 인터페이스. 그리고 무엇이 의미하는 것은 그와 함께있다 오른쪽 파일과 오른쪽에 문서, 실제로 쓸 수 있습니다 이와 같은도 장치에 대한 소프트웨어입니다. 그래서 우리는쪽으로 생각하고있는 것을 프로젝트의 경우 학기 끝입니다 구글 유리, 말, 수도 포함 매력, 우리는 우리가 무엇을 할 수 있는지 볼 수 있습니다 일부 당신을 접선 약관 부자 하드웨어뿐만 아니라, 공개적으로 접근 가능한 API 당신이 할 수 있도록 실제로 소프​​트웨어를 만들기 시작 그 같은 구글 유리에서 실행됩니다. 우리가 연주했던 다른 장치 우리가 할 수있는 생각했던 늦은 함께 학기 말에 재미입니다 여기 작은 것. 그것은 도약 모션라고, 당신은 아닙니까? 확인하기에 대한 것은 기술적합니다 장치를 광고하지만, 이 특별한 무엇을 말하는가 장치를 할 수 있습니다. 그리고,도를 통해 API와 함께 제공 당신이 소프트웨어를 쓸 수있는 방식으로 자신의 컴퓨터를 제어 확실히 여기 1 분 영화를 좋아한다. [동영상 재생] [END 동영상 재생] 그래서 지금,이 장치는 어떻게 작은 USB로 구현 될 수 당신에 연결할 수있는 커넥터 컴퓨터,하지만 난 놀라지 않을 것 우리는 이러한 종류의가 오래 전에있는 경우 PC를 옆에 배치 기술 그리고 맥 당신이 할 수 있도록, 참으로, 에 상호 작용 같은 방식으로. 사실,는,도, 내가 뭘 해야할지 생각 좀 데모를 뽑아 프로그램이이 소프트웨어와 함께 제공됩니다. 그래서 작은 센서를 넣었습니다 내 노트북​​ 앞에있다. 당신이 볼 수 있듯이, 그것은 이미 실현 내 손이 있다는 것을 그것을 제어. 그리고이 모든 응용 프로그램입니다 않습니다 이런 거침 작은 확인해보세요. 하지만 당신은 실제로 그것을 볼 수있다 거기 다섯 손가락이있다. 우리가 얻을 수있는 경우 모두 10을 수행하는 당신은 깔끔한 피아노를 상상할 수 응용 프로그램 또는 같은. 당신은 수업 끝나고 와서하고 싶습니다 그래서 만약 것과 함께 현재와 놀이 글쎄, 당신은 환영합니다. 학기의 끝을 향해가에 따라서 더. 그래서 행정의 커플 공지. 하나는이 금요일까지 섹션을 cs60.net/section에서 정오. 이 URL은 과정에있다 홈페이지뿐만 아니라. 한편,하지만, supersections 이번 일요일에 발매 될 예정이다. Supersections는 일회성 것입니다 그것은 우리에게 작동하는 데 약간의 시간이 걸리기 때문에 중 누가 어느 부분과 어디. 이번주 일요일 있도록 하나있을거야 그 적은 편안 항, 사람들을위한 하나의 섹션 더 편안하게. 그리고 당신의 그 어딘가에서 사이에 갈 오신 것을 환영합니다 하나 또는 모두 또는 둘 다. 이들 모두가 촬영됩니다. 그들은보다 큰 강당에있을거야 섹션은 일반적으로 높은 것 그러나 여기에서 목표는 당신을 장비하는 것입니다 문제는 일부 편의, 한을 설정 CS50 어플라이언스 C, 이것 주말, 당신은 찾아도 전에 공식 섹션 할당. 그래서 당신은 당신의 TF와 작은 만나자 약에 sectionmates 그룹 일주일의 시간입니다. 근무 시간, 그 사이에, 진행되고있다. 나 오늘 밤에 그들을 활용 할 당신이 좋아 한 경우에 내일 밤. 문제는 0으로 설정 금요일에 만기가된다. 이 날 이후보다 목요일 정기적으로 예정. 그러나 문제 1 세트와 함께, 당신은 볼 것이다 몇 가지 워밍업을 포함 운동에 당신 자신 당신을 연장 할 수 있습니다 금요일 목요일 마감. 문제 1 세트 한편, 데뷔 할 것이다 물론 웹 사이트이 오는에 금요일 당신과 함께 컬하고 싶은 경우 그것은 늦었 옛날 옛적에했던 것처럼 객실에서 금요일 밤. 그래서 cs50.net/appliance는 곳입니다 당신은 CS50 제품을 얻을 수 있습니다 우리는 월요일에 사용하기 시작합니다. 우리는 조금 더 오늘을 사용합니다. 그러나 나머지는 문제가 1로 설정하는 것이 보장 사양을 통해 당신을 안내합니다 당신이 필요로하는 정확한 단계 그렇게하고 실행합니다. 그래서 전에 일을 걱정하지 않는다 PSET 1 차라리하지 않는 게 좋을 경우. 좋아. 그래서 우리는 소스 코드를 월요일에보고 하지만 새로운 맥락에서 프로그래밍 언어, 즉 C. 그리고 C, 스크래치와 달리 그래픽이 아닙니다. 그것은 조각 퍼즐 아니에요. 좀 더 영어​​와 같은 문법이다. 과 관련된 몇 가지 단계가있다 실제로 작성하고 실행에 때문에 소스 외에 C에있는 프로그램 다음과 같은 코드, 당신은 뭔가가 필요 컴파일러했다. 그리고 평신도의 관점에서, 어떤 컴파일러는 우리합니까? 그래. 학생 : 그것은 코드를 변환 당신은 0과 1에 기록합니다. DAVID 마란 : 좋은. 그래서 코드를 변환하는 우리는 0과 1로 기록합니다. 그것은에 소위 소스 코드를 변환 오브젝트 코드가 보이는 후자의 이런 작은 선물. 그리고 그것은 당신의 CPU, 내부의 두뇌의 컴퓨터 때문에 이러한 컴퓨터를 만든 사람, 무엇을 알고 그 시퀀스 0과 1 평균의. 아마 인쇄를 의미한다. 어쩌면 그것은 또한 의미합니다. 아마 빼기를 의미합니다. 아마 그래픽을 표시하는 것을 의미한다. 비트의 미리 정의 된 패턴이 있습니다 세계는 의미로 결정했다 특정 확인해보세요. 하지만이 과정에서 대부분의 경우, 우리는 높은 수준에서 작동하고 있습니다 가 존재한다는 당연한 우리가 걸릴 것이다 할 수있는 컴파일러 같은 것들을 우리의 소스 코드 기능을 방법으로 우리가하려고합니다. 프로그램 그래서 우리는 지난 주에 처음으로 썼다 그리고 이렇게에, 포트 시작 C이 과거 말하고, 월요일이 있었다. 녹색 깃발이 클릭하면 인사. 이것은 물론이었다 스크래치에 기록됩니다. 내가 주장하는 해당 C에있는 프로그램은 조금 보았다 이런 식으로 뭔가. 그래서 나는 우리가 처음에 할 거라고 생각하는 것입니다, 하자 처음에는 모양을 나누는데 눈, 틀림없이, 같은 상당히 난해한 구문,하지만 당신은 통지 시작합니다 아주 빨리 패턴입니다. 우리는 또한 오늘날 것이다는 제공합니다 당신 일부에 대한 정신 모델 정식, 일부 표준 구조 프로그래밍합니다. 그리고 우리는 실제로 우리의 손을 얻을 것이다 뿐만 아니라 몇 가지 예제와 더러운. 그래서 당신의 사람들을 위해 더 안락한, 실현 이번 주 다음 주 잘 검토의 비트 수 있습니다. 그러나 특히 해커 판 문제 세트 1에 간다 금요일 물론, 웹 사이트, 나는 생각 당신이 기입도 같이하는을 찾을 수 있습니다 다음 주 또는 두에 약간 공백 당신은 더 많은 것을 얻을 시작합니다 도전과 발생 새로운 것을. 그래서하자 간격이 프로그램을 애타게 한 번에 몇 줄. 맨에서 우리는 무엇을 가지고 기술적으로 불리는 전 처리기 지시문. 이것은 단지 말합니다 코드의 라인입니다 파일의 내용을 포함하기 위해, - 표준 I / N, 표준 입력이라고 또는, 미안, 표준 I / O 표준 입력 / 출력. H, 내부 내 자신의 프로그램. 나는 이것을 썼다 그래서 다른 말로하면, 경우 같은 간단한 텍스트 편집기 프로그램 gedit에서의 간단한 등가 Microsoft Word와 같은, 뭔가 명령은 # stdio.h에 포함, 단지 컴파일러를 말하려고하면 잡아 다른 파일 stdio.h와의 내용 그리고 바로 여기에 붙여 넣습니다. 지금 내가 왜 상관이야? 우리는이 파일 안에 무엇입니까 주장 않았다 저장 stdio.h를 호출 어딘가에 내 하드 드라이브에, 또는에 경우, 어딘가에 CS50 어플라이언스? 다른 사람이 나를 위해 거기에 넣어. 하지만 거기에 무엇입니까? 그래, 그래서의 선언이다 함수 printf를했다. 그래서 printf를 그 기능은 리콜 표시 단어와 문자 내 입찰시 화면에 번호입니다. 하지만 난 그것을 기록하지 않았다. CS50 쓰지 않았다. 누군가 년 전에 쓴, 그리고 그들이 본질적으로 우리에게 그것을위한 조리법을 준 stdio.h에라는 파일합니다. 그래서 첫 번째 줄은 그냥 날 액세스 할 수 있습니다 함수가 다른 사람 중, 년 전에 쓴 이는 printf를합니다. 이제, 다음 줄 내가 흔들거야 손 적어도 다음 주까지의. 하지만 지금은 알아요 주요 int는 (무효)입니다 이 본질적으로 동등한 노란색 퍼즐 조각 때 녹색 깃발 클릭. 세계는 몇 년 전, 결정하는 경우 당신의 프로그램을 작성하는 C를 시작라는 언어 라인 프로그램 그처럼 보인다. 단지 일주일의 시간에 대한, 그것은 만들어 줄게 의미 어떤 INT는 무효가 무엇인지입니다. 하지만 지금은, 그냥 생각 이 노란색 퍼즐 조각으로. 이제 다음, 우리는 다음에 중괄호가 다른 주변 중괄호, 말하자면. 그리고 우리는 이러한 전역을 볼 수 있습니다 C에있는 프로그램뿐만 아니라, 자바 스크립트와 PHP. 그리고 이건 그냥 캡슐화 코드의 관련 라인. 열린 중괄호 기본적으로 , 여기에 몇 가지 코드를 제공했다. 이고 닫힌 중괄호, 다른 방향으로 각도, 단지 수단은, 바로 그거다 관련 코드입니다. 그래서 먼저 수분 라인 프로그램은 마지막으로 printf를합니다 따옴표 맺다, 세계 안녕하세요. 그리고 사이의 일이라고 따옴표 무엇을 마지막으로? 그래서 문자열입니다. 그리고 문자열은 techie의입니다 의 순서에 대한 용어 문자, 단어, 구. 심지어 하나의 문자 수 이중 인용. 하지만 0의 순서입니다 문자 이상. 백 슬래시-N,하지만 보인다 조금 이상한. 그러나 그것은 단순히 무언가를 의미 컴퓨터에 간단하다. 백 슬래시-N은 무엇입니까? 새로운 라인. 그래서 단지의 특별한 일련의 세계가 결정했다고 문자 의미는 바로 거기에 줄 바꿈을 넣어 컴파일러는 실제로 얻을 수 있기 때문에 아주 같은 경우, 일반적으로 혼동 당연하지만, 잘못, 그냥 두고 Enter를 타격 시작 코드의 새로운 라인. 당신은 좀 더해야 백 슬래시-N로 명시. 그리고 우리는 몇 가지 다른 예 거기에 볼 수 있습니다 특수 문자 패턴입니다. 예를 들어, 당신이 원한다면 수 있도록하기 위해 , 코너 케이스에 방황 마음 내가를 인쇄하고 싶다고 가정 의 화면에 따옴표 어떤 이유로, 그 것을 보일 것입니다 약간의 문제가, 괜찮을? 때문에에 큰 따옴표를 넣으면 의 중간에 "안녕하세요, 세계,"무엇을위한 이유 그 이유는 보인다 잠재적 인 문제? 그것은 문자열을 나누기. 컴파일러는 그냥 프로그램입니다. 컴파일러와 같은 프로그램은 것입니다 아래에 코드 상단을 읽으려면, 왼쪽에서 오른쪽으로. 그리고 만약 대신에 세 개의 큰 따옴표를 본다 두 가지, 그것은 알 수 없을거야 당신이 의미하는 경우 그 왼쪽에있는 것은 문자열 또는해야 할 것은해야한다 오른쪽 또는 전부. 그것은 모호한, 그리고 전형적인 그래서 컴파일러가 수행하는 것과 놀라게된다, 당신에게 몇 가지 오류 메시지를 제공하고, 당신이 문제를 해결합니다. 그래서 백 슬래시-n은 새로운 의미 부여 라인, 어떻게 지금의 본능 것 당신이 포함하고자한다면되기 시작 더블과 같은 비정상적인 일 이 그렇지 않은 인용의 내부를 인용 문자열? 백 슬래시 따옴표. 그래서 우리는 이것을 볼 수 있습니다 너무 패턴의 종류. 당신은 작은 선물을하고 싶은 경우 이상한, 당신은 찾을 수 그 솔루션은 종종 패턴을 따릅니다, 그리고 백 슬래시에게 이스케이프 시퀀스를 나타냅니다. 그리고 그것은 단지 뭔가 특별한 의미 우리는에 표현해야하는 다른 방법입니다. 당신이 표현 어떻게에 관해서 백 슬래시는, 잘, 우리는거야 그 돌아온다. 하지만 대답은, 너무, 실제로 조금 명백한. 그럼 이제 다른을 소개하자 프로그래밍 구조 당신은 스크래치에서 본. 당신은 아마 당연한 것 당신은 이미에 다이빙 한 이미있는 경우 문제는 0을 설정합니다. 하지만의는 이제 C의 구문을 소개하자 이러한 달리 상당히 직관적 대한 아이디어, 적어도 그들 중 일부. 따라서이 조건의 개념이나 분기, 반면에 이전에 우리 본 코드로 표현 스크래치의 왼쪽에 다음과 같은 - x는 y보다 작 으면 그렇게 말 - 대신 지금 C의 - 날 연마하자 간단한 케이스에서 - , 열 경우 우리는 단순히 말할거야 괄호는 뭔가 사실이다 - 부울 식 갈 것입니다 나는 상황을 밝혔다 곳 - 닫는 괄호는 그 무엇합니까 그 중괄호 내부. 그래서 여기, 너무, 중괄호 스크래치의 같은 종류의 수 있습니다 U 모양의 퍼즐 조각. 이러한 중괄호 안에 무엇이 않습니다. 이 경우 슬래시를 슬래시. 그리고이 앞을 알 수 , 아니 백 슬래시를 슬래시. 앞으로 슬래시, 슬래시 프로그램 한 사람들 전 그냥 의미 - 그냥 의견입니다. 코멘트는 선이 아닙니다 코드 라기. 그것은 당신이, 영어의 라인의 인간 자신에게로 작성했습니다 아마로 뭔가를 당신을 생각 나게 을 설명하기 위해, 자신에게 설명 다른 사람이 당신의 코드가 무엇을하고있다. 그냥 설명 주석이다. 지금, 물론, 우리는 두 방법이 있습니다 그냥 이렇게 도로에 포크 수행하여 도로 세 방향 포크 이, 그리고 당신이 계속하는 경우 패턴, 당신은 네 방법이 있습니다 도로에서 다섯 방향, 6 자 포크 경우 당신은 실제로 처리해야 많은 조건합니다. 그리고 여기에 병렬 처리를 통지 - , 다른 (조건) 경우, (상태) 경우 그리고 약간의 단 하나의 이상한하는 마지막입니다 그냥 다른 것입니다. 그러나 다시, 이것은 동일합니다 개념적으로, 우리가 무슨 짓을했는지에 이미, 비록이 구문은됩니다 익숙해 조금 가라. 자,이 예제에서,이 다른 이상한 구문. 우리는, printf를 다시 여는 괄호를 참조하십시오 와 닫는 괄호. 그리고 내부가 인용 문자열입니다. 맥락에서 괄호, printf의의, 왼쪽에 이동 오른쪽 무엇? 우리가 인용하는 무엇을 설명합니까 더 일반적으로 문자열? 그래서 인수입니다. 언제든지 당신은 같은 기능을 가지고 printf를, 그리고 열린 괄호와 내부의 닫기 괄호 뭔가 그것은인지는 문자열, 또는 정수 또는 아무것도, 일에 그 괄호가 호출 사이 인수. 그리고 인수는 단지 영향 함수의 행동. 이 경우, 그것은 꽤 방법을 취소있어. X