>> Rồi.
Chào mừng bạn đến Khoa học máy tính 164.
Vì vậy, trước khi chúng ta đi sâu với một cái nhìn tổng quan
những gì khóa học sẽ được về học kỳ này và một chút
vật liệu trong ngày đầu tiên này, Tôi nghĩ rằng tôi muốn cung cấp cho bạn một cảm giác
làm thế nào chúng ta đã trải qua đêm cuối cùng.
Nó không phải là quá nhiều như phía máy chủ thách thức chúng ta phải đối mặt
nhưng một phía khách hàng.
Vì vậy, đã phát hiện ra bất kỳ của bạn trang web cụ thể này chỉ được nêu ra
Canvas hay mà một số học Harvard các khóa học tại đang di chuyển đến?
Vì vậy, iSites sắp chết chậm tử vong nếu bạn đã nhận được đính kèm
với nó, nó có khả năng được thay thế bằng vải.
Và vì vậy chúng tôi nghĩ rằng chúng tôi nhảy trên tàu và là một phần
thử nghiệm phiên bản beta này sử dụng Canvas mà là một công cụ mã nguồn mở.
Nó được tài trợ bởi một công ty gọi là Instructure.
Do đó, có một công ty sao đằng sau nó.
Nhưng đối với hầu hết các phần chúng tôi đang sử dụng nó theo cách này.
Nhưng đêm qua khi chúng tôi đã cố gắng
để có được những trang web khóa học hoàn thành, chúng tôi chạy vào rất nhiều
của nỗi thất vọng vì điều này là một hệ thống quản lý học tập
có nghĩa là nó là một phần mềm
mà bạn có thể quản lý nội dung
bằng cách sử dụng giao diện dựa trên web.
Bạn không cần phải sử dụng file cấu hình phức tạp.
Bạn không cần phải biết bất cứ điều gì về cơ sở dữ liệu,
nó là khá nhiều điểm và nhấp vào một cách trang web của Google
hay như thế có thể được.
Nhưng kết quả là nó đã vất vả để làm một cái gì đó đơn giản như -
chúng ta hãy đi đến trang web của khóa học.
Bây giờ, chỉ cần đặt tùy chọn Menu trong phía bên tay trái này.
Trường hợp tại điểm, không có gì có thực sự ngay bây giờ
vì cách làm việc của phần mềm được thiết kế là nếu bạn muốn
để cài đặt những thứ trong menu bên trái của bạn,
bạn phải thực sự cài đặt các mô-đun
hoặc các ứng dụng trong phần mềm.
Và chúng tôi không muốn làm điều này.
Chúng tôi chỉ muốn có một liên kết thích các giáo trình.
Chúng tôi muốn có một liên kết đến các nhân viên.
Chúng tôi muốn có một liên kết đến video và các loại tương tự.
Vì vậy, nếu bạn đã phải đối mặt với các trang web,
nó từ trang web của bên thứ ba
nhưng bạn không có kiểm soát trong mã nguồn.
Bạn không có quyền truy cập vào máy chủ, bạn không thể SSH,
bạn có thể SFTP, tất cả các bạn có thể sử dụng là giao diện web địa phương
và bạn muốn bắt đầu thay đổi
hoặc thay đổi người sử dụng giao diện thông qua các phương tiện khác.
Những gì có thể đầu tiên của bạn bản năng được?
Những câu hỏi bạn có thể hỏi của Instructure trong trường hợp này,
các công ty để bạn có thể loại làm việc
xung quanh những hạn chế này như chúng tôi đã làm?
Chúng ta muốn thêm tùy chọn trình đơn
nhưng chúng ta không thể thay đổi mã máy chủ của họ.
Vì vậy, những gì giải pháp có thể gợi ý rằng?
Yeah.
[Ghi chú không nghe được]
OK.
[Ghi chú không nghe được]
Yeah. Vì vậy, chúng tôi có thể xem xét một cái gì đó
như một phần mở rộng Chrome.
Nếu không quen thuộc, một Chrome mở rộng về cơ bản là một phần
phần mềm từ Chrome trình duyệt nói chung bằng văn bản
trong JavaScript.
Và nó chỉ là một cách tiêm chích đang thường JavaScript có thể
một số CSS vào một trang web trang mà bạn truy cập.
Theo đó phần mở rộng Chrome chỉ cần liên tục theo dõi những gì
các trang web bạn truy cập và cố gắng phát hiện.
Oh nếu bạn facebook.com làm điều này.
Oh nếu bạn đang ở isites.harvard.edu làm điều này.
Vì vậy, những người bạn của những người có thể đã sử dụng 2x cắm CS50 của
trong đó cho phép bạn tăng tốc độ lên video là chính xác điều đó.
Vì vậy, đó là thú vị và nó loại đi đúng hướng.
Bởi vì nếu bạn không có quyền truy cập đến máy chủ, bạn chỉ muốn
bằng cách nào đó thay đổi DOM cây mà người dùng đang nhìn thấy,
bạn có thể khá nhiều chỉ làm điều đó phía khách hàng.
Bây giờ tất nhiên một bắt rõ ràng
sử dụng một Chrome mở rộng là gì?
Đúng. Vì vậy, không phải ai cũng sử dụng Chrome và nếu cảm thấy loại què
nếu bạn loại có với nhiệm vụ mà tất cả
người dùng của bạn có thể chỉ sử dụng các trang web
và xem tùy chọn Menu nếu họ có Chrome.
Vì vậy, những gì khác chúng ta có thể might chúng tôi muốn hỏi Instructure?
>> Vì vậy, có một điều tôi đoán có thể bạn có thể thêm một văn bản
trên trang web, phải không?
>> OK.
>> Tìm hiểu xem bạn có thể thực sự đặt HTML trong văn bản.
>> OK. Tốt.
Vì vậy, chúng ta có thể yêu cầu họ nếu chúng tôi có thể HTML đặt trong văn bản thực tế.
Vì vậy, thay vì gửi một văn bản thông báo, chúng ta có thể thêm các liên kết?
Chúng ta có thể thêm hình ảnh?
Chúng ta có thể thêm đạn?
Bất cứ điều gì chúng ta có thể muốn làm thẩm mỹ.
Và câu trả lời ngắn gọn là có.
Có thực sự là một loại WYSIWG,
Những gì bạn thấy bạn là gì Được biên tập mà đi kèm
với đặc biệt này phần mềm
cho phép bạn chỉnh sửa.
Những thứ như trang chủ với tên của tôi và Rob
và Tim và vv.
Và đã cho chúng tôi một phần của con đường đó.
Thật không may điều đó không chúng ta hãy đặt bất cứ điều gì ở đây
ví dụ.
Mà không cho chúng tôi đưa bất cứ điều gì ở đây bởi vì chúng tôi hạn chế
bởi những gì bản gốc tác giả muốn chúng tôi làm.
Vì vậy chúng tôi một bước gần hơn.
Những gì khác có thể chúng tôi yêu cầu công ty?
Là những gì khác cách giải quyết có lẽ?
Nó đã nhận được khả năng giải quyết.
Bạn có thể làm những gì khác?
Vì vậy, bạn đã ở bên phải theo dõi với khái niệm này
của phía máy khách JavaScript tiêm.
Làm thế nào khác chúng ta có thể nhận được JavaScript vào trang web có lẽ, phải không?
Bởi vì một khi bạn có JavaScript,
bạn có khá nhiều có thể làm bất cứ điều gì ngay cả khi kinh nghiệm của bạn
với JavaScript được giới hạn trong 50 hoặc một số kinh nghiệm trước khác,
Bạn có biết rằng bạn có thể đi qua cây
đó là một trang web, DOM.
Bạn có thể nhớ lại rằng bạn có thể thêm các nút hoặc loại bỏ các nút.
Bạn có thể tiêm điều vào một trang web.
Trong thực tế đó là chính xác những gì 2x CS50 cắm không.
Nó xẻ ra iSites ' máy nghe nhạc video và puts
trong một khác nhau tất cả cùng nhau.
Vì vậy, nếu công ty Instructure cho phép bạn
để tiêm JavaScript vào trang web của khóa học của bạn?
Nói cách khác, nếu họ cho phép bạn thông qua giao diện đồ họa của họ,
giao diện WYSIWG của họ để dán URL của một tập tin JS
và thậm chí có một file css. và sau đó họ đã chăm sóc
của quá trình chèn nó ở đầu mỗi trang.
Vì vậy, chắc chắn đủ, đây là cách duy nhất chúng tôi có thể
để đạt được điều này.
Nếu tôi xem mã nguồn trang web ở đây - và cho tôi phóng to và tìm kiếm
cho cs164.net mà là một miền chúng tôi khóa học sở hữu.
Nhận thấy rằng thông qua một số loạt bước, phải mất một thời gian để tìm
với tài liệu của họ.
Chúng tôi chúng tôi có thể nói, trên đỉnh mỗi trang web gì kết quả đầu ra Canvas
cho khóa học này, đầu ra. file css.
Và nếu chúng ta làm một lệnh f và tìm kiếm xa hơn một chút,
bạn sẽ thấy rằng ở đây,
lồng nhau với một số JavaScript đang có cũng đề cập đến
URL này ở đây.
Vì vậy, nói cách khác, chúng tôi loại đã lừa họ
vào tiêm chích bất cứ điều gì CSS,
bất cứ điều gì chúng ta JavaScript muốn vào trang web.
Để sau đó đặt ra câu hỏi, những gì nó làm gì?
Vâng, chúng ta hãy đi trước và chỉ cần lấy nguồn này,
dán lên đây.
Nó bị cấm vì để mô phỏng này,
Tôi chmoded [ngữ âm] tất cả mọi thứ.
Vì vậy, hãy để tôi trả lại đó.
Đọc truy cập và bây giờ lại.
Vì vậy, chúng tôi đã làm gì?
Vì vậy, bạn sẽ nhận được tốt hơn lúc này đặc biệt là giữa học kỳ
khi chúng ta dành rất nhiều thời gian của chúng tôi trên JavaScript.
Nhưng những gì thực hiện điều này xuất hiện để được làm?
Vì vậy, một ở đầu này JS tập tin đó một lần nữa được bao gồm
trong tất cả các trang web mà Tất nhiên bây giờ chạy trên trang web.
Chúng ta kiểm tra xem có các loại jQuery không phải là không xác định.
Vì vậy, trong nhiệm kỳ của giáo dân có nghĩa là gì?
Nó sẽ có ý nghĩa gì nếu jQuery là không xác định?
Vâng, bạn có JavaScript được nạp.
Bạn không có jQuery nạp.
Vì vậy, chúng tôi chỉ hy vọng Instructure đó,
các công ty thực sự là sử dụng jQuery mình.
Nếu không, chúng ta sẽ phải dán các thư viện jQuery trên
của tập tin này như vậy là để có thể truy cập nó.
Và điều này không phải là vì tôi chỉ đơn giản muốn được tiếp cận với những điều
như dấu ký hiệu đô la và các chức năng
mà đi kèm với jQuery.
Nếu bạn nhớ lại này thư viện và nếu không quen thuộc
hoặc nếu nó được một thời gian, phần còn lại đảm bảo chúng tôi sẽ đến đây
với trong một thời gian vài tuần.
Vì vậy, điều này là gì chúng ta đang làm gì ở đây?
Vì vậy, đối với những người có thể nhớ lại, những gì cú pháp này ở đây nghĩa là gì?
Khi bạn chỉ cần vượt qua một ẩn danh chức năng hoặc chức năng lambda?
Trong CS51 nói chuyện với jQuery chức năng như thế này.
Khi là mã này sẽ được thực thi?
Yeah.
[Ghi chú không nghe được]
Chính xác. Vì vậy, mã này bằng cách tự nhiên
cuộc gọi chức năng này mặc định chỉ sẽ được thực thi
khi DOM như vậy để nói được nạp đầy đủ.
Tất cả các đầu HTML xuống dưới, trái hoặc phải đã được đọc
vào bộ nhớ và có một số cấu trúc cây trong bộ nhớ.
Bây giờ điều này là tốt vì nếu tôi muốn bắt đầu chơi
xung quanh với nó và thay đổi Tùy chọn trình đơn, loại bỏ những thứ,
thêm điều gì đó, tôi phải chờ
cho đến khi ít nhất là mặc định DOM được đặt ra.
Vì vậy, đây chỉ là tiêu chuẩn jQuery cú pháp.
Nó tương đương với nói khi DOM đã sẵn sàng.
Và bây giờ nó thực sự chỉ là một sự kết hợp
jQuery cú pháp và một số HTML.
Vì vậy, ví dụ, tôi quyết định rằng này chỉ làm phiền tôi.
Không ai trong khuôn viên trường cho biết, oh, bạn đang dùng Comp Sci 164,
hoặc Comp Sci bất cứ điều gì, bạn nói CS164 hoặc CS bất cứ điều gì.
Ít phiền toái như vậy nhỏ, chúng tôi muốn thay đổi điều đó,
vậy làm thế nào chúng ta có thể làm điều đó với một cái gì đó như JavaScript?
Vâng, thông báo, nếu tôi đi đến các trang ở đây
và trên đỉnh trang, trước đây là CS164.
Nếu tôi mở Chrome, mà là một trình duyệt hữu ích
để làm kiểm tra DOM và bạn phóng to ở đây.
Nhận thấy bên trong tập tin HTML này là một yếu tố mà đã có một ID
của vụn bánh mì và ID mà những gì?
Nó xác định duy nhất một của các nút trong cây
và ngay sau khi tôi có định danh duy nhất cho một số đoạn
HTML trong DOM, bây giờ Tôi có thể làm bất cứ điều gì tôi muốn
với trang web này.
Tôi có thể xóa tất cả các nút DOM.
Mỗi thẻ HTML từ trang và đặt bất cứ điều gì mà tôi muốn
nhưng nhu cầu chúng tôi khá khiêm tốn.
Tôi chỉ đơn giản muốn cho đoạn mã ở đây.
Tôi muốn đầu tiên tìm thấy tiêu đề phần tab
đó là một trong những cha mẹ yếu tố này chỉ ở trên đó.
Và tôi muốn đi trước và thay đổi -
Tôi muốn thay đổi các nội dung
trong đó thông qua HMTL này chức năng để một liên kết đến CS164
và sau đó tôi muốn thay đổi CSS trên nó
để có một trọng lượng phông chữ in đậm.
Và chúng tôi sẽ không đi vào lớn chi tiết về phần còn lại của điều này ở đây.
Nhưng nhận thấy dòng này ở đây.
Tôi đã thay thế một toàn cầu ở khắp mọi nơi.
Về cơ bản nói, bất cứ nơi nào bạn nhìn thấy một khoảng
có một lớp học gọi là ellipsible,
đó không phải là một điều tiêu chuẩn,
đó chỉ là những gì Canvas phần mềm gọi lớp học nhất định.
Nếu nó có chứa chìa khóa cụm từ COMPSCI164 đi trước
và thay thế HTML bên trong bất kỳ khoảng như vậy chỉ với CS164.
Và phần còn lại của điều này là khá tốt nhận xét.
Nhưng kết quả cuối cùng, những gì tôi làm là bằng tay với Chrome
hoặc bất kỳ trình duyệt để tìm ra những gì các định danh duy nhất là
các nút DOM khác nhau trong cây và biến đổi họ
theo cách mà tôi muốn.
Và kết quả cuối cùng, bây giờ mà chúng tôi chmoded những điều đúng là
mà bây giờ tôi có thể đặt một tùy ý đoạn HTML trên đây.
Tôi có thể trích xuất ra những thứ như chân.
Tôi có thể trích xuất ra HTML ở đây và Tôi nên sóng từ chối trách nhiệm rất lớn.
Đây là một hack hoàn chỉnh
được thực hiện một trang web như thế này.
Nhưng nó loại nói để quá trình suy nghĩ
mà nên hướng tới giữa học kỳ,
đặc biệt là khi chúng ta dành nhiều thời gian JavaScript giúp bạn suy nghĩ
về cách bạn có thể giải quyết khác nhau vấn đề hy vọng tốt hơn
hơn theo cách này.
Nhưng các thành phần để giải quyết một vấn đề
như thế này thực sự chỉ giảm xuống còn một số vấn đề cơ bản.
Mở ra một cái gì đó như thanh tra của Chrome
và sự hiểu biết những gì cây DOM là.
Hiểu biết những gì các Bộ chọn CSS
cho ID duy nhất hoặc cho tên lớp.
Biết một số cú pháp có đó là trong JavaScript tinh khiết
hoặc trong thư viện jQuery để thực sự thay đổi DOM.
Và vào cuối ngày, chúng tôi khá nhiều có thể
để bẻ cong các phần mềm ý muốn của chúng tôi.
Nhưng có lẽ một nắm bắt.
Giá chúng ta có thể là những gì trả tiền cho toàn hack này?
Nguy cơ là gì?
Yeah.
[Ghi chú không nghe được]
Chính xác. Nếu Instructure đặt lại tên cho một trong các lớp học của họ
hoặc đặt lại tên một ID của họ hay chỉ là sắp xếp lại HTML của họ
đó là hoàn toàn đặc quyền của họ,
tất cả điều này có thể phá vỡ và sau đó một trong chúng tôi là sẽ có
nhận thấy nó hoặc một trong các bạn kẻ sẽ phải báo cáo
và chúng ta sẽ có để suy nghĩ về đó một lần nữa.
Như vậy có lẽ không phải là một khổng lồ đối phó nhưng vẫn còn một mối đe dọa.
Những gì khác có thể xảy ra?
Những gì người khác là xấu về phương pháp này?
Nó ít phổ biến hơn những ngày này.
Yeah. Đó là một chút chậm hơn trong đó -
thay vì chỉ nhận được nguồn gốc từ máy chủ.
Bây giờ bạn đang làm thêm thay đổi phía khách hàng.
Và thực sự nếu chúng ta có một cái kết nối internet nhiều chậm,
bạn sẽ thực sự thấy có khả năng một số nhấp nháy nhất
trên màn hình như DOM các nút đang thay đổi.
Chúng tôi chỉ xảy ra có một kết nối,
một máy tính khá nhanh và do đó nó khá khó nắm bắt cho người dùng.
Nhưng nếu họ có JavaScript bị vô hiệu hóa?
Bây giờ đây là một cực đoan trường hợp góc những ngày này.
Hầu hết mọi người - đa số khi họ rời khỏi JavaScript trên.
Nhưng nếu nó ra khỏi những gì sẽ xảy ra?
Chúng tôi không thấy bất kỳ của nào đó.
Vì vậy, trong ngắn hạn, dựa vào JavaScript cho một cái gì đó
như thế này được công việc làm
nhưng takeaway là như thế nào chúng tôi đã đi về đồng này.
Và bạn có thể xem cho chính mình chỉ bằng cách xem mã nguồn
và sau đó chĩa ra xung quanh bất cứ lúc nào của hai URL trên cs164.net.
Làm thế nào chúng tôi thực sự đã làm điều này?
Nhưng minh họa của nó như thế nào bạn có thể bắt đầu xây dựng hơn
DOM thú vị và thậm chí cả trong trường hợp
trang web của động điều khiển như ứng dụng Facebook,
hoặc Gchat hoặc tương tự có liên tục kéo trong nhiều dữ liệu hơn,
làm thế nào bạn có thể thực sự thay đổi giao diện đó.
Nhưng bây giờ, chúng ta hãy nhìn vào đúng cách để bắt đầu làm việc.
Vì vậy, năm nay, khóa học, không giống như hai năm trước
khi các bạn chủ yếu trong PHP trong nửa đầu
và JavaScript để cuối cùng một nửa trong khi hai năm trước đây,
chúng tôi tập trung hơn vào điện thoại di động với một chút PHP, năm nay,
chúng tôi quyết định thay đổi điều cần tập trung hơn
trên các ứng dụng dựa trên web.
Thực hiện không cặp của người dân
nhưng trong đội đặc biệt mỗi đội gồm bốn
và động cơ là nhiều.
Nhưng trong số đó là rằng,
với một nhóm bốn có chỉ rất nhiều mảnh, bạn có thể cắn
ra như là một nhóm.
Làm phát triển web có xu hướng bản thân đất đến các khía cạnh khác nhau
của dự án mà bạn có thể sau đó ủy quyền trong nhóm của bạn.
Ví dụ, chúng ta sẽ có khả năng có một hoặc hai của bạn
trong một đội bóng được làm việc trên kết thúc trước, các mã JavaScript,
CSS, tính thẩm mỹ.
Trên cùng một dự án khác một hoặc hai của bạn sẽ tập trung
trở lại vào cuối, cơ sở dữ liệu thiết kế lược đồ, xác nhận
dữ liệu, văn bản API những người kết thúc trước sẽ làm việc.
Và vì vậy chúng tôi chỉ nhận được rất nhiều hơi thở hơn cơ hội
cho mọi người cộng tác.
Và do đó bạn sẽ tìm thấy nếu bạn đã thực hiện dự án
chỉ với một đối tác trong quá khứ,
rằng với bốn nó sẽ là một ít thách thức hơn,
thú vị hơn nhưng rất nhiều mạnh hơn để có tất cả
của các bạn cộng tác với nhau.
Về điều kiện tiên quyết, chúng ta có thể sẽ gắn bó với những
cho danh mục bốn trước khi khóa học CS.
Và điều này được dựa trên kinh nghiệm.
Một vài năm trước đây như là ám chỉ bạn trước đó,
chúng tôi khá nhiều cho phép bất cứ ai chỉ mất 50
hoặc có thể một số lớp trong cao trường để tham gia khóa học
nhưng chỉ có một lây lan như vậy khả năng và mức độ thoải mái.
Nó đã làm cho nó khó khăn để có các cuộc hội thoại nhất định và rất nhiều
của học sinh trong lớp đấu tranh.
Vì vậy, chúng tôi nghĩ cách này,
chúng ta có thể loại làm tất cả mọi người một lợi chung.
Vì vậy, giữ cho rằng trong tâm trí.
Xét về mặt kích thước nhóm, bốn sẽ được mặc định
nếu bạn có ba bạn bè mà bạn muốn
như hợp tác, đó là hoàn toàn tốt.
Chúng tôi sẽ không áp đặt đội đặc biệt cho bạn.
Nếu bạn không có bất kỳ bạn bè hoặc các đối tác trong tâm trí cho lớp học,
không có việc lớn, chúng tôi sẽ tiếp tục nhớ rằng là tốt và cố gắng
để tạo điều kiện các các loại quan hệ đối tác.
Xét về mặt cấu trúc của lớp, điều này rất bất thường.
Tất nhiên sẽ không được cấu trúc cho hầu hết các phần
xung quanh các bài giảng và sẽ không được cấu trúc
xung quanh các bạn ngồi có nhìn chằm chằm theo cách này
và tôi nói chuyện theo cách này.
Chứ không phải hầu hết các giờ học sẽ
dưới hình thức các cuộc họp nhóm.
Hoặc nhóm của bạn sẽ thu thập ở đây hay ở nơi khác trong khuôn viên trường
cho một vài giờ vào hôm thứ Hai buổi chiều hoặc cho một vài
giờ vào ngày thứ Tư buổi chiều.
Trong những tuần tới, chúng tôi sẽ tìm ra ngày
và thời gian mà mỗi người sẽ được.
Nếu cần thiết phải có, chúng ta có thể tinh chỉnh các lần nhưng chúng ta sẽ thấy based
trên một cuộc khảo sát mà các bạn tất cả cuối cùng điền vào.
Điều gì xảy ra trong các cuộc họp?
Vì vậy, các cuộc họp hàng tuần là
nơi các bạn chủ yếu trình bày sự tiến bộ
trên nhiều dự án, hơn vào những người trong một thời điểm.
Vì vậy, trong các cuộc họp nhóm, một trong những cán bộ giảng dạy và
hoặc bản thân mình sẽ có mặt và mục tiêu sẽ cho mỗi
trong bốn người ở đội báo cáo về sự kiện quan trọng
mà bạn có hoặc đã không đạt được.
Nơi cột mốc quan trọng sẽ được xác định
như nghiên cứu một cái gì đó, thực hiện một cái gì đó,
thiết kế một cái gì đó, suy nghĩ về một cái gì đó hoặc tương tự,
bảo vệ quyết định thiết kế.
Vì vậy, nó là - chúng tôi có nghĩa là lớp này
để đặc biệt quan trọng hoặc thử thách.
Vì vậy, nó không chỉ sẽ được nói về ngày của bạn
và làm thế nào bạn thực sự đã chọn thực hiện điều này nhưng tôi và Rob
Tim và người sẽ gặp một chút sẽ ở đó để thử thách bạn.
Vì vậy, nếu bạn đã thực hiện một quyết định
và nó không nhất thiết phải là tốt nhất đó là tốt.
Nếu bạn thực sự có một mạnh mẽ ý kiến ​​là tại sao bạn đã làm điều đó.
Và trong câu trả lời của hình thức, tốt, nó hoạt động
nhưng tôi không thực sự chắc chắn là không những gì đang thực sự mong đợi
tại các cuộc họp này.
Vì vậy, nó thực sự có nghĩa là phải một cuộc trò chuyện hai chiều
trong đó bạn bảo vệ của bạn quyết định và cũng thuyết phục chúng tôi
rằng con đường bạn đã thực hiện là lý tưởng nhất
hoặc nó là một cơ hội cho bạn để thông tin phản hồi từ chúng tôi
và thậm chí cả các đối tác của bạn
như những gì bạn có thể được làm khác nhau.
Và sau đó đặc biệt đây sẽ là cơ hội
để xem xét mã.
Vì vậy, các bạn sẽ được viết Mã JavaScript và PHP đang
và các kỹ thuật các khía cạnh của từng dự án
và mục tiêu sẽ được trước một TV màn hình lớn,
xung quanh các bảng như thế này cho một trong các bạn đứng
tại một thời điểm bất cứ ai có được làm công việc nhất
trên một số khía cạnh của dự án đã đặt
và đưa ra các mã.
Và cung cấp cho chúng tôi một tour du lịch bằng lời nói của mã và cung cấp cho chúng tôi một cơ hội
để nói tại sao bạn có sáu vòng lặp lồng nhau thực hiện
một cái gì đó như thế?
Hoặc tại sao bạn không có chỉ số
trong bảng cơ sở dữ liệu khác nhau của bạn chủ đề mà chúng ta sẽ khám phá
trong quá trình học kỳ.
Vì vậy, thỉnh thoảng chúng tôi sẽ có cuộc đàm phán kỹ thuật hoặc
theo hình thức này trong các cuộc họp theo phong cách người
nơi mà tất cả chúng tôi thu thập với nhau hoặc qua video
làm cho mọi việc một ít không đồng bộ
cho mục đích thuận tiện về chủ đề đặc biệt kỹ thuật
và các công cụ mà chúng ta sẽ sử dụng trong học kỳ này.
Một số JavaScript phổ biến thư viện
ví dụ là Backbone.js và Bookshelf.js và Express.js.
Đây là tất cả các công cụ với mà bạn có thể thực hiện dựa trên web
các ứng dụng sử dụng JavaScript.
Không về phía khách hàng mặc dù
nhưng trên phía máy chủ sử dụng một khuôn khổ gọi là Node.js
đó là một thay thế cho sử dụng một cái gì đó như Apache
hoặc Microsoft IIS hoặc khác phần mềm máy chủ web.
Vì vậy, chúng tôi sẽ thực sự viết trong mã JavaScript lớp,
cả về phía khách hàng như cũng như trên phía máy chủ.
Chúng tôi sẽ nói về các công cụ mà một số
của bạn đã quen thuộc.
Những thứ như Git.
Chúng tôi sẽ đi sâu vào sâu hơn để điều như SQL và hạn chế
và các giao dịch và rất nhiều các chi tiết mà chắc chắn
trong một lớp học như 50, chúng tôi loại vẫy tay của chúng tôi cho lần vì lợi ích
nhưng luôn luôn quan trọng
khi thực sự thực hiện một dự án đó sẽ được sử dụng
bởi thực tế và hy vọng một số lượng lớn người sử dụng
nơi hiệu suất sẽ bắt đầu để làm cho một sự khác biệt.
Trong thế giới PHP, chúng tôi sẽ sử dụng một khuôn khổ gọi là Laravel.
Đây là một kiến ​​trúc MVC.
Nếu biết hoặc nhớ lại từ viết tắt đó.
Và nó chỉ là một loạt các Mã PHP để làm cho rất nhiều
việc làm dễ dàng hơn và để làm cho nó dễ dàng hơn
viết phức tạp hơn phần mềm đặc biệt các dự án
được thực hiện bởi nhiều người.
Để thử nghiệm, chúng tôi sẽ sử dụng công cụ như nhạo báng trong các đơn vị PHP
và chúng tôi sẽ nhận được vào các thói quen không chỉ viết mã và sắp xếp
của đập vào nó và giai thoại cố gắng để cố gắng tìm ra,
nó hoạt động như bạn dự định.
Nhưng thay vì làm nó vượt qua các bài kiểm tra nhất định.
Vì vậy, đặc biệt là nếu một người bạn của bạn
trong thay đổi nhóm của bạn một số mã, bạn có thể chắc chắn
mà ở đây cô ấy có không bị phá vỡ bất cứ điều gì chỉ đơn giản là
bởi chạy lại các bài kiểm tra
mà bạn đã đã Văn bản mã.
Vì vậy mà không có hồi quy để có lỗi trạng thái của phần mềm.
Ngoài ra, các dự án là
nơi chúng tôi sẽ chi tiêu hầu hết thời gian của chúng tôi.
Vì vậy, không có bài kiểm tra.
Đó là tất cả do các dự án trong lớp học này
và có thực sự chỉ có hai mỗi đội.
Về cơ bản nửa đầu của học kỳ sẽ tập trung
trên một trang web dựa trên PHP
mà sẽ có trước người dùng cuối giao diện cho cả máy tính để bàn
và tùy chọn điện thoại di động.
Vì vậy, đây sẽ là một cơ hội, mặc dù tiếp tuyến đến lớp
để thực sự làm một cái gì đó như một giao diện điện thoại di động dựa trên web
hoặc nếu bạn thực sự xác định, Android
hoặc iOS sẽ được hoàn toàn tốt đẹp.
Chỉ cần nhận ra rằng đường cong học tập có
nếu không quen thuộc sẽ cao hơn chút.
Nhưng nó sẽ chơi rất độc đáo với tầm nhìn
của cũng có từng dự án có một số kết thúc trở lại API.
Vì vậy, bạn có thể có một tách,
trừu tượng giữa những gì bạn đang làm và những gì Alice và Bob
và Charlie trong của bạn nhóm cũng là tốt.
Để mỗi kết thúc trước của bạn
hoặc quay trở lại kết thúc có thể bằng cách nào đó liên lạc.
Về các chi tiết cụ, cho khuôn khổ,
chúng tôi sẽ dựa vào Laravel và Hùng hồn mà là một ORM,
một Mapper đối tượng liên quan mà chỉ là một lớp phần mềm
để giải quyết những M trong MVC, Model.
Nó làm cho nó một chút dễ dàng hơn đặc biệt là cho các dự án lớn
truy vấn dữ liệu từ cơ sở dữ liệu và ghi dữ liệu
và đại diện cho thế giới thực các đơn vị mà không cần phải
để viết mã SQL nguyên.
Trong thế giới của JavaScript, chúng tôi sẽ một lần nữa sử dụng nhanh
và kệ sách mà là tương tự
trong thế giới JavaScript.
Nhưng thay vì sử dụng Apache sử dụng Node.js
đó là ngày càng phổ biến và cho phép đặc biệt
cho các ứng dụng liên quan đến tương tác thời gian thực,
phòng biểu đồ và các loại tương tự.
Nút là tốt hơn nhiều Apache hơn khi sử dụng -
khi thực hiện các dự án như thế
bởi vì bạn có thể gửi tin nhắn sử dụng các mô hình như quán rượu và phụ,
xuất bản và đăng ký, nếu quen thuộc với những cụm từ.
Vì vậy, thêm vào đó hướng tới giữa học kỳ.
Về kỳ vọng, đây là họ cho khóa học.
Tham dự hoặc xem những thường xuyên các cuộc đàm phán, các cuộc đàm phán kỹ thuật.
Tiến độ mà cuối cùng sẽ gây
trên trang web của các khóa học.
Tham gia vào tất cả các cuộc họp.
Vì vậy, tham gia được yêu cầu ở mỗi nguyên nhân các cuộc họp nhóm '
sau khi tất cả đó là nơi mà hầu hết giảng dạy của khóa học
và thông tin phản hồi và tương tác sẽ xảy ra.
Sự kiện quan trọng hàng tuần, chúng tôi sẽ sử dụng một công cụ mà tôi sẽ làm cho đề cập đến
của trong một chút thời gian để thường chỉ định cho bạn từ một hoặc hai
của các nhân viên cho mỗi bốn người trong nhóm.
Những điều cần làm và những mọi thứ sẽ đến dưới hình thức
tại sao không bạn bác sĩ thú y đi tùy chọn này.
Tại sao bạn không đi bác sĩ thú y này lựa chọn và tìm ra mà
của hai thực hiện khả năng là tốt hơn
giữa bây giờ và nói tuần tới.
Tại sao bạn không đi thực hiện điều này?
Hoặc bạn thiết kế các bảng cơ sở dữ liệu.
Và như vậy trong ngắn lịch trình trong khóa học sẽ
là khá hữu cơ tùy thuộc vào các dự án
rằng mỗi đội bóng phụ thuộc về những gì phát hiện của bạn là
khi rà soát một số thực hiện lựa chọn và tùy thuộc khả năng
về những gì người dùng cuối cuối cùng muốn dự án để làm.
Và như vậy vào giai đoạn cuối đó, có Không có thời hạn cố định mỗi nói.
Có khá nhiều sẽ được trong một nhiệm cán
hạn chót của mỗi vài ngày, hàng tuần dựa trên
trên các cuộc đàm thoại mà bạn có với một hoặc hai
của nhân viên tại bàn của bạn.
Cuối cùng, mặc dù là những gì do là trình
của hai dự án cuối cùng.
Về những gì dự án sẽ được,
các dự án sẽ được, hoặc đề xuất
và được lựa chọn bởi các bạn.
Trong thực tế, về hình thức xổ số ví dụ bạn sẽ được yêu cầu
trên một hoặc nhiều dự án là gì đặc biệt là bằng cách nào đó liên quan
đến trường mà bạn nghĩ rằng sẽ được hấp dẫn để thực hiện.
Vì một trong những hy vọng của khóa học là
rằng bất cứ dự án làm đến
của khóa học này tồn tại kết thúc học kỳ.
Và do đó đặc biệt nếu họ chủ đề trường,
cho dù nếu đó là một Danh mục Tất nhiên, công cụ mua sắm
hoặc các sự kiện lịch hoặc Dịch vụ đưa đón hoặc bất kỳ số
các dự án thức phổ biến.
Hy vọng sau khi kết thúc của học kỳ này là
rằng bất kỳ dự án như vậy sinh sống.
Và thực sự hướng tới mục tiêu đó,
những gì chúng tôi nghĩ rằng chúng tôi làm là làm cho nó một chút thú vị.
Và cũng có loại cơ hội hiểu biết
cho các cuộc tranh luận, theo đó cho hầu hết các dự án bất kỳ mà chúng ta
như là một lớp phó học kỳ này,
sẽ có hai đội giao cho cùng một dự án.
Ý tưởng chung được rằng họ không thực sự phải
để nói về họ quyết định thiết kế khác nhau,
chứ không phải có nghĩa là nó sẽ được nhiều hơn một đối thủ cạnh tranh như
người cuối cùng có thể sản xuất thiết kế tốt nhất, thực hiện.
Vì vậy, vào cuối của học kỳ, đến tháng, chúng tôi gửi một
và không cả những giải pháp.
Và chúng tôi như một khóa học sẽ quan tâm của các lưu trữ và vv
để cuộc sống di sản của bạn trên vào cuối mùa xuân.
Làm các ứng dụng này phải làm gì?
Có thể được bất cứ điều gì, một cái gì đó cho một bộ phận,
một cái gì đó cho một nhóm học sinh,
một cái gì đó cho sinh viên hơn nói chung sẽ là một phần
của cuộc đàm thoại trong tuần tới
cho đến khi đầu lặn đầu tiên
sau khi chọn một số ít các dự án như vậy.
Trong điều kiện của các nhân viên, cho Tim tôi giới thiệu và Rob
những người muốn nói lời chào.
Và đó là những kẻ cho một trong những dự án sẽ được -
cho cả hai dự án sẽ là cố vấn chính của bạn.
Về cơ bản với một trong các dự án, Rob sẽ được thu thập
với bạn hàng tuần cho các cuộc trò chuyện.
Với một trong các dự án, Tim sẽ được tập hợp với bạn
cho những cuộc trò chuyện và chúng tôi sẽ trao đổi khoảng giữa học kỳ
khi chúng tôi chuyển đổi dự án.
Nếu bạn muốn chỉ cần nói gần micro này.
>> Chào, tôi là Rob.
Tôi tốt nghiệp tháng cuối cùng từ [không nghe được].
Tôi thầy dạy trong CS ở đây bây giờ.
Kích thích cho khóa học.
>> Và tôi Tim và tôi thực sự hoàn toàn mới cho khu vực.
Tôi ban đầu từ Philadelphia vì vậy tôi chỉ mới bắt đầu
lên đây một vài tuần trước và tôi thực sự
vào phần mềm mã nguồn mở.
Tôi giúp đỡ với việc duy trì Dự án Backbone.js nơi mà một số
của bạn có thể làm quen với
và tôi cũng đã tạo ra Dự án Bookshelf.js
David đã được nhắc đến.
Vì vậy, tôi rất vui được thấy các dự án.
>> Thật vậy.
Để biết thêm thông tin về Tim ít nhất là nếu bạn đi
trang chủ của khóa học và nhấp vào tên của mình nó sẽ dẫn
vào kho lưu trữ của mình nếu GitHub bạn muốn xem xét một số
mã nguồn mở của mình các công cụ và các dự án.
Vì vậy, trong điều kiện của lớp, chỉ 'Gây ra đây là một câu hỏi thường thậm chí
nếu loại tiếp tuyến với tầm nhìn lớn hơn của một lớp,
sẽ như thế nào lớp thức được xác định?
Vì vậy, những gì chúng tôi sẽ cuối cùng được khá chủ quan based
trên sự tương tác chúng tôi bạn qua các khóa học -
với hơn khóa học của bạn của học kỳ dựa
đóng góp của bạn cả kho lưu trữ mã
và các cuộc hội thoại mà chúng ta có.
Và trong một vỏ hạt, nó sẽ được dựa
đóng góp của bạn cho các dự án.
Vùng đồng bằng giữa đầu tiên tuần và cuối tuần trước.
Vì vậy, không phải lo lắng nếu bạn chỉ có bốn khóa học
dưới thắt lưng của bạn trong khi một số học sinh khác
trong lớp có thể có tám,
chúng tôi chắc chắn sẽ tiếp tục ý nghĩ đó.
Phạm vi, chính xác, thiết kế và phong cách của dự án của bạn,
do đó, những trục quen thuộc.
Mức độ mà bạn chuẩn bị cho cuộc họp.
Vì vậy, điều này thực sự có nghĩa là để là một cơ hội cho chúng tôi
để thu thập hàng tuần và có thông minh và vui vẻ và sắp xếp
các cuộc tranh luận của lý tưởng tình cảm.
Tại thời điểm mà các bạn làm đề xuất làm thế nào bạn có thể giải quyết
một cái gì đó và sau đó bảo vệ những gì bạn có thể làm gì và vai trò của Tim
và vai trò của tôi và vai trò của Rob sẽ được thử thách bạn hy vọng.
Vì vậy, hoặc là bạn có thể được thuyết phục để đi ra
trong thực hiện một số khác hướng hoặc có thể tự tin
và cảm thấy khá tốt về thực tế là, yeah,
bạn nghĩ rằng bạn có tốt nhất thực hiện có thể
cho việc này.
Đặc biệt và xa như vậy sẽ có một làm việc nhóm
trên đó cùng một dự án từ góc riêng của mình.
Về các công cụ, vì vậy đây sẽ có lẽ của tất cả làm thêm giờ
và bạn đang chào đón để sử dụng bất cứ điều gì là quan tâm
Để cho nhóm nội bộ của riêng bạn.
Nhưng đối với hầu hết một phần, chúng tôi sẽ sử dụng
một công cụ miễn phí có tên Asana cho nhiệm vụ quản lý.
Bạn sẽ thấy thêm về điều này thông qua email trong những ngày tới
và đó là một công cụ cơ bản thông qua đó bạn có thể làm việc không gian
và các dự án cho đội.
Vì vậy, nếu dự án của bạn là thực hiện đầy đủ [ngữ âm].
Bốn thành viên trong nhóm của bạn sẽ được bên trong của dự án,
trong thư mục đó để nói.
Và bạn và chúng tôi sẽ có thể gán sự kiện quan trọng và để làm của
và ngày và ý kiến.
Và nó là tốt đẹp vì nó tích hợp với email.
Vì vậy, bạn có thể hoặc không thể truy cập vào trang web đó là hoàn toàn vào bạn.
Và bạn cũng có thể nhận được một cảm giác tổng hợp
những gì folks làm việc và có được một cảm giác
về những gì đang xảy ra ngoài bong bóng đặc biệt của riêng bạn
nếu đầu của bạn đi xuống sau một thời gian tập trung
vào một điều đặc biệt.
Cho GitHub quá, nếu không quen thuộc, GitHub là một
những phổ biến nhất, nếu không kho lưu trữ phổ biến nhất
không cho nguồn mã những ngày này.
Chúng tôi sẽ sử dụng như là một trung tâm kho lưu trữ cho mỗi đội bốn
để bạn bốn và sau đó chúng tôi ba có quyền truy cập vào
và có thể bình luận dưới hình thức
ý mã sử dụng Giao diện của GitHub.
Nhưng chúng tôi sẽ giới thiệu với bạn rằng
nếu khi không quen thuộc thời gian đến.
Và đó chỉ là một cách nhanh chóng một cái nhìn thoáng qua của Asana.
Cái nhìn thoáng qua nhanh GitHub và bây giờ cho tôi tạm dừng cho bất kỳ câu hỏi.
Yeah.
[Không nghe được câu hỏi]
Câu hỏi những gì chúng ta nghĩ Python hay Ruby khuôn khổ?
Họ có thể đạt được mục tiêu tương tự đặc biệt.
Chúng tôi xảy ra để sử dụng PHP trong 164 bởi vì rất nhiều
của trang web trước khi người dân kinh nghiệm ra khỏi 50
trong đó sử dụng PHP ngay bây giờ.
Nhưng hoàn toàn, có thể bất kỳ các dự án này được thực hiện trong Ruby,
Trăn, thậm chí Java hoặc khác khuôn khổ, Node.js chắc chắn.
Nhưng chúng tôi xảy ra để sử dụng PHP và chúng tôi xảy ra để sử dụng Node.js
và chúng tôi muốn chuẩn hóa những cho cả các dự án
để nó là rất nhiều dễ dàng hơn như là một lớp
có rất tương tự các cuộc hội thoại
và không có quá nhiều táo và cam trong lớp.
Mặc dù sẽ có quyết định khi nói
để các tiện ích đặc biệt trong thư viện mà bạn có thể sử dụng
cho một trong những người môi trường.
Vì vậy, không có yêu cầu bồi thường một đặc biệt tốt hơn
hơn khác.
Và PHP có một loại một xấu xí lịch sử nhưng nó nhận được nhiều,
tốt hơn nhiều trong những năm gần đây.
Vì vậy, những gì ở phía trước?
Không có bài tập về nhà hoặc bất kỳ như vậy điều tối nay khác
hơn để truy cập vào URL này nếu thực sự quan tâm.
Chúng tôi sẽ đăng các liên kết trên trang web
nếu bạn quên ở đâu.
Thời hạn này sẽ là 6 giờ chiều ngày thứ tư
để Rob và Tim và tôi có thể ngồi xuống vào buổi tối
và xem xét các bài dự thi và tìm ra cách tốt nhất
để tối ưu hóa các nhóm và vv.
Chúng tôi sẽ cho bạn biết bằng thứ năm có hay không chúng ta đã có
xổ số và nếu chúng ta có một điểm
để các bạn có thể nhận được thẻ nghiên cứu ký hợp đồng với con số
ra những gì bạn muốn làm.
Và trong thời gian đó, nếu bạn có bất kỳ câu hỏi,
hãy vào trang web của khóa học.
Nhân viên email cs164.net.
Khi chúng tôi trở lại vào ngày thứ Tư, nó vẫn sẽ được định dạng này.
Nhưng có thể bắt đầu giữa tuần tới hoặc tuần
sau khi mà chúng ta phân chia lên thành các nhóm nhỏ hơn nhiều
chỉ với bốn bạn đáp ứng tại một thời điểm với tôi
và hoặc Tim và hay Rob.
Cảm ơn rất nhiều đến đội ở phía sau ngày hôm nay.
Chúng ta sẽ thấy bạn vào ngày thứ Tư.