Konsep dasar dan definisi Delphi. Bahasa pemrograman Delphi (Delphi) Delphi - apa itu

Delphi - apa itu?

Belakangan ini, minat terhadap pemrograman meningkat tajam. Hal ini disebabkan oleh perkembangan dan penerapan teknologi informasi dan komunikasi ke dalam kehidupan sehari-hari. Jika seseorang berurusan dengan komputer, cepat atau lambat dia memiliki keinginan, dan terkadang kebutuhan, untuk memprogram.

Sistem operasi keluarga Windows saat ini paling populer di kalangan pengguna komputer pribadi dan, tentu saja, siapa pun yang berencana membuat program berusaha keras untuk menulis program yang akan berjalan pada sistem ini.

Beberapa tahun yang lalu, rata-rata programmer hanya bisa bermimpi membuat program mereka sendiri yang berjalan di lingkungan Windows, karena satu-satunya alat pengembangan adalah Borland C++ untuk Windows, yang jelas ditujukan untuk para profesional dengan pengetahuan dan pengalaman serius.

Pesatnya perkembangan teknologi komputer dan kebutuhan akan alat pengembangan perangkat lunak yang efektif telah menyebabkan munculnya sistem pemrograman yang berfokus pada apa yang disebut “perkembangan cepat”, di antaranya kita dapat menyoroti Borland Delphi Dan Microsoft Visual Basic. Di jantung sistem perkembangan pesat (sistem RAD, Perkembangan Aplikasi yang Cepat- lingkungan pengembangan aplikasi cepat) adalah teknologi desain visual dan pemrograman acara, yang intinya adalah bahwa lingkungan pengembangan mengambil sebagian besar pekerjaan rutin, membiarkan pemrogram merancang kotak dialog dan fungsi pemrosesan acara. Produktivitas programmer saat menggunakan sistem RAD sungguh luar biasa!

Delfi adalah lingkungan pengembangan pesat yang menggunakan Delphi sebagai bahasa pemrogramannya. Bahasa Delphi adalah bahasa berorientasi objek yang diketik dengan kuat, yang didasarkan pada bahasa yang akrab bagi pemrogram Objek Pascal.

Saat ini, versi berikutnya dari paket Delphi telah tersedia untuk pemrogram - Studio Borland Delphi 7. Seperti versi sebelumnya, Borland Delphi 7 Studio memungkinkan Anda membuat berbagai macam program: dari aplikasi satu jendela sederhana hingga program untuk mengelola database terdistribusi. Paket ini mencakup berbagai utilitas yang memungkinkan Anda bekerja dengan database, dokumen XML, membuat sistem bantuan, dan memecahkan masalah lainnya. Ciri khas versi ketujuh adalah dukungan teknologi .NET.

Studio Borland Delphi 7 dapat bekerja di sistem operasi dari Windows 98 hingga Windows XP. Dengan standar modern, paket ini tidak memaksakan persyaratan khusus apa pun pada sumber daya komputer: prosesor harus berjenis Pentium atau Celeron dengan frekuensi clock minimal 166 MHz (disarankan Pentium II 400 MHz), RAM - 128 MB (256 MB) disarankan), jumlah ruang disk kosong yang cukup (diperlukan sekitar 475 MB untuk instalasi lengkap versi Enterprise).

Tentang buku ini

Dalam buku yang dikhususkan untuk pemrograman dalam lingkungan pengembangan tertentu, diperlukan keseimbangan antara tiga baris - bahasa pemrograman, teknik dan teknologi pemrograman (pemrograman seperti itu) dan lingkungan pengembangan. Saat pertama kali mengenal lingkungan pengembangan, mempresentasikan kemampuannya, penulis menghadapi masalah: untuk menggambarkan proses pengembangan suatu program, untuk menjelaskan cara kerja program, perlu dioperasikan dengan istilah-istilah seperti Sebuah Objek, peristiwa, Properti, pemahaman yang pada tahap awal pembelajaran pemrograman sangat bermasalah. Bagaimana cara melanjutkannya? Pertama jelaskan bahasanya, lalu lanjutkan dengan menjelaskan lingkungan pengembangan dan proses pemrograman di Delphi? Jelas ini bukan pilihan terbaik. Oleh karena itu, dalam penyampaian materi digunakan pendekatan yang didasarkan pada prinsip menjaga keseimbangan antara bahasa pemrograman, metode pemrograman, dan lingkungan pengembangan. Di awal buku ini, beberapa konsep, yang tanpanya materi tidak mungkin disajikan, diberikan pada tingkat definisi.

Buku yang Anda pegang bukanlah deskripsi bahasa Delphi atau lingkungan pengembangan Delphi 7 Studio. Ini adalah tutorial pemrograman di Delphi di lingkungan dengan nama yang sama. Ini mencakup seluruh rantai, seluruh proses pembuatan program: mulai dari pengembangan kotak dialog dan fungsi pemrosesan acara hingga pembuatan sistem bantuan dan disk instalasi.

Tujuan buku ini dapat dirumuskan sebagai berikut: untuk mengajarkan pemrograman di lingkungan Delphi, yaitu membuat program lengkap untuk berbagai tujuan: dari aplikasi satu jendela sederhana hingga program yang sepenuhnya profesional untuk bekerja dengan database.

Anda dapat belajar memprogram hanya dengan memprogram, memecahkan masalah tertentu. Pada saat yang sama, keberhasilan yang dicapai dalam pemrograman sangat bergantung pada pengalaman. Oleh karena itu, untuk mendapatkan hasil maksimal dari buku ini, Anda harus mengerjakannya secara aktif. Jangan hanya membaca contoh, terapkan menggunakan komputer Anda. Jangan takut untuk bereksperimen - lakukan perubahan pada program. Semakin banyak Anda melakukannya sendiri, semakin banyak Anda akan belajar!

Mari kita mulai pengenalan pemrograman di lingkungan Delphi dengan pertanyaan-pertanyaan seperti esensi pemrograman itu sendiri, dasar-dasarnya dan subtipenya. Kita juga akan melihat apa itu lingkungan Delphi, apa perbedaannya dengan lingkungan lain, dan jalur apa yang telah dilaluinya sejak didirikan 10 tahun yang lalu.

Apa itu pemrograman

Jadi pertama-tama mari kita pahami sendiri apa yang dimaksud dengan istilah pemrograman? Sekarang banyak orang yang menyebut dirinya programmer, tanpa mengetahui apa itu: ketika dicek, ternyata seseorang yang telah mengubah beberapa baris kode dalam sebuah dokumen HTML sudah siap untuk menganggap dirinya seorang programmer. Namun nyatanya, bekerja dengan HTML (yaitu HTML itu sendiri), Anda tidak bisa menjadi seorang programmer, karena HTML, sesuai dengan namanya (Hypertext Markup Language), bukanlah bahasa pemrograman.

Hasilnya, kami memiliki syarat pertama: untuk mempelajari pemrograman, Anda memerlukan beberapa jenis bahasa pemrograman. Dalam kasus kami, ini adalah versi terbaru dari Object Pascal (14.0 atau 15.0).

Selanjutnya, katakanlah seseorang yang menyebut dirinya seorang programmer tidak hanya mengedit beberapa baris kode HTML, tetapi juga melihat Delphi, dan bahkan menggambar formulir di dalamnya dengan 2-3 tombol dan kolom teks. Apakah ini seorang pemrogram? Kemungkinan besar juga tidak. Faktanya adalah bahwa di bawah cangkang visual, pada kenyataannya, terdapat mekanisme yang sangat kompleks yang memastikan interaksi kontrol (tombol yang sama) dengan pengguna dan sistem operasi - di satu sisi, dan memungkinkan Anda melakukan hampir semua tindakan komputasi. - di sisi lain. Dengan semua ini, Anda harus dapat melakukan hal utama - membuat algoritme untuk perilaku program - baik itu reaksinya saat menekan tombol tertentu, atau membuat fungsi untuk menyelesaikan persamaan matematika yang kompleks.

Jadi, pemrograman dalam konsep modernnya mencakup pengetahuan tentang prinsip pengoperasian sistem operasi, interaksi komponen-komponennya, dan struktur internal. Nah, pada saat yang sama, definisi klasik pemrograman tetap dipertahankan, yaitu kemampuan menyusun algoritma, program matematika, dan perilaku. Semua ini diimplementasikan dalam konteks beberapa bahasa pemrograman, misalnya Object Pascal yang sama dari Delphi.

Apa itu Delphi

Sekarang kita tahu bahwa pemrograman adalah kompilasi algoritma ditambah penggunaan bahasa pemrograman. Namun jika bahasa yang kita pelajari adalah Object Pascal, lalu Delphi itu apa? Jawabannya adalah: Delphi adalah RAD, atau Rapid Application Development - lingkungan pengembangan aplikasi yang cepat. Dengan kata lain, Delphi tidak hanya mencakup semua alat untuk bekerja dengan bahasa Object Pascal (terutama sejak versi 2005, Delphi memiliki dukungan untuk bahasa pemrograman lain, khususnya C#), tetapi juga sejumlah alat tambahan yang dirancang untuk mempercepat. percepat prosesnya semaksimal mungkin dan sederhanakan pembuatan program. Alat-alat ini mencakup, pertama-tama, editor formulir visual, yang dengannya Anda dapat membuat program lengkap dalam hitungan menit dan tanpa usaha ekstra, serta komponen lain dari komponen visual pengembangan program.

Hasilnya, waktu pengembangan program berkurang secara signifikan, karena tidak perlu menghitung lokasi setiap elemen antarmuka pengguna secara manual.

Bersama dengan alat yang dikembangkan untuk menulis dan men-debug kode - editor teks khusus, kompiler pengoptimal, dan debugger, Delphi adalah alat untuk pengembangan aplikasi yang cepat. Pada saat yang sama, Delphi untuk pengguna akhir didasarkan pada IDE - Lingkungan Pengembangan Terpadu, yang menggabungkan editor kode dan alat pengembangan visual, dan juga menghubungkannya dengan kompiler, alat pengembangan basis data, dan komponen Delphi lainnya.

Delphi dan lain-lain

Tentu saja Delphi bukan satu-satunya lingkungan pengembangan aplikasi yang cepat. Ada RAD lain yang juga berguna untuk pengembangan program visual, seperti Visual Basic. Namun BASIC dikenal sebagai bukan bahasa pemrograman yang paling kuat dan nyaman, selain itu, program yang ditulis di dalamnya memiliki kinerja yang relatif rendah.

Pada saat yang sama, ada bahasa pemrograman yang tidak kalah kuatnya dengan Object Pascal dan memiliki RADnya sendiri - pertama-tama, ini adalah bahasa C++ bersama dengan alat pengembangan terkenal seperti Visual C++ dan C++ Builder. Namun, C++ tidak sebanding dengan Object Pascal dalam hal kemudahan belajar. Selain itu, pembuatan dan debugging program di C++ relatif lambat, meskipun program siap pakai berjalan sama cepatnya dengan program yang dibuat menggunakan Delphi.

CATATAN
Perhatikan bahwa pada saat kemunculannya pada tahun 1995, Delphi adalah lingkungan yang benar-benar unik yang menggabungkan pemrograman visual dengan kompiler pengoptimal dan alat untuk bekerja dengan database.

Hasilnya, kami mendapatkan produk yang hampir ideal untuk pengembangan program yang cepat: di satu sisi, kesederhanaan dan kenyamanan sebanding dengan Visual Basic, dan di sisi lain, karakteristik kekuatan, kecepatan dan fleksibilitas dari C++.

Perlu dicatat di sini bahwa bahasa Objek Pascal yang digunakan di Delphi memiliki sedikit kesamaan dengan nenek moyangnya - bahasa pemrograman Pascal, yang mungkin pernah Anda pelajari di sekolah atau universitas. Pertama-tama, Delphi menggunakan model pemrograman berorientasi objek murni, sedangkan Pascal adalah bahasa prosedural biasa. Apa inti perbedaan antara pemrograman prosedural dan pemrograman berorientasi objek? Ini adalah pertanyaan yang akan kita bahas dalam dua paragraf berikutnya.

Pemrograman prosedural dan algoritma

Hampir semua bahasa pemrograman modern bersifat prosedural. Ini berarti bahwa setiap program terdiri dari sekumpulan prosedur, yang masing-masing menyelesaikan masalah tertentu, sementara satu prosedur dapat memanggil prosedur lainnya, termasuk dirinya sendiri (yang terakhir, yaitu prosedur yang memanggil dirinya sendiri, disebut rekursi). Program itu sendiri dikompilasi berdasarkan algoritma, dan hanya tiga jenis algoritma yang cukup - seleksi (garpu), pengulangan (siklus) dan transisi. Namun, tipe yang terakhir ini praktis tidak digunakan dalam praktik karena reputasinya yang buruk (kita berbicara tentang GOTO - operator pemrogram BASIC yang pernah dicintai, karena putus asa).

Mari kita lihat algoritma paling sederhana - untuk permainan "tebak angkanya". Logika operasinya adalah Anda perlu memeriksa apakah angkanya lebih besar atau lebih kecil dari yang tersembunyi, dan jika demikian, Anda akan menampilkan petunjuk yang sesuai, dan jika tidak lebih besar atau lebih kecil (yaitu cocok) maka permainan berakhir . Diagram blok dari algoritma tersebut akan terdiri dari 2 cabang (Gbr. 1.1).

Beras. 1.1. Diagram alur algoritma sederhana

Langkah pertama di sini adalah menanyakan nomor A kepada pengguna, yang kemudian dibandingkan dua kali dengan nomor B yang telah ditentukan sebelumnya. Pertama, ia memeriksa apakah nomor A lebih besar dari B, dan jika ya, program akan melaporkan bahwa a "overshoot" telah terjadi dan kembali ke nomor titik masuk. Jika angkanya tidak lebih besar, maka dilakukan perbandingan kedua - untuk melihat apakah A lebih kecil dari B. Jika ya, maka akan muncul pesan yang menyatakan bahwa angka tersebut lebih kecil ("undershot") dan, sekali lagi, kembali ke awal terjadi. Tetapi jika bilangan A tidak lebih kecil dari bilangan B, maka diketahui bahwa pada saat itu sudah diketahui bahwa bilangan tersebut tidak lebih besar, maka sama dengan bilangan B, dan program dihentikan. Pada saat yang sama, dapat menampilkan ucapan selamat kepada pengguna karena telah menebak nomor tersebut.

Algoritma ini mungkin merupakan bagian dari algoritma lain. Misalnya, tidak ada ketentuan untuk menghasilkan angka itu sendiri yang perlu ditebak. Juga tidak ada opsi pemutaran ulang. Untuk memperbaiki situasi ini, pertimbangkan diagram blok dari algoritma yang mengontrol eksekusi program secara keseluruhan (Gbr. 1.2).


Beras. 1.2. Diagram alur kendali program

Pada awal eksekusi, nomor baru dihasilkan yang akan ditebak oleh pengguna. Kemudian muncul blok tebakan itu sendiri, yang telah kita pertimbangkan (lihat Gambar 1.1) - di sini disajikan dalam bentuk satu modul sederhana, karena tidak mempengaruhi eksekusi program secara keseluruhan. Setelah menyelesaikan blok ini, kami memiliki satu cabang - tergantung pada tanggapan pengguna terhadap tawaran untuk mengulangi permainan. Jadi, jika jawabannya ya, maka program harus dilanjutkan ke awal, yaitu. untuk menghasilkan nomor baru. Jika pengguna menolak, maka program harus dihentikan.

Implementasi spesifik dari suatu algoritma tertentu bergantung pada bahasa pemrograman yang digunakan, serta pada preferensi pembuat program, karena, sebagai suatu peraturan, konstruksi yang sama dapat diselesaikan dengan menggunakan beberapa metode berbeda. Misalnya, Anda dapat menggunakan pernyataan loop dan lompatan tanpa syarat untuk kembali ke titik yang ditunjukkan pada diagram blok. Nah, blok-blok itu sendiri dapat ditempatkan dalam prosedur terpisah dan disebut sebagai subrutin. Satu-satunya fitur umum adalah operator kondisional yang bertanggung jawab atas fork - di hampir semua bahasa, tidak terkecuali Pascal, ini disebut IF. Namun, kita masih punya waktu untuk mengenal operator Object Pascal.

Tentang pemrograman berorientasi objek

Jika memilih, mengulang, dan melompat adalah landasan dari bahasa pemrograman prosedural apa pun, maka pemrograman berorientasi objek konsep seperti enkapsulasi, pewarisan dan polimorfisme adalah penting. Mari kita lihat konsep-konsep ini, yang tanpanya tidak ada bahasa pendukung objek yang dapat disebut berorientasi objek, secara lebih rinci.

CATATAN
Istilah "objek" dalam pemrograman dipahami sebagai tipe data kompleks tertentu yang dapat dilampirkan properti unik untuk tipe ini, dan dalam kasus OOP, juga metode.

Enkapsulasi adalah kombinasi data dan subrutin yang memprosesnya - metode - di dalam satu objek, yang disebut "kelas" dalam OOP. Ini berarti bahwa kelas merangkum semua yang diperlukan untuk bekerja dengan objek tertentu.

Warisan adalah bagian penting lainnya dari OOP. Warisan berarti kemampuan untuk membuat suatu tipe (objek) berdasarkan definisi objek lain. Dalam hal ini, semua properti dan metode objek induk dapat diwarisi oleh anak. Misalnya, jika kita memiliki objek "mobil", maka atas dasar itu kita dapat membuat objek lain, katakanlah, "trem", yang akan mewarisi semua propertinya dan menerima, selain properti tersebut, beberapa propertinya sendiri. Pada gilirannya, objek tersebut juga akan dapat memiliki keturunannya sendiri, dan seterusnya. Hasilnya adalah pohon objek yang disebut hierarki kelas.

Di Object Pascal, semua kelas diturunkan dari satu nenek moyang - kelas TObject, yang mengimplementasikan tindakan pada objek yang umum untuk semua kelas, seperti pembuatan dan penghapusan.

NASIHAT
Versi kotak Delphi menyertakan poster yang menunjukkan pohon kelas untuk semua komponen utama Delphi. Oleh karena itu, jika Anda adalah pemilik bahagia dari produk berlisensi, Anda dapat mempelajari secara visual struktur sistem ini dengan memasang poster ini di tempat kerja Anda.

Terakhir, pilar ketiga yang menjadi landasan OOP adalah polimorfisme, atau kemampuan untuk membuat properti dan metode dengan nama yang sama dalam objek terkait, yang pada intinya akan berbeda. Katakanlah kita sudah memiliki kelas "mobil" dan "trem", dan untuk keduanya properti "motor" sudah ditentukan, tetapi jika untuk mobil tipe motor adalah objek dengan tipe yang sama, maka untuk trem itu adalah tipe yang sama sekali berbeda. satu.

Karakteristik komponen penting lainnya dari OOP adalah penyembunyian, yang memungkinkan Anda membuat sejumlah properti objek tidak terlihat. Dengan kata lain, jika kita dapat mendefinisikan suatu objek bertipe “mobil”, yang pada gilirannya, properti seperti sasis, motor, dan roda juga ditentukan. Jadi, jika mesin dan roda dapat terlihat (dan dapat diakses) di mana pun kelas “mobil” itu sendiri tersedia, maka sasis tidak bisa. Oleh karena itu, akses ke properti tersebut hanya dapat diperoleh di bagian program di mana deskripsi objek "mesin" itu sendiri dibuat. Properti seperti itu disebut dilindungi.

Lebih detail mengenai pemrograman berorientasi objek akan dibahas pada bagian kedua publikasi ini.

Pemrograman Visual dan Delphi

Jadi, Delphi adalah lingkungan yang bekerja dengan bahasa pemrograman struktural berorientasi objek Object Pascal. Selain itu, Delphi juga merupakan lingkungan pengembangan visual. Dengan kata lain, dalam proses pembuatan suatu program, Anda dapat melihat tampilannya selama eksekusi. Pemrograman visual secara dramatis mengurangi waktu yang diperlukan untuk membuat antarmuka pengguna untuk aplikasi Windows. Sebelum munculnya alat pengembangan visual, pemrograman di bawah Windows penuh dengan kesulitan besar, karena lokasi setiap kontrol di jendela aplikasi harus dihitung secara membabi buta, yang menyebabkan banyak kesalahan (Gbr. 1.3).


Beras. 1.3. Pendekatan klasik dan visual untuk membuat antarmuka

Fakta bahwa Delphi adalah lingkungan pengembangan visual meninggalkan jejaknya pada bahasa pemrograman. Secara khusus, ini menyediakan sarana khusus sehingga properti kelas tertentu sudah tersedia pada tahap pengembangan program, dan tidak hanya pada saat run time. Namun bagian terpenting dari semua kemegahan ini adalah perpustakaan kelas - VCL (Visual Component Library). Ini adalah VCL yang menyembunyikan semua sisi kasar internal Windows, dan memungkinkan Anda membuat aplikasi dengan mudah tanpa terlibat dalam perang berkepanjangan dengan pemrosesan pesan sistem, panggilan balik, pegangan, dan penunjuk.

Dengan semua itu, tentunya tidak ada yang melarang Anda untuk menggunakan fungsi Windows secara langsung, melewati VCL, jika perlu. Namun, ini mungkin sangat jarang diperlukan, jadi bagi programmer Delphi pemula, tidak lain selain VCL yang diperlukan untuk menulis aplikasi Windows.

Kita akan melihat komponen visual secara detail di Bagian 3 buku ini.

Versi Delphi dan perbedaannya

Di akhir bagian pendahuluan, kita akan melihat perbedaan antara versi Delphi, sekaligus mempelajari sejarah perkembangan lingkungan pengembangan yang menakjubkan ini.

Delfi 1. Dirilis sesaat sebelum munculnya Windows 95, Delphi 1.0 adalah alat pengembangan aplikasi Windows (3.1) pertama yang menggabungkan kompiler pengoptimal, lingkungan pengembangan visual, dan alat database yang kuat. Ini adalah reinkarnasi nyata dari bahasa Pascal - menjadi Object Pascal.

Delfi 2. Delphi versi ke-2, dirilis setahun kemudian, menawarkan semua hal yang sama, tetapi untuk Windows versi 32-bit (95/NT), sekali lagi menjadi alat pertama yang menggabungkan kompiler 32-bit, alat untuk bekerja dengan database dan visual. lingkungan pengembangan, mendukung OLE (dan setelah rilis Delphi 2.01 yang diperbarui - dan ActiveX). Bahasanya juga berubah, menjadi berorientasi 32-bit.

Delfi 3. Peningkatan lebih lanjut dari Delphi ke segala arah menyebabkan dirilisnya versi 3, yang memiliki seperangkat alat yang diperluas untuk membuat aplikasi berkat dukungan untuk COM dan ActiveX. Dalam versi ini, untuk pertama kalinya, penekanan ditempatkan pada kemampuan membuat aplikasi untuk Internet, dan tipe data yang tidak diketik - varian - muncul.

Delfi 4. Tonggak perkembangan penting lainnya. Dalam versi ini, banyak hal baru dan berguna yang diperkenalkan untuk menyederhanakan pengembangan aplikasi, termasuk lingkungan baru dengan petunjuk dinamis, dll. Model untuk bekerja dengan komponen (VCL) telah ditingkatkan, dan teknologi seperti MIDAS, DCOM, dan CORBA dapat digunakan dengan cepat. Dalam versi ini, bahasa Object Pascal juga ditingkatkan: fitur-fitur baru yang menjadi ciri khas OOP modern muncul, tipe data baru diperkenalkan, termasuk yang 64-bit.

Delfi 5. Banyak sekali perubahan yang terjadi pada Delphi 4, sayangnya terdapat beberapa bug dan bug yang mengganggu. Hasilnya adalah rilis 3 paket pembaruan (bajak laut kami menjualnya dengan kedok Delphi 4.1, 4.2 dan 4.3). Namun Delphi 5 harus dianggap sebagai paket pembaruan yang paling lengkap dan benar - dalam versi ini segala sesuatu yang dimulai di Delphi 4 menjadi membuahkan hasil.

Delfi 6. Dengan dirilisnya versi keenam, Borland mengumumkan era baru lintas platform di Delphi, sekaligus merilis versi Delphi untuk Linux (Kylix 1.0). Sekarang, saat membuat aplikasi, Anda dapat memilih jenisnya - untuk Windows, atau universal. Oleh karena itu, perpustakaan VCL dilengkapi dengan perpustakaan CLX, yang kompatibel dengan Windows dan Linux. Selain itu, di versi ke-6, ActiveX "asli", dan bukan asing, akhirnya muncul komponen untuk bekerja dengan Internet, dan di kedua versi sekaligus - untuk VCL dan CLX. Mulai versi ini, bahasa pemrograman Object Pascal sendiri secara resmi disebut Delphi.

Delfi 7. Pengembangan lebih lanjut dari Delphi 6, perpustakaan CLX yang ditingkatkan dan versi baru yang sesuai dari lingkungan pengembangan untuk OS Linux - Kylix 3. Pada saat yang sama, dimulai dengan Delphi 7, Borland menjadi prihatin dengan masalah kompatibilitas dengan platform lain - Microsoft. NET, di mana beberapa perubahan telah dilakukan baik pada VCL maupun pada bahasanya (dan, karenanya, pada kompiler).

Delfi 8. Versi pertama Delphi, fokus bekerja dengan platform Microsoft.NET. Dalam versi ini, pengembang mengambil risiko mengubah antarmuka lingkungan, menjadikannya mirip dengan produk Microsoft, pemegang saham utama baru Borland. Oleh karena itu, dukungan untuk Kylix dihentikan.

Delfi 2005. Kurang dari setahun setelah rilis Delphi 8, versi baru muncul yang dengan cepat mengembalikan kemampuan untuk bekerja dalam gaya IDE klasik saat mengembangkan aplikasi untuk Windows. Pada saat yang sama, Delphi 2005, dalam hal pengembangan aplikasi khusus untuk platform NET, memungkinkan Anda untuk bekerja tidak hanya dengan bahasa Delphi, tetapi juga dengan C#. Pada saat yang sama, inovasi seperti operator for...in dan prosedur serta fungsi bawaan diperkenalkan ke dalam bahasa Delphi itu sendiri.

Delfi 2006. Delphi versi terbaru dirilis oleh Borland. Versi ringan juga dirilis - Turbo Delphi. Kemudian perjalanan ke pengembang lain dimulai.

Delfi 2007. Versi dirilis oleh CodeGear. Menambahkan dukungan untuk antarmuka Aero untuk Windows Vista.

Delfi 2009. Versi dirilis oleh Embarcodero. Dukungan Unicode telah diterapkan di VCL dan RTL, panggilan ke semua fungsi Windows API telah diganti dengan analog Unicode, tipe generik dan metode anonim telah ditambahkan.

Delfi 2010. Dukungan Windows 7, komponen sentuh dan isyarat, serta komponen dbExpress kini secara resmi mendukung Firebird.

Delphi XE (Delphi 2011). Menambahkan dukungan untuk komputasi awan.

Delphi biasanya dikaitkan dengan lingkungan pengembangan aplikasi berdasarkan bahasa Object Pascal yang dikembangkan oleh Borland. Bahasa ini merupakan penerus Turbo Pascal dengan ekstensi berorientasi objek, yang menelusuri sejarahnya hingga Pascal “murni”, yang dibuat oleh Niklaus Wirth pada tahun 1970.

Selanjutnya pada tahun 2002, developer dari Borland resmi menyamakan bahasa Delphi dan Object Pascal.

Latar belakang

Pascal asli, menurut pengembangnya, memiliki compiler tercepat di dunia. Selain itu, dengan itu, teknologi untuk membuat program yang tidak bergantung pada platform pertama kali dikembangkan, yang telah diterapkan secara luas dalam bahasa seperti Java.

Namun, IDE-nya, jika konsep ini dapat diterapkan pada lingkungan pengembangan saat itu, hanya berfungsi berdasarkan sistem operasi DOS.

Dengan munculnya Windows, muncul kebutuhan untuk menciptakan lingkungan pengembangan perangkat lunak untuk platform ini. Solusi paling populer untuk komputer Windows pribadi di tahun 80an dan awal 90an adalah kompiler Turbo Pascal dan IDE dari Borland. Kompiler bawaan memastikan kecepatan kompilasi yang tinggi dan kualitas kode yang tinggi (karenanya awalan Turbo). Lingkungan Turbo Pascal juga menyediakan debugging kode dan berisi banyak contoh. Semua kualitas ini memungkinkan Turbo Pascal menjadi standar bahasa Pascal untuk beberapa waktu.

Tantangan waktu

Di Windows, antarmuka grafis mulai berkembang cukup pesat, dan Turbo Pascal IDE masih menggunakan antarmuka mirip DOS. Secara bertahap, Microsoft menyadari bahwa mereka perlu beralih ke “visualisasi” pemrograman.

Untuk membuat program sederhana, pengembang harus menulis beberapa halaman kode: menulis blok kode besar untuk menu dan jendela, font, menghapus memori, tombol “gambar”, dll. Namun keunggulan GUI Windows cukup kuat sehingga diperlukan untuk mendukung pengembangan sistem operasi. Microsoft memahami bahwa penting untuk membuat hidup lebih mudah bagi pengembang. Oleh karena itu, pada tahun 90an, perusahaan meluncurkan beberapa proyek paralel untuk menciptakan bahasa pemrograman dan lingkungan pengembangan baru untuk Windows. Tanda pertama adalah Visual Basic.

Prospek bahasa Pascal dalam hal ini ternyata jauh dari harapan. Pada pertengahan tahun 90an, keadaannya sudah agak terbengkalai. Borland mulai menyempurnakannya, tetapi segera menjadi jelas bahwa perubahan dan penambahan akan sangat serius sehingga hasil pekerjaan ini dapat dianggap sebagai bahasa pemrograman baru. Sebuah IDE dengan antarmuka grafis dikembangkan untuk bahasa baru. Lingkungan dan bahasa pemrograman baru secara kolektif disebut Delphi.

Sistem baru (Delphi) mendapatkan namanya untuk menghormati kota Delphi di Yunani kuno. Nama itu dipilih karena suatu alasan: kota Delphi dikaitkan dengan nama dewa kebijaksanaan dan pelindung seni Apollo. Menurut legenda, tempat perlindungan utama Apollo terletak di kota ini. Pendeta Sibyl-nya menyampaikan ramalan kepada mereka yang ingin mengetahui nasib mereka.

“Nama Delphi diusulkan oleh Denny Thorpe saat sesi brainstorming. Kami ingin nama sistem mencerminkan kemampuan unik produk untuk bekerja dengan database, dan Delphi sangat sesuai dengan nama yang sangat pantas di bidang ini seperti Oracle, setidaknya bagi mereka yang menganggap kombinasi “Delphic Oracle” berarti sesuatu, “ kata ketua kelompok penelitian pengembangan sistem Delphi, Chuck Yazdrzewski.

Borland Delphi muncul di Rusia pada akhir tahun 1993 dan segera mendapatkan popularitas besar.

Versi utama

Versi 1 ditujukan untuk pengembangan platform Win16 16-bit. Mulai dari versi kedua, kemampuan untuk mengkompilasi program untuk platform Win32 32-bit telah diterapkan.


Delfi 1

Dalam versi 3, dukungan untuk teknologi akses data multi-tingkat muncul, yang memungkinkan pembuatan aplikasi yang skalabel (relatif lemah bergantung pada server database) dengan mentransfer metode pemrosesan informasi (aturan bisnis) ke tautan tengah.


Delfi 3

Bersamaan dengan Delphi versi ke-6, lingkungan Kylix, yang kompatibel dengannya dalam bahasa dan perpustakaan, dirilis, dirancang untuk mengkompilasi program untuk sistem operasi Linux.

Versi 8 mampu menghasilkan bytecode secara eksklusif untuk platform .NET. Ini adalah lingkungan pertama yang berfokus pada pengembangan aplikasi multibahasa (hanya untuk platform .NET). Versi berikutnya (ditunjukkan berdasarkan tahun rilis, bukan nomor seri, seperti yang terjadi sebelumnya) memungkinkan pembuatan aplikasi Win32 dan .NET.

Pada Delphi 2006, penulisan aplikasi untuk .NET menjadi mungkin menggunakan perpustakaan kelas .NET standar, VCL untuk .NET. Lingkungan juga memungkinkan untuk menulis aplikasi .NET di C# dan aplikasi Win32 di C++. Delphi 2006 juga mengimplementasikan teknologi MDA (Model Driven Architecture) menggunakan ECO (Enterprise Core Objects) versi 3.0.

Apa yang mereka perjuangkan

Proses pengembangan di Delphi sangat disederhanakan. Pertama-tama, ini berkaitan dengan pembuatan antarmuka, yang memakan 80% waktu pengembangan program. Anda hanya perlu menyeret komponen yang diperlukan ke permukaan jendela Windows (di Delphi disebut formulir) dan mengkonfigurasi propertinya menggunakan alat khusus (Object Inspector). Dengan bantuannya, Anda dapat mengaitkan peristiwa komponen ini (mengklik tombol, memilih elemen dalam daftar dengan mouse, dll.) dengan kode untuk memprosesnya.

Pengembang memiliki alat debugging yang kuat (hingga eksekusi perintah prosesor langkah demi langkah), sistem bantuan kontekstual yang nyaman (termasuk Microsoft API), dan alat untuk kerja kolektif pada proyek.

Menjadi mungkin untuk membuat komponen ActiveX tanpa menggunakan Microsoft IDL, untuk memperluas kemampuan server web (skrip sisi server), tanpa mengetahui apa pun tentang HTML, XML atau ASP.

Sekarang dimungkinkan untuk membuat aplikasi terdistribusi berdasarkan COM dan CORBA, aplikasi Internet dan intranet menggunakan Borland DataBase Engine, driver ODBC atau Microsoft ADO untuk mengakses data.

Di Delphi, pengembang diberi kesempatan untuk membuat komponen mereka sendiri, mengimpor komponen OCX, membuat template proyek dan wizard yang menghasilkan template proyek. Selain itu, penulis telah menyediakan antarmuka kepada pengembang untuk menghubungkan aplikasi lain (atau program eksternal) dengan Delphi IDE.

Perubahan

Versi baru Delphi dirilis setiap tahun, tetapi setelah versi kelima, sesuatu sepertinya terjadi... Belakangan ternyata bersamaan dengan pengerjaan versi baru Delphi, bahasa pemrograman mirip Delphi untuk Linux sedang dikembangkan. . Produk barunya diberi nama Kylix. Delphi mempunyai pengaruh yang sangat besar dalam menciptakan konsep bahasa C# untuk platform .NET. Banyak elemen dan solusi konseptualnya dimasukkan dalam C#. Salah satu alasannya adalah perpindahan Anders Hejlsberg, salah satu pengembang Delphi terkemuka, dari Borland Ltd. di Microsoft Corp.

Pada bulan Maret 2006, Borland memutuskan untuk menghentikan pengembangan lebih lanjut dari lingkungan pengembangan terintegrasi JBuilder, Delphi dan C++Builder karena area ini tidak menguntungkan. Penjualan sektor IDE perusahaan telah direncanakan. Sekelompok pendukung perangkat lunak bebas mengadakan penggalangan dana untuk membeli hak lingkungan pengembangan dan kompiler dari Borland. Namun, pada bulan November tahun yang sama, diputuskan untuk meninggalkan penjualan bisnis IDE.

Setelah itu, sebuah perusahaan baru, CodeGear, yang secara finansial sepenuhnya dikendalikan oleh Borland, mulai mengembangkan produk IDE.

Pada bulan Maret 2007, CodeGear memuaskan pengguna dengan jajaran produk Delphi 2007 yang diperbarui untuk produk Win32 dan peluncuran produk yang benar-benar baru, Delphi 2007 untuk PHP.

Pada tanggal 25 Agustus 2008, Embarcadero, pemilik baru CodeGear, menerbitkan siaran pers Delphi untuk Win32 2009. Versi ini memperkenalkan banyak inovasi di tingkat bahasa:

Secara default, dukungan penuh Unicode di semua bagian bahasa, VCL dan RTL;
Penggantian panggilan ke semua fungsi Windows API dengan analog Unicode (yaitu, MessageBox memanggil MessageBoxW, bukan MessageBoxA).
Tipe umum, juga dikenal sebagai generik.
Metode anonim.
Direktif kompiler $POINTERMATH baru.
Fungsi Keluar sekarang dapat menerima parameter sesuai dengan jenis fungsinya.

Dalam versi Delphi XE2 (2011), kompiler Win64 dan kompilasi silang untuk sistem operasi Apple (MacOS X, iOS) ditambahkan.

Vsevolod Leonov, seorang penginjil Delphi Rusia dari Embarcadero Technologies, berbicara tentang versi berikut dalam wawancaranya:


Delphi XE3 merupakan kelanjutan dari alat pengembangan cepat generasi baru dari keluarga Delphi. Izinkan saya mengingatkan Anda bahwa pada tahun 2011 Delphi XE2 dirilis dengan platform FireMonkey, yang merupakan alternatif dari pustaka komponen visual VCL.

Ini sangat mirip dengan VCL dalam metode penggunaan dan komponennya (tombol, label, kolom input, menu, dll.), tetapi memiliki kemampuan untuk di-porting ke sistem operasi lain. FireMonkey bersifat lintas platform. Aplikasi yang dibuat dengan FireMonkey dapat dikompilasi pada Windows dan Mac OS. Hampir dalam satu atau dua “klik” kita dapat membangun kembali proyek untuk sistem operasi yang sama sekali berbeda. Hampir semua proyek demo yang disertakan dengan Delphi pada platform FireMonkey memiliki dua versi: satu untuk Windows dan satu lagi untuk Mac OS. Dan untuk ini Anda tidak perlu melakukan perubahan pada kode sumber aplikasi

Versi Delphi XE5 yang dirilis pada tahun 2013 menyediakan kompilasi silang aplikasi untuk perangkat pada platform ARM/Android.

Delphi 10.1 berlin dirilis pada bulan April 2016. Inovasi:

  • Kompiler dan perangkat objek Pascal untuk iOS 64-bit;
  • Dukungan untuk aplikasi iOS universal (termasuk biner 32-bit dan 64-bit dalam paket aplikasi);
  • Pratinjau FireUI pada platform seluler;
  • Pratinjau di perangkat yang berbeda;
  • Kemampuan yang diperluas untuk bekerja dengan gaya di Perancang Antarmuka Terpadu, termasuk gaya universal dan penyesuaian gaya Windows;
  • FireUI Device Manager memungkinkan Anda mengubah spesifikasi perangkat yang tersedia dan menambahkan perangkat baru;
  • Kontrol Memo, ListView, Kalender, Switch untuk platform iOS;
  • Komponen MapView untuk platform seluler (iOS dan Android), mendukung perpustakaan peta interaktif khusus untuk setiap platform (masing-masing dikembangkan oleh Apple dan Google).

Tidak hidup atau mati

Diketahui bahwa Delphi “terkubur” secara permanen atau mereka menyatakan tidak mungkin hidup seperti ini. Mereka berpendapat bahwa sistem tersebut telah menjadi mengerikan, tidak relevan, tidak didukung, tidak nyaman, atau sesuatu yang lain...

Namun kita ingat bahwa pendapat ini lebih umum terjadi di AS dan Eropa Barat, di mana bahasa ini tidak pernah sepopuler ini. Di sana, pertimbangan-pertimbangan ini mungkin cukup masuk akal dalam banyak kasus. Namun ada negara lain yang situasinya mungkin berbeda - negara CIS dan negara Eropa Timur lainnya.

Vsevolod Leonov setuju dengan ini:

Tamasya sejarah singkat tentang negara-negara Eropa Timur. Sistem pendidikan bekas Uni Soviet sangat kuat dalam banyak aspek, namun tidak dalam bidang pemrograman aplikasi. Pada awal tahun 90an, hanya mereka yang memiliki keahlian tertentu yang dapat memperoleh akses ke komputer dan belajar bagaimana melakukan sesuatu dalam lingkungan pengembangan modern.

Seluruh fakultas “melewati” kursus pemrograman dasar. Dan kehadiran Turbo Pascal dengan hambatan masuk yang rendah, dan kemudian lingkungan Delphi, yang memungkinkan Anda untuk terlibat dalam pendidikan mandiri dalam arti yang baik, mampu memenuhi industri TI dengan pengembang yang cukup kompeten, serta meningkatkan tingkat rekayasa nasional dalam pembuatan perangkat lunak aplikasi.

Jadi, bagi negara-negara bekas kubu sosialis, kombinasi Pascal/Delphi secara dramatis menarik perekonomian dari keterpurukan TI karena bahasa pemrograman yang sangat sederhana dan lingkungan pengembangan visual berdasarkan komponen yang sudah jadi.

Pahlawan baru dari sumber terbuka

Implementasi gratis bahasa Pascal yang paling terkenal adalah Free Pascal. Selain keterbukaan kode sumber, keunggulan utamanya adalah multiplatform, serta dukungan berbagai dialek.

Berdasarkan FreePascal, IDE multi-platform gratis Lazarus telah dibuat, memungkinkan Anda bekerja dengan proyek Delphi. Ini didasarkan pada Lazarus Component Library (LCL) komponen visual.

Daftar platform yang dinyatakan didukung:

Windows: 98, 2k, XP, Vista, 7, 32 dan 64bit;
FreeBSD/Linux: gtk 2.8 dan qt4.5, 32 dan 64bit;
Mac OS X: 10.4, LCL 32bit saja, non-LCL bisa 64bit.

Di sisi lain, lingkungan Delphi, seiring berkembangnya, justru menjadi semakin rumit dan tidak cocok untuk pengajaran pemrograman. Selain itu, tidak ada versi gratis Delphi, bahkan untuk penggunaan akademis. Faktor-faktor ini menyebabkan hampir hilangnya Delphi dari bidang pendidikan.

Nah, pada artikel kali ini kita akan membahas tentang cara menentukan kedalaman bit sistem operasi Windows saat memprogram di Delphi. Ini diperlukan untuk, misalnya, memilih versi driver tertentu - x86 (32 bit) atau x64 (64 bit).

Jadi, mari kita mulai.

Mari buat proyek baru dan tambahkan komponen Label ke formulir.

Lalu kita pergi ke editor kode sumber dan di bagian dengan variabel var, tambahkan variabel string razr (tipe data string, yaitu string).

var Formulir1: TForm1;

razr: tali;

Setelah itu, klik dua kali pada form, copy dan paste kode berikut ke dalamnya (pada tata cara membuat form utama TForm1.FormCreate), di antara frasa mulai dan akhir; (yaitu, awal dan akhir prosedur).

(menggunakan fungsi Dapatkan Variabel Lingkungan kita membaca nilai variabel ProgramFiles(X86).

jika sistemnya 32-bit, maka nilainya akan kosong

jika 64-bit, maka ia akan memiliki pengetahuan tentang C:Program Files(x86)

yaitu folder tempat program versi 32-bit diinstal)

razr:= GetEnvironmentVariable("ProgramFiles(x86)");

label1.Keterangan:= razr;

jika (razr = "") maka

mulai

label1.Font.Warna:=clMerah; (Mengubah warna tulisan, bisa pilih sesuai selera, misalnya clHijau - hijau)

label1.Caption:= "Anda memiliki x86"; (daripada nama label labl1 Anda dapat menulis yang lain, misalnya metka)

kalau tidak

mulai

label1.Font.Warna:=clBiru; (Mengubah warna tulisan, bisa pilih sesuai selera, misalnya clHijau - hijau)

label1.Caption:= "Anda memiliki x64";

akhir;

Bagaimana cara kerja programnya?

Fungsi Dapatkan Variabel Lingkungan membaca nilai variabel lingkungan di Windows File Program(X86).

Jika sistemnya 32-bit, maka nilainya akan kosong.

Jika 64-bit, maka ia akan memiliki pengetahuan C:Program Files(x86), yaitu folder tempat program versi 32-bit diinstal.

Sebenarnya, itu saja.

Inilah yang terjadi pada saya.

Di bawah ini Anda dapat mengunduh arsip dengan kode sumber program untuk mencoba mencari tahu sendiri cara kerjanya.


Komentar ()

wdfm 90

Program ini berfungsi dengan baik di Windows 7 x64, Anda dapat menggunakannya

Edward 300

Siapa pun yang memulai dengan bahasa di luar topik + tidak senonoh akan dilarang selama 1 hari! Hal ini tidak berlaku bagi administrator.
.php?papan=18.0

Saya tidak membuat forum ini tanpa alasan!

Edward 300

Perkenalan

Pedoman ini dirancang untuk membantu siswa memperoleh keterampilan praktis dalam teknologi merancang aplikasi mereka sendiri secara visual untuk Windows di lingkungan Delphi menggunakan metodologi pemrograman berorientasi objek. Pekerjaan laboratorium mencakup tahapan utama pengembangan program untuk Windows.

Pedoman ini terdiri dari tiga bagian. Bagian pertama menjelaskan konsep dasar desain aplikasi visual dan lingkungan pemrograman Delphi, Bagian kedua merumuskan persyaratan umum implementasi dan presentasi hasil laboratorium. Bagian ketiga terdiri dari deskripsi pekerjaan laboratorium tertentu dengan informasi teoritis singkat yang diperlukan, contoh desain program, rekomendasi untuk melakukan pekerjaan, varian tugas untuk melakukan pekerjaan dan pertanyaan untuk tes mandiri. Untuk menyelesaikan pekerjaan, siswa harus menguasai bahasa Object Pascal dan lingkungan pemrograman visual Delphi.

Konsep dasar dan definisi Delphi

visual susunan program delphi

Layar setelah meluncurkan Delphi berisi empat jendela: jendela utama, formulir, pemeriksa objek, dan editor kode, yang hampir seluruhnya tertutup oleh jendela formulir.

Jendela utama berisi menu perintah Delphi, toolbar dan palet komponen.

Jendela formulir, judulnya FORM1, mewakili templat, tata letak salah satu objek aplikasi yang sedang dikembangkan.

Jendela Object Inspector, judul Object Inspectornya memungkinkan Anda melihat dan mengubah properti objek proyek. Setelah meluncurkan Delphi, jendela ini menampilkan properti formulir FORM1.

Jendela editor kode dimaksudkan untuk membuat prosedur penanganan kejadian. Di Delphi, kode adalah teks suatu program.

Objek atau kontrol adalah komponen formulir dari mana proyek dibuat; omong-omong, formulir itu sendiri, seperti disebutkan di atas, juga merupakan objek. Objek dapat berupa tombol perintah, kolom input teks, tombol, label, bilah gulir, dan jendela.

Properti suatu objek misalnya ukuran teks judul, warna latar belakang form atau teks pada tombol perintah dan masih banyak lagi; daftar properti lengkap dapat dilihat di jendela Object Inspector untuk objek yang dipilih. obyek.

Event adalah sesuatu yang terjadi ketika aplikasi yang Anda buat sedang berjalan. Di Delphi, setiap event mempunyai nama, misalnya klik mouse adalah event OnClick, klik dua kali adalah event OnDblClick.

Proyek adalah sekumpulan file (unit program - modul), yang digunakan kompiler untuk membuat file program yang dapat dieksekusi. Salah satu file proyek, disebut file proyek dan dengan ekstensi dpr, berisi gambaran umum proyek. File proyek adalah modul aplikasi utama yang dihasilkan oleh Delphi. Selain modul utama, proyek ini mencakup satu atau lebih modul (Unit). File modul proyek (Unit) berisi teks prosedur, fungsi, deskripsi tipe, serta semua informasi untuk membuat program yang dapat dieksekusi, dan memiliki ekstensi pas. Prosedur adalah sekelompok operator dalam bahasa pemrograman yang memungkinkan Anda melakukan tindakan tertentu (menyelesaikan masalah). Dengan satu atau lain cara, semua kode yang dapat dieksekusi yang Anda kompilasi untuk inisialisasi harus ditempatkan di beberapa prosedur.

Sebuah Unit terdiri dari tiga bagian: antarmuka (dimulai dengan kata antarmuka), implementasi (dimulai dengan kata implementasi) dan. Di bawah ini adalah struktur modul.

unitModuleName;

(Berikut penjelasan prosedur dan fungsi modul ini yang dapat digunakan oleh modul lain)

(Berikut adalah deklarasi konstanta global modul yang dapat digunakan oleh prosedur dan fungsi modul)

(Berikut adalah deklarasi tipe modul global yang dapat digunakan oleh prosedur dan fungsi modul)

(Berikut adalah deklarasi variabel global modul yang dapat digunakan oleh prosedur dan fungsi modul)

(Berikut penjelasan prosedur dan fungsi modul)

(Instruksi untuk bagian inisialisasi variabel modul terdapat di sini)

Dengan demikian, bagian antarmuka memberi tahu kompiler bagian mana dari modul yang dapat diakses oleh modul program lain. Bagian implementasi dimulai dengan arahan ($R*.DFM), yang memberitahu kompiler untuk menggunakan deskripsi formulir saat membuat file yang dapat dieksekusi. deskripsi formulir terletak di file dengan ekstensi dfm, yang namanya sesuai dengan nama modul. Direktif ($R*.DFM) diikuti dengan prosedur penanganan kejadian untuk formulir dan komponennya. Pemrogram juga dapat menempatkan prosedur dan fungsi yang dikembangkan di sini. Jika bagian inisialisasi tidak berisi instruksi, maka kata mulai tidak ditentukan.