Tuần 1: TỔNG QUAN VỀ .NET VÀ C#

Thảo luận trong 'Visual C#' bắt đầu bởi Trần Văn Cường, 4/8/16.

  1. Trần Văn Cường

    Trần Văn Cường I love CNTT Thành viên BQT Thành viên BQT

    Tham gia ngày:
    8/11/15
    Bài viết:
    3,693
    Đã được thích:
    43
    Điểm thành tích:
    48
    Giới tính:
    Nam
    Nghề nghiệp:
    Sinh Viên
    Nơi ở:
    Quảng Ninh thân yêu!
    Web:

    Chương 1 TỔNG QUAN VỀ .NET VÀ C#

    - Tổng quan về .NetFrameWork
    - Các dạng ứng dụng dùng C#
    - Cấu trúc chương trình
    - Cấu trúc thư mục của ứng dụng

    Tổng quan về .NetFrameWork

    Thành phần .NetFrameWork


    - NET Framework là thành phần nền tảng cho mọi công cụ phát triển ứng dụng .NET
    - NET Framework được thiết kế nhằm hỗ trợ cho các trình ứng dụng và các service thế hệ kế tiếp
    - Cung cấp các lớp đối tượng (Class) để có thể gọi thi hành các chức năng mà đối tượng đó cung cấp
    - Cung cấp hơn 5000 lớp đối tượng để gọi thực hiện đủ các loại dịch vụ từ hệ điều hành

    Thành phần chính của .Net bao gồm:

    - CLR: Common Language Runtime
    - FCL: .Net FrameWork Class library
    Ngoài ra còn có thành phần quản lý mã:
    - manage code
    - Unmanage code

    lap-trinh-dotnet-7.png


    lap-trinh-dotnet-8.png

    Đặc điểm chính của .Net

    CLR
    FCL
    Common type System
    Metadata and Self-Describing Components
    Cross-Language Interperability
    Assemblies
    Application Domains
    Runtime Hosts

    Common Language Runtime (CLR)


    Runtime là một agent quản lý mã nguồn khi nó được thực thi
    Runtime cung cấp các dịch vụ : quản lý bộ nhớ , quản lý tiểu trình , quản lý từ xa
    Runtime đảm bảo việc thực hiện được bảo mật và mạnh mẽ
    Mã nguồn mà đích tới là runtime (managed code) , ngược lại (unmanaged code)
    -> CLR cung cấp môi trường thực thi chung cho các ngôn ngữ trên nền .NET

    Bằng cách nào ?

    1. Khi biên dịch một ứng dụng .Net
    2. Môi trường phát triển dịch mà nguồn thành mã tự quản (managed code) dưới dạng ngôn ngữ trung gian MSIL (hay IL) (Microsoft Intermediate Language)
    3. Trình biên dịch phát sinh siêu dữ kiện megadata (thành viên đối tượng , kiểu , tham chiếu ,….)
    MSIL và megadata -> EXE file

    Khi thực thi mã ứng dụng (EXE file)

    1. Tuỳ thuộc vào chỉ thị người dùng
    2. Trình biên dịch tức thời JIT ( Just In Time ) của CLR cung cấp sẽ :
    Chuyển đổi mã quản lý (managed code) thành mã máy (native code)
    JIT cất giữ mã máy phát sinh vào bộ nhớ đệm cho các thao tác tương tự

    lap-trinh-dotnet-9.png

    Common Type System (CTS)

    Mã viết bằng VB sau khi biên dịch có thể gọi mã viết bằng ngôn ngữ khác không ? Trả lời : Có (nhờ vào Hệ thống kiểu thông dụng CTS)
    CTS định nghĩa tập các kiểu dữ liệu chuẩn và các quy tắc tạo ra kiểu dữ liệu
    Có hai kiểu chính :
    Kiểu giá trị : integer , userdefined ,enum
    Kiểu tham chiếu : class , array , contrỏ , interface

    Gabage Collector (GC)

    Tôi đã làm việc trên C++ hay Visual C++ có gặp nhiều TH về lỗi thiếu bộ nhớ vậy .Net Framework xứ lý ntn ?
    CLR của .Net FrameWork có cung cấp Bộ Thu Gom Rác
    GC quản lý bô nhớ tự động
    GC luôn theo dõi vùng nhớ được tạo qua các nút (root) của ứng dụng  giải phóng nếu không còn sử dụng

    Framework Class Library - FCL

    Là một phần trong bộ khung .Net
    Đóng gói những lớp Hướng Đối Tượng được cung cấp
    Giúp bạn dễ dàng tạo các ứng dụng trên nền Window , trên nền Web

    lap-trinh-dotnet-10.png
    Thư viện lớp của .Net Framework được tổ chức theo cấu trúc cây dựa trên khái niệm namespace (cấu trúc cây)
    Có thể có nhiều lớp trùng tên nhau nhưng buộc phải nằm ở các namespace khác nhau
    Namespace : Microsoft.Csharp , Microsoft.VisualBasic , Microsoft.Win32 ,System
    Class: System.Array , System.Console , System.String , System.Math v.v…

    Visual Studio . Net 2005

    lap-trinh-dotnet-11.png

    Được thiết kế dựa trên .Net Framework
    Cho phép triển khai :
    Ứng dụng trên nhiều ngôn ngữ Visual Basic , Visual C++ , Visual C# , FoxPro
    Ứng dung Web và Web services
    Ứng dụng di động
    Ưu điểm :
    Tất cả các ngôn ngữ đều dùng chung một Môi Trường Phát Triển Tích Hợp (IDE)
    Lập trình ASP.Net : Truy cập CSDL hiệu quả , viết ứng dụng dễ dàng hơn

    1.1.3. Các dịch vụ .Net

    Authentication
    Mesaging
    Personalized Experience
    XML

    1.2. Các dạng ứng dụng dùng C#

    Ứng dụng Winform
    Ứng dụng màn hình và bàn phím
    Dịch vụ hệ điều hành
    Thư viện
    Điều khiển do người dùng định nghĩa
    Ứng dụng báo cáo
    Ứng dụng SQL server
    Ứng dụng PDA và Mobile
    Ứng dụng đóng gói và triển khai

    1.3. Cấu trúc chương trình

    Mọi chương trình C# dưới dạng thi hành đều phải có điểm khởi động chính là phương thức Main. Tùy vào mỗi loại ứng dụng mà phương thức Main khác nhau

    Ví dụ phương thức Main trong Winform
    static void Main()
    {
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());
    }

    Phương thức Main trong Console
    class Program
    {
    static void Main(string[] args)
    {
    }
    }

    1.4. Cấu trúc thư mục ứng dụng

    lap-trinh-dotnet-12.png

    Câu hỏi cuối chương

    Tìm hiểu về Common Type System(CTS) trong .NET Framework
    Yêu cầu:
    Viết khoảng 2-3 trang có hình ảnh minh họa về hệ thống CTS.
    Tham khảo:
    + http://msdn.microsoft.com/en-us/library/zcx1eb1e.aspx
    + http://www.csharphelp.com/2007/04/whats-so-common-about-the-c-common-type-system-cts/
     

    Tập tin đính kèm:


    Bình Luận Bằng Facebook

    data-href="https://cnttqn.com/threads/tuan-1-tong-quan-ve-net-va-c.2449.html"