1. Trang chủ
  2. » Công Nghệ Thông Tin

học lập trình tiếng việt cùng microsoft

249 74 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 249
Dung lượng 5,13 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

học lập trình tiếng việt cùng microsoft

Trang 1

Học lập trình

Chương 1 Giới thiệu kỹ thuật về phát triển Ứng dụng

Trang 2

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.

Trang 3

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

Trang 4

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.

Trang 5

• 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

Làm chủ mọi mặt trên ma trận (tiếp)

Trang 6

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ụ.

Trang 7

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.

Trang 8

• Đâ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ơituần tự từng bước như vừa kể và được lập trình bởi chuyên gia lậptrình

Ví dụ về game (tiếp)

Trang 9

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”

Trang 10

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

Trang 11

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.

Trang 12

Ứ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.

Trang 13

• 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.

Trang 15

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.

Trang 16

• 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)?

Trang 17

• 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)?

Trang 18

• 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

Tôi cần học gì để biết cách lập trình (tiếp)?

Trang 19

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

Trang 20

• Người dùng truy cập qua tablet?

Trang 21

• Người dùng sử dụng các thành phần ngoài như tay chơi

game Joystick, cảm ứng di động, 3D graphics hoặc các thành phần audio?

– Đó là game?

• C# NET o C++ or Java

• Có cần tạo đồ họa phức tạp?

– Unity, Adobe Air

• Tôi không cần đồ họa đặc biệt

– LimeJS, CSS

– Đó không phải là game?

• C++ o C# NET hoặc Java

• Cho Hệ Điều Hành Windows?

– WPF + C#.NET

• Cho máy Mac?

– Java, C++, etc

Công Nghệ

Trang 22

• Tôi phải lưu và lấy dữ liệu về?

– SQL, SQL Server Express hoặc My SQL

• Tôi không chắc về việc dữ liệu nào sẽ phải lưu

– Document Databases

• Ứng dụng Online hoặc offline

– Liệu tôi có phải kết nối với người khác?

– Liệu ứng dụng có đòi hỏi kết nối vĩnh viễn để chạy?

• Javascript, C#.NET, Java, WCF, Web Server

– Ứng dụng chạy chỉ thông qua trang?

– Ứng dụng đòi hỏi Internet, nhưng được cài đặt

• Rest Services, JSON, WCF

• Ứng dụng không đòi hỏi kết nối và chạy trên desktop?

– C#.NET hoặc Java

Công Nghệ

Trang 24

Tôi phải dùng gì?

• Lập trình viên cần chọn lựa gì?

– HTML, CSS, JavaScript, Adobe Air, Java, C++, C#.NET, WPF,

WCF, Rest Services, Windows Phone SDK, IOS SDK,

Trang 25

Học lập trình

Chương II Ứng dụng Online, Phương thức làm việc, HelloWorld

Trang 26

Ứng dụng Online

• Hiện nay, rất nhiều ứng dụng cần truy cập Internet

– Tương tác với người dùng khác

– Lấy dữ liệu được lưu online

Trang 27

• Máy chủ là những máy tính hoạt động liên tục 24/7, với ổ cứng với dung lượng

đủ lớn sẽ lưu hình của John, Peter hay Joseph.

• Máy chủ sẽ gửi thông báo về John tới bạn bè.

• Khi Peter, bạn John, truy cập mạng xã hội anh ta sẽ thấy bản tin trên tường:

“John mới tải album mới về kỳ nghỉ” và sẽ click chuột vào đó.

• Ứng dụng kết nối với máy chủ, và sẽ chỉ ra ảnh cho Peter trên trình duyệt của anh ta.

Trang 28

Ứng dụng Online

• Từ ví dụ kể trên, chung ta có thể thấy có

những thành phần cơ bản liên quan đến ứng dụng là:

– Internet

– Ứng dụng

– Máy chủ dữ liệu

Trang 29

• Vận hành của bất kỳ ứng dụng nào có thể tóm tắt theo 3 phần sau:

– Tạo ra dữ liệu

– Ra quyết định với dữ liệu

– Nơi lưu dữ liệu

Ứng dụng Online

Trang 30

Hãy thử một thí nghiệm

• Truy cập vào bất kỳ một trang web nào.

• Khi bạn nhận được câu trả lời, bấm phải chuột vào màn

hình.

• Rồi chọn VIEW PAGE SOURCE.

• Các bạn sẽ nhìn thấy các ký tự khác biệt.

• Toàn bộ các trang web được viết dưới định dạng HTML.

• Các bạn sẽ thấy mã HTML trên bất kỳ trang web nhờ click phải chuột và chọn VIEW PAGE SOURCE

• Mã HTML cho phép chúng ta thiết kết màn hình của ứng

dụng, ở đó người dùng sẽ tương tác với ứng dụng.

• Học lập trình HTML là bước đầu tiền để khởi động việc lập

trình ứng dụng.

Trang 31

– Trong Windows, mở ứng dụng Notepad trong

– Viết lại những đoạn mã sau đây

Trang 33

• Lưu file và đặt tên là hello.html

• Hãy chắc chắn rằng khi lưu, kiểu của file là *.*

• Điều quan trọng nhất là file có đuôi là HTML.

• click đúp vào file và xem nó mở trong trình

duyệt Internet.

• Bạn đã lập trình một website đơn giản bằng

mã HTML, bạn đã sẵn sàng để phát triển ứng dụng.

Bắt đầu lập trình

Trang 34

Môi trường phát triển ứng dụng

• Mặc dù về lý thuyết chỉ cần Notepad để lập

trình, nhưng chương trình này hoàn toàn

chưa đủ để giúp chúng ta phát triển ứng dụng.

• Có một vài Chương trình dùng để phát triển

ứng dụng dễ dàng hơn.

• Môi trường phát triển ứng dụng là một bộ các công cụ và phần mềm mà bạn có thể cài trong máy tính, nhờ vậy ứng dụng có thể được phát triển dễ dàng hơn.

Trang 35

• Khác biệt duy nhất giữa môi trường mô phỏng và môi trường thực tế là máy tính chúng ta có tốc độ và khả

năng xử lý giới hạn, và không có kết nối internet để

phục vụ nhiều người một thời điểm

• Là lập trình viên, chúng ta không phát triển ứng dụng trong môi trường thực tế, mà phát triển trong môi

trường mô phỏng, đó là môi trường phát triển ứng

Trang 36

Chúng ta cần gì cho môi trường phát

triển ứng dụng?

1 Một trình duyệt Internet (lời khuyên thực tế

là nên hoạt động trên mọi trình duyệt).

2 Một máy chủ web trong đó bạn có thể lập

trình ứng dụng.

3 Một máy chủ Cơ sở Dữ liệu để lưu và khôi

phục dữ liệu.

Trang 37

Thiết lập môi trường phát triển ứng dụng

• Trình duyệt Internet có thể dùng Internet Explorer hoặc Firefox

• Một lập trình viên phải luôn sẵn sàng cài đặt mọi loại trình duyệt Mỗi

một loại sẽ có một tính năng riêng và chúng ta phải kiểm tra ứng dụng

của mình trên các trình duyệt khác nhau này

• Tải bản cập nhật mới nhất của các trình duyệt hiện có trên máy tính

• Sử dụng các thiết lập mặc định, không cài đặt thêm các plug-in và các

công cụ hỗ trợ trên các trình duyệt

• Sử dụng Developer Mode trên các trình duyệt (mẹo, bấm F12 khi đang

sử dụng các trình duyệt)

Trang 38

• Bạn cần thêm 2 công cụ thiết yếu: máy chủ web và máy

chủ Cơ sở Dữ liệu.

• Bạn có thể cài đặt máy chủ web và máy chủ CSDL bằng

tay, chọn chúng từ các nhà sản xuất khác nhau.

• Trong khóa học này, chúng tôi sử dụng công cụ lập

trình của Microsoft Nhờ đó mà cài đặt dễ dàng hơn,

chúng tôi khuyến khách cài các công cụ sau:

– Microsoft Visual Studio Web Express Edition

– Microsoft SQL Server Express Edition

• https://www.dreamspark.com/

Thiết lập môi trường phát triển ứng dụng

Trang 39

Vài lưu ý quan trọng

• Thiết lập môi trường phát triển của riêng bạn là vô cùng quan trọng Nếu

bạn cài đặt phần mềm bất hợp pháp hoặc nếu máy tính của bạn bị ảnh hưởng bởi virus, các phần mềm có thể không chạy đúng.

• Không cài đặt thêm phần mềm "chỉ để cho vui" Tránh có 3 chương trình

diệt virus chạy cùng một lúc, tránh có phần mềm giám sát Mặc dù các chương trình này rất hữu ích giúp máy tính của bạn tránh khỏi virus,

nhưng lại khá phiền hà cho môi trường phát triển.

• Chúng tôi biết rằng bạn là một người ham hiểu biết, nhưng từ bây giờ,

bạn phải rất cẩn thận không cài đặt phần mềm không cần thiết trong máy tính của bạn, trừ khi bạn thực sự cần.

• Tránh cài đặt các phần mềm bất hợp pháp hoặc những sản phẩm có thể

gây nhiễm mã độc cho máy tính của bạn.

Trang 40

Hello World trong Visual Studio

• Trong Windows Start Menu, Programs, mở Microsoft Visual Studio.

• Trong menu File, click vào New Web ASP.NET Application

MVC

• Cửa sổ mới sẽ mở ra.

• Trong Installed Templates, click chuột vào C# và rồi chọn

Web ASP.NET Application MVC.

• Trong box tên web Location, chọn File System và chọn

folder bạn muốn lưu trang web

• Bấm vào nút OK.

• Visual Studio tạo ra dự án web bao gồm những tính năng có thể giúp chúng ta thiết kế.

Trang 41

Hello World trong Visual Studio

• Tại khu vực bên phải, các bạn có thể nhìn thấy vị trí của mã HTML được sử dụng để tạo ra các cảm quan khác nhau

• Hãy chỉnh sửa: home.cshtml

• click đúp để mở và viết vào bộ mã sau đây:

Trang 42

Thiết kế cùng Visual Studio

• Chúng ta đã biết, việc phát triển các ứng dụng trong một môi trường phát triển giúp đơn giản hóa và biên độ lỗi ít hơn.

• Dừng ứng dụng (không thể thay đổi khi ứng dụng đang chạy Hãy dừng ứng dụng nếu cần chỉnh sửa)

• Mở giao diện Default.cshtml và click vào phần Design View.

• Ở phía bên trái của Visual Studio có một hộp công cụ thiết kế trực quan.

• Chọn một thành phần và kéo vào màn hình để xem.

• Bộ thiết kế trực quan cho phép bạn trực tiếp kéo các thành phần bạn muốn vào màn hình, hỗ trợ người dùng khi quên mã HTML, vẫn dễ dàng thiết kế trang.

• Cuối khóa học này, bạn đã biết cách lập trình và các thành phần HTML, nhưng nếu bạn quên bất kỳ điều gì kể trên, bạn có thể dùng các thiết kế trực quan để hỗ trợ.

• Thực hiện một số thay đổi bằng cách kéo vài thành phần để xem và bấm nút play.

• Những thay đổi này trên màn hình sẽ được hiển thị trong ứng dụng của bạn.

Trang 43

Học lập trình

Chương III Giao diện người dùng

Trang 44

Giao diện người dùng là gì?

Đây là nơi người dùng giao tiếp với máy, thiết bị

và máy tính Nó bao gồm mọi điểm kết nối giữa người dùng và thiết bị Giao diện người dùng

hướng đến tính thân thiện và dễ hiểu, như trang web chúng ta thiết kế trong chương II đã chỉ ra cụm từ «Hello World» trên màn hình

Trang 45

Các kiểu Giao diện người dùng

• Giao diện text: Giao tiếp chỉ bằng ký tự Nếu bạn từng nhìn một máy tính cũ, bạn có thể nhận ra máy này nói chuyện thông qua màn hình đen, nơi người dùng viết các câu lệnh

để máy tính làm theo Hiện nay, mọi máy tính vẫn cung cấp khả năng tương tác bằng giao diện text.

• Giao diện đồ họa(GUIs): cho phép tương tác nhanh và thân thiện hơn với các thiết bị thông qua điều khiển bằng hình ảnh trên màn hình Trang web là một ví dụ tốt về Giao diện

đồ họa GUIs.

• Giao diện cảm ứng: cung cấp một bảng điều khiển cảm ứn

đồ họa trên các thiết bị cảm ứng, giúp người dùng tương tác với thiết bị thông qua ngón tay Phương thức này được

sử dụng hầu hết trên các điện thoại và máy tính bảng

tablets

Ngày đăng: 13/10/2016, 22:18

TỪ KHÓA LIÊN QUAN

w