Cập nhật thông tin chi tiết về Cấu Trúc Của Hàm Cơ Bản Trong C# mới nhất trên website Tvzoneplus.com. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất.
Dẫn nhập
Ở các bài học trước, chúng ta đã cùng nhau tìm hiểu về các CẤU TRÚC VÒNG LẶP TRONG C#. Trong quá trình viết code, chúng ta thường thấy code của mình quá dài, quá rườm rà, khó khăn cho việc tái sử dụng lại. Để giải quyết vấn đề này, chúng ta sẽ cùng nhau tìm hiểu về hàm trong C#.
Nội dung
Để đọc hiểu bài này tốt nhất các bạn nên có kiến thức cơ bản về các phần:
Trong bài học này, chúng ta sẽ cùng tìm hiểu các vấn đề:
Cấu trúc của
hàm
trong C#
Cấu trúc của hàm trong C#
Cú pháp khai báo hàm:
Trong đó:
[Từ khóa 1], [Từ khóa 2], [Từ khóa n]
là các từ khóa như:
public
,
static
,
read only
… và có thể không điền.
Kiểu dữ liệu trả về
như: từ khóa
void,
hay mọi kiểu dữ liệu như
int, long, bool,
SinhVien
…
Tên hàm:
Là tên gọi của
hàm
.
Tên bạn có thể đặt tùy ý nhưng nên đặt tên theo quy tắc đặt tên để có sự đồng bộ ngầm định giữa các lập trình viên và dễ tìm, dễ nhớ (xem lại quy tắc đặt tên ở bài
BIẾN TRONG C#
).
Hãy xem cách khởi tạo
hàm
giống khởi tạo một biến ở chỗ. Đều cần kiểu dữ liệu và tên. Có thể có các từ khóa. Tên để tái sử dụng
hàm
ở nơi mong muốn.
Parameter
là tham số truyền vào để sử dụng nội bộ trong hàm. Cấu trúc khởi tạo như một biến bình thường. Có thể không điền.
Hàm
chỉ được khai báo bên trong
class
.
Lưu ý:
Mọi
hàm
đều phải có cặp ngoặc nhọn {
} biểu thị là một khối lệnh. Mọi dòng code xử lý của hàm đều được viết bên trong cặp ngoặc nhọn {
} này.
Không thể khai báo một
hàm
trong một
hàm
khác theo cách thông thường.
Một hàm cơ bản hay thấy với cấu trúc bắt buộc phải có trong lập trình C# console hàm Main
static void Main(string[] args)
{
}
Trong đó:
static
là từ khóa static (
sẽ tìm hiểu kỹ hơn ở bài sau
). Có thể không sử dụng cũng được. Nhưng ở trường hợp hàm
Main
của console C# thì phải có.
void
là kiểu trả về. Với hàm có kiểu trả về là
void
thì sẽ không cần từ khóa
return
trong hàm. Hoặc có nhưng chỉ đơn giản là ghi
return
;
Main
là tên hàm. Có thể đặt tùy ý. Nhưng ở trường hợp này là bắt buộc phải là
Main
vì mỗi chương trình console C# đều cần hàm
Main
.
string
[]
args
là
parameter
truyền từ bên ngoài vào để sử dụng
hàm
.
Có thể không có cũng được. nhưng ở trường hợp hàm
Main
của console C# là bắt buộc phải có. Ở đây có thể thay thế tên
args
bằng bất cứ tên nào khác như đặt tên một biến bình thường.
Hàm void
Hàm void là hàm có kiểu trả về là void. Chúng ta cùng xem qua khai báo hàm sau:
void Demo()
{
return;
}
Vì hàm
void
(hàm có kiểu trả về là
void
) thì không cần viết
return;
nên chúng ta có thể bỏ
return; đi.
void Demo()
{
}
Một lưu ý về sau: vì chúng ta đang viết code trên nền console C#. Bắt buộc phải có hàm Main. Nhưng hàm Main lại có từ khóa static. Nên để trong hàm Main có thể sử dụng các hàm mà ta viết ra thì các hàm đó cũng phải có từ khóa static.
static void Main(string[] args) { Demo(); Console.ReadKey(); } static void Demo() { Console.WriteLine("Called from Demo! HowKteam.com"); }
Kết quả vẫn xuất ra dòng chữ
“
Called from Demo! chúng tôi như được viết bên trong hàm
Main
. Nhưng thật sự nó đã được gọi từ hàm
Demo
.
Khi sử dụng
hàm
ta sẽ gọi lại tên hàm kèm theo dấu () biểu thị đó là một hàm. Sau này nếu có
parameter
thì sẽ thêm giá trị vào bên trong dấu ().
Chúng ta có thể gọi lại nhiều lần và có thể thấy code chúng ta viết rất rõ ràng và rất dễ tái sử dụng.
static void Main(string[] args) { Demo(); Demo(); Demo(); Demo(); Console.ReadKey(); } static void Demo() { Console.WriteLine("Called from Demo! HowKteam.com"); }
Nhiều dòng chữ “Called from Demo! chúng tôi được in ra màn hình
Hàm có kiểu trả về khác void
Giá trị trả về phải có kiểu dữ liệu tương ứng với Kiểu dữ liệu trả về khi khai báo hàm.
static int ReturnANumber() { return 5; }
Chúng ta có thể sử dụng hàm này bình thường. Và có thêm một lợi thế là có thể lấy giá trị trả về của hàm thông qua lời gọi tên hàm.
static void Main(string[] args) { Console.WriteLine(ReturnANumber()); Console.ReadKey(); } static int ReturnANumber() { // bắt buộc phải có cấu trúc return trong thân hàm return 5; }
Kết quả số 5 xuất hiện trên màn hình
Chúng ta có thể gọi hàm trong hàm như sau: (để hiểu về trình tự gọi hàm các bạn có thể xem lại phần ví dụ của bài NHẬP XUẤT CONSOLE CƠ BẢN TRONG C#)
static void Main(string[] args) { Demo(); Console.ReadKey(); } static int ReturnANumber() { return 5; } static void Demo() { Console.WriteLine(ReturnANumber()); }
Kết quả vẫn là số 5 được in ra màn hình
Parametter
Chúng ta đã biết cách khởi tạo và sử dụng một hàm. Vậy giờ có một yêu cầu như sau: Viết hàm tính tổng 2 số nguyên.
Chúng ta có thể sử dụng biến toàn cục (
sẽ được nói rõ ở bài sau
) để giải quyết:
static void Main(string[] args) { Console.WriteLine(SumTwoNumber()); Console.ReadKey(); } static int firstNumber = 5; static int secondNumber = 10; static int SumTwoNumber() { return firstNumber + secondNumber; }
Kết quả màn hình xuất ra giá trị tổng của hai biến firstNumber và secondNumber. 5 + 10 = 15
Nhưng khi dùng phương pháp như vậy rõ là khá phiền phức khi muốn in ra màn hình tổng của hai số một cách linh hoạt. Hay muốn thực hiện tính tổng hai số nhiều lần. Để tạo sự linh hoạt cho hàm thì chúng ta sẽ tìm hiểu thêm về parameter:
Có thể hiểu đơn giản
parametter
là
Tập hợp một hay nhiều biến chứa các giá trị cần thiết để thao tác trong hàm.
Các giá trị của các biến này là những giá trị mà người dùng truyền vào khi gọi hàm đó.
Khai báo một
parametter
cũng giống như khai báo biến (xem lại bài
BIẾN TRONG C#
). Khi khai báo nhiều
parametter
thì các khai báo phải cách nhau bởi dấu “,”
Trở lại bài toán trên. Chúng ta muốn 2 số cần tính tổng này là 2 số do người dùng quyết định, 2 số này không cố định. Vì thế ta nảy sinh ý tưởng:
Cho người dùng truyền vào 2 số họ muốn tính tổng vào 2 biến.
Từ đó ta chỉ cần tính tổng giá trị 2 biến đó rồi trả kết quả về cho người dùng.
Các bạn xem qua ví dụ sau:
static void Main(string[] args) { Console.WriteLine(SumTwoNumber(5, 10)); Console.ReadKey(); } static int SumTwoNumber(int firstNumber, int secondNumber) { return firstNumber + secondNumber; }
Kết quả màn hình vẫn in ra giá trị 15.
Các khai báo
int
firstNumber
,
int
secondNumber
là các khai báo
parametter
. Với khai báo này ta hiểu rằng muốn sử dụng hàm này thì cần truyền vào 2 giá trị kiểu
int
.
Các
parametter
được xem như các biến cục bộ có phạm vị sử dụng trong hàm (biến cục bộ sẽ được trình bày ở bài sau).
Các
parametter
được khởi tạo ngay khi gọi
hàm
và được hủy khi kết thúc gọi
hàm
.
Số lượng
parameter
là
không giới hạn.
Khi sử dụng hàm phải truyền vào đủ và đúng
parameter
. (Đủ số lượng, đúng kiểu dữ liệu và đúng thứ tự như khai báo)
Có thể khai báo các
parameter
với các kiểu dữ liệu khác nhau.
Hàm sử dụng sẽ tạo ra các bản sao của
parameter
truyền vào trên RAM. Sau đó dùng những bản sao đó để xử lý dữ liệu. Cho nên kết thúc lời gọi hàm giá trị của các
parameter
sẽ không bị thay đổi.
Cùng xét thêm một ví dụ nữa nào:
static void Main(string[] args) { int firstNum = 0; int secondNum = 3; for (int count = 0; count < 10; count++) { PrintSumTwoNumber(firstNum, secondNum); firstNum += count; secondNum += count * 2 % 5; } Console.ReadKey(); } static void PrintSumTwoNumber(int firstNumber, int secondNumber) { Console.WriteLine("{0} + {1} = {2}",firstNumber, secondNumber, SumTwoNumber(firstNumber, secondNumber)); } static int SumTwoNumber(int firstNumber, int secondNumber) { return firstNumber + secondNumber; }
Kết quả màn hình xuất ra 10 giá trị tổng của 2 số
Ví dụ về các
parameter
với kiểu dữ liệu khác nhau
static void Main(string[] args) { PrintSomeThing("K9", 22); PrintSomeThing("HowKteam.com", 1); Console.ReadKey(); } static void PrintSomeThing(string name, int age) { Console.WriteLine("This is {0}, {1} years old.", name, age); }
Kết quả khi chạy chương trình:
Nếu không sử dụng
parametter
trong hàm thì không nên khai báo
parametter
để tránh lãng phí bộ nhớ!
Kết luận
Qua bài này chúng ta đã nắm được hàm là gì, cách sử dụng hàm.
Bài sau chúng ta sẽ tìm hiểu về BIẾN TOÀN CỤC VÀ BIẾN CỤC BỘ TRONG C#.
Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện chúng tôi để nhận được sự hỗ trợ từ cộng đồng.
Cấu Trúc Hàm Sumif Trong Excel
Cách sử dụng hàm Sumif trong Excel
1. Ý nghĩa của hàm sumif
Hàm sumif trong excel dùng để tính tổng các giá trị thỏa mãn cùng điều kiện nào đó.
2. Công thức tính hàm sumif
Công thức: SUMIF(range; criteria; [sum_range])
Trong Đó:
Range: Là vùng chứa ô điều kiện tính tổng (là cột chứa điều kiện) (Bạn có thể ấn F4 một lần để cố định vùng điều kiện)
Criteria: Là điều kiện tính tổng (Là biểu thức, số hoặc chữ)
Sum_range: Vùng cần tính tổng. (Nhấn F4 một lần để cố định vùng cần tính tổng)
3. Các bước áp dụng hàm sumif
Bước 1: Xác định cột chứa điều kiện
Bước 2: Xác định điều kiện tính tổng
Bước 3: Xác định vùng tính tổng
Bước 4: Nhập công thức vào Excel
Ví dụ: Yêu cầu tính tổng lương phòng hành chính và tổng lương phòng kế toán như trong bảng sau:
Ví dụ Hàm sumif trong excel
Tính tổng lương phòng hành chính: Tại ô C7 bạn nhập công thức:
=SUMIF($B$2:$B$6; B2;$C$2:$C$6)
Lưu ý: Ta cần cố định vùng chứa ô điều kiện tính tổng (range) và vùng cần tính tổng (sum_range) ta bôi đen vùng rồi nhấn F4 (một số máy phải dùng tổ hợp phím Fn+F4) để tính tổng được chính xác
Và xem kết quả nhận được
Tính lương phòng kế toán: Tại ô C8 bạn nhập công thức:
=SUMIF($B$2:$B$6;”Kế toán”;$C$2:$C$6)
Cũng như cách tính tổng phòng hành chính ở trên vùng chứa ô điều kiện tính tổng (range) và vùng cần tính tổng (sum_range) chúng ta cũng cần ấn F4 để cố định lạiHọc kế toán ở đâu tốt
4. Ví dụ công thức SUMIF
Hàm sumif nhỏ hơn, lớn hơn hay bằng
Khi sử dụng công thức tính tổng có điều kiện Sumif trong excel, kèm theo các toán tử so sánh là một số hay chữ dạng text nhớ luôn được đóng trong dấu ngoặc kép (“”)
Mô tả: Công thức trả về tổng giá trị lớn hơn 5 trong ô A2:A10
– Với điều kiện nhỏ hơn (<)
Công thức: =SUMIF(A2:A10);”<10″;B2:B10)
Mô tả: Công thức trả về tổng giá trị trong ô B2:B10 nếu một giá trị tương ứng trong ô A2:A10 nhỏ hơn 10
– Với điều kiện bằng (=)
Công thức: =SUMIF(A2:A10; “=”&D1) Hay =SUMIF(A2:A10;D1)
Mô tả: Tổng các giá trị trong ô A2:A10 bằng với giá trị trong ô D1
Mô tả: Tổng giá trị trong ô B2:B10 nêu giá trị một ô tương ứng trọng cột A không bằng giá trị trong ô D1
Mô tả: Tổng giá trị lớn hơn hoặc bằng 5 trong các ô A2:A10
– Với điều kiện nhở hơn hoặc bằng (<=)
Mô tả: Tổng các giá trị trong ô B2:B10 nếu một giá trị tương ứng trong cột A nhở hơn hoặc bằng 10
Sử dụng hàm SUMIF với điều kiện thuộc dạng Text
Khi sử dụng hàm SUMIF bạn có thể thêm các giá trị tùy thuộc vào ô tương ứng trong các cột chứa text hoặc không
– Điều kiện bằng:
= SUMIF(A2:A8;”apple”; C2:C8)
Tổng giá trị trong các ô C2:C8 nếu một ô tương ứng trong cột A chứa chính xác từ “apple” và không chứa thêm các ký tự khác.
Các ô có chứa “red apple” hay “apple!” không được tính
– Điều kiện không bằng:
Tags: Hàm sumif nâng cao, hàm tìm kiếm và tính tổng trong excel, hàm sumif và hàm sumifs, các hàm tính tổng trong excel, hàm sumif kết hợp vlookup, lỗi hàm sumif bằng 0, các hàm sum trong excel, hàm sumif 2 điều kiện,…
KẾ TOÁN LÊ ÁNH
Chuyên đào tạo các khóa học excel kế toán và làm dịch vụ kế toán thuế trọn gói tốt nhất thị trường
(Được giảng dạy và thực hiện bởi 100% các kế toán trưởng từ 13 năm đến 20 năm kinh nghiệm)
Trung tâm Lê Ánh hiện có đào tạo các khoá học kế toán và khoá học xuất nhập khẩu cho người mới bắt đầu và khoá học chuyên sâu, để biết thông tin chi tiết, bạn vui lòng liên hệ với chúng tôi theo số hotline: 0904.84.88.55 để được tư vấn trực tiếp về các khoá học này.
Giao Thức Http Và Cấu Trúc Cơ Bản Của Http Message
Tìm hiểu về giao thức HTTP (Hypertext Transfer Protocol), cấu trúc của Request và Response, một số header thông dụng trong HTTP Message
HTTP là gì?
HTTP (HyperText Transfer Protocol) là giao thức truyền tải siêu văn bản, giao thức HTTP dựa trên giao thức TCP/IP nó cho phép lấy về các tài nguyên ví dụ như văn bản HTML, text, video, ảnh …
HTTP là nền tảng dùng để trao đổi dữ liệu cho các ứng dụng Web với mô hình Client/Server. Các yêu cầu (request hay HTTP Request) được tạo bởi client (thường là các Web browser như chrome, firefox …) được gửi đến server http, server sẽ gửi lại dữ liệu (response hay HTTP Response) để client nhận được. Các request, response là các message có cấu trúc đơn giản gọi chung nó là các HTTP Message.
Sự đơn giản của HTTP Message thể hiện ở chỗ nó có thể đọc được mà không nhất thiết phải có công cụ phân tích riêng biệt, nó giảm đi sự phức tạp khi phát triển, kiểm tra ứng dụng.
Sơ đồ làm việc HTTP mô hình Client/Server
Giao thức HTTP là phi trạng thái
HTTP là phi trạng thái (stateless), có nghĩa không có mối liên hệ nào giữa hai yêu cầu được gửi đi, dù nó là thực hiện trên cùng một kế nối – đến cùng một server. Ví dụ Web Browser gửi yêu cầu đến địa chỉ https://xuanthulab.net/ nhận về respone, ngay sau đó nó gửi yêu cầu thứ 2 đến https://xuanthulab.net/abc/ lấy được response khác, thì hai truy vấn này không có mối liên hệ gì.
Duy trì trạng thái với Cookie: Rất nhiều trường hợp của ứng dụng cần biết trạng thái giữa các lần truy cập – chia sẻ trạng thái giữa những request của phiên làm việc, ví dụ ứng dụng đặt hàng – thêm sản phẩm vào giỏ, hay trang đăng nhập để người dùng đăng nhập – khi đã đăng nhập thì trạng thái đó phải được biết khi truy cập trang khác cùng phiên làm việc. Do Http là stateless nên để cung cấp khả năng này cần sử dụng tới HTTP Cookie, những dữ liệu nhằm duy trì trạng thái của phiên làm việc, nó được thêm vào phần header của HTTP Message Sử dụng Cookie / Session trong PHP)
Sơ đồ làm việc HTTP truyền tải dữ liệu Client/Server
Khi client (như web browser, các Http API trong ngôn ngữ lập trình …) kết nối đến server để gửi yêu cầu (request) và lấy về dữ liệu trả về (response) từ server thì nó trải qua các bước:
Sơ đồ làm việc HTTP Client / Server
Bước 1) Mở kết nối TCP – Kết nối TCP (Giao thức HTTP dựa trên TPC) trên địa chỉ xác định bởi URL (Uniform Resource Locator) và cổng thường là 80, kết nối này được dùng để gửi các yêu cầu (request) và nhận phản hồi (response). Client có thể mở ra kết nối TCP mới hoặc sử dụng kết nối đang có, thậm chí nó tạo ra nhiều kết nối TCP cùng lúc đến server.
Bước 2) Gửi HTTP Message (request) – HTTP Message (request) chính là nội dung yêu cầu được client tạo ra và gửi đến server. HTTP Message có nội dung text (plain text) mà chúng ta có thể đọc được (người đọc được). Với phiên bản HTTP/2 thì nội dung HTTP Message được bao bọc trong các frame, nó làm cho người không đọc được một cách trực tiếp – tuy nhiên về mặt ý nghĩa nội dung không đổi so với HTTP/1.1 Ví dụ đây là nội dung một HTTP Message (request do client tạo ra)
GET /lap-trinh-php/ HTTP/1.0 Host: xuanthulab.net Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8
Bước 3) Đọc HTTP Message nhận được từ servcer (response) – Http Message (response) trả về từ server có cấu trúc tương tự Http Message (request), ví dụ đây là một response:
HTTP/1.0 200 OK Server: nginx Accept-Ranges: bytes Content-Length: 54545 Content-Type: text/html; charset=UTF-8
Bước 4) Đóng kết nối hoặc sử dụng lại cho các truy vấn khác
HTTP Message
HTTP Message (Thông điệp HTTP) là các thông tin được trao đổi qua lại giữa client và server. Có hai kiểu HTTP Message: HTTP Request Message (Request) được gửi đi bởi client tới server – khi server nhận được nó biết phải thực hiện nhiệm vụ nào đó, HTTP Response Message (Response) là trả lời từ server về cho client.
HTTP Message trong phiên bản HTTP/1.1 có các thành phần dữ liệu trình bày trong định dạng text (plain text) mà người có thể đọc hiểu. Trong bản HTTP/2 thì các thành phần đưa vào định dạng nhị phân (binary) là các frame làm cho người không đọc được trực tiếp nữa. Tuy vậy ý nghĩa của các thành phần trong HTTP Message giữa hai phiên bản không đổi. Do vậy, ở đây trình bày về HTTP/1.1 nhưng vẫn có thể áp dụng cho HTTP/2
HTTP/1.1 (chuẩn hóa năm 1997) là phiên bản giao thức HTTP mặc định trong các trình duyệt, server http ngày nay. HTTP/2 (chuẩn hóa năm 2015) là phiên bản tiếp theo đang dần phổ biến (đặc biệt là tốc độ, an toàn, nén và ghép kênh), nếu server http của bạn hỗ trợ HTTP/2 thì hầu hết các browser sẽ tự động sử dụng được luôn.
Request và Response có những dữ liệu khác nhau nhưng chúng chia sẻ chung Chrome hoặc ứng dụng Postman hoặc ứng dụng Fiddler để có thể đọc request/respone)
Cấu trúc HTTP Message
Cấu trúc chung của Request/Response có 4 thành phần
Dòng đầu tiên (một dòng): Cho biết thông tin yêu cầu hoặc trạng thái (thành công hay lỗi) của response.
Phần header (các dòng sau dòng đầu tiên trước một dòng trắng): Nó là một tập hợp các dòng chứa thông tin về HTTP Message, thông tin về phần body
Một dòng trắng cho biết phần thông tin (dòng đầu và header) đã gửi hết
Phần body chứa dữ liệu đính kèm với request (như HTML Form) hoặc nội dung văn bản đính kèm cùng response. Kích cỡ dữ liệu này (size) có được xác định bởi thông tin trong header.
Mặc dù có cấu trúc chung nhưng về chi chi tiết Request và Response có những đặc điểm riêng.
HTTP Request Message
Dòng đầu tiên: Dòng này chứa thông tin để gửi tới server, dựa vào thông tin này mà server thực thi hành động phù hợp. Dòng này nó có chứa ba thông tin cách nhau bởi khoảng trắng, ví dụ như:
POST /html/ HTTP/1.1HTTP Method (Phương thức HTTP) là thành phần thứ nhất (ví dụ trên là POST), nó có giá trị như POST, GET, PUT. Nó cho biết yêu cầu cần được thực hiện trên server đối với một tài nguyên nào đó, cụ thể như các phương thức:
GET cho biết Request chỉ cần lấy dữ liệu (tài nguyên).
POST được sử dụng để cho biết Request là chuyển dữ liệu lên server (thương HTTP Message trường hợp này có kèm dữ liệu như HTML Form …)
PUT ghi đè (thay thế) tài nguyên nào đó bằng dữ liệu trong Request.
DELETE xóa tài nguyên
) là thành phần thứ nhất (ví dụ trên là POST), nó có giá trị như POST, GET, PUT. Nó cho biết yêu cầu cần được thực hiện trên server đối với một tài nguyên nào đó, cụ thể như các phương thức:
Địa chỉ URL – là thành phần thứ hai (ví dụ trên là /html/). Địa chỉ tài nguyên truy vấn, có thể là URL tương đối – tuyệt đối (kể cả cổng, nếu có cổng thì viết cổng sau ký hiệu :)
HTTP Version Thành phần thứ ba cho biết phiên bản HTTP (thường là HTTP/1.1)
Header của Request: Các header có cấu trúc đó là một chuỗi là tên header tiếp theo là dấu : và giá trị cho header. Mỗi header được viết trên một dòng. Có rất nhiều loại header (đã chuẩn hóa hoặc header do bạn tự đặt), có thể tham khảo danh sách các header tại HTTP Request Header, ví dụ vài header như: Host là header chỉ ra host (domain, IP) và cổng của server mà Request gửi đến. Nếu không chỉ rõ port thì mặc định là 80 với http và 443 với https. Ví dụ:
Host: xuanthulab.netlà header chỉ ra host (domain, IP) và cổng của server mà Request gửi đến. Nếu không chỉ rõ port thì mặc định là 80 với http và 443 với https. Ví dụ:
Accept trong Request cho biết kiểu nội dung trả về mà client có thể hiểu. (các kiểu cách nhau bởi , có độ ưu tiên mặc định 1, nếu muốn xác định độ ưu tiên cho kiểu nào thì cho thêm ;q=value) Ví dụ:
Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8trong Request cho biết kiểu nội dung trả về mà client có thể hiểu. (các kiểu cách nhau bởicó độ ưu tiên mặc định 1, nếu muốn xác định độ ưu tiên cho kiểu nào thì cho thêm) Ví dụ:
User-Agent là header của Request cho phép server xác định được ứng dụng nào, hệ điều hành gì gửi Request. Ví dụ:
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/12.0là header của Request cho phép server xác định được ứng dụng nào, hệ điều hành gì gửi Request. Ví dụ:
Content-Length cho biết độ dài (byte) của phần body (nếu có đính kèm trong request). Ví dụ:
Content-Length: 12345cho biết độ dài (byte) của phần body (nếu có đính kèm trong request). Ví dụ:
Content-Type trong Request, header này cho server biết kiểu dữ liệu được đính kèm trong phần body. Ví dụ:
Content-Type: application/x-www-form-urlencodedtrong Request, header này cho server biết kiểu dữ liệu được đính kèm trong phần body. Ví dụ:
Cookie header này gửi giá trị cookie lấy được từ truy vấn trước để server phục hồi phiên làm việc. Có thể gửi nhiều cookie cách nhau bởi ;
Cookie: name=value; name2=value2; name3=value3Trong ứng dụng PHP mặc định tên Cookie là PHPSESSID, vậy tại server php (backend) đọc được giá trị này – nó sẽ phục hồi Session.
header này gửi giá trị cookie lấy được từ truy vấn trước để server phục hồi phiên làm việc. Có thể gửi nhiều cookie cách nhau bởiTrong ứng dụng PHP mặc định tên Cookie là, vậy tại server php (backend) đọc được giá trị này – nó sẽ phục hồi Session.
Body của Request: Chứa dữ liệu của Request (dữ liệu này có kiểu xác định ở header Content-Type và độ dài Content-Length), không phải mọi Request đều có body, dữ liệu body thường là HTML Form hay JSON.
HTTP Response Message
Dòng đầu tiên: còn gọi là dòng trạng thái, nó chứa ba mẩu tin gồm
Phiên bản HTTP, ví dụ HTTP/1.1
Mã trả về như 200, 404, 301, 302 …
Đoạn text ngắn giải thích mã ví dụ OK, Not Found, Moved Permanently …
Đây là một dòng trạng thái
HTTP/1.1 301 Moved Permanently
Header của Response: tương tự như header của Request, các header thông dụng có thể tham khảo tại: Một số header của Response , ví dụ như: Date chứa thông tin ngày tháng thông tin (response) được phát sinh
chứa thông tin ngày tháng thông tin (response) được phát sinh
Set-Cookie header này chứa cookie của server gửi cho client. Client lưu lại để gửi lại cho server để phục hồi phiên làm việc.
Set-Cookie: CookieID=94583405kfds; Max-Age=3600;Một số giá trị thiết lập như:
Max-Age=number thời gian hết hạn cookie
HttpOnly không cho JS truy cập Cookie
header này chứa cookie của server gửi cho client. Client lưu lại để gửi lại cho server để phục hồi phiên làm việc.Một số giá trị thiết lập như:
Có những header giống header của Request như: Content-Type, Content-Length …
Body của Response: Chứa dữ liệu của Respone (dữ liệu này có kiểu xác định ở header Content-Type và độ dài Content-Length), không phải mọi Response đều có body.
Cấu Trúc Và Các Thành Phần Cơ Bản Trong Câu (Structures &Amp; Basic Elements)
Bài này giới thiệu các cấu trúc câu cơ bản trong tiếng Anh cũng như các thành phần trong câu giúp người học dễ hình dung tránh nhầm lẫn khi thành lập câu.
CẤU TRÚC & CÁC THÀNH PHẦN CƠ BẢN TRONG CÂU
Trước khi đi vào các cấu trúc câu cơ bản trong tiếng Anh, chúng ta cần làm quen với các ký hiệu viết tắt khi viết cấu trúc trong tiếng Anh.
– Ta sẽ bắt gặp một số câu chỉ có duy nhất chủ ngữ và động từ.
– Những động từ trong cấu trúc câu này thường là những nội động từ (hay còn gọi là những động từ không cần tân ngữ đi cùng.)
– Đây là cấu trúc rất thông dụng và hay gặp trong tiếng Anh.
S V O
– Động từ trong cấu trúc này thường là những ngoại động từ (Hay còn gọi là những động từ bắt buộc phải có tân ngữ đi kèm.)
S V O O
– Khi trong câu có 2 tân ngữ đi liền nhau thì sẽ có một tân ngữ được gọi là tân ngữ trực tiếp (Trực tiếp tiếp nhận hành động), và tân ngữ còn lại là tân ngữ gián tiếp (không trực tiếp tiếp nhận hành động)
S V C
– Bổ ngữ có thể là một danh từ, hoặc một tính từ, chúng thường xuất hiện sau động từ . Chúng ta thường gặp bổ ngữ khi đi sau các động từ như:
+ TH1: Bổ ngữ là các tính từ thường đi sau các động từ nối (linking verbs):
+ TH2: Bổ ngữ là một danh từ đi sau các động từ nối (linking verbs)
+ TH3: Bổ ngữ là các danh từ chỉ khoảng cách, thời gian hay trọng lượng thường gặp trong cấu trúc: V + (for) + N (khoảng cách, thời gian, trọng lượng)
Eg: He considers himself an artist. (Anh ta coi bản thân anh ta là một nghệ sĩ.)
S V O C
– Bổ ngữ trong cấu trúc câu này là bổ ngữ của tân ngữ. Và thường đứng sau tân ngữ.
– Là một danh từ, một cụm danh từ hay một đại từ (là người, sự vật hay sự việc) thực hiện hành động (trong câu chủ động) hoặc bị tác động bởi hành động (trong câu bị động).
Eg: My father plays football very well.
This book is being read by my friend.
– Là một từ hoặc một nhóm từ thể hiện hành động, hay một trạng thái.
Eg: She eats very much. (Cô ấy ăn rất nhiều.)
– Là 1 danh từ, 1 cụm danh từ hay một đại từ chỉ người, sự vật hoặc sự việc chịu tác động/ ảnh hưởng trực tiếp hoặc gián tiếp của động từ trong câu.
Eg: I bought a new car yesterday.
– Là một tính từ hoặc một danh từ thường đi sau động từ nối (linking verbs) hoặc tân ngữ dùng để bổ nghĩa cho chủ ngữ hoặc tân ngữ trong câu.
He considers himself a super star. (Anh ấy coi bản thân mình là một siêu sao.)
S V O C
– Là những từ dùng để miêu tả (về đặc điểm, tính cách, tính chất, … của người, sự vật hoặc sự việc), thường đứng sau động từ “to be”, đứng sau một số động từ nối, hay đứng trước danh từ bổ nghĩa cho danh từ.
He looks happy. (Cậu ấy trông có vẻ hạnh phúc.)
They are good students. (Họ là những học sinh giỏi.)
– Là những từ từ chỉ cách thức xảy ra của hành động, chỉ thời gian, địa điểm, mức độ, tần suất. Trạng từ có thể đứng đầu hoặc cuối câu, đứng trước hoặc sau động từ để bổ nghĩa cho động từ, và đứng trước tính từ hoặc trạng từ khác để bổ nghĩa cho tính từ hoặc trạng từ đó.
Eg: Yesterday I went home late. (Hôm qua tôi về nhà muộn)
I live in the city. (Tôi sống ở thành phố.)
He studies very well. (Anh ấy học rất giỏi.)
Bạn đang xem bài viết Cấu Trúc Của Hàm Cơ Bản Trong C# trên website Tvzoneplus.com. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!