Chương 1 Tổng quan về hướng đối tượng trong c

46 1.2K 0
Chương 1  Tổng quan về hướng đối tượng trong c

Đ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

Chương TỔNG QUAN VỀ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG VÀ NGÔN NGỮ C# Lê Quý Tài quytai3985@gmail.com HÀ NỘI – 2014 Nội dung Tổng quan lập trình hướng đối tượng Giới thiệu ngôn ngữ C# Chương Tổng quan lập trình hướng đối 2/46 Tổng quan lập trình hướng đối tượng  Vấn đề: Phần mềm ngày lớn     Một số hệ Unix chứa khoảng 4M dòng lệnh Windows chứa hàng chục triệu dòng lệnh Người dùng ngày đòi hỏi nhiều chức năng, đặc biệt chức thông minh Phần mềm cần sửa đổi  Giải pháp: Sử dụng lại mã nguồn   Giảm chi phí thời gian phát triển Nâng cao chất lượng  Yêu cầu sử dụng lại mã nguồn   Dễ hiểu, xác, rõ ràng Không cần thay đổi sử dụng chương trình Chương Tổng quan lập trình hướng đối 3/46 Các phương pháp lập trình      Lập trình cấu trúc Lập trình cấu trúc (lập trình thủ tục) Lập trình hướng đối tượng Lập trình hướng kiện Lập trình hướng thành phần Chương Tổng quan lập trình hướng đối 4/46 Lập trình cấu trúc (non-structured programming)  Là phương pháp xuất    ngôn ngữ Assembly, Basic sử dụng biến tổng thể lạm dụng lệnh GOTO  Nhược điểm     khó hiểu, khó bảo trì, sử dụng lại chất lượng chi phí cao phát triển ứng dụng lớn Chương Tổng quan lập trình hướng đối 5/46 Lập trình cấu trúc/lập trình thủ tục (structured/procedural programming)  Đặc điểm    Xây dưng chương trình dựa hàm/thủ tục/chương trình Mỗi chương trình gọi nhiều lần CT Các CT gọi đến để thực theo thứ tự bất kỳ, tùy thuộc vào giải thuật CT mà không phụ thuộc vào thứ tự khai báo CT Ch­¬ng tr×nh chÝnh m n() Hµm_1 Hµm_2 Hµm_4 Hµm_7 Hµm_3 Hµm_5 Hµm_8 Hµm_6 Hµm_9 Chương Tổng quan lập trình hướng đối 6/46 Lập trình cấu trúc/lập trình thủ tục  Nhược điểm   Không hỗ trợ sử dụng lại mã nguồn giải thuật phụ thuộc chặt chẽ vào CTDL, thay đổi CTDL phải thay đổi giải thuật viết lại CT Không phù hợp với phần mềm lớn: tư cấu trúc với giải thuật phù hợp với toán nhỏ, nằm phạm vi modul CT Chương Tổng quan lập trình hướng đối 7/46 Lập trình hướng đối tượng Object-oriented programming  Có đặc trưng bản:   Đóng gói liệu: liệu tổ chức thành thuộc tính lớp đối tượng Việc truy nhập đến liệu phải thông qua phương thức lớp đối tượng Sử dụng lại mã nguồn: thể qua chế kế thừa Cơ chế cho phép lớp đối tượng kế thừa từ lớp đối tượng khác sử dụng lại phương thức (mã nguồn) lớp bị kế thừa mà không cần định nghĩa lại Chương Tổng quan lập trình hướng đối 8/46 Lập trình hướng đối tượng  Ưu điểm:     Dữ liệu không bị thay đổi tự CT liệu đóng gói vào đối tượng Muốn truy nhập vào liệu phải thông qua phương thức cho phép đối tượng Khi thay đổi CTDL đối tượng, cần thay đổi số hàm thành phần đối tượng mà không cần thay đổi mã nguồn đối tượng khác Có thể sử dụng lại mã nguồn,tiết kiệm tài nguyên Phù hợp với dự án phần mềm lớn,phức tạp Chương Tổng quan lập trình hướng đối 9/46 Hướng cấu trúc vs Hướng đối tượng  Hướng cấu trúc  Data structures + algorithms = Program  Hướng đối tượng  Object + message = Program Chương Tổng quan lập trình hướng đối 10/46 Chương trình HelloWorld Chương trình tự động tạo khung dự án Thêm mã lệnh đơn giản hiển thị thông báo Hello World hình Nhấn F6 để dịch Ctrl+F5 để chạy chương trình Chương Tổng quan lập trình hướng đối 32/46 Ngôn ngữ C#  C# phát triển nhóm tác giả điều hành Anders Hejlsberg  C# dẫn xuất từ C C++ tạo từ tảng tốt  C# ngôn ngữ hướng đối tượng (Object Oriented Language)   Hỗ trợ định nghĩa làm việc với lớp (class) Hỗ trợ đầy đủ đặc trưng lập trình hướng đối tượng: đóng gói (encapsulation), kế thừa (inheritance) đa hình (polymorphism)  C# cung cấp đặc tính hướng thành phần (component oriented): thuộc tính, kiện Chương Tổng quan lập trình hướng đối 33/46 Ngôn ngữ C#        C# ngôn ngữ đơn giản C# ngôn ngữ đại C# ngôn ngữ hướng đối tượng C# ngôn ngữ mạnh mẽ mềm dẻo C# ngôn ngữ có từ khoá C# ngôn ngữ hướng module C# trở nên phổ biến Chương Tổng quan lập trình hướng đối 34/46 Ngôn ngữ C#  kiểu ứng dụng Console application Console application thiết kế để chạy dòng lệnh không hỗ trợ giao diện cho người sử dụng   Window application Window application thiết kế để chạy hình có hỗ trợ giao diện cho người sử dụng Chương Tổng quan lập trình hướng đối 35/46 Tạo Window Application  File → New Project  Windows Forms Application Chương Tổng quan lập trình hướng đối 36/46 Tạo Console Application  File → New Project  Console Application Chương Tổng quan lập trình hướng đối 37/46 Các thành phần Visual Studio Chương Tổng quan lập trình hướng đối 38/46 Các thành phần Visual Studio  Title bar: Chứa tên dự án  Menu bar: Chứa thực đơn File, Edit, View, Project, Build, Debug…)  Tools bar: Có 39 công cụ  Thanh Standard  Ẩn/hiện: Nháy phải chuột lên công cụ, chọn/bỏ chọn tên công cụ Chương Tổng quan lập trình hướng đối 39/46 Các thành phần Visual Studio  Toolbox: chứa điều khiển thiết kế giao diện người dùng  Ẩn/hiện: View  Toolbox Chương Tổng quan lập trình hướng đối 40/46 Các thành phần Visual Studio  Form Desinger  Cho phép thiết kế giao diện người dùng, sử dụng điều khiển Toolbox  Solution Explorer  View  Solution Explorer  View Code: Xem mã nguồn View Designer: Xem thiết kế giao diện  Chương Tổng quan lập trình hướng đối 41/46 Các thành phần Visual Studio  Properties Window   Liệt kê tất thuộc tính, kiện điều khiển View  Properties Window Chương Tổng quan lập trình hướng đối 42/46 Một số thao tác  Mở chương trình  File  Open  Project/Solution…  Lưu chương trình   File - Save All Khi tạo đồ án, Visual Studio sinh tập tin:     *.sln (solution): ứng dụng có tập tin loại này, bao gồm nhiều tập tin dự án *.csproj (project): dự án có nhiều tập tin nguồn (các tập tin dự án có ngôn ngữ) *.cs (source): chứa mã nguồn chương trình AssemblyInfor.cs: chứa thuộc tính Chương Tổng quan lập trình hướng đối 43/46 Một số thao tác  Biên dịch   Dịch Solution: Build  Build Solution (F6) Dịch dự án: Build  Build tên dự án (Shift + F6)  Chạy chương trình Chạy chương trình kèm sửa lỗi: Debug  Start Debugging (F5 nhấn  ) Chạy chương trình không kèm sửa lỗi: Debug  Start Without Debugging (Ctrl + F5)   Dừng chương trình  Debug  Stop Debugging (Ctrl + Alt + Break Chương Tổng quan lập trình hướng đối ) 44/46 Bài tập nhà Cài đặt Visual Studio 2010 (bản Ultimate) Crytal Reports 10 for Visual Studio 2010 Viết lại tập lớp Viết chương trình sau: (bằng ngôn ngữ C) a) Nhập vào dãy số nguyên, xếp dãy số theo chiều tăng dần in kết hình (Viết hàm: Nhập dãy số, In dãy, xếp) b) Nhập vào phân số, in hình tổng, hiệu, tích, thương phân số (viết hàm nhập, in phân số, tính tổng, hiệu, tích, thương) Chương Tổng quan lập trình hướng đối 45/46 Bài tập nhà c) Viết chương trình quản lý sinh viên Mỗi SV gồm thông tin: Mã SV, Họ tên, Ngày sinh, Quê quán, Điểm Toán, Lý, Hoá, Điểm trung bình - Nhập danh sách N sinh viên - In hình danh sách SV - Tìm kiếm sinh viên theo Mã SV - Đưa danh sách SV có điểm TB>7.0 (Viết hàm: Nhập, In danh sách) Chương Tổng quan lập trình hướng đối 46/46 [...]... đối tượng, đối tượng lại là một thể hiện c a lớp - Đối tượng là một th c thể c thể ,c th c Lớp là một khái niệm trừu tượng, chỉ tồn tại ở dạng khái niệm để mô tả c c đ c tính chung c a một số đối tượng - Tất c c c đối tượng thu c cùng 1 lớp c c ng c c thu c tính và phương th c Chương 1 Tổng quan về lập trình hướng đối 15 /46 Trừu tượng hoá (Abstraction)  Sử dụng để quản lý c c đối tượng ph c tạp ... biên dịch tr c tiếp c c chương trình thành file th c thi  NET biên dịch c c chương trình thành c c assembly, chứa c c mã chương trình trung gian c a Microsoft (Microsoft Intermediate Language – MSIL)  CLR sẽ dịch một lần nữa, sử dụng chương trình biên dịch Just In Time (JIT) chuyển c c mã MSIL sang mã máy và th c thi Chương 1 Tổng quan về lập trình hướng đối 27/46 Biên dịch Chương 1 Tổng quan về lập... đối tượng mà mỗi đối tượng lại c c ch xử lý riêng theo ngữ c nh c a mình Chương 1 Tổng quan về lập trình hướng đối 21/ 46 2 Giới thiệu về ngôn ngữ C#  Microsoft NET  Ngôn ngữ C# Chương 1 Tổng quan về lập trình hướng đối 22/46 Microsoft NET  Cung c p giao diện lập trình (API) cho c c dịch vụ (services) và c c hàm API truyền thống c a hệ điều hành Windows  Cung c p một nền tảng phát triển chung cho... vào c c thu c tính c n thiết Tóm lư c nội dung chính c a vấn đề Tìm ra những điểm chung giữa c c đối tượng Trừu tượng hóa Tam gi c Cạnh 1, canh 2, c nh 3 Màu nền, màu biên Độ đậm biên Vẽ, tính diện tích, tính chu vi C c đối tượng Lớp Chương 1 Tổng quan về lập trình hướng đối 16 /46 Đóng gói (Encapsulation)  Đóng gói dữ liệu là c c thao t c t c động lên dữ liệu thành một thể thống nhất (lớp đối tượng) ... động Con chó Tên Màu Giống Sủa Vẩy tai Chạy ăn Xe đạp Bánh xe Bàn đạp Dây xích Tăng t c Giảm t c Chuyển bánh răng Chương 1 Tổng quan về lập trình hướng đối 13 /46 Đối tượng phần mềm  C c đối tượng phần mềm c thể đư c dùng để biểu diễn c c đối tượng trong thế giới th c  C ng c trạng thái và hành động   Trạng thái: thu c tính (attribute, property) Hành động: Phương th c (method)  Đối tượng (object)... Chương 1 Tổng quan về lập trình hướng đối 30/46 Ví dụ: Viết chương trình HelloWorld Chương 1 Tổng quan về lập trình hướng đối 31/ 46 Chương trình HelloWorld Chương trình tự động tạo một khung dự án Thêm mã lệnh đơn giản hiển thị thông báo Hello World ra màn hình Nhấn F6 để dịch Ctrl+F5 để chạy chương trình Chương 1 Tổng quan về lập trình hướng đối 32/46 Ngôn ngữ C#  C# đư c phát triển bởi nhóm t c giả... th c thể phần mềm bao b c thu c tính và c c phương th c liên quan Thu c tính  C trạng thái và hành động    Trạng thái: Thu c tính (attribute, property) Hành động: Phương th c (method) Thu c tính đư c x c định bởi c c giá trị gọi là thu c tính thể hiện  C c đối tượng giao tiếp với nhau bằng c c thông điệp Chương 1 Tổng quan về lập trình hướng đối Phương th c 14 /46 Lớp (class)  Trong thế giới c ... Next( ) CreateOrder UpdateOrder GetOrderTotal Next Chương 1 Tổng quan về lập trình hướng đối 18 /46 Truyền thông điệp (message)  C c đối tượng gửi và nhận thông tin với nhau giống như con người trao đổi với nhau  Truyền thông điệp cho một đối tượng là yêu c u đối tượng th c hiện một vi c gì đó CONGNHAN.TINHLUONG (Hoten) Đối tượng Thông điệp Thông tin Chương 1 Tổng quan về lập trình hướng đối 19 /46 Kế... nhiều đối tượng c ng loại  Ví dụ: Tên, Tuổi, Trường, Khoa, đăng kí h c, Bạn nghĩ tới ?  Một lớp là một thiết kế (blueprint) hay mẫu (prototype) cho c c đối tượng c ng kiểu  Lớp định nghĩa tất c c c thu c tính và phương th c chung cho tất c c c đôi tượng thu c cùng một loại Lớp và đối tượng? C mối quan hệ tương ứng lẫn nhau nhưng bản chất lại kh c nhau: - Lớp là sự trừu tượng hóa c a c c đối tượng, ... Chương 1 Tổng quan về lập trình hướng đối 33/46 Ngôn ngữ C#        C# là ngôn ngữ đơn giản C# là ngôn ngữ hiện đại C# là ngôn ngữ hướng đối tượng C# là ngôn ngữ mạnh mẽ và mềm dẻo C# là ngôn ngữ c ít từ khoá C# là ngôn ngữ hướng module C# sẽ trở nên phổ biến Chương 1 Tổng quan về lập trình hướng đối 34/46 Ngôn ngữ C#  2 kiểu ứng dụng chính Console application Console application đư c thiết

Ngày đăng: 26/05/2016, 10:39

Từ khóa liên quan

Mục lục

  • Slide 1

  • Nội dung

  • 1. Tổng quan về lập trình hướng đối tượng

  • Các phương pháp lập trình

  • Lập trình không có cấu trúc (non-structured programming)

  • Slide 6

  • Lập trình cấu trúc/lập trình thủ tục

  • Lập trình hướng đối tượng Object-oriented programming

  • Lập trình hướng đối tượng

  • Hướng cấu trúc vs Hướng đối tượng

  • Các khái niệm cơ bản của LTHĐT

  • Đối tượng (Object)

  • Đối tượng trong thế giới thực

  • Đối tượng phần mềm

  • Lớp (class)

  • Trừu tượng hoá (Abstraction)

  • Đóng gói (Encapsulation)

  • Đóng gói

  • Truyền thông điệp (message)

  • Kế thừa (inheritance)

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan