Pengiriman Antara Antarmuka dan Logika Bisnis di Delphi
J xue (zhuam)[email protected]
Sebelum saya memulai pengembangan perangkat lunak Delphi, saya terlibat dalam pengembangan perangkat lunak Java.
Proyek baru -baru ini dikembangkan dengan Delphi, saya melihat Delphi lagi. Saat saya mengembangkan dan merancang perangkat lunak! Ah, mari kita bicara lebih sedikit, mari kita sampai intinya!
Delphi adalah IDE untuk pengembangan perangkat lunak yang cepat.
1. Misalnya, jika saya ingin memasukkan catatan ke dalam database, ini adalah cara yang biasa!
Contoh SQL: Sisipkan ke dalam ExexTleTable1 (Field1, Field2, Field3) Value (Values1, Values2, Values3)
Sekarang misalkan ada tiga kontrol teks pada bentuk Delphi ini, nama Frist, kedua, dan tiga
Di sini saya menggunakan tiga metode berbeda untuk memasukkan data ke dalam database:
1. Masukkan langsung
Klien ------------> Database
Sisipkan ke nilai exampleTable1 (field1, field2, field3) (Frist.Text, Second.Text, Three.Text)
2. Penyisipan tidak langsung
Klien --- (Pass Teks) ---> Dataclass -------> Database
Ini berarti bahwa data formulir disimpan terlebih dahulu ke kelas data, dan kemudian pengguna mengambil data dari kelas data ini dan mentransfer data.
Lulus ke database
Melihat:
Kontrol formulir secara langsung menyimpan data ke dalam kelas data Dataclass melalui teks.
Dataclass ini hanya digunakan untuk menyimpan status data, dan penuh dengan atribut dan tidak memiliki implementasi logika bisnis!
sebagai berikut:
{------------------------------------------------- -------------------------------------------------- --------------------------
Penulis: Zhuam
Tanggal: 2004/09/04
Jenis: Kelas
Properti: Semua Informasi Associatorrunbean Ditetapkan Mothed
Deskripsi: Digunakan untuk menyimpan informasi lisensi mengemudi anggota,
-------------------------------------------------- -------------------------------------------------- ----------------------------
jenis
Tassociatorrunbean = kelas (Tobject)
Pribadi
Fkilometer: ganda;
Fcarnumber: string;
Fnumber17: string;
Fcarcolor: string;
Fassociatorid: string;
Fcarcapacity: string;
FframeNumber: string;
Fenginenumber: String;
FavailabilityDate: tdate;
Fregisterdate: tdate;
Fbackpicture: timage;
Ffrontpicture: timage;
Fleftpicture: Timage;
Frightpicture: Timage;
fungsi getBackPicture: timage;
fungsi getFrontPicture: timage;
fungsi getLeftPicture: timage;
fungsi getRightPicture: timage;
prosedur setassociatorid (nilai const: string);
prosedur setavailabilityDate (nilai const: tdate);
Prosedur Kemunduran (Nilai Const: Timage);
Prosedur setCarcapacity (nilai const: string);
Prosedur setCarcolor (nilai const: string);
Prosedur SetCarnumber (Nilai Const: String);
Prosedur setenginenumber (nilai const: string);
Prosedur SetframeNumber (Nilai Const: String);
prosedur setfrontpicture (nilai const: timage);
Prosedur setKilometer (nilai const: ganda);
Prosedur setleftpicture (nilai const: timage);
Prosedur SetNumber17 (Nilai Const: String);
Prosedur setRegisterDate (nilai const: tdate);
Prosedur SetRightPicture (Nilai Const: Timage);
publik
konstruktor membuat;
Destructor menghancurkan; override;
Properti AssociatorID: String baca fassociatorid menulis setassociatorid; // nomor anggota
Property Carnumber: String Baca fcarnumber Write SetCarnumber;
Property Carcolor: String Baca fcarcolor menulis setcarcolor; // warna mobil
Properti Carmode: String Baca FCARCOLOR Tulis setCarcolor; // model
Property Enginenumber: String Baca Fenginenumber Write Setenginenumber; // Nomor engine
Property FrameNumber: String Baca FFRAMEnumber Tulis setframenumber; // nomor bingkai
Property Carcapacity: String baca fcarcapacity menulis setcarcapacity; // perpindahan
Properti Nomor17: String Baca FNUMBER17 Tulis SetNumber17; // Nomor 17 digit
Kilometer Properti: Double Read fkilometre menulis setkilometre;
Property RegisterDate: TDate Baca FregisterDate Write SetRegisterDate; // Tanggal Pendaftaran
Tersedia Properti: TDate baca FavailabilityDate Write SetavailabilityDate; // Tanggal yang efisien
Properti Frontpicture: Timage Read GetFrontPicture Menulis setfrontpicture;
Backpicture Properti: Timage Read GetBackPicture Tulisan Tulisan;
Properti Leftpicture: Timage baca getleftpicture menulis setleftpicture;
Properti RightPicture: Timage Read getRightPicture menulis setRightPicture;
akhir;
Masukkan ke dalam nilai exampleTable1 (field1, field2, field3) (assocorrunbean.frist, assocorrunbean.second, assocorrunbean.text)
3. Penyisipan tidak langsung
Klien --- (Pengiriman Properti Kustom) ---> Dataclass -------> Database
Ini berarti bahwa data formulir disimpan terlebih dahulu ke kelas data, dan kemudian pengguna mengambil data dari kelas data ini dan mentransfer data.
Lulus ke database
Melihat:
Kontrol formulir secara langsung menyimpan data ke dalam kelas data (DataClass) melalui properti khusus.
Dataclass ini hanya digunakan untuk menyimpan status data, dan penuh dengan atribut dan tidak memiliki implementasi logika bisnis!
Masukkan ke dalam nilai exampleTable1 (field1, field2, field3) (assocorrunbean.frist, assocorrunbean.second, assocorrunbean.text)
Berbicara tentang ini, seseorang akan bertanya kepada saya, apa pentingnya menyadari cara ini! Kawan -kawan yang cermat mungkin telah memperhatikannya!
Ini adalah cara untuk memisahkan antarmuka Delphi dari logika bisnis.