CS21 - Biểu thức lambda, viết và sử dụng biểu thức lambda với delegate trong lập trình C# .NET Core

Ғылым және технология

Tìm hiểu về các biểu thức lambda, các hàm vô danh, định nghĩa phương thức với lambda, gán lambda cho Func và Action hxuanthulab.net/bieu-thuc-lamb... #xuanthulab #xuanthulabcsharp
00:00 Khái niệm về biểu thức lambda, cách viết biểu thức lambda
04:00 Gán biểu thức lambda cho biến kiểu delegate
14:19 Sử dụng lambda trong một số thư viện của .NET
THAM KHẢO CÁC LIST VIDEO:
- Lập trình C# : • LẬP TRÌNH C# - XUANTHU...
- Lập trình ASP.NET CORE MVC : • Lập trình ASP.NET MVC ...
☞ Subscribe : kzread.info?su...

Пікірлер: 29

  • @XuanThuLab
    @XuanThuLab2 жыл бұрын

    Các bạn đăng ký theo dõi ủng hô kênh nhé, cảm ơn các bạn kzread.info

  • @NHGeneral
    @NHGeneral3 жыл бұрын

    Sư phụ dạy rất dễ hiểu, một số kênh khác nói rất nhanh và lằng nhằng nhưng cách truyền đạt của sư phụ bình tĩnh và không gây rối, subcribe thôi mọi người!!!

  • @SonLeO
    @SonLeO3 жыл бұрын

    Thầy giảng rất hay ạ. Cám ơn thầy

  • @huycuongnguyen902
    @huycuongnguyen902 Жыл бұрын

    Cám ơn thầy. Bài giảng rất dễ hiểu

  • @lewishoanglong1610
    @lewishoanglong16102 жыл бұрын

    Cảm ơn thầy. Rất dễ hiểu ạ

  • @ucthinhnguyenluong1455
    @ucthinhnguyenluong1455 Жыл бұрын

    anh em đã học callback và arrow func trong js qua học này nhanh cực

  • @luong87mipec
    @luong87mipec2 жыл бұрын

    Rất dễ hiểu, cảm ơn bạn rất nhiều

  • @volodyachan9333
    @volodyachan93332 жыл бұрын

    Rất dễ hiểu. Mong a ra thêm nhiều video nữa

  • @dthieu2002
    @dthieu2002 Жыл бұрын

    Rất dễ hiểu cảm ơn anh!

  • @caosang1905
    @caosang19052 жыл бұрын

    Cảm ơn anh, hay quá!

  • @tranphatfreelancer5759
    @tranphatfreelancer5759 Жыл бұрын

    idol mãi đỉnh

  • @supermt4793
    @supermt47933 жыл бұрын

    Thanks ad ạ

  • @nguyencanh8369
    @nguyencanh83692 жыл бұрын

    Thanks

  • @74.nguyenvantung74
    @74.nguyenvantung74 Жыл бұрын

    select == map, where == filter trong js có phải không thầy?

  • @angVanHuy-tf2rv
    @angVanHuy-tf2rv2 жыл бұрын

    giống callback bên js quá

  • @inventionpm
    @inventionpm Жыл бұрын

    Mình vaò trang web... cần hỗ trợ.. gửi yêu cầu nhưng trang web bị lỗi thì phaỉ

  • @ucthinhnguyenluong1455
    @ucthinhnguyenluong1455 Жыл бұрын

    Select() giống map trong js nhận vào 1 callback trả về 1 mảng mới sau khi biến đổi

  • @_LuongQuocHao

    @_LuongQuocHao

    Жыл бұрын

    delegate phải như callback ko ban,sao có mấy chỗ kêu delegate là con trỏ

  • @kynguyenphanle6296

    @kynguyenphanle6296

    8 ай бұрын

    @@_LuongQuocHao Theo khái niệm của C++ thì nó là một con trỏ (function pointer), function pointer là một trong những khái niệm nhỏ bên trong chủ đề function object. Có thể hiểu function object nôm na như sau: Nó còn được gọi là Functor, tức là gọi đối tượng như một function, mà không cần phải tạo ra đối tượng từ lớp thông qua quá tải toán tử (). Khái niệm này xuất phát khi người ta đang triển khai với C++ để xây dựng tiền đề cho CallBack và cũng như std::binding,... Hiểu đơn giản rằng nó sẽ tạo ra 1 đối tượng tạm thời và triển khai phương thức cần thiết thông qua đối tượng tạm thời đó ngay tại thời điểm thực thi chương trình. Từ đó họ đã xây dựng ra function pointer để nó đúng ra không phải chỉ trỏ tới 1 hàm thông thường, mà rộng hơn là nó đang trỏ tới chính 1 function object, hay chi tiết hơn là có thể trỏ đến một phương thức của 1 đối tượng mà không cần tạo ra 1 đối tượng từ lớp tương ứng. Điều này cũng giống như std::binding trong C++, std::binding sẽ return hay còn có thể nói là được trỏ đến bởi 1 function pointer. Điều này càng khẳng định hơn khi lambdas expression là một function object và function pointer có thể handle cả được lambdas expression. Trong C# và cũng như JS thì con trỏ đã được hide đi để giảm thiểu việc gây lú trong lập trình, thay vào đó họ sẽ dùng tham trị và tham chiếu. Như vậy điều này cần phải có sự hình thành của object cụ thể, do đó khi đã khởi tạo delegate và phải xem nó như là 1 lớp. Đã là lớp thì phải có đối tượng cụ thể được sinh ra từ lớp. Vậy mới có thể dùng nó như một tham trị hoặc tham chiếu ở dạng parameters. Theo mình thấy nên xem nó là "con trỏ" trong ngoặc kép để dễ hình dung từ tư duy C++.

  • @minhleuc4769
    @minhleuc47692 жыл бұрын

    anh ơi cho em hỏi chút là mình có thể sử dụng tên của delegate như 1 tên hàm, ví du; Funcsum = (int a, int b) => a+b; int x = sum.invoke(1,2); console.writeline(x); // chạy được console.writeline(sum(1,2)); // vẫn chạy được Vậy thì tại sao lại phải sử dụng invoke ạ?

  • @bh4541

    @bh4541

    2 жыл бұрын

    ví dụ thôi bạn, thầy ví dụ cho bạn hiểu thêm khi gán sum = kiểu delegate (method tính tổng) , rồi dùng sum.invoke gọi ra method gán cho sum để bạn thấy thôi

  • @bh4541

    @bh4541

    2 жыл бұрын

    sum.invoke(1,2) biến trả về kiểu int thì int x =sum.invoke(1,2), hay console.writeline (sum(1,2)) cái sum (1,2) ở đây khai bao kiểu lamda có biến trả về cũng kiểu int tương đương nhau cả thôi

  • @itandlife572
    @itandlife5722 жыл бұрын

    Lamda expression này na ná giống callback function trong JS anh nhỉ

  • @trandinhthang5778

    @trandinhthang5778

    Жыл бұрын

    arrow function chứ

  • @_LuongQuocHao

    @_LuongQuocHao

    Жыл бұрын

    @@trandinhthang5778 delegate phải như callback ko ban,sao có mấy chỗ kêu delegate là con trỏ

  • @alee.van2812

    @alee.van2812

    Жыл бұрын

    @@_LuongQuocHao vầng, là con trỏ trỏ tới phương thức

  • @andreatran4520
    @andreatran45202 жыл бұрын

    :')) . Không biết tại sao mình dùng select bị báo lỗi nữa . Mọi người có thể gợi ý được ko ạ

  • @andreatran4520

    @andreatran4520

    2 жыл бұрын

    à à . Mình quên thêm thư viện :')) . ngáo thật.

  • @desod-vn

    @desod-vn

    2 жыл бұрын

    @@andreatran4520 Thêm thư viện gì vậy và có extension nào tự động thêm ko ạ ?

Келесі