Tài liệu Học lập trình bằng tiếng việt với microsoft

  • Số trang: 249 |
  • Loại file: PDF |
  • Lượt xem: 164 |
  • Lượt tải: 0
vndoc

Đã đăng 7399 tài liệu

Mô tả:

Học lập trình Chương 1 Giới thiệu kỹ thuật về phát triển Ứng dụng Máy tính làm việc như thế nào? • Máy tính là một chiếc máy hoàn thiện hơn những máy móc khác, nhưng máy phụ thuộc vào các câu lệnh bên trong để biết phải làm gì. Ví dụ, khi bạn nhấn nút ON trên máy, lô gô của máy tính thể hiện, và hệ điều hành Windows sẽ bắt đầu tải, kế đó là biểu tượng chuột xuất hiện, và rồi màn hình chính desktop của máy tính được tải. • Máy tính trông có vẻ thông minh, nhưng kỳ thực, máy thực hiện các hành vi theo các câu lệnh tương tự. Máy tính sẽ chỉ hoạt động theo các câu lệnh. • Lập trình là đưa ra các câu lệnh để máy làm gì đó, từ đơn giản tới các hoạt động phức tạp nhất, nhưng kết cục lại, đó sẽ chỉ thuần túy là những câu lệnh mà thôi. Làm thế nào để đưa ra các câu lệnh? • Thông qua khóa học này, chúng tôi sẽ chia sẻ với các bạn về những câu lệnh, và bạn sẽ đi qua các từ lạ mà chúng ta đặt cho những câu lệnh này.. • Bạn sẽ nghe về các thuật ngữ như CSS, Javascript, C#, MVC, Java, SQL, Ruby, Python, C, C++, WPF, Android, IOS, Windows Phone, Windows 8, REST, JSON, XML, AJAX, AJAJ Services Làm chủ mọi mặt trên ma trận • Hãy bắt đầu. Chúng ta đã đọc về nội dung của khóa học này trên máy tính. Chúng ta có thể đọc vì có người đã viết hệ điều hành trên máy, và ai đó khác đã viết chương trình Internet Explorer để lướt web và giúp chúng ta gắn kết tại đây. Hơn thế, một vài người đã lập trình trang web này để các bạn có thể tìm được tài liệu này. Làm chủ mọi mặt trên ma trận (tiếp) • Bạn có sử dụng điện thoại? .. Để nhắn tin hoặc gọi điện.. Bạn có thể kết nối vì hãng điện thoại đã có chương trình CNTT để kiểm tra xem bạn là ai, bạn có tiền trong tài khoản để gọi điện không, và chương trình sẽ dò tìm bạn gọi ai theo số bạn vừa bấm, rồi gửi tín hiệu tới máy gọi để máy reo chuông và thiết lập cuộc gọi.. Phương thức làm việc của máy? • Chúng ta được chia sẻ rằng máy tính không thông minh, nó chỉ biết biểu đạt các nhiệm vụ liên tục theo cách hiệu quả nhất. • Mỗi lúc chúng ta nhìn thấy nhiệm vụ được thể hiện theo cách tương tự, đó đồng nghĩa là nhiệm vụ đã hoàn toàn phù hợp với chương trình được lập của chúng ta. • Đó là lí do chúng ta cần hiểu rằng, việc lập trình là nhằm bảo cho máy tính về các bước thực hiện nhiệm vụ. Ví dụ về game • Chúng ta có một Game và các thuộc tính. Khi chúng ta bấm vào nút trên thanh joystick định nghĩa nó là nhảy. • Nếu phím được bấm đi bấm lại, nghĩa là thuộc tính sẽ nhảy như bước trước. • Hãy tập trung vào nhảy, dù có điều gì xảy ra cho phần còn lại của game, nó sẽ chỉ tập trung vào việc nhảy. Ví dụ về game (tiếp) • Đây là nhảy, bởi vì ai đó đã lập trình cho nút này thao tác đó. Sẽ có những bước như sau: – – – – – – – – – Vẽ tính năng này lên màn hình Chờ người dùng làm gì đó với thanh joystick Một tín hiệu được nhận từ joystick, người dùng bấm một nút Anh ta bấm phím nào? Nếu là nút Up, tiếp tục Đọc vị trí hiện tại của màn hình tính năng Tính khoảng cách bước nhảy, 20pixels, 30pixels Tải hình ảnh kết quả theo những khuôn hình của bước nhảy In những màn hình kết quả của bước nhảy theo sự thay đổi tương ứng Quay lại bước 2 • Cũng vậy, một game không chỉ có một thuộc tính như nhảy, sẽ có nhiều các sự việc khác diễn ra đồng thời, nhưng chúng cũng sẽ chơi tuần tự từng bước như vừa kể và được lập trình bởi chuyên gia lập trình. Nguyên tắc lập trình đầu tiên “Bất kể hành vi lặp đi lặp lại nào và có thể tiên đoán, đều có thể được lập trình” Tay máy robot • Nếu chúng ta đã mô tả tuần tự các bước để vận hành tay robot, như trong ví dụ game, chúng ta sẽ thấy đó là điều tương tự. • Cả 2 đều hoạt động một cách logic, được điều khiển và theo các bước tuần tự. • Nếu hành vi là tương đương, thì kết quả cũng tương đương. • Có được điều này là nhờ lập trình CNTT, dù đó là ngôn ngữ gì, thì cũng là sự khác biệt đáng trân trọng. • Trong khi tay robot tương tác với thế giới vật lý, đi từ phần này tới phần kia, thì một phần khác lại tương tác với thế giới ảo, in hình ảnh kết quả lên màn hình. Tay máy robotic (tiếp) • Cả 2 quy trình đều cần chương trình CNTT điều khiển, và người lập trình viết ra các bước hành động. • Sự khác biệt chỉ là việc tương tác với thế giới bên ngoài. • Trong trường hợp của robot, ngoài việc thực hiện các bước, kết quả sẽ là các chuyển động vật lý nhờ tay robot. • Bên này, để thể hiện, hệ thống CNTT sẽ tương tác với thế giới bằng cách in ra các kết quả hiển thị trên màn hình. • Yếu tố quan trọng để thiết kế bất kỳ hện thống nào là nó sẽ tương tác với thế giới bên ngoài như thế nào. • Trong khóa học này, chúng ta sẽ làm việc với các quy trình ảo, không phải vật lý để đọc giá trị từ giao diện người dùng và thực hiện những tương tác này để có kết quả mong đợi. Ứng dụng Online hay Offline • Khi tạo ra một ứng dụng, điều quan trọng cần làm là quyết định ứng dụng sẽ chạy trên nền tảng internet hay chạy cả khi không có kết nối internet. • Điểm khác biệt đầu tiên là bởi ứng dụng sẽ chạy hoàn toàn khi online hay chạy kể cả lúc offline. • Ứng dụng Online đòi hỏi luôn có kết nối internet, và nó sẽ không chạy khi kết nối không tồn tại. • Một ví dụ tiêu biểu là mạng lưới game. Không có kết nối Internet, nó sẽ không vận hành. Websites • Vậy website có phải là một ứng dụng? • Nếu websie cho phép bạn làm gì đó, như ứng dụng và tính năng chính của nó là các ứng dụng vận hành khi kết nối internet tồn tại. • Khi một website được sử dụng để làm gì đó đặc thù, nó tương tác với người dùng, và nó làm gì đó với thông tin và trả về kết quả. Đó sẽ là ứng dụng. • Khác biệt chính giữa 1 website và một ứng dụng web là sau đó, người dùng có khả năng tương tác và sửa dữ liệu của tương tác đó không. • Websites cho phép bạn làm gì đó gọi là ứng dụng web online. Ứng dụng Offline • Một ứng dụng offline phải được cài đặt hoặc chạy trên một thiết bị vật lý, trong khi ứng dụng online thì có thể chạy nhờ truy cập Internet. • Ví dụ Microsoft Word, Visual Studio, … Tôi cần học gì để biết cách lập trình? • Để học lập trình, bạn cần biết 2 hoặc 3 ngôn ngữ lập trình và 2-3 công nghệ khác nhau dựa trên 4 yếu tố chính sau: • Tôi sẽ tương tác với người dùng như thế nào? – Tôi phải quyết định người dùng tương tác thế nào với ứng dụng. – Người sử dụng dùng smart phone, nhấn nút, sử dụng camera. – Người sử dụng truy cập website để dùng ứng dụng của tôi. – Người dùng sử dụng thiết bị cảm ứng, bàn phím đặc biệt hoặc màn hình cảm ứng. Tôi cần học gì để biết cách lập trình (tiếp)? • Tôi có cần nhớ thông tin không? – Tôi phải quyết định liệu ứng dụng có lưu trữ dữ liệu, nếu nó có liên quan đến việc làm khảo sát, chấm điểm, lưu dữ liệu để có thể lấy về vào những thời điểm yêu cầu. – Người dùng không lưu dữ liệu nào cả. Bất kỳ thời điểm nào mà anh ta dùng ứng dụng, nó cần bắt đầu từ đầu. – Người dùng lưu thông tin và có thể lấy lại dữ liệu đó. Tôi cần học gì để biết cách lập trình (tiếp)? • Tôi có cần kết nối vĩnh viễn không? – Tôi phải quyết định liệu ứng dụng của tôi có cần liên hệ với người dùng khác để chạy, hay có cần một đường internet ổn định không – Người dùng tương tác với người dùng khác nhờ xem dữ liệu hoặc kết nối với họ – Người dùng không cài đặt gì cả khi chạy ứng dụng, anh ta chỉ đơn giản là truy cập website Tôi cần học gì để biết cách lập trình (tiếp)? • Nếu ứng dụng đòi hỏi kết nối với ứng dụng khác: – Ứng dụng sử dụng bản đồ Internet hoặc kết nối với ứng dụng khác để chia sẻ dữ liệu – Ứng dụng truy cập máy chủ với các khởi động người dùng – Ứng dụng không đòi hỏi kết nối với bất kỳ ai Công Nghệ chúng ta sử dụng phụ thuộc vào cái chúng ta dự kiến lập trình. Công Nghệ • Người dùng có truy cập bằng website? – HTML + CSS + Javascript – Adobe Air + Java • Người dùng truy cập bằng smartphone? – PhoneGap + HTML + CSS + Javascript – Bằng máy Windows Phone? • Windows Mobile WPF + Window Phone + C# .NET – Bằng máy dùng Android? • Android Development Kit + Java – Bằng máy IPhone? • IOS SDK + Objective C Công Nghệ • Người dùng truy cập qua tablet? – PhoneGap + HTML + CSS + Javascript – Tablet Windows 8? • Windows WPF + Window 8 + C# .NET – Tablet Android? • Android Development Kit + Java – Tablet iPad? – IOS SDK + Objective C • Người dùng có dùng định vị GPS, Camera, Accelerometer? – IOS SDK, Android Development Kit
- Xem thêm -