Standard penggayaan kod sumber DELPHI. Komen XML dan penjanaan dokumentasi dalam Delphi

Muka surat 5 daripada 9

Komen

Bahasa Object Pascal menyokong dua jenis komen: blok dan satu baris. Pertimbangan umum penggunaan komen boleh seperti berikut:

  • Letakkan ulasan berhampiran permulaan modul untuk menerangkan tujuannya;
  • Letakkan ulasan sebelum pengisytiharan kelas;
  • Letakkan ulasan sebelum pengisytiharan kaedah;
  • Elakkan komen yang jelas: (i:= i + 1 // tambah satu pada i);
  • Ingat bahawa komen yang mengelirukan adalah lebih teruk daripada tiada ulasan;
  • Elakkan daripada meletakkan maklumat dalam ulasan yang mungkin tidak betul dari semasa ke semasa;
  • Elakkan menghias komen dengan asterisk atau simbol lain;
  • Untuk ulasan sementara (bukan dalam keluaran), gunakan "TODO".

Sekat ulasan

Objek Pascal menyokong dua jenis komen blok. Komen blok yang paling biasa digunakan ialah sepasang pendakap kerinting: { } . Pasukan Delphi lebih suka menyimpan ulasan ini semudah mungkin dan sebagai sandaran. Gunakan ruang untuk memformat teks dalam ulasan ini dan jangan gunakan asterisk "*". Apabila membungkus garisan, anda mesti mengekalkan lekukan dan penjajaran

Contoh daripada DsgnIntf.pas:

( TPropertyEditor

Mengedit sifat komponen, atau senarai komponen,
dipilih ke dalam Pemeriksa Objek. Harta
editor dicipta berdasarkan jenis
harta yang sedang disunting seperti yang ditentukan oleh jenis
didaftarkan oleh...

GetXxxValue
Mendapat nilai harta pertama dalam
Harta harta. Panggilan yang sesuai
Kaedah TProperty GetXxxValue untuk mendapatkan semula
nilai.

SetXxxValue Menetapkan nilai semua sifat
dalam hartanah Properties. Panggilan yang sesuai
Kaedah TProperty SetXxxxValue untuk menetapkan nilai. )

Komen blok sentiasa mengandungi maklumat tentang modul: hak cipta, tarikh pengubahsuaian dan sebagainya. Komen blok yang menerangkan kaedah mesti datang sebelum pengisytiharan kaedah.

Betul

Jenis ulasan blok kedua mengandungi dua aksara: kurungan dan asterisk: (* *) . Komen jenis ini digunakan semasa pembangunan kod sumber. Kelebihannya ialah ia menyokong ulasan bersarang, walaupun komen mestilah jenis yang berbeza. Anda boleh menggunakan harta ini untuk mengulas sebahagian besar kod yang mengandungi ulasan lain:

(* prosedur TForm1.Button1Click(Penghantar: TObject);
bermula
Melakukan ini; // Mulakan proses
Berbuat demikian; // Teruskan lelaran
( Kami memerlukan cara untuk melaporkan ralat di sini, mungkin menggunakan
cubaan akhirnya sekat??? )
CallMoreCode; // Memuktamadkan proses
akhir; *)

Komen satu baris

Komen satu baris terdiri daripada // aksara diikuti dengan teks ulasan. Aksara // mesti diikuti dengan ruang dan kemudian teks. Komen satu baris hendaklah diinden sama dengan kod yang dipaparkan. Komen satu baris boleh dikumpulkan untuk membentuk ulasan yang lebih besar.

Komen satu baris boleh bermula dengan baris baru dan boleh teruskan kod itu komen. Dalam kes ini, mesti ada sekurang-kurangnya satu ruang antara kod dan ulasan. Jika lebih daripada satu ulasan mengikut kod, ia mesti diselaraskan dalam lajur yang sama.

Contoh ulasan satu baris:

// Buka meja
Jadual1.Terbuka;
Contoh komen dalam kod:
jika (bukan IsVisible) maka
Keluar; // tiada apa yang perlu dilakukan
Inc(StrLength); // rizab ruang untuk null terminator

Anda harus mengelak daripada menggunakan komen dalam kod untuk setiap baris modul.

Bahasa pengaturcaraan Delphi Cukup mudah untuk dipelajari, tetapi sangat berkesan dan berkuasa. Perkara pertama yang perlu anda kenali ialah komen.

Komen ialah sebarang teks yang sama sekali tidak mempunyai kesan pada kod program. Ia tidak pernah menyusun atau menampal ke dalam fail boleh laku, tetapi hanya digunakan untuk penjelasan kod.

Komen boleh diformatkan dalam dua cara:

  1. semua yang datang selepas garis miring berganda // , dianggap sebagai ulasan
    (anda hanya boleh memformat satu baris ulasan dengan cara ini);
  2. apa-apa yang disertakan dalam pendakap kerinting ( dan ) juga merupakan ulasan
    (dalam kes ini, anda boleh memasukkan seberapa banyak baris yang anda suka dalam ulasan).

Contoh komen

// Ini adalah komen.

Ini bukan lagi komen

(Ini komen sekali lagi
Dan ini juga)

Artikel ini akan sentiasa menggunakan ulasan untuk menerangkan kod program yang diterangkan. Itulah sebabnya kami perlu mengenali mereka sebelum kami mula menganalisis kod tersebut.

Kini anda sudah bersedia untuk mempelajari bahasa pengaturcaraan Delphi. Buat projek baru. Selepas itu, pergi ke editor kod. Garis besar program masa depan telah pun ditulis untuk anda di sini.

Mari kita lihat lebih dekat apa yang ditulis di sini. Di bawah adalah ulasan terperinci untuk setiap baris templat yang dibuat. Walau bagaimanapun, ada sesuatu yang hilang di sini demi kemudahan mempelajari kod program.

Templat yang dijana shell Delphi

unit Unitl; //Nama modul

antara muka

kegunaan //Selepas perkataan ini terdapat senarai modul yang disambungkan.
Windows, Mesej, SysUtils, Varian, Kelas, Grafik, Kawalan, Borang,
Dialog;

menaip //Selepas ini datang pengisytiharan jenis
TForml = kelas(TForm) //Mulakan penerangan objek TForm baharu. Komponen dan peristiwa borang diterangkan di sini
persendirian //Selepas perkataan ini anda boleh menerangkan data peribadi objek
(Pengisytiharan peribadi)
tersedia hanya untuk objek TForml

awam //Selepas perkataan ini anda boleh menerangkan data terbuka objek
(Pengisytiharan awam) //Petunjuk yang dihasilkan oleh Delphi. Di sini anda boleh menerangkan pembolehubah dan kaedah,
boleh diakses daripada mana-mana modul lain

tamat; //Tamat pengisytiharan jenis

var //Mengisytiharkan pembolehubah global
Forml: TForml; //Ini menerangkan pembolehubah Forml jenis objek TForml

pelaksanaan

($R *.dfm) //Fail Connect.dfm (fail dengan data tentang objek visual)

tamat. // berakhir dengan titik - hujung modul

Jika sesuatu masih tidak jelas, maka dalam proses penciptaan program sebenar semuanya akan jatuh pada tempatnya. Jangan cuba mengingati semuanya sekaligus kerana ia adalah mustahil. Terlalu banyak maklumat baru, tidak disokong oleh amalan. Cuba fahami hanya maksud program bertulis.

Hampir semua baris berakhir dengan " ; " (titik bertitik). Tanda ini menunjukkan penghujung pernyataan. Ia hanya digunakan selepas pernyataan dan tidak pernah digunakan selepas kata kunci seperti

kegunaan, jenis, permulaan, pelaksanaan, persendirian, awam

Dan lain-lain. Selepas itu, anda akan menjadi biasa dengan semua kata kunci, yang kebanyakannya menonjol dalam huruf tebal. Pengecualian segera kelihatan - yang terakhir dalam modul tamat, diikuti dengan noktah dan bukannya koma bertitik.

Jadi, mari kita lihat struktur kod tersebut. Pada mulanya adalah nama modul. Ia boleh menjadi apa sahaja, tetapi ia adalah sama dengan nama fail (tanpa mengambil kira sambungannya). Tidak digalakkan menukar nama modul secara manual. Jika anda masih perlu menukarnya, simpan dahulu modul dengan nama lama. Untuk melakukan ini, pilih arahan menu: Fail | Simpan sebagai(Fail | Simpan Sebagai).

Adalah dinasihatkan untuk memberi modul nama yang jelas. Dalam kes ini, anda boleh menentukan dengan nama apa yang ada di dalam modul dengan nama yang sama. Sukar untuk meneka apa yang ada dalam fail yang dipanggil Unitl.pas. Ia juga dinasihatkan untuk memberikan nama fail yang berkaitan dengan kandungannya. Sebagai contoh, bentuk utama Adalah lebih baik untuk menyimpan program dalam fail bernama MainUnit.pas atau MainModule.pas. Dalam kes ini, modul dan fail akan dinamakan MainUnit atau MainModule, dan anda boleh segera menentukan bahawa ini adalah bentuk utama.

Selanjutnya sambungan sedang berjalan modul global. Semua prosedur, fungsi, pemalar diterangkan dalam beberapa modul, dan sebelum menggunakan prosedur ini, anda perlu menyambungkannya. Anda mungkin tahu bahawa fungsi wujud. Tetapi untuk pengkompil mengetahui tentang perkara ini, anda mesti menentukan modul di mana fungsi ini diterangkan dalam bahasa yang boleh difahami oleh pengkompil. Sebagai contoh, anda perlu menukar nombor menjadi rentetan. Delphi sudah mempunyai fungsi IntTostr untuk ini. Ia diterangkan dalam modul Sysutils. Jika anda ingin menggunakan ciri ini, anda perlu menyambungkan modul ini ke modul Borang anda (taip nama Sysutils dalam bahagian kegunaan).

Terdapat empat jenis partition:

  1. Persendirian- sifat dan kaedah daripada bahagian ini hanya tersedia untuk objek ini. Objek lain tidak boleh memanggil kaedah ini dan sifat baca/tulis;
  2. Dilindungi- sifat dan kaedah ini hanya tersedia untuk objek ini dan keturunannya (objek yang turun dari kita dan mewarisi sifatnya). Objek pihak ketiga tidak boleh mengakses sifat dan kaedah yang disimpan di sini;
  3. Awam- semua yang diterangkan di sini tersedia untuk semua orang;
  4. Diterbitkan- bila mereka akan kencing komponen sendiri aplikasi, dalam bahagian ini kami akan menerangkan sifat dan peristiwa yang harus dipaparkan dalam pemeriksa objek. Hartanah ini tersedia untuk semua orang.
Perlu diingatkan bahawa jika dua objek diisytiharkan dalam modul yang sama, ia dianggap mesra dan benar-benar melihat semua kaedah dan sifat, walaupun pengisytiharan dibuat dalam bahagian persendirian.

Selepas pengisytiharan objek dan komponennya, terdapat penerangan pembolehubah global. Ia bermula selepas kata kunci var dan sentiasa datang selepas pengisytiharan jenis. Anda perlu ingat ini sekarang, kerana pertama kali datang bahagian menaip, di mana jenis diterangkan, dan kemudian var, di mana pembolehubah diterangkan.

Pembolehubah global ialah pembolehubah yang disimpan pada timbunan, dicipta apabila program bermula, dan dimusnahkan apabila program keluar. Ini bermakna ia boleh didapati pada bila-bila masa, di mana-mana sahaja semasa program sedang berjalan.

contoh pengisytiharan pembolehubah global

var//Mengisytiharkan pembolehubah global
Forml: TForml; //Ini menerangkan pembolehubah Forml jenis objek TForml

Contoh ini mengisytiharkan pembolehubah, Forml, jenis TForml. Apabila objek TForml dicipta, penunjuknya akan ditulis pada pembolehubah Borang1. Pembolehubah ini adalah global dan wujud semasa program sedang berjalan, yang bermaksud ia sentiasa boleh diakses.

Kata kunci pelaksanaan Kami tidak akan menyentuhnya sama ada buat masa ini, tetapi akan meninggalkannya untuk masa hadapan, apabila pengetahuan kami tentang Delphi berkembang sedikit. Perkara terakhir yang perlu dibincangkan dalam bab ini ialah kunci ($R * dfm).

DALAM pendakap kerinting Terdapat bukan sahaja ulasan, tetapi juga kunci untuk pengkompil. Mereka berbeza kerana mereka kelihatan seperti ($Parameter Surat]. Huruf - menunjukkan jenis kunci. Dalam kes kami, huruf itu digunakan R. Kunci ini menunjukkan bahawa anda perlu memasukkan fail sumber dalam kes ini .dfm fail (fail dengan data tentang objek visual) dengan nama yang sama dengan nama modul. Jika nama modul Unit utama, maka anda perlu menukar kunci ini kepada ($R Unit utama.dfm). kunci R- ini adalah satu-satunya kunci yang diperlukan buat masa ini.

mana-mana kod program dalam Delphi adalah antara permulaan dan akhir. Kata kunci bermula bermaksud permulaan kod, a tamat- tamat. Sebagai contoh, apabila anda menulis prosedur, anda perlu menulis namanya terlebih dahulu (kita akan bercakap tentang cara melakukannya kemudian), dan kemudian sertakan kodnya antara kurungan operator permulaan dan akhir.

Berdasarkan bahan tapak

Pembangun mana-mana projek besar pada Delphi Lambat laun, anda akan berhadapan dengan keperluan untuk mendokumentasikan kod, bermula daripada ulasan cetek pada kelas/kaedah dan berakhir dengan fail bantuan yang lengkap (html, chm, hlp atau bahkan Bantuan Microsoft 2.0). Bagi mereka yang menulis dalam Java atau C#, ini bukan lagi masalah - mereka ada JavaDoc Dan Istana pasir. Di Delphi keadaannya sukar sehingga dibebaskan 2005 -th version, yang akhirnya menambah sokongan terbina dalam untuk dokumentasi XML.

Walaupun sekarang, jika anda melihat kod sumber projek yang berbeza, anda tidak akan melihat apa-apa. Gaya javadoc paling kerap digunakan (nampaknya secara percuma DelphiDoc). Inilah yang kelihatan seperti komen dalam formatnya:

(** Buka semua jadual yang ditanda untuk membuka @param FastOpen Gunakan rutin pembukaan pantas @return Kembali Benar jika Ok @lihat TMainForm ) fungsi TMainForm.OpenTables(FastOpen: Boolean): Boolean; mula ... ... tamat;

Bantuan yang dihasilkan berdasarkan komen sedemikian kelihatan lebih kurang baik. Tetapi berbeza dengan yang sama Gerhana atau Netbeans, untuk siapa format ini asli, untuk Persekitaran Delphi ini adalah liar. Karang struktur sedemikian tanpa sebarang bantuan IDE tugas yang agak membosankan. Tidak kira seberapa keras anda mencuba, teks "Buka semua jadual yang ditanda untuk dibuka" tidak akan muncul dalam petua alat dan pengaturcara perlu melihat kod sumber atau pergi ke bantuan setiap kali.

Bantu Insight

Sejak versi 2005 , diperkenalkan di Delphi jenis baru petunjuk dalam editor kod - Bantuan Insight. Kini ini bukan lagi petua alat yang menyedihkan yang terdapat dalam versi lama.


Bantu Insight dalam tindakan

Sudah tentu sayang sekali CodeGear(dan selepas dia Embarcadero) tidak peduli untuk membuat ulasan terperinci untuk Help Insight untuk semua modul standard. Mungkin, mereka terlalu malas untuk masuk ke semua kod sumber, kebanyakannya kekal hampir tanpa perubahan daripada versi Delphi yang paling kuno. Tetapi bukan itu. Perkara utama ialah ciri ini sebenarnya berfungsi, dan kerana ia berfungsi, kami akan menggunakannya.

Komen XML

Format ini mungkin biasa kepada semua orang yang dalam satu atau lain cara mengalami pembangunan dalam .NET. Ini ialah format yang disokong oleh Help Insight yang disebutkan di atas, dan ini adalah rupanya:

///

/// Buka semua jadual/b yang ditanda untuk dibuka. Lihat juga /// kelas. /// /// Gunakan rutin pembukaan pantas. /// Benar jika ok; jika tidak, Palsu. fungsi TMainForm.OpenTables(FastOpen: Boolean): Boolean; mula ... ... tamat;

Ia adalah mudah untuk meneka bahawa tag ringkasan- Ini penerangan kaedah, param- perihalan parameter, pulangan— perihalan nilai pulangan, dan lihat— pautan ke penerangan lain. Senarai semua teg boleh didapati dalam MSDN (Saya tidak dapat mencari sebarang maklumat tentang ini dalam halaman bantuan Delphi 2007 dan 2009). Selain itu, sebagai tambahan kepada teg standard, anda boleh menggunakan beberapa HTML, sebagai contoh atau untuk menyerlahkan komen penting. Untuk menulis komen sedemikian, adalah mudah untuk menggunakan templat - taip "ringkasan" dalam teks program dan klik Kekunci tab. Dalam Delphi 2009, anda tidak perlu menaip tiga garis miring pada permulaan sendiri - apabila anda menekan Enter, ia ditambah secara automatik seperti dalam Studio Visual (ini juga berfungsi dalam Delphi 2007 SP3). Ia patut disebut Komen XML boleh ditulis dalam pengisytiharan kelas, prosedur, fungsi, jenis, dan juga pembolehubah.

Untuk melihat komen bertulis dalam tindakan, anda perlu pergi ke tetingkap tetapan projek (Projek - Pilihan) dan pada tab Menyusun, tandai kotak (atau tetapkan kepada Benar dalam Delphi 2009) Hasilkan dokumentasi XML. Selepas setiap kompilasi projek Delphi akan menjana beberapa fail XML(satu setiap projek dan satu setiap modul) yang akan mengandungi semua komen XML. Fail ini boleh digunakan untuk mencipta sistem bantuan. Tetapi perkara utama ialah kini bantuan mini yang mudah ini akan dipaparkan dalam petua alat:

Malangnya, teg HTML dalam Help Insight tidak berfungsi, tetapi semua pautan berfungsi dengan sempurna.

Menjana dokumentasi menggunakan Delphi

Dalam Delphi 2005-2009 terdapat 2 cara untuk membuat dokumentasi. Kami akan mencuba kedua-duanya dalam amalan. Yang pertama, dan paling mudah, dilaksanakan menggunakan IDE terbina dalam bersama-sama. Simpan projek dan klik pada item menu View - Model View. Delphi mungkin bertanya sama ada untuk menambah sokongan pemodelan pada projek, pilih ya. Tetingkap Movel View akan dibuka di mana anda perlu memilih projek dan menu konteks tekan Hasilkan Dokumentasi. Tetingkap kecil dengan tetapan akan muncul (terdapat sedikit daripadanya), di mana saya segera menasihati anda untuk menyahtanda Sertakan Rajah Dan Sertakan Pokok Navigasi. Delphi akan membuat sedikit usaha, dan selepas beberapa saat ia akan menghasilkan beberapa halaman HTML.

Tanpa diduga, hasilnya ialah bantuan klasik yang menyalin javadoc sepenuhnya. Pada mulanya ada kegembiraan, tetapi kemudian kekecewaan. Apabila diteliti lebih dekat, ternyata ia mengandungi banyak pautan kabur yang tidak perlu seperti lalai atau global, dan amat menyusahkan untuk digunakan. Semua tag bodoh dipotong, sama seperti atau . Penerangan kelas dan kaedah menggunakan simbol pelik Konsep Delphi suka Memperkenalkan semula, nama parameter hilang di suatu tempat. Dan secara umum, bantuan yang terhasil ternyata tidak boleh dibaca secara praktikal: (Nampaknya pembangun tidak menyelesaikan fungsi ini, tetapi memulakannya dan membiarkannya seperti sedia ada.

Kaedah kedua, seperti banyak perkara dalam Delphi, tidak sepenuhnya jelas - kami menggunakan utiliti yang dibekalkan dengan IDE XMLDoc. Ia boleh didapati dalam folder My Documents\RAD Studio\<версия Delphi>\Demos\XMLDoc. Selain itu, anda perlu memasang Java SDK (1.4.2 atau lebih tinggi), Python (minimum 2.3) dan (versi 6.5.5 untuk Java). Selepas pemasangan yang anda perlukan Tambah kepada pembolehubah sistem " Laluan” laluan di mana Python dan Saxon dipasang, contohnya “ C:\Python23\;C\Saxon655\” (ini dilakukan melalui “My Computer”, dan di dalamnya - “ Pembolehubah Persekitaran", laluan mesti ditambah dipisahkan dengan koma bertitik). Dalam folder tempat anda mengekstrak Saxon, buat fail BAT Dengan nama saxon.bat dengan kandungan berikut:

@java-jar "<путь к папке с Saxon>\saxon.jar" % 1 % 2 % 3

Tidak perlu menjalankannya. Buat fail BAT dalam folder dengan XMLDoc mula.kelawar supaya tidak main-main baris arahan, dan tulis yang berikut di dalamnya:

Cls xmldoc.py "<путь к папке с проектом>"jeda

Laluan contoh ialah "C:\Projects\TestProject". Penting: semua laluan yang digunakan tidak seharusnya mengandungi Cyrillic, jika tidak XMLDoc akan menghadapi masalah dengannya. Jadi, kini semuanya sudah sedia, dan anda boleh menjalankan fail start.bat. Jika semuanya berjalan lancar, folder akan muncul dalam folder projek doc, dan di dalamnya - muktamad di mana ia akan disimpan fail HTML dokumentasi yang dihasilkan. Inilah yang saya dapat (menggunakan kaedah OpenTables sebagai contoh):

Oleh penilaian subjektif pilihan ini nampak lebih cantik dari yang pertama. Segala-galanya nampaknya hebat, tetapi ia diburukkan oleh fakta bahawa XMLDoc juga memotong pautan secara cuai . Perlu diingatkan bahawa fail HTML ini bukanlah versi terakhir - ia boleh (dan, secara teori, harus) ditukar kepada format Bantuan 2.0 (ia kemudiannya boleh dilihat melalui Penjelajah Dokumen, sama seperti bantuan dalam Delphi atau Visual Studio). Untuk melakukan ini, anda memerlukan Kit Integrasi Bantuan Visual Studio, dan kemudian HelpKit CodeGear. Oleh kerana saya tidak lagi mempunyai saraf, dan hasilnya sudah jelas pada dasarnya, saya tidak pergi lebih jauh. Mungkin anda akan lebih kuat :)

Menjana dokumentasi menggunakan Doc-O-Matic Express

Doc-O-Matic- cukup utiliti yang berkuasa untuk membuat dokumentasi untuk berasaskan XML dan ulasan JavaDoc dalam format HTML, CHM dan Help 2.0. Tetapi, malangnya, versi penuhnya dibayar. Tetapi tidak semuanya begitu buruk - terdapat versi Express (mungkin mereka mendapat nama dari Microsoft), dan ia mempunyai hampir semua yang anda perlukan. Jom cuba.

Dengan Doc-O-Matic, anda tidak perlu menari dengan rebana seperti XMLDoc, tetapi anda juga tidak akan berjaya dengan beberapa klik. Jalankan utiliti dalam bahagian Fail Projek klik butang Tambah, dalam penapis dialog pilih Projek Delphi 2007 dan buka fail yang diperlukan projek. Dalam tab HTML perhatikan bahagian tersebut Fail & Folder— di dalamnya anda boleh menentukan folder di mana fail dokumentasi akan diletakkan. Simpan tetapan di beberapa tempat yang mudah, contohnya dalam fail C:\mydoc.dox-express. Sekarang tutup utiliti dan pergi ke folder di mana Doc-O-Matic dipasang. Buat fail BAT dengan baris berikut:

Domexpress.exe -config "HTML"<путь к файлу *.dox-express>"

Selepas melaksanakan arahan ini, fail dokumentasi diletakkan dalam folder yang dinyatakan di atas dan penyemak imbas dilancarkan secara automatik. Sebagai contoh, ini adalah rupa huraian kaedah:

Sekali lagi, secara subjektif, bantuan sedemikian memberikan kesan yang paling baik. Tidak mata tambahan, navigasi yang mudah. Kekurangan pautan pada perkataan "TMainForm" merosakkan kesan sedikit, tetapi sekurang-kurangnya Doc-O-Matic tidak memotongnya, tidak seperti dua utiliti sebelumnya.

Daripada kata belakang. Sokongan untuk komen XML pada peringkat editor kod dalam Delphi adalah ciri yang sangat baik dan mudah, dan anda harus menggunakannya. Tetapi dengan penjanaan dokumentasi keadaannya lebih rumit: cara standard terlalu mentah (dan, sejujurnya, bengkok =) untuk digunakan dengan mudah. Tetapi terdapat alternatif dalam bentuk Doc-O-Matic Express, yang melakukan tugas ini dengan baik. Harap-harap tidak lama lagi (mungkin dengan keluaran versi baharu Delphi) utiliti baharu yang lebih fleksibel akan muncul.

Muka surat 7 daripada 12

Kelas

Struktur badan kelas

Badan kelas, apabila diisytiharkan, adalah subordinat struktur berikut:

  • Pengisytiharan bidang;
  • Pengisytiharan kaedah;
  • Pengisytiharan harta.
Medan, sifat dan kaedah dalam kelas anda harus dipesan turutan abjad.

Tahap akses

Tidak termasuk kod yang dimasukkan oleh IDE, arahan keterlihatan mesti diisytiharkan dalam susunan berikut:
  • Ahli kelas persendirian (tersembunyi) ( persendirian);
  • Ahli kelas yang dilindungi ( dilindungi);
  • Ahli kelas awam ( awam);
  • Ahli kelas yang diterbitkan ( diterbitkan)

Oleh itu, dalam Objek Pascal terdapat empat tahap akses untuk ahli kelas: diterbitkan, awam, dilindungi dan peribadi - untuk mengurangkan keterlihatan. Secara lalai, tahap akses diterbitkan. Secara amnya, ahli kelas harus diberi tahap akses paling rendah yang sesuai untuk ahli tersebut. Sebagai contoh, ahli yang boleh diakses oleh kelas daripada modul yang sama mesti mempunyai tahap akses peribadi. Di samping itu, dengan mengisytiharkan ahli kelas dengan tahap akses paling sedikit, anda membenarkan pengkompil untuk memanfaatkannya ciri-ciri tambahan untuk pengoptimuman. Sebaliknya, jika anda bercadang untuk menjana kelas kanak-kanak daripada kelas anda, maka anda perlu menggunakan tahap akses yang dilindungi.

Jangan sekali-kali nyatakan tahap akses awam untuk data. Data hendaklah sentiasa diisytiharkan dalam bahagian peribadi dan diakses menggunakan kaedah atau sifat.

Pengisytiharan pembina

Semua kaedah kelas mesti disusun mengikut abjad. Walau bagaimanapun, anda boleh meletakkan pengisytiharan pembina dan pemusnah sebelum semua kaedah lain. Jika kelas mempunyai lebih daripada satu pembina dan jika mereka mempunyai nama yang sama, maka mereka mesti disusun mengikut urutan peningkatan bilangan parameter

Kaedah Mengisytiharkan

Jika boleh, pengisytiharan kaedah hendaklah pada satu baris:
Sebagai contoh:
prosedur ImageUpdate(Imej img, infoflags: Integer,
x: Integer, y: Integer, w: Integer, h: Integer)