Xác thực người dùng (authentication) và cấp quyền truy cập trong phạm vi cho phép (authorization) là những yêu cầu bắt buộc trong lập trình server. Xác thực người dùng thông thường là đối chiếu thông tin tài khoản (tên và mật khẩu) người dùng gửi lên và thông tin tài khoản server đã lưu trước đó. Cấp quyền là công việc cho phép client tiếp cận những tài nguyên phù hợp với vai trò của người dùng đã xác thực trước đó. Các công việc này khá phức tạp bởi đây là vấn đề bảo mật hệ thống.
Giới thiệu các bài viết hướng dẫn lập trình với ngôn ngữ lập trình Go. Những bài viết này được dịch chủ yếu từ cuốn The Go Programing Language của Alan A. A. Donovan và Brian W. Kernighan và tham khảo một số sách khác như Go In Action, Build Web Application with Golang và nhiều tài liệu khác trên mạng. Rất mong nhận được sự đóng góp ý kiến của mọi người.
Tuesday, October 25, 2016
Wednesday, October 19, 2016
Bài 29: Xử lý cơ sở dữ liệu
Lưu trữ dữ liệu luôn là phần quan trọng trong bất cứ ứng dụng nào. Trong lập trình web thì server lưu giữ hầu như mọi dữ liệu. Client chỉ lưu giữ ngữ cảnh hoặc dữ liệu tạm. Dữ liệu trên server có thể là dữ liệu lưu tạm thời trên RAM (các cấu trúc dữ liệu trong ứng dụng hoặc các cơ sở dữ liệu trên RAM) hoặc lưu dài lâu trên ổ cứng (file hoặc cơ sở dữ liệu). Trong bài này chúng ta sẽ tập trung tìm hiểu cách kết nối và sử dụng các hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) và phi quan hệ (NoSQL) phổ biến: MySQL, SQLite, PostgreSQL, SQL Server, Oracle, Redis, MongoDB.
Labels:
database,
database driver,
mongodb,
mysql,
nosql,
oracle,
postgresql,
rdbms,
redis,
sql server,
sqlite
Saturday, October 15, 2016
Bài 28: Xử lý văn bản
Xử lý văn bản hoặc tạo ra văn bản là công việc thường xuyên trong lập trình web. Trong bài này chúng ta sẽ tìm hiểu những kiến thức cơ bản về xử lý văn bản trước khi tìm hiểu các phần khác trong lập trình web. Có 3 nội dung được trình bày trong bài này:
- XML
- JSON
- Mẫu HTML
Labels:
json,
marshall,
simplejson,
template,
unmarshall,
xml
Bài 27: Xử lý biểu mẫu
Trong bài trước chúng ta đã tìm hiểu về cách xây dựng một web server đơn giản. Web server hoạt động là nhằm phục vụ từ client mà một trong những client phổ biến là trình duyệt. Trong bài này, chúng ta sẽ tìm hiểu cách server nhận yêu cầu từ trình duyệt và xử lý yêu cầu. Bài này gồm có 2 nội dung chính:
- Xử lý biểu mẫu (form) HTML từ client.
- Xử lý tải file lên server.
Bài 26: Lập trình web với package net/http
Mặc dù Go được xây dựng để phát triển các ứng dụng đa mục đích nhưng với môi trường web Go có những ưu thế giúp cho lập trình viên tạo nên những ứng dụng web nhanh chóng nhưng mạnh mẽ, hiệu năng cao. Go không có thế mạnh tạo ra các ứng dụng web truyền thống đòi hỏi xử lý và tạo giao diện web nhưng với các ứng dụng back-end cho mobile và các hệ thống ứng dụng web API thì Go có thế mạnh nhất định. Trong thời kỳ bùng nổ ứng dụng điện thoại kết nối internet như hiện nay thì việc xây dựng các hệ thống web API, đặc biệt RESTful API cung cấp dịch vụ cho các ứng dụng điện thoại đang rất cần thiết. Go là môi trường lý tưởng để làm việc đó.
Bài 25: Tổng quan về web và TCP/IP
Ngày nay, khi mà internet trở nên phổ biến, các thiết bị đều có thể kết nối mạng thì nhu cầu tạo ra các hệ thống kết nối các thiết bị với nhau để phục vụ cho một mục đích nào đó là cần thiết. Lập trình dịch vụ web là công việc phát triển ứng dụng kết nối giữa các thiết bị với nhau qua môi trường web.
Trước đây, lập trình web chủ yếu là xây dựng các hệ thống trang web phục vụ nhu cầu tìm kiếm thông tin hoặc trao đổi mua bán. Khi các thế hệ điện thoại thông minh ra đời với tính năng kết nối internet có sẵn, các ứng dụng trên điện thoại không còn bó gọn trong nó nữa mà có thể kết nối với các thiết bị khác để cung cấp nhiều tiện ích hơn cho người dùng. Nhờ đó, nhu cầu xây dựng các ứng dụng có khả năng kết nối và các hệ thống máy chủ phục vụ nhu cầu kết nối qua điện thoại trở nên bùng nổ. Trong loạt bài này, tôi sẽ giới thiệu về lập trình web bằng ngôn ngữ Go.
Trước đây, lập trình web chủ yếu là xây dựng các hệ thống trang web phục vụ nhu cầu tìm kiếm thông tin hoặc trao đổi mua bán. Khi các thế hệ điện thoại thông minh ra đời với tính năng kết nối internet có sẵn, các ứng dụng trên điện thoại không còn bó gọn trong nó nữa mà có thể kết nối với các thiết bị khác để cung cấp nhiều tiện ích hơn cho người dùng. Nhờ đó, nhu cầu xây dựng các ứng dụng có khả năng kết nối và các hệ thống máy chủ phục vụ nhu cầu kết nối qua điện thoại trở nên bùng nổ. Trong loạt bài này, tôi sẽ giới thiệu về lập trình web bằng ngôn ngữ Go.
Bài 24: Gỡ lỗi ứng dụng
Việc sử dụng go test giúp chúng ta xác định tính đúng đắn của một hàm. Khi một hàm không vượt qua được việc kiểm thử, chúng ta cần phải xác định nguyên nhân để sửa lại cho đúng. Có rất nhiều cách khác nhau để xác định lỗi nhưng hai cách phổ biến nhất là xuất giá trị nghi ngờ ra màn hình và sử dụng công cụ gỡ lỗi (debuger).
Thursday, October 13, 2016
Subscribe to:
Posts (Atom)