Alat pengembangan perangkat lunak. Alat Pengembang - Harus Dimiliki dan Sangat Berguna

Pengembangan perangkat lunak dilakukan dengan menggunakan berbagai alat yang menyediakan:

    pemrograman asli;

    penggunaan paket perangkat lunak aplikasi – program standar yang mengimplementasikan fungsi pemrosesan data;

    otomatisasi tahapan utama pengembangan program.

Alat pengembangan yang paling tradisional adalah bahasa dan sistem pemrograman. Bahasa pemrograman biasanya dibagi menjadi bahasa mesin dan bahasa algoritmik.

Mesin bahasa berisi instruksi mesin yang sesuai dengan operasi pemrosesan paling sederhana. Instruksi mesin terikat pada kelas komputer dan/atau sistem operasi tertentu.

Algoritma Bahasa pemrograman menggambarkan algoritma suatu permasalahan, memberikan kejelasan algoritma dan kemudahan pemeliharaan program. Bahasa algoritmik dibagi menjadi bahasa berorientasi mesin, berorientasi prosedur, dan berorientasi masalah.

Mesin-berorientasi Bahasa pemrograman merupakan bahasa tingkat rendah karena memperhatikan arsitektur dan jenis komputer. Pemrograman dalam bahasa seperti itu memakan waktu, tetapi programnya optimal dalam hal sumber daya komputer yang dibutuhkan. Contoh bahasa pemrograman berorientasi mesin adalah berbagai assembler 1 (Macro Assembler, Turbo Assembler, dll) dari komputer kelas tertentu.

Prosedural-berorientasi Bahasa pemrograman seperti Visual Basic, Pascal, C++, Ada, Cobol, PL1, dll. memungkinkan Anda menjelaskan serangkaian prosedur pemrosesan dan mengimplementasikan struktur komputasi standar:

1. Urutan balok (instruksi): 1, 2, 3, 4, dst.

Semua blok (instruksi) dijalankan dalam urutan yang ketat (Gbr. 5 A)

2. Transisi bersyarat (Gbr. 5 B) - memeriksa kondisi tertentu (2) dan memilih tindakan alternatif: jika kondisinya benar - 3, jika tidak - 4. Setelah itu, kontrol ditransfer ke blok 5.

3. Pilihan alternatif (Gbr. 5 B) – memeriksa kondisi (2), jika kondisi benar – melakukan tindakan 3, jika tidak, periksa kondisi (4); jika kondisinya benar, lakukan tindakan 5, dst. Jika tidak ada kondisi yang terpenuhi atau tindakan dilakukan (3 atau 5, dll.), kendali dialihkan ke blok 6.

A B C

Gambar 5

4. Proses siklik – siklus “belum” (Gbr. 6A). Siklus ini diulangi hingga kondisi (2) benar - blok 3. Jika kondisi (2) salah, kendali dipindahkan ke blok 4.

5. Proses siklik – siklus “sebelum” (Gbr. 6B). Perulangan dijalankan setidaknya sekali - blok 2. Setelah memeriksa kondisi (3), jika benar, blok (2) dijalankan, jika tidak, kontrol ditransfer ke blok 4.

Gambar 6

Bahasa pemrograman obyek jenis, elemen pemrograman terstruktur juga digunakan dalam kode program kelas objek atau prosedur pemrosesan peristiwa.

Bermasalah-berorientasi bahasa pemrograman - bahasa kueri relasional tingkat tinggi, pembuat laporan, dll. memungkinkan Anda mengidentifikasi masalah, memasukkan dan mengeluarkan informasi, tanpa menentukan prosedur pemrosesan tertentu.

Paket program aplikasi (APP) dibagi menjadi beberapa kelas:

    KPS yang berorientasi pada masalah – memberikan solusi terhadap permasalahan pada bidang studi tertentu;

    KPS berorientasi metode – mendukung jenis model dan metode tertentu untuk memecahkan masalah, digunakan apa pun bidang studinya;

    Perangkat lunak tujuan umum – memberikan dukungan untuk teknologi informasi (pekerjaan teks, pekerjaan grafis, perhitungan standar, dll.).

Karakteristik umum alat pengembangan perangkat lunak

    Karakteristik umum alat pengembangan perangkat lunak

    Teknologi pemrograman sistem instrumental

    Alat KASUS. Karakteristik alat CASE modern

Ikhtisar Alat Berorientasi Objek

Pemrograman berorientasi objek muncul sebelum analisis dan desain berorientasi objek, sehingga saat ini terdapat cukup banyak bahasa yang mendukung teknologi ini. Yang pertama, menurut tanggal asalnya, dianggap bahasa Obrolan ringan, meskipun banyak elemen pendekatan berorientasi objek digunakan dalam bahasa tersebut simulasi pada tahun 1967 Alat yang paling ampuh untuk membuat program berorientasi objek saat ini adalah bahasa C++, dibuat berdasarkan bahasa pemrograman terstruktur C. Bahasa ini berkembang dengan sukses Jawa, yang awalnya dirancang untuk berorientasi objek.

Pengembangan sistem perangkat lunak besar dalam kondisi modern tidak mungkin dilakukan tanpa menggunakan alat pengembangan perangkat lunak otomasi (alat CASE). Tidak banyak KASUS yang mendukung pendekatan berorientasi objek. Alat yang paling terkenal dalam arah ini adalah sistem Mawar Rasional , yang mendukung antara lain tahapan analisis dan desain berorientasi objek.

Alat CASE berorientasi objek Rational Rose

Pengembang Mawar Rasional- Rational Software Corp., terkenal dengan perkembangannya di bidang teknologi berorientasi objek, yang utamanya adalah bahasa UML. Justru untuk mendukung UML, sebagai bahasa desain perangkat lunak utama, sistem CASE ini berorientasi.

Seperti alat CASE modern lainnya, sistem ini mendukung semua tahapan siklus hidup perangkat lunak dan menyediakan berbagai fungsi kepada pengguna untuk menganalisis, merancang, membangun, dan memelihara perangkat lunak. Dalam hal ini, teknologi berorientasi objek digunakan dan model grafis banyak digunakan.

Mawar Rasional terdiri dari komponen utama berikut: repositori, antarmuka pengguna grafis, alat inspeksi proyek (browser), alat kontrol proyek, alat pengumpulan statistik dan pembuat dokumen, serta ekstensi untuk mendukung berbagai bahasa pemrograman.

Fitur utamanya adalah sebagai berikut:

    Bahasa pemodelan domain grafis yang kuat yang memiliki tingkat formalisasi tinggi dan mendukung metodologi berorientasi objek.

    Navigasi yang mudah antar elemen model menggunakan "inspektur proyek".

    Menyimpan hasil desain dalam bentuk model tunggal.

    Mendukung pekerjaan tim pengembangan pada proyek.

    Sistem yang kuat untuk menyiapkan laporan dan dokumentasi proyek.

    Kemungkinan sintesis program di hampir semua bahasa berorientasi objek modern, termasuk bahasa Java lintas platform.

    Dukungan untuk teknologi komponen untuk membangun sistem perangkat lunak.

    Kemungkinan luas untuk merancang perangkat lunak dengan berbagai arsitektur, dari program sederhana hingga sistem “client-server” besar dan aplikasi Internet.

    Kemungkinan merekayasa ulang model berdasarkan kode sumber program. Hal ini memastikan bahwa integritas informasi desain dan implementasi tetap terjaga.

    Mengonfigurasi dan memperluas fungsionalitas lingkungan CASE dengan memasang modul ekstensi, terutama untuk mendukung berbagai bahasa pemrograman.

Prinsip pengembangan sistem perangkat lunak di Rational Rose

Konstruksi sistem berorientasi objek memiliki kekhasan tersendiri. Jelasnya, untuk efisiensi maksimum, satu teknologi harus digunakan di semua tahap siklus hidup. Peluang ini disediakan oleh bahasa pemodelan universal UML. Mawar Rasional mendukung semua fase desain sistem yang ditentukan dalam spesifikasi UML.

Metode desain utama adalah membuat berbagai macam diagram dan spesifikasi yang menentukan struktur logis dan fisik model sistem, aspek statis dan dinamisnya. Ini termasuk diagram kelas, status, skrip, modul, dan proses.

Pada semua tahapan, dimungkinkan untuk menggunakan editor grafis khusus untuk elemen model dan menggunakan inspektur model untuk menavigasi antar komponennya. Semua informasi desain disimpan dalam satu file model (*.mdl).

Pekerjaan dimulai dengan pembangunan Use Case Diagram, yang mencirikan tugas utama dan lingkungan sistem yang dirancang. Selanjutnya, untuk setiap Use Case yang disajikan dalam use diagram, dikembangkan Sequence Diagram yang mengidentifikasi objek-objek dalam sistem dan menggambarkan urutan kejadian yang terjadi dalam proses komunikasi antar objek. Mawar Rasional memungkinkan Anda untuk secara otomatis mengaitkan diagram urutan dengan blok penggunaan.

Objek yang ada dalam diagram urutan didefinisikan dalam sistem menggunakan kelas. Kelas dan hubungannya ditentukan menggunakan diagram kelas, yang pengembangannya juga didukung Mawar Rasional. Kelas dikelompokkan ke dalam paket. Rasional Mawar memungkinkan Anda untuk mendefinisikan sekumpulan paket, hubungan di antara paket-paket tersebut, dan mewakili kelas-kelas penyusunnya dalam diagram kelas bersarang.

Komposisi modul sistem yang dikompilasi dan dieksekusi ditentukan dalam Mawar Rasional menggunakan diagram komponen. Diagram mengidentifikasi ketergantungan antar komponen. Komponen dapat memiliki antarmuka yang melaluinya dependensi diimplementasikan. Diagram penerapan di Mawar Rasional mencerminkan konfigurasi sistem perangkat lunak yang dijalankan dan terdiri dari node dan hubungan interaksi antar node. Node mencakup komponen yang direpresentasikan dalam diagram komponen sistem.

Untuk model yang terdefinisi sepenuhnya, dimungkinkan untuk menghasilkan teks program sumber dalam berbagai bahasa pemrograman berorientasi objek yang didukung Mawar Rasional, seperti Java atau C++.

Teks program yang dihasilkan dapat dimodifikasi di luar Mawar Rasional, dan untuk memperhitungkan perubahan yang dilakukan, sistem memungkinkan Anda merekayasa balik teks menjadi sebuah model.

Desain perangkat lunak

Pemodelan Domain . Pembuatan suatu proyek diawali dengan pembentukan prinsip-prinsip penggunaan sistem. Di dalam Mawar Rasional Tahap ini disebut “Use Case View”. Implementasi tahap ini memungkinkan Anda mengidentifikasi pengguna eksternal, blok penggunaan, objek sistem, dan koneksi di antara mereka.

Diagram penggunaan dibuat yang mencerminkan fungsi eksternal dari sistem yang dibuat. Model ini dalam banyak hal mirip dengan diagram aliran data dalam analisis struktural. Komponen utamanya adalah pengguna eksternal (aktor), blok penggunaan (use case) dan koneksi antar komponen. Untuk membuat grafik di Mawar Rasional editor grafis khusus digunakan.

Semua elemen diagram penggunaan diidentifikasi oleh sistem sebagai komponen independen model dalam tahap ini dan harus dispesifikasikan lebih lanjut. Pertama-tama, ini menyangkut blok penggunaan, yang mencerminkan kelompok fungsi sistem yang disajikan secara keseluruhan kepada pengguna eksternal.

Untuk setiap blok penggunaan, diagram urutan dibuat, yang menampilkan interaksi objek yang melakukan tugas dari waktu ke waktu. Diagram tersebut mengidentifikasi objek-objek sistem dan mendefinisikan pesan-pesan yang melaluinya objek-objek tersebut berinteraksi. Diagram dibuat dalam editor khusus.

Setiap objek dalam diagram sequence disertai dengan nama kelas yang dimilikinya. Objek tertentu adalah turunan dari beberapa kelas. Kelas membentuk struktur logis dari sistem.

Pengembangan struktur logis. Setelah selesainya pembentukan prinsip-prinsip penggunaan sistem, tahap pengembangan struktur logisnya dimulai. DI DALAM Mawar Rasional itu disebut "Tampilan Logis". Hasil dari tahap ini berupa diagram utama dan diagram detail elemen-elemennya.

Pada tahap ini, Anda harus menentukan kelas-kelas yang dibutuhkan dalam sistem. Contoh dari kelas-kelas ini sudah ditentukan dalam diagram urutan. Kelas dan hubungannya tercermin dalam model dalam bentuk diagram kelas. Kelompok kelas dalam diagram ini dapat dikelompokkan ke dalam paket.

Merancang struktur logis harus dimulai dengan mendefinisikan paket inti. Paket adalah alat universal untuk mengelompokkan elemen model. Penggunaan paket memungkinkan Anda membuat model lebih terlihat. Paket dapat disarangkan satu sama lain. Kelas-kelas yang membentuk setiap paket dirinci dalam diagram yang disertakan.

Dibangun di Mawar Rasional Class Diagram Editor menyediakan alat yang mudah digunakan untuk operasi tersebut, dan Model Inspector memudahkan navigasi hierarki diagram.

Untuk setiap kelas, spesifikasi ditentukan yang menjelaskan komposisi atribut dan metode, koneksi, templat di mana kelas dibuat, dan fitur implementasi.

Kehadiran template memudahkan pembuatan kelas dari berbagai struktur.

Kelas dapat diimpor ke dalam sistem dari luar. Mawar Rasional mendukung struktur komponen perangkat lunak dan memungkinkan penggunaan komponen biner seperti COM dan ActiveX dalam model. Representasinya dalam model dilakukan dengan menggunakan kelas berdasarkan antarmuka komponen-komponen ini.

Selain diagram kelas, diagram keadaan, diagram skenario, dan elemen lain dari bahasa UML digunakan untuk menggambarkan logika sistem pada tahap ini.

Rancang struktur fisik aplikasi. Kelas-kelas yang dijelaskan pada langkah sebelumnya dikaitkan dengan komponen fisik program menggunakan diagram komponen.

Komponen adalah modul sistem yang dapat dieksekusi, dan dikaitkan dengan file sumber, file perpustakaan biner, modul objek, atau file yang dapat dieksekusi. Komponen dapat mencakup komponen lainnya.

Untuk memvisualisasikan komponen-komponen sistem yang dirancang digunakan diagram komponen. Tahap membangun diagram komponen di Mawar disebut "Tampilan Komponen". Ini terdiri dari pembuatan diagram keseluruhan dan, jika perlu, merinci komponen individu dalam subdiagram.

Diagram ini mencerminkan hubungan antara komponen perangkat lunak. Hubungan tersebut diimplementasikan melalui antarmuka, yang juga ditampilkan pada diagram.

Diagram dibuat dalam editor khusus. Untuk suatu komponen, kelas penyusunnya ditentukan.

Komponen tersebut dapat menghasilkan teks sumber dalam berbagai bahasa pemrograman yang didukung mawar rasional, atau menetapkan fragmen program yang dikembangkan di luar lingkungan Mawar. Dalam kasus terakhir, antarmukanya harus sesuai dengan yang dideklarasikan dalam model.

Langkah terakhir dalam desain perangkat lunak adalah menyiapkan diagram penerapan. DI DALAM Mawar tahap ini disebut "Tampilan Penerapan". Diagram penerapan menunjukkan konfigurasi sistem perangkat lunak yang dapat dieksekusi. Ini terdiri dari node dan hubungan interaksi antara node dan komponen. Node dapat mencakup komponen dan objek. Node adalah elemen runtime fisik.

Konstruksi dan pemeliharaan sistem

Menghasilkan Teks Sumber . Setelah komponen spesifik dari sistem yang sedang dikembangkan telah diidentifikasi, sekarang saatnya membuat kode program untuk setiap komponen.

Sebenarnya, Mawar menghasilkan kerangka program, yang kemudian dikirim ke pemrogram untuk direvisi. Definisi kelas dan metode disintesis secara otomatis, implementasi spesifiknya harus dilakukan secara manual.

Informasi awal untuk operasi ini adalah informasi tentang kelas-kelas yang membentuk komponen ini dan bahasa yang dipilih untuk mengimplementasikan komponen ini.

Sebelum melakukan operasi, Anda harus menentukan komposisi dan parameter untuk menyimpan kode yang diterima. Selanjutnya, lakukan pembangkitan dengan memilih bahasa yang diperlukan. Jika terjadi kesalahan, sistem akan memberi tahu Anda tentang hal ini.

Dimungkinkan untuk secara selektif menghasilkan kode program untuk masing-masing komponen model dan menyesuaikan informasi yang ditempatkan dalam file program. Hal ini mencapai fleksibilitas tinggi saat meningkatkan dan memodifikasi model.

Edisi Rasional Rose 98 Perusahaan memungkinkan Anda membuat teks sumber dalam Visual Basic, C++, Java, serta mendapatkan deskripsi antarmuka komponen di IDL dan membuat proyek untuk sistem Oracle 8.

Merekayasa ulang model berdasarkan kode sumber . Kemampuan untuk merekayasa ulang, atau disebut juga “reverse engineering”, suatu model dari teks program sumber tampaknya menjadi salah satu fungsi yang penting dan, tentu saja, berguna. Mawar. Kebutuhan akan operasi seperti itu sering kali muncul ketika memodifikasi dan meningkatkan suatu proyek. Templat program yang dihasilkan oleh model, setelah ditransfer ke pemrogram, dapat dimodifikasi dan perubahan ini harus diperhitungkan dalam model. Apalagi sejak itu Mawar Rasional mendukung impor komponen biner (objek COM di lingkungan Win32), maka dukungan untuk membangun kelas berdasarkan deskripsi antarmuka komponen biner sangat diperlukan.

Anda dapat merekayasa balik kelas dengan memilih bahasa pemrograman di mana kelas tersebut diimplementasikan dan menentukan direktori tempat file sumber berada. Kemudian Anda dapat memilih file yang diperlukan atau merekayasa balik semuanya. Saat melakukan tindakan ini, Anda harus berhati-hati dan hanya memilih elemen yang benar-benar dapat diubah menjadi model. Selama pengoperasian, sistem akan memberi tahu Anda tentang adanya kesalahan.

Setelah operasi berhasil diselesaikan, elemen baru akan muncul pada diagram komponen (tahap "Tampilan Komponen"), dengan nama yang sesuai dengan direktori file sumber. Masuk ke tahap Logical View akan terlihat bahwa semua kelas dan paket yang membentuk komponen baru juga telah muncul di diagram kelas.

Sekarang dimungkinkan untuk membuat perubahan pada model, ditentukan oleh komponen yang ditambahkan, dan membuat ulang teks sumber.

Dukungan tahap pengembangan

Komponen dan templat. Salah satu kemungkinannya Mawar adalah pemodelan komponen biner yang mendukung spesifikasi COM. Dalam model, komponen tersebut diwakili oleh kelas antarmuka yang dibuat berdasarkan file IDL yang menyertai objek COM. Hal ini memungkinkan Anda untuk memasukkan berbagai komponen siap pakai ke dalam model Anda.

Dukungan untuk templat elemen model menyederhanakan proses desain. DI DALAM Mawar Anda dapat membuat dan menggunakan templat untuk sebagian besar elemen model, termasuk: blok penggunaan, paket, kelas, komponen, serta operasi pada model. Saat membuat elemen baru, Anda harus menentukan templat mana yang digunakan, dan elemen tersebut akan menyertakan semua properti templat. Pendekatan ini memungkinkan Anda untuk menyingkirkan pekerjaan rutin dan berkonsentrasi pada proyek itu sendiri.

Lingkungan kerja. Perkembangan logis dari ide penggunaan template dan komponen biner eksternal di Mawar Rasional adalah munculnya lingkungan kerja (Framework).

Ruang kerja adalah jenis templat yang mengatur lingkungan untuk model yang dibuat. Hal ini dilakukan dengan memuat elemen dasar yang termasuk dalam meja kerja, yang menjadi bagian integral dari model.

Mawar menyediakan berbagai lingkungan kerja standar, dan Anda juga dapat membuatnya sendiri. Kumpulan lingkungan kerja standar adalah sebagai berikut:

    Penjelajah Kinerja Aplikasi

    Lingkungan standar. Berfokus pada pembuatan aplikasi dalam Visual Basic. Termasuk deklarasi banyak objek VB standar.

    Lingkungan desain aplikasi untuk Internet. Termasuk definisi berbagai komponen ActiveX dan perpustakaan VB.

    Lingkungan desain aplikasi untuk bekerja dengan database lokal (Local Database). Berisi deklarasi objek sistem DAO

    Lingkungan desain aplikasi menggunakan RDO (Remote Data Object). Memungkinkan Anda menggunakan objek RDO untuk membuat aplikasi klien-server.

    Lingkungan desain aplikasi untuk mengakses server SQL (SQL Server Distributed Management Object (SQL-DMO)), mendukung akses ke SQL melalui objek OLE-Automation.

    Lingkungan Dukungan Server Transaksi Microsoft

    Lingkungan Dukungan Microsoft Outlook

    Lingkungan pengembangan aplikasi Java (Java JDK 114 Full dan Java JDK 114 Quick). Termasuk model kelas Java dan antarmuka yang diperoleh melalui rekayasa balik.

    Lingkungan Dukungan Oracle8

Lingkungan pengembangan ditetapkan saat membuat model. Lingkungan pengembangan disimpan dalam bentuk file model (*.mdl) yang dimaksudkan untuk hanya dibaca. Selama proses pembuatan model baru, elemen-elemen yang diperlukan dimuat dari lingkungan pengembangan yang dipilih, setelah itu model baru dibuat.

Lingkungan pengembangan menyediakan mekanisme penyesuaian yang hebat Mawar untuk proyek tertentu. Anda dapat membuat lingkungan pengembangan Anda sendiri, yang akan mencakup elemen-elemen yang Anda perlukan dari berbagai lingkungan standar. Bagian Mawar Rasional termasuk "master" untuk menciptakan lingkungan kerja.

Dukungan tim pengembangan. Setiap proyek besar biasanya dikerjakan oleh sekelompok pengembang, yang meliputi analis, desainer, dan pemrogram. Proses pengembangan terdiri dari iterasi yang berurutan dengan siklus "analisis" - "desain" - "implementasi". Pada setiap tahap, beberapa pengembang bekerja dengan model dan tahapan tersebut diulangi secara siklis. Dalam kondisi seperti itu, integritas proyek perlu dijaga, memperhitungkan perubahan yang dilakukan pada berbagai tahapan, dan mengoordinasikan tahapan tersebut. Semua ini memerlukan penggunaan repositori umum dan ideologi desain khusus.

Dilengkapi dengan alat inspeksi model praktis yang memudahkan peralihan antar tahapan, Mawar Rasional Mekanisme untuk mendukung tim pengembangan telah diidentifikasi.

Menciptakan ruang kerja yang berbeda untuk pengembang dan ruang kerja untuk keseluruhan proyek. Setiap pengembang membuat perubahan di bagiannya (submodel), dan perubahan ini menjadi global (ditransfer ke model umum) hanya setelah disetujui oleh sistem manajemen proyek. Sebagai pengontrol proyek di Mawar sistem eksternal dapat digunakan, seperti Kasus Jelas Dan Microsoft SourceSafe.

Menggunakan modul ekspansi . DI DALAM Mawar Rasional Mekanisme fleksibel untuk konfigurasi dan penyesuaian kemampuan sistem telah diperkenalkan. Ada berbagai modul ekspansi yang dapat dipasang Mawar dan memecahkan berbagai permasalahan. Ada dua jenis utama modul ekstensi: ekstensi yang mendukung bahasa pemrograman dan ekstensi fungsionalitas lingkungan.

Saat menambahkan ekstensi baru, ekstensi tersebut terintegrasi dengan sistem dengan menambahkan item ke menu sistem dan menginstal perpustakaan yang diperlukan serta file yang dapat dieksekusi. Selain itu, setiap ekstensi dapat menambahkan tipe dan templatnya sendiri ke sistem.

Ekstensi yang diperlukan biasanya ditambahkan selama instalasi awal sistem, namun dapat diinstal nanti. Distribusi ekstensi melalui Internet didukung

Untuk mengelola ekstensi di Mawar Ada manajer ekstensi. Dengan bantuannya, Anda dapat mengaktifkan dan menonaktifkan berbagai modul ekstensi.

Pro dan kontra dari Rational Rose

Alat CASE ini dapat digunakan untuk membuat berbagai perangkat lunak berorientasi objek, terutama untuk platform Windows, serta dalam bahasa Java lintas platform.

Bahasa UML digunakan pada semua tahap pengembangan, dan proyek perangkat lunak adalah model tunggal.

Keuntungan penting adalah penyesuaian untuk berbagai bahasa pemrograman dan arsitektur sistem perangkat lunak, serta kemungkinan “rekayasa balik” berdasarkan teks sumber dalam berbagai bahasa pemrograman. Terdapat dukungan berbagai metode implementasi fisik untuk komponen sistem yang dirancang.

Kemampuan untuk mengkonfigurasi sistem menggunakan modul ekspansi sangat berguna. Padahal, satu-satunya cara menulis aplikasi untuk sistem operasi non-Windows adalah dengan menggunakan bahasa Java.

Esensi dan konsep perangkat lunak instrumental

Perangkat lunak instrumental (IPO) adalah perangkat lunak yang dimaksudkan untuk digunakan dalam desain, pengembangan, dan pemeliharaan program.

Perkakas digunakan dalam tahap pengembangan. Perangkat lunak perkakas adalah kumpulan program yang digunakan untuk membantu pemrogram dalam pekerjaannya, untuk membantu manajer pengembangan perangkat lunak dalam upayanya mengendalikan proses pengembangan dan produk yang dihasilkan. Perwakilan paling terkenal dari bagian perangkat lunak ini adalah program penerjemah dari bahasa pemrograman, yang membantu pemrogram menulis perintah mesin. Program instrumental adalah penerjemah dari bahasa Fortran, Cobol, Joe-vial, BASIC, APL dan Pascal. Mereka memfasilitasi proses pembuatan program kerja baru. Namun, penerjemah bahasa hanyalah bagian program instrumental yang paling terkenal; jumlahnya sangat banyak.

Menggunakan komputer untuk membantu membuat program baru masih jauh dari jelas bagi orang yang bukan pemrogram profesional. Sering terjadi bahwa para profesional berbicara tentang perangkat lunak alat (fase pengembangan) dan sistem (fase penggunaan) secara bersamaan, dengan asumsi bahwa mereka yang tidak mengetahui rahasia keahlian mereka menyadari peran perangkat lunak alat ini. Seperti halnya pada tahap penggunaan (untuk program aplikasi), perangkat lunak sistem juga bekerja pada tahap pengembangan, namun hanya bersamaan dengan perkakasnya. Perangkat lunak alat atau sistem pemrograman adalah sistem untuk mengotomatisasi pengembangan program baru dalam bahasa pemrograman.

Dalam kasus yang paling umum, untuk membuat program dalam bahasa pemrograman yang dipilih (bahasa pemrograman sistem), Anda perlu memiliki komponen-komponen berikut:

1. Editor teks untuk membuat file dengan teks sumber program.

2. Kompiler atau juru bahasa. Teks sumber diterjemahkan ke dalam kode objek perantara menggunakan program kompiler. Kode sumber suatu program besar terdiri dari beberapa modul (file sumber). Setiap modul dikompilasi menjadi file terpisah dengan kode objek, yang kemudian harus digabungkan menjadi satu.

3. Editor tautan atau assembler yang menghubungkan modul objek dan menghasilkan aplikasi yang berfungsi sebagai keluaran - kode yang dapat dieksekusi.

Kode yang dapat dieksekusi adalah program lengkap yang dapat dijalankan di komputer mana pun yang memiliki sistem operasi tempat program tersebut dibuat. Biasanya, file yang dihasilkan memiliki ekstensi .EXE atau .COM.

Baru-baru ini, metode pemrograman visual (menggunakan bahasa scripting) yang ditujukan untuk membuat aplikasi Windows telah tersebar luas. Proses ini diotomatisasi dalam lingkungan desain cepat. Dalam hal ini, komponen visual siap pakai digunakan, yang dikonfigurasi menggunakan editor khusus.

Editor paling populer (sistem pemrograman program menggunakan alat visual) untuk desain visual:

Borland Delphi - dirancang untuk memecahkan hampir semua masalah pemrograman aplikasi.

Borland C++ Builder adalah alat luar biasa untuk mengembangkan aplikasi DOS dan Windows.

Microsoft Visual Basic adalah alat populer untuk membuat program Windows.

Microsoft Visual C++ - alat ini memungkinkan Anda mengembangkan aplikasi apa pun yang berjalan di lingkungan OS seperti Microsoft Windows

Jadi, inti dari perangkat lunak instrumental adalah membuat program apa pun yang dapat dieksekusi dengan mengubah ekspresi logika formal menjadi kode mesin yang dapat dieksekusi, serta kontrol dan penyesuaiannya.

Tugas dan fungsi perangkat lunak alat

Perangkat lunak instrumental, sebagai jenis perangkat lunak khusus, dicirikan oleh umum dan khusus

fungsi, seperti untuk semua perangkat lunak pada umumnya. Fungsi umum telah dibahas di atas, dan fungsi khusus yang hanya terdapat pada program jenis ini adalah:

1. Membuat teks program yang sedang dikembangkan dengan menggunakan kata-kata kode (bahasa pemrograman) yang dibuat khusus, serta sekumpulan karakter tertentu dan lokasinya dalam file - sintaksis program yang dibuat.

2. Terjemahan teks program yang dibuat ke dalam kode berorientasi mesin, dapat diakses untuk pengenalan komputer. Jika volume program yang dibuat besar, maka program tersebut dibagi menjadi modul-modul terpisah dan masing-masing modul diterjemahkan secara terpisah.

3. Menghubungkan modul individu ke dalam satu kode yang dapat dieksekusi, sesuai dengan struktur yang diperlukan, memastikan koordinasi interaksi masing-masing bagian satu sama lain.

4. Menguji dan memantau program yang dibuat, mengidentifikasi dan menghilangkan kesalahan formal, logis dan sintaksis, memeriksa program untuk keberadaan kode-kode terlarang, serta menilai kinerja dan potensi program yang dibuat.

Jenis Perangkat Lunak Perkakas

Berdasarkan tugas yang diberikan pada perangkat lunak instrumental, kita dapat membedakan sejumlah besar jenis perangkat lunak instrumental:

Editor teks

Lingkungan Pembangunan Terpadu

Kompiler

Penerjemah

Tautan

Parser dan generator parser (lihat Javacc)

Perakit

Debugger

Profiler

Generator dokumentasi

Alat analisis cakupan kode

Alat Integrasi Berkelanjutan

Alat pengujian otomatis

Sistem kontrol versi, dll.

Perlu dicatat bahwa shell untuk membuat program aplikasi juga dibuat oleh program alat dan oleh karena itu dapat diklasifikasikan sebagai program aplikasi. Mari kita pertimbangkan secara singkat tujuan dari beberapa program instrumental.

Editor teks.

Editor teks adalah program komputer yang dirancang untuk memproses file teks, seperti membuat dan membuat perubahan.

komposisi CAD

CAD adalah sistem yang menggabungkan sarana teknis, matematika, dan perangkat lunak, yang parameter dan karakteristiknya dipilih dengan mempertimbangkan secara maksimal spesifikasi desain teknik dan tugas konstruksi. CAD memastikan kemudahan penggunaan program melalui penggunaan sarana komunikasi operasional antara insinyur dan komputer, bahasa khusus yang berorientasi pada masalah, dan ketersediaan database informasi dan referensi.

Komponen struktural CAD adalah subsistem yang memiliki semua properti sistem dan diciptakan sebagai sistem independen. Ini adalah bagian dari sistem CAD, diidentifikasi menurut karakteristik tertentu, yang memastikan pelaksanaan tugas desain tertentu yang diselesaikan dengan diterimanya solusi desain dan dokumen desain yang sesuai.

Berdasarkan tujuannya, subsistem CAD dibagi menjadi dua jenis: desain dan pemeliharaan.

Perancangan subsistem mencakup subsistem yang melakukan prosedur dan operasi desain, misalnya:

· subsistem tata letak mesin;

· subsistem untuk merancang unit perakitan;

· subsistem desain bagian;

· subsistem desain sirkuit kontrol;

· subsistem desain teknologi.

Subsistem pelayanan mencakup subsistem yang dirancang untuk mempertahankan fungsionalitas subsistem desain, misalnya:

· subsistem untuk tampilan grafis objek desain;

· subsistem dokumentasi;

· subsistem pencarian informasi, dll.

Tergantung pada hubungannya dengan objek desain, dua jenis subsistem desain dibedakan:

· berorientasi objek (object-based);

· objek-independen (invarian).

Subsistem objek mencakup subsistem yang melakukan satu atau lebih prosedur atau operasi desain yang bergantung langsung pada objek desain tertentu, misalnya:

· subsistem desain sistem teknologi;

· subsistem untuk pemodelan dinamika, struktur yang dirancang, dll.

Subsistem invarian mencakup subsistem yang melakukan prosedur dan operasi desain terpadu, misalnya:

· subsistem penghitungan bagian-bagian mesin;

· subsistem untuk menghitung mode pemotongan;

· subsistem untuk menghitung indikator teknis dan ekonomi, dll.

Proses desain diimplementasikan dalam subsistem dalam bentuk urutan prosedur dan operasi desain tertentu. Prosedur desain berhubungan dengan bagian dari subsistem desain, sebagai akibatnya keputusan desain tertentu dibuat. Ini terdiri dari operasi desain dasar, memiliki prosedur implementasi yang mapan dan ditujukan untuk mencapai tujuan lokal dalam proses desain. Operasi desain dipahami sebagai bagian yang dipilih secara kondisional dari prosedur desain atau tindakan dasar yang dilakukan oleh seorang desainer selama proses desain. Contoh prosedur desain mencakup prosedur untuk mengembangkan diagram kinematik atau tata letak peralatan mesin, teknologi pemrosesan produk, dll., dan contoh operasi desain mencakup penghitungan kelonggaran, penyelesaian persamaan, dll.

Kesatuan struktural subsistem CAD dijamin dengan pengaturan ketat koneksi antara berbagai jenis perangkat lunak, disatukan oleh fungsi target yang sama untuk subsistem tertentu. Jenis keamanan berikut ini dibedakan:

· dukungan metodologis - dokumen yang mencerminkan komposisi, aturan untuk pemilihan dan pengoperasian alat otomasi desain;

· dukungan linguistik - bahasa desain, terminologi;

· perangkat lunak - metode, model matematika, algoritma;

· perangkat lunak - dokumen dengan teks program, program pada media komputer dan dokumen operasional;

· dukungan teknis - peralatan komputer dan organisasi, perangkat transmisi data, perangkat pengukuran dan perangkat lainnya serta kombinasinya;

· dukungan informasi - dokumen yang berisi deskripsi prosedur desain standar, solusi desain standar, elemen standar, komponen, bahan dan data lainnya;

· dukungan organisasi - peraturan dan instruksi, perintah, jadwal kepegawaian dan dokumen lain yang mengatur struktur organisasi departemen dan interaksinya dengan seperangkat alat otomasi desain.

· 64 teknologi CALS.

Teknologi CALS berfungsi sebagai sarana untuk mengintegrasikan sistem otomatis industri ke dalam satu sistem multifungsi. Tujuan dari mengintegrasikan sistem desain dan kontrol otomatis adalah untuk meningkatkan efisiensi pembuatan dan penggunaan peralatan yang kompleks.

Dalam kondisi munculnya masyarakat informasi global saat ini, peran informasi dan teknologi informasi dalam penyiapan spesialis masa depan meningkat secara signifikan. Dalam waktu dekat, potensi strategis masyarakat bukan lagi sumber daya energi, melainkan informasi dan ilmu pengetahuan. Informasi menjadi sumber daya utama bagi perkembangan ilmu pengetahuan, teknis, dan sosial ekonomi masyarakat, berpengaruh signifikan terhadap percepatan perkembangan ilmu pengetahuan, teknologi, dan berbagai industri, serta berperan penting dalam proses modernisasi pendidikan. Karakteristik nilai-semantik pendidikan di universitas dan aktivitas profesional para spesialis harus diekspresikan dalam pembentukan lingkungan profesional intelektual yang sepenuhnya mewujudkan tugas kegiatan penelitian dan desain.

Komputerisasi yang meluas dari semua jenis aktivitas manusia: dari tugas intelektual tradisional yang bersifat ilmiah hingga otomatisasi produksi, perdagangan, komersial, perbankan, dan jenis aktivitas lainnya berfungsi untuk meningkatkan efisiensi produksi. Dalam ekonomi pasar, hanya perusahaan yang menggunakan teknologi informasi modern dalam aktivitasnya yang berhasil bertahan dalam persaingan.

Teknologi informasi, bersama dengan teknologi produksi material yang canggih, dapat meningkatkan produktivitas tenaga kerja dan kualitas produk secara signifikan dan pada saat yang sama secara signifikan mengurangi waktu yang diperlukan untuk meluncurkan produk baru yang memenuhi kebutuhan dan harapan konsumen. Semua hal di atas terutama berlaku untuk produk teknologi tinggi yang kompleks, termasuk produk untuk keperluan teknis.

Pengalaman yang diperoleh dalam proses penerapan berbagai sistem informasi otonom memungkinkan terwujudnya kebutuhan untuk mengintegrasikan berbagai teknologi informasi ke dalam satu kompleks berdasarkan penciptaan dalam suatu perusahaan atau kelompok perusahaan (perusahaan virtual) dari lingkungan informasi terintegrasi yang mendukung semua tahapan siklus hidup produk manufaktur. Lingkungan profesional sepenuhnya membuka peluang untuk peningkatan profesional, penggunaan teknologi informasi baru dalam sains dan di bidang manajemen proses produksi. Teknologi inovatif di bidang industri pemrosesan informasi dengan diperkenalkannya teknologi CALS- (Continuous Acquisition and Life Cycle Support) - dukungan informasi berkelanjutan untuk siklus hidup objek yang dirancang, membawa otomatisasi manajemen proses produksi ke tingkat yang baru.

Penggunaan teknologi informasi berdasarkan ideologi CALS merupakan salah satu faktor yang berkontribusi terhadap penerapan sistem manajemen perusahaan otomatis yang lebih efektif.

Teknologi CALS berfungsi sebagai sarana untuk mengintegrasikan sistem otomatis industri ke dalam satu sistem multifungsi. Tujuan dari mengintegrasikan sistem desain dan kontrol otomatis adalah untuk meningkatkan efisiensi pembuatan dan penggunaan peralatan yang kompleks.

Inti dari konsep CALS adalah penerapan prinsip dan teknologi dukungan informasi di semua tahap siklus hidup produk, berdasarkan penggunaan lingkungan informasi terintegrasi yang menyediakan cara terpadu untuk mengelola proses dan interaksi semua peserta dalam siklus ini: pelanggan produk (termasuk lembaga dan departemen pemerintah), pemasok (produsen) produk, personel pengoperasian dan pemeliharaan. Prinsip-prinsip dan teknologi ini diterapkan sesuai dengan persyaratan standar internasional yang mengatur aturan manajemen dan interaksi terutama melalui pertukaran data elektronik.

Saat menggunakan teknologi CALS, kualitas produk meningkat karena pertimbangan yang lebih lengkap atas informasi yang tersedia saat merancang dan membuat keputusan manajemen, serta mengurangi biaya material dan waktu untuk desain dan pembuatan produk. Dalam proses penerapan teknologi ini, validitas keputusan yang dibuat dalam sistem manajemen perusahaan otomatis (EMS) akan lebih tinggi jika pengambil keputusan dan program manajemen terkait memiliki akses cepat tidak hanya ke database AMMS, tetapi juga ke database lainnya. sistem otomatis dan Oleh karena itu, dapat mengoptimalkan rencana kerja, konten aplikasi, distribusi pemain, alokasi keuangan, dll. Pada saat yang sama, akses online harus dipahami tidak hanya sebagai kemampuan untuk membaca data dari database, tetapi juga sebagai kemudahan interpretasi yang benar, yaitu. konsistensi dalam sintaksis dan semantik dengan protokol yang diadopsi dalam sistem kontrol otomatis. Subsistem teknologi harus memahami dan menafsirkan dengan benar data yang berasal dari subsistem desain otomatis dengan akurasi tinggi. Hal ini tidak mudah dicapai jika perusahaan utama dan organisasi terkait bekerja dengan sistem otomatis yang berbeda. Selain itu, masalah perlindungan informasi di seluruh perimeter subsistem teknologi menjadi mendesak.

Penggunaan teknologi CALS dapat secara signifikan mengurangi jumlah pekerjaan desain, karena deskripsi keberhasilan pengembangan komponen dan perangkat yang telah diselesaikan sebelumnya, banyak komponen peralatan, mesin, dan sistem yang dirancang sebelumnya disimpan dalam database server jaringan, dapat diakses oleh semua pengguna. teknologi CALS. Ketersediaan dan perlindungan sekali lagi dipastikan melalui konsistensi format, metode, pedoman di berbagai bagian sistem terintegrasi secara keseluruhan. Selain itu, terdapat peluang lebih besar untuk spesialisasi perusahaan, bahkan menciptakan perusahaan virtual, yang juga membantu mengurangi biaya.

Dalam proses penerapan teknologi CALS, biaya operasional berkurang secara signifikan karena penerapan fungsi pendukung logistik yang terintegrasi. Hal ini mempermudah penyelesaian masalah pemeliharaan, integrasi produk ke dalam berbagai jenis sistem dan lingkungan, adaptasi terhadap perubahan kondisi pengoperasian, dll. Keuntungan integrasi data ini dicapai melalui penggunaan teknologi CALS modern.

Sistem otomatis industri dapat beroperasi secara mandiri, dan saat ini pengorganisasian proses manajemen produksi terjadi atas dasar ini. Namun, efektivitas otomatisasi akan jauh lebih tinggi jika data yang dihasilkan di salah satu sistem tersedia di sistem lain, karena keputusan yang dibuat di dalamnya akan lebih terinformasi.

Pengalaman penerapan teknologi CALS menunjukkan bahwa untuk mencapai tingkat interaksi yang tepat antara sistem otomasi industri, perlu untuk menciptakan ruang informasi terpadu baik di dalam perusahaan individu maupun, yang lebih penting, dalam kerangka asosiasi perusahaan. Ruang informasi terpadu dipastikan dengan menyatukan bentuk dan isi informasi tentang produk tertentu pada berbagai tahap siklus hidupnya.

Penyatuan formulir dicapai dengan menggunakan format dan bahasa standar untuk menyajikan informasi dalam pertukaran antarprogram dan selama dokumentasi.

Penyatuan konten, yang dipahami sebagai interpretasi data yang benar dan jelas tentang produk tertentu di semua tahap siklus hidupnya, dipastikan melalui pengembangan ontologi (deskripsi meta) aplikasi, yang diabadikan dalam protokol aplikasi CALS.

CAD – apa itu?

Jadi, apa yang dimaksud dengan sistem desain berbantuan komputer? CAD mengacu pada sistem otomatis yang dirancang untuk mengimplementasikan teknologi informasi tertentu melalui desain. Dalam praktiknya, sistem CAD adalah sistem teknis yang memungkinkan otomatisasi dan memastikan berfungsinya proses yang membentuk pengembangan proyek. Tergantung pada konteksnya, CAD dapat berarti:

perangkat lunak yang digunakan sebagai elemen utama infrastruktur terkait;

Seperangkat sistem teknis dan personalia (termasuk yang melibatkan penggunaan CAD dalam bentuk perangkat lunak) yang digunakan di suatu perusahaan untuk mengotomatisasi proses pengembangan proyek;

Dengan demikian, kita dapat membedakan penafsiran yang luas dan sempit dari istilah yang dimaksud. Sulit untuk mengatakan interpretasi mana yang lebih sering digunakan dalam bisnis. Itu semua tergantung pada area spesifik penggunaan sistem desain berbantuan komputer, serta pada tugas yang seharusnya menggunakan sistem ini. Jadi, misalnya, dalam konteks satu bengkel produksi, CAD diasumsikan sebagai program khusus untuk desain berbantuan komputer. Jika kita berbicara tentang perencanaan strategis untuk pengembangan suatu organisasi, maka konsep seperti CAD kemungkinan besar akan berhubungan dengan infrastruktur skala besar yang digunakan untuk meningkatkan efisiensi pengembangan berbagai proyek. Perlu diperhatikan bahwa istilah CAD sendiri merupakan singkatan yang dapat diartikan dengan berbagai cara. Secara umum, singkatan ini sesuai dengan kombinasi kata “sistem desain berbantuan komputer”. Ada juga pilihan lain untuk menguraikan singkatan ini. Misalnya, opsi “sistem otomasi desain” cukup umum. Dari segi makna, padanan bahasa Inggris dari istilah CAD adalah singkatan CAD, dalam beberapa kasus CAX juga digunakan. Mari kita lihat lebih dekat pertanyaan berikut: untuk tujuan apa sistem desain berbantuan komputer dapat dibuat di bidang teknik mesin dan bidang lain?

CAD: tujuan penciptaan

Tujuan utama pengembangan CAD adalah untuk meningkatkan efisiensi tenaga kerja para spesialis perusahaan yang memecahkan berbagai masalah produksi, termasuk yang berkaitan dengan desain teknik. Dalam hal ini efisiensi dapat ditingkatkan karena faktor-faktor berikut:

Mengurangi intensitas tenaga kerja dalam proses desain;

Mengurangi waktu pelaksanaan proyek;

Mengurangi biaya pekerjaan desain dan biaya operasional;

Memastikan peningkatan kualitas infrastruktur desain.

Mengurangi biaya pengujian dan simulasi.

CAD adalah alat yang memungkinkan Anda mencapai keuntungan yang dicatat karena faktor-faktor berikut:

Dukungan informasi yang efektif untuk spesialis yang terlibat dalam pengembangan proyek;

Otomatisasi dokumentasi;

Penerapan konsep desain paralel;

Penyatuan berbagai solusi;

Penerapan pemodelan matematika sebagai alternatif pengujian yang mahal;

Optimalisasi metode desain;

Meningkatkan kualitas proses manajemen bisnis.

Sekarang mari kita lihat struktur di mana sistem desain otomatis dapat disajikan.

CAD: klasifikasi

Kriteria paling umum untuk klasifikasi CAD mencakup tujuan industri. Jenis-jenis berikut ini dibedakan:

  1. Desain otomatis infrastruktur teknik mesin;
  2. CAD untuk peralatan elektronik;
  3. CAD di bidang konstruksi.

Jenis sistem CAD yang pertama dapat digunakan di berbagai industri: manufaktur pesawat terbang, manufaktur otomotif, pembuatan kapal, dan manufaktur barang konsumsi. Selain itu, infrastruktur terkait dapat digunakan untuk mengembangkan bagian-bagian individual dan berbagai mekanisme dengan menggunakan berbagai pendekatan dalam kerangka pemodelan dan desain.

Jenis sistem CAD kedua digunakan untuk merancang peralatan elektronik jadi dan elemen individualnya, misalnya sirkuit terintegrasi, prosesor, dan jenis perangkat keras lainnya.

CAD tipe ketiga dapat digunakan untuk mendesain berbagai struktur, bangunan, dan elemen infrastruktur.

Kriteria lain yang dapat digunakan untuk mengklasifikasikan sistem desain berbantuan komputer adalah tujuan yang dimaksudkan. Di sini mereka menyoroti:

Alat desain yang digunakan untuk mengotomatiskan model geometris dua dimensi atau tiga dimensi untuk menghasilkan dokumentasi desain;

Sistem yang digunakan untuk tujuan mengembangkan berbagai gambar;

Sistem yang dirancang untuk pemodelan geometris;

Sistem yang dirancang untuk mengotomatiskan perhitungan dalam proyek teknik dan pemodelan dinamis;

Alat otomasi yang digunakan untuk tujuan optimalisasi teknologi proyek;

Sistem yang dirancang untuk analisis komputer dari berbagai parameter untuk proyek.

Klasifikasi ini dianggap bersyarat.

Sistem desain proses berbantuan komputer dapat mencakup berbagai fungsi yang tercantum di atas. Daftar spesifik kemampuan CAD terutama ditentukan oleh pengembang sistem. Mari kita lihat tugas apa saja yang bisa diselesaikannya.

Perangkat Lunak Alat Pengembangan Perangkat Lunak Sistem

Karangan

PERANGKAT LUNAK - seperangkat program sistem pemrosesan informasi dan dokumen program yang diperlukan untuk pengoperasian program ini (GOST 19781-90). Juga - seperangkat program, prosedur dan aturan, serta dokumentasi yang berkaitan dengan pengoperasian sistem pemrosesan data (ST ISO 2382/1-84).

PERANGKAT LUNAK ALAT – perangkat lunak yang dimaksudkan untuk digunakan dalam desain, pengembangan dan pemeliharaan program. Biasanya, istilah ini digunakan untuk menekankan perbedaan antara kelas perangkat lunak ini dan perangkat lunak aplikasi dan sistem.

COMPILER – penerjemah yang mengubah program yang ditulis dalam bahasa sumber menjadi modul objek.

INTERPRETER - sebuah program (terkadang perangkat keras) yang menganalisis perintah atau pernyataan program dan segera menjalankannya.

SISTEM OPERASI - seperangkat program kontrol dan pemrosesan, yang, di satu sisi, bertindak sebagai antarmuka antara perangkat sistem komputer dan program aplikasi, dan di sisi lain, dirancang untuk mengontrol perangkat, mengelola proses komputasi, mendistribusikan sumber daya komputasi secara efektif antar proses komputasi dan mengatur komputasi yang andal.

PROGRAM APLIKASI - program yang dirancang untuk melakukan tugas pengguna tertentu dan dirancang untuk interaksi langsung dengan pengguna.

VISUALBASIC adalah alat pengembangan perangkat lunak yang dikembangkan oleh Microsoft Corporation yang mencakup bahasa pemrograman dan lingkungan pengembangan.

VISUALBASICFORAPPLICATION adalah implementasi yang sedikit disederhanakan dari bahasa pemrograman Visual Basic, dibangun ke dalam lini produk Microsoft Office (termasuk versi untuk Mac OS), serta banyak paket perangkat lunak lain seperti AutoCAD, SolidWorks, CorelDRAW, WordPerfect dan ESRI ArcGIS.

Tujuan dari pekerjaan ini adalah untuk mempelajari jenis dan fungsi perangkat lunak, khususnya perangkat lunak instrumental.

Klasifikasi perangkat lunak:

Jenis perangkat lunak alat:

1) Editor teks

4) Penyusun

5) Penerjemah

6) Penghubung

8) Perakit

9) Debugger

10) Profiler

11) Generator dokumentasi

Untuk membuat program dalam bahasa pemrograman yang dipilih, Anda perlu memiliki komponen-komponen berikut:

2. Kompiler atau juru bahasa. Teks sumber diterjemahkan ke dalam kode objek perantara menggunakan program kompiler.

Hasil pekerjaan: Perangkat lunak, fungsi dan jenisnya, khususnya perangkat lunak instrumental, esensinya, dan tugasnya dipertimbangkan. Bab ketiga membahas Microsoft Visual Basic sebagai alat pengembangan perangkat lunak dan dialeknya - Microsoft Visual Basic for Application. Mata kuliah ini mengimplementasikan algoritma untuk memecahkan masalah keuangan dan ekonomi menggunakan bahasa pemrograman Pascal.

Perkenalan

Di dunia modern, lebih dari satu orang yang telah merasakan manfaat peradaban tidak dapat membayangkan hidupnya tanpa penggunaan teknologi komputer. Penggunaannya terjadi di setiap bidang aktivitas manusia: produksi, perdagangan, pendidikan, hiburan dan komunikasi masyarakat, kegiatan ilmiah dan budaya mereka. Semua ini berkat kemampuan memilih peralatan komputer untuk memecahkan masalah apa pun, bahkan yang paling rumit sekalipun.

Namun, keserbagunaan dan spesialisasi teknologi komputer dipastikan melalui penggunaan serangkaian perangkat lunak berbeda berdasarkan hampir semua komputer yang memberikan solusi untuk setiap tugas yang diberikan.

Kita semua melihat beragamnya program komputer serta laju pertumbuhan dan peningkatannya yang luar biasa, dan hanya sebagian kecil dari kita yang memahami sisi tak kasat mata dari desain, pengembangan, dan penciptaannya. Namun bidang teknologi komputer ini menurut kami adalah yang paling penting, karena masa depan teknologi komputer akan bergantung pada perkembangannya.

Dan karena pengembangan program komputer apa pun terjadi menggunakan Perangkat Lunak Instrumental, dalam tugas kursus kami, saya ingin membahasnya secara rinci, menyorotinya dari semua perangkat lunak dan mengungkapkan esensi dan fitur-fiturnya.

Untuk lebih jelasnya, kita akan melihat perangkat lunak instrumental (objek studi) menggunakan contoh paket perangkat lunak VisualBasicforApplication (subjek studi), yang digunakan untuk pemrograman di lingkungan Microsoft Office - paket perkantoran yang paling luas dan populer.

1. Perangkat Lunak

1.1 Konsep dan esensi perangkat lunak

Perangkat lunak merupakan bagian integral dari sistem komputer. Ini adalah kelanjutan logis dari sarana teknis komputer mana pun. Ruang lingkup komputer tertentu ditentukan oleh perangkat lunak yang dibuat untuknya. Komputer itu sendiri tidak memiliki pengetahuan tentang aplikasi apa pun. Semua pengetahuan ini terkonsentrasi pada program yang berjalan di komputer, yang memiliki serangkaian fungsi khusus dan dirancang untuk melakukan fungsi tertentu, dalam banyak kasus, fungsi yang sangat terspesialisasi, seperti membuat dan memproses gambar grafik atau file suara.

Perangkat lunak saat ini terdiri dari ratusan ribu program yang dirancang untuk memproses berbagai macam informasi untuk berbagai tujuan.

Perangkat lunak juga mencakup seluruh bidang kegiatan dalam desain dan pengembangan perangkat lunak:

1) teknologi desain program (misalnya, desain top-down, desain terstruktur dan berorientasi objek);

2) metode pengujian program;

3) metode pembuktian kebenaran program;

4) analisis kualitas program;

5) mendokumentasikan program;

6) pengembangan dan penggunaan perangkat lunak yang memfasilitasi proses desain perangkat lunak, dan banyak lagi.

Ada banyak definisi berbeda tentang perangkat lunak. Secara umum, perangkat lunak adalah seperangkat program sistem pemrosesan informasi dan dokumen program yang diperlukan untuk pengoperasian program tersebut (GOST 19781-90). Juga - seperangkat program, prosedur dan aturan, serta dokumentasi yang berkaitan dengan pengoperasian sistem pemrosesan data (ST ISO 2382/1-84).

Perangkat lunak adalah salah satu jenis dukungan sistem komputer, bersama dengan dukungan teknis (perangkat keras), matematika, informasi, linguistik, organisasi dan metodologi.

Dalam bahasa gaul komputer, kata software sering digunakan dari kata bahasa Inggris software, yang dalam pengertian ini pertama kali digunakan dalam sebuah artikel di American Mathematical Monthly oleh ahli matematika Universitas Princeton John W. Tukey pada tahun 1958.

Definisi lain:

1) PERANGKAT LUNAK adalah sekumpulan program yang memungkinkan pemrosesan informasi secara otomatis di komputer.

2) PERANGKAT LUNAK (dukungan matematis komputer elektronik), seperangkat program untuk sistem pengolahan data dan dokumen program yang diperlukan untuk mengimplementasikan program pada komputer elektronik.

3) PERANGKAT LUNAK - seperangkat program untuk mengendalikan proses pengoperasian komputer dan mengotomatisasi pemrograman.

4) PERANGKAT LUNAK - seperangkat program komputer yang menyediakan pemrosesan atau transmisi data.

Semua definisi serupa dan mencerminkan esensi perangkat lunak - pengorganisasian interaksi bagian perangkat keras (teknis), dalam bentuk berbagai node dan perangkat periferal bawaan, kontrol dan koordinasi keseluruhan interaksi sistem komputer satu sama lain. dan dengan pengguna.

1.2 Fungsi perangkat lunak

Konsep perangkat lunak di atas menentukan fungsi yang dilakukan perangkat lunak selama pengoperasian peralatan komputer. Daftar fungsi-fungsi ini sangat beragam, tetapi secara kasar dapat dibagi menjadi lima jenis berikut:

1. Perangkat keras dan mekanik. Mereka menghubungkan berbagai komponen komputer dan memastikan transmisi sinyal perangkat keras dari satu komponen ke komponen lainnya.

2. Mesin-Logis. Memproses dan menafsirkan sekumpulan pulsa elektromagnetik dari perangkat keras menjadi kode perangkat lunak yang memiliki kesadaran logis yang memiliki struktur dan properti tertentu.

3. Informasi dan perintah. Mereka memeriksa kepatuhan kode program dengan prinsip-prinsip sistem dan membuat struktur informasi yang logis dan melaksanakan pelaksanaannya.

4. Antarmuka. Menyediakan pemrosesan dan interpretasi kode program ke dalam format tampilan yang dapat diakses oleh pengguna. Menciptakan lingkungan yang mendukung interaksi “Komputer-Manusia, Manusia-Komputer”.

5. Diterapkan. Melakukan tindakan matematis, logika, fisika, dan lainnya dengan sekumpulan data yang tersedia, dengan kata lain, memproses informasi yang tersedia untuk memecahkan masalah tertentu.

Daftar ini masih jauh dari lengkap, yang menunjukkan keragaman dan ambiguitas fungsi yang dilakukan oleh perangkat lunak.

1.3 Jenis perangkat lunak

Bergantung pada fungsi yang disediakan oleh komponen komputer tertentu, ada kebutuhan untuk membuat perangkat lunak khusus Anda sendiri untuk komponen tersebut, yang merupakan motif mendasar untuk membuat berbagai jenis perangkat lunak, ditunjukkan pada (Gbr. 1):

a) Program aplikasi yang secara langsung mendukung pelaksanaan pekerjaan yang dibutuhkan pengguna;

b) program sistem, yang dirancang untuk mengontrol pengoperasian sistem komputer, menjalankan berbagai fungsi tambahan, misalnya:

1) manajemen sumber daya komputer;

2) membuat salinan dari informasi yang digunakan;

3) memeriksa fungsionalitas perangkat komputer;

4) mengeluarkan informasi referensi tentang komputer, dll;

c) sistem perangkat lunak instrumental yang memfasilitasi proses pembuatan program komputer baru.

Perangkat lunak sistem memastikan pengoperasian dan pemeliharaan komputer, serta otomatisasi proses pembuatan program baru. Perangkat lunak sistem meliputi: sistem operasi dan antarmuka penggunanya; alat perangkat lunak; sistem pemeliharaan.

Sistem operasi adalah bagian wajib dari perangkat lunak khusus yang memastikan berfungsinya komputer pribadi secara efektif dalam berbagai mode, mengatur pelaksanaan program dan interaksi pengguna dan perangkat eksternal dengan komputer.

Antarmuka pengguna (program layanan) adalah perangkat lunak tambahan pada sistem operasi (shell dan lingkungan) yang dirancang untuk menyederhanakan komunikasi pengguna dengan sistem operasi.

Program yang menyediakan antarmuka tetap mempertahankan bentuk komunikasi (dialog) antara pengguna dan sistem operasi, tetapi mengubah bahasa komunikasi (biasanya bahasa perintah diubah menjadi bahasa menu). Sistem layanan dapat dibagi menjadi sistem antarmuka, shell sistem operasi, dan utilitas.

Sistem antarmuka adalah sistem layanan yang kuat, paling sering dalam bentuk grafis, yang meningkatkan tidak hanya pengguna, tetapi juga antarmuka program sistem operasi, khususnya, menerapkan beberapa prosedur tambahan untuk membagi sumber daya tambahan.

Shell sistem operasi memberi pengguna antarmuka yang secara kualitatif baru dibandingkan dengan yang diterapkan oleh sistem operasi dan menjadikan pengetahuan tentang antarmuka tersebut opsional.

Utilitas mengotomatiskan pelaksanaan prosedur standar tertentu yang sering digunakan, yang penerapannya mengharuskan pengguna untuk mengembangkan program khusus. Banyak utilitas telah mengembangkan antarmuka interaktif dengan pengguna dan mendekati tingkat komunikasi dengan shell.

Alat perangkat lunak (sistem pemrograman) adalah bagian wajib dari perangkat lunak yang digunakan untuk membuat program. Alat perangkat lunak meliputi alat untuk menulis program (editor teks); alat untuk mengubah program menjadi bentuk yang sesuai untuk dieksekusi di komputer (assembler, compiler, interpreter, loader dan editor tautan), sarana untuk memantau dan men-debug program.

Editor teks memungkinkan Anda mengedit, membentuk, dan menggabungkan teks program dengan mudah, dan beberapa memungkinkan Anda mengontrol sintaksis program yang dibuat.

Sebuah program yang ditulis dalam bahasa algoritmik harus diubah menjadi modul objek yang ditulis dalam bahasa mesin (kode biner). Konversi semacam itu dilakukan oleh penerjemah (assembler - dari bahasa Assembler dan compiler - dari bahasa tingkat tinggi). Untuk beberapa bahasa algoritmik, interpreter digunakan yang tidak membuat modul objek, tetapi, dengan setiap eksekusi program yang berurutan, menerjemahkan setiap baris atau pernyataan ke dalam bahasa mesin. Modul objek diproses oleh pemuat - editor tautan, yang mengubahnya menjadi program mesin yang dapat dieksekusi.

Alat debugging memungkinkan Anda melacak program (eksekusi langkah demi langkah dengan informasi tentang hasil eksekusi), memeriksa sintaksis program dan hasil antara pada titik henti sementara, dan mengubah nilai variabel pada titik tersebut.

Sistem pemeliharaan dan layanan adalah alat perangkat lunak untuk memantau, mendiagnosis, dan memulihkan fungsionalitas komputer, disk, dll.

Perangkat lunak aplikasi memberikan solusi untuk masalah pengguna. Konsep kuncinya di sini adalah paket aplikasi.

Paket perangkat lunak aplikasi adalah sekumpulan program untuk memecahkan berbagai masalah pada topik atau subjek tertentu. Jenis paket aplikasi berikut ini dibedakan:

1) tujuan umum - berfokus pada otomatisasi berbagai tugas pengguna (pengolah kata, editor spreadsheet, sistem manajemen basis data, prosesor grafis, sistem penerbitan, sistem otomasi desain, dll.);

2) berorientasi pada metode - penerapan berbagai metode ekonomi dan matematika untuk memecahkan masalah (pemrograman matematika, perencanaan dan manajemen jaringan, teori antrian, statistik matematika, dll.);

3) berorientasi pada masalah - ditujukan untuk menyelesaikan tugas (masalah) tertentu dalam bidang subjek tertentu (paket perbankan, paket akuntansi, manajemen keuangan, sistem referensi hukum, dll.).

Perangkat lunak aplikasi mencakup perangkat lunak layanan yang berfungsi untuk mengatur lingkungan kerja yang nyaman bagi pengguna, serta untuk melakukan fungsi tambahan (manajer informasi, penerjemah, dll.).

Saat membangun klasifikasi perangkat lunak, kita harus memperhitungkan fakta bahwa pesatnya perkembangan teknologi komputasi dan perluasan cakupan aplikasi komputer telah mempercepat proses evolusi perangkat lunak secara tajam. Jika sebelumnya mudah untuk membuat daftar kategori utama perangkat lunak - sistem operasi, penerjemah, paket perangkat lunak aplikasi, kini situasinya telah berubah secara radikal. Pengembangan perangkat lunak telah berjalan baik secara mendalam (pendekatan baru untuk membangun sistem operasi, bahasa pemrograman, dll. telah muncul) dan secara luas (program aplikasi tidak lagi diterapkan dan memperoleh nilai independen). Hubungan antara produk perangkat lunak yang dibutuhkan dan yang tersedia di pasar berubah dengan sangat cepat. Bahkan produk perangkat lunak klasik, seperti sistem operasi, terus berkembang dan dilengkapi dengan fungsi-fungsi cerdas, yang banyak di antaranya sebelumnya hanya berkaitan dengan kemampuan intelektual manusia.

2. Perangkat lunak perkakas

2.1 Esensi dan konsep perangkat lunak

Perangkat lunak instrumental (IPO) adalah perangkat lunak yang dimaksudkan untuk digunakan dalam desain, pengembangan, dan pemeliharaan program.

Perkakas digunakan dalam tahap pengembangan. Perangkat lunak perkakas adalah kumpulan program yang digunakan untuk membantu pemrogram dalam pekerjaannya, untuk membantu manajer pengembangan perangkat lunak dalam upayanya mengendalikan proses pengembangan dan produk yang dihasilkan. Perwakilan paling terkenal dari bagian perangkat lunak ini adalah program penerjemah dari bahasa pemrograman, yang membantu pemrogram menulis perintah mesin. Program instrumental adalah penerjemah dari bahasa Fortran, Cobol, Joe-vial, BASIC, APL dan Pascal. Mereka memfasilitasi proses pembuatan program kerja baru. Namun, penerjemah bahasa hanyalah bagian program instrumental yang paling terkenal; jumlahnya sangat banyak.

Menggunakan komputer untuk membantu membuat program baru masih jauh dari jelas bagi orang yang bukan pemrogram profesional. Sering terjadi bahwa para profesional berbicara tentang perangkat lunak alat (fase pengembangan) dan sistem (fase penggunaan) secara bersamaan, dengan asumsi bahwa mereka yang tidak mengetahui rahasia keahlian mereka menyadari peran perangkat lunak alat ini. Seperti halnya pada tahap penggunaan (untuk program aplikasi), perangkat lunak sistem juga bekerja pada tahap pengembangan, namun hanya bersamaan dengan perkakasnya. Perangkat lunak alat atau sistem pemrograman adalah sistem untuk mengotomatisasi pengembangan program baru dalam bahasa pemrograman.

Dalam kasus yang paling umum, untuk membuat program dalam bahasa pemrograman yang dipilih (bahasa pemrograman sistem), Anda perlu memiliki komponen-komponen berikut:

1. Editor teks untuk membuat file dengan teks sumber program.

2. Kompiler atau juru bahasa. Teks sumber diterjemahkan ke dalam kode objek perantara menggunakan program kompiler. Kode sumber suatu program besar terdiri dari beberapa modul (file sumber). Setiap modul dikompilasi menjadi file terpisah dengan kode objek, yang kemudian harus digabungkan menjadi satu.

3. Editor tautan atau assembler yang menghubungkan modul objek dan menghasilkan aplikasi yang berfungsi sebagai keluaran - kode yang dapat dieksekusi.

Kode yang dapat dieksekusi adalah program lengkap yang dapat dijalankan di komputer mana pun yang memiliki sistem operasi tempat program tersebut dibuat. Biasanya, file yang dihasilkan memiliki ekstensi .EXE atau .COM.

Baru-baru ini, metode pemrograman visual (menggunakan bahasa scripting) yang ditujukan untuk membuat aplikasi Windows telah tersebar luas. Proses ini diotomatisasi dalam lingkungan desain cepat. Dalam hal ini, komponen visual siap pakai digunakan, yang dikonfigurasi menggunakan editor khusus.

Editor paling populer (sistem pemrograman program menggunakan alat visual) untuk desain visual:

1) Borland Delphi - dirancang untuk memecahkan hampir semua masalah pemrograman aplikasi.

2) Borland C++ Builder adalah alat yang sangat baik untuk mengembangkan aplikasi DOS dan Windows.

3) Microsoft Visual Basic adalah alat yang populer untuk membuat program Windows.

4) Microsoft Visual C++ - alat ini memungkinkan Anda mengembangkan aplikasi apa pun yang berjalan di lingkungan OS seperti Microsoft Windows

Jadi, inti dari perangkat lunak instrumental adalah membuat program apa pun yang dapat dieksekusi dengan mengubah ekspresi logika formal menjadi kode mesin yang dapat dieksekusi, serta kontrol dan penyesuaiannya.

2.2 Tugas dan fungsi perangkat lunak alat

Perangkat lunak instrumental, sebagai jenis perangkat lunak khusus, dicirikan oleh umum dan khusus

fungsi, seperti untuk semua perangkat lunak pada umumnya. Fungsi umum telah dibahas di atas, dan fungsi khusus yang hanya terdapat pada program jenis ini adalah:

1. Membuat teks program yang sedang dikembangkan dengan menggunakan kata-kata kode (bahasa pemrograman) yang dibuat khusus, serta sekumpulan karakter tertentu dan lokasinya dalam file - sintaksis program yang dibuat.

2. Terjemahan teks program yang dibuat ke dalam kode berorientasi mesin, dapat diakses untuk pengenalan komputer. Jika volume program yang dibuat besar, maka program tersebut dibagi menjadi modul-modul terpisah dan masing-masing modul diterjemahkan secara terpisah.

3. Menghubungkan modul individu ke dalam satu kode yang dapat dieksekusi, sesuai dengan struktur yang diperlukan, memastikan koordinasi interaksi masing-masing bagian satu sama lain.

4. Menguji dan memantau program yang dibuat, mengidentifikasi dan menghilangkan kesalahan formal, logis dan sintaksis, memeriksa program untuk keberadaan kode-kode terlarang, serta menilai kinerja dan potensi program yang dibuat.

2.3 Jenis perangkat lunak

Berdasarkan tugas yang diberikan pada perangkat lunak instrumental, kita dapat membedakan sejumlah besar jenis perangkat lunak instrumental:

1) Editor teks

2) Lingkungan Pembangunan Terpadu

4) Penyusun

5) Penerjemah

6) Penghubung

7) Parser dan generator parser (lihat Javacc)

8) Perakit

9) Debugger

10) Profiler

11) Generator dokumentasi

12) Alat analisis cakupan kode

13) Alat integrasi berkelanjutan

14) Alat pengujian otomatis

15) Sistem kontrol versi, dll.

Perlu dicatat bahwa shell untuk membuat program aplikasi juga dibuat oleh program alat dan oleh karena itu dapat diklasifikasikan sebagai program aplikasi. Mari kita pertimbangkan secara singkat tujuan dari beberapa program instrumental.

Editor teks.

Editor teks adalah program komputer yang dirancang untuk memproses file teks, seperti membuat dan membuat perubahan.

Jenis editor teks.

Secara konvensional, ada dua jenis editor: editor teks streaming dan editor interaktif.

Editor teks aliran adalah program komputer yang dirancang untuk secara otomatis memproses input data teks yang diterima dari file teks sesuai dengan aturan yang telah ditentukan oleh pengguna. Seringkali, aturannya adalah ekspresi reguler, dalam dialek khusus untuk editor teks tertentu. Contoh editor teks tersebut adalah editor Sed.

Editor teks interaktif adalah rangkaian program komputer yang dirancang untuk membuat perubahan pada file teks secara interaktif. Program semacam itu memungkinkan Anda untuk menampilkan status data teks saat ini dalam suatu file dan melakukan berbagai tindakan terhadapnya.

Seringkali editor teks interaktif berisi fungsionalitas tambahan yang signifikan yang dirancang untuk mengotomatisasi bagian dari tindakan pengeditan, atau untuk mengubah tampilan data teks, bergantung pada semantiknya. Contoh dari jenis fungsionalitas yang terakhir adalah penyorotan sintaksis.

Editor teks dirancang untuk membuat dan mengedit dokumen teks. Yang paling umum adalah MS WORD, Lexicon. Fungsi utama editor teks adalah:

1) bekerja dengan fragmen dokumen,

2) penyisipan objek yang dibuat di program lain

3) memecah teks dokumen menjadi beberapa halaman

4) memasukkan dan mengedit tabel

5) memasukkan dan mengedit rumus

6) pemformatan paragraf

7) pembuatan daftar secara otomatis

8) pembuatan daftar isi secara otomatis.

Lusinan editor teks dikenal. Yang paling mudah diakses adalah CATATANPAD (notepad), WORDPAD, WORD. Pengoperasian editor teks tertentu biasanya ditentukan oleh fungsi, yang tujuannya tercermin dalam item menu dan sistem bantuan.

Lingkungan Pembangunan Terpadu

Lingkungan pengembangan terintegrasi, ISD, adalah sistem perangkat lunak yang digunakan oleh pemrogram untuk mengembangkan perangkat lunak. Biasanya lingkungan pengembangan meliputi:

1) editor teks

2) kompiler dan/atau juru bahasa

3) alat otomatisasi perakitan

4) debugger.

Terkadang juga berisi alat untuk integrasi dengan sistem kontrol versi dan berbagai alat untuk menyederhanakan desain antarmuka pengguna grafis. Banyak lingkungan pengembangan modern juga menyertakan browser kelas, pemeriksa objek, dan diagram hierarki kelas untuk digunakan dalam pengembangan perangkat lunak berorientasi objek. Meskipun ada lingkungan pengembangan yang dirancang untuk beberapa bahasa pemrograman - seperti Eclipse, NetBeans, Embarcadero RAD Studio, Qt Creator atau Microsoft Visual Studio, biasanya lingkungan pengembangan ditujukan untuk satu bahasa pemrograman tertentu - seperti Visual Basic, Delphi, Dev -C++.

Kasus khusus ISR adalah lingkungan pengembangan visual, yang mencakup kemampuan untuk mengedit antarmuka program secara visual.

SDK.

SDK (dari bahasa Inggris SoftwareDevelopmentKit) atau "devkit" adalah kit pengembangan yang memungkinkan spesialis perangkat lunak membuat aplikasi untuk paket perangkat lunak tertentu, perangkat lunak pengembangan inti, platform perangkat keras, sistem komputer, konsol video game, sistem operasi, dan platform lainnya.

Pemrogram biasanya menerima SDK langsung dari pengembang teknologi atau sistem target. Seringkali SDK didistribusikan melalui Internet. Banyak SDK didistribusikan secara gratis untuk mendorong pengembang menggunakan teknologi atau platform tertentu.

Vendor SDK terkadang mengganti istilah Software di Software Development Kit dengan kata yang lebih tepat. Misalnya, Microsoft dan Apple menyediakan Driver Development Kits (DDK) untuk mengembangkan driver perangkat, dan PalmSource menyebut perangkat pengembangannya sebagai PalmOS Development Kit (PDK).

Contoh SDK :

5) Perangkat Pengembangan Java

6) SDK Perangkat Opera

Kompiler.

Kompiler -

1) Sebuah program atau alat teknis yang melakukan kompilasi.

2) Program mesin yang digunakan untuk kompilasi.

3) Penerjemah yang mengubah program yang ditulis dalam bahasa sumber menjadi modul objek.

4) Program yang menerjemahkan teks program dalam bahasa tingkat tinggi ke dalam program setara dalam bahasa mesin.

5) Sebuah program yang dirancang untuk menerjemahkan bahasa tingkat tinggi ke dalam kode absolut atau, terkadang, ke dalam bahasa assembly. Informasi masukan ke kompiler (kode sumber) adalah deskripsi algoritma atau program dalam bahasa berorientasi masalah, dan output dari kompiler adalah deskripsi setara algoritma dalam bahasa berorientasi mesin (kode objek).

Kompilasi -

1) Penerjemahan suatu program ke dalam bahasa yang mirip dengan bahasa mesin.

2) Penerjemahan program yang ditulis dalam bahasa sumber ke dalam modul objek. Dilakukan oleh compiler.

Kompilasi - menerjemahkan program mesin dari bahasa berorientasi masalah ke bahasa berorientasi mesin.

Jenis kompiler :

1) Vektorisasi. Menerjemahkan kode sumber menjadi kode mesin pada komputer yang dilengkapi dengan prosesor vektor.

2) Fleksibel. Modular, berbasis tabel, dan diprogram dalam bahasa tingkat tinggi atau diimplementasikan menggunakan kompiler dari kompiler.

3) Dialog.

4) Tambahan. Mengirimkan ulang fragmen program dan tambahannya tanpa mengkompilasi ulang seluruh program.

5) Interpretif (langkah demi langkah). Secara berurutan melakukan kompilasi independen dari setiap pernyataan (perintah) dari program sumber.

6) Penyusun penyusun. Penerjemah yang menerima deskripsi formal suatu bahasa pemrograman dan menghasilkan kompiler untuk bahasa tersebut.

7) Men-debug. Menghilangkan jenis kesalahan sintaksis tertentu.

8) Penduduk. Berada secara permanen di memori utama dan tersedia untuk digunakan kembali oleh banyak tugas.

9) Kompilasi sendiri. Ditulis dalam bahasa yang sama dengan bahasa yang digunakan untuk menyiarkan.

10) Universal. Berdasarkan deskripsi formal sintaksis dan semantik bahasa input. Komponen kompiler tersebut adalah: kernel, pemuat sintaksis dan semantik.

Jenis kompilasi :

1) Kelompok. Mengompilasi beberapa modul sumber menjadi satu item pekerjaan.

2) Baris demi baris.

3) Bersyarat. Kompilasi di mana teks terjemahan bergantung pada kondisi yang ditentukan dalam program sumber. Jadi, bergantung pada nilai konstanta tertentu, Anda dapat mengaktifkan atau menonaktifkan terjemahan sebagian teks program.

Struktur penyusun.

Proses kompilasi terdiri dari langkah-langkah berikut:

1) Analisis leksikal. Pada tahap ini, rangkaian karakter pada file sumber diubah menjadi rangkaian token.

2) Analisis sintaksis (gramatikal). Urutan token diubah menjadi pohon parse.

3) Analisis semantik. Pohon parse diproses untuk menetapkan semantik (makna) - misalnya, mengikat pengidentifikasi ke deklarasi, tipe, memeriksa kompatibilitas, menentukan tipe ekspresi, dll. Hasilnya biasanya disebut "representasi/kode perantara", dan dapat diperluas dengan pohon parsing, pohon baru, kumpulan perintah abstrak, atau hal lain yang sesuai untuk diproses lebih lanjut.

4) Optimasi. Menghapus struktur yang tidak perlu dan menyederhanakan kode dengan tetap mempertahankan maknanya. Optimasi dapat dilakukan pada level dan tahapan yang berbeda - misalnya, pada kode perantara atau pada kode mesin akhir.

5) Pembuatan kode. Dari representasi perantara, kode dalam bahasa target dihasilkan.

Dalam implementasi kompiler tertentu, tahapan ini dapat dipisahkan atau digabungkan dalam satu bentuk atau lainnya.

Siaran dan pasca produksi.

Ciri sejarah penting dari penyusun, yang tercermin dalam namanya (Bahasa Inggris: kompilasi - menyusun, menyusun), adalah bahwa ia juga dapat melakukan penautan (yaitu, berisi dua bagian - penerjemah dan penghubung). Hal ini disebabkan oleh fakta bahwa kompilasi dan penautan terpisah sebagai tahap perakitan terpisah muncul jauh lebih lambat daripada munculnya kompiler. Dalam hal ini, alih-alih istilah "kompiler", istilah "penerjemah" kadang-kadang digunakan sebagai sinonim: baik dalam literatur lama, atau ketika mereka ingin menekankan kemampuannya untuk menerjemahkan program ke dalam kode mesin (dan sebaliknya, istilah "kompiler" digunakan untuk menekankan kemampuan mengkompilasi dari banyak file (satu).

Penerjemah.

Penerjemah (bahasa pemrograman) -

1) Sebuah program atau alat teknis yang melakukan interpretasi.

2) Jenis penerjemah yang melakukan pemrosesan pernyataan demi pernyataan (perintah demi perintah) dan mengeksekusi program sumber atau kueri (sebagai lawan dari kompiler yang menerjemahkan seluruh program tanpa menjalankannya).

3) Sebuah program (terkadang perangkat keras) yang menganalisis perintah atau pernyataan program dan segera menjalankannya.

4) Pemroses bahasa yang menganalisis program sumber baris demi baris dan secara bersamaan melakukan tindakan yang ditentukan, daripada menghasilkan program yang dikompilasi dalam bahasa mesin yang kemudian dieksekusi.

Jenis penerjemah.

Seorang juru bahasa sederhana menganalisis dan segera mengeksekusi (interpretasi sebenarnya) program perintah demi perintah (atau baris demi baris), saat kode sumbernya tiba di input juru bahasa. Keuntungan dari pendekatan ini adalah respon yang cepat. Kerugiannya adalah bahwa penerjemah seperti itu mendeteksi kesalahan dalam teks program hanya ketika ada upaya untuk mengeksekusi perintah (atau baris) dengan kesalahan.

Penerjemah tipe kompiler adalah sistem yang terdiri dari kompiler yang menerjemahkan kode sumber suatu program menjadi representasi perantara, misalnya, menjadi bytecode atau kode-p, dan penerjemah itu sendiri, yang mengeksekusi kode perantara yang dihasilkan (jadi- disebut mesin virtual). Keuntungan dari sistem seperti itu adalah kecepatan eksekusi program yang lebih tinggi (karena penghapusan analisis kode sumber ke dalam bagian terpisah, satu kali saja, dan minimalisasi analisis ini dalam penerjemah). Kekurangannya adalah kebutuhan sumber daya yang lebih besar dan persyaratan kebenaran kode sumber. Ini digunakan dalam bahasa seperti Java, PHP, Python, Perl (menggunakan bytecode), REXX (hasil penguraian kode sumber disimpan), serta di berbagai DBMS (menggunakan kode-p).

Jika interpreter tipe compiler dibagi menjadi beberapa komponen, hasilnya adalah compiler bahasa dan interpreter sederhana dengan analisis kode sumber minimal. Selain itu, kode sumber untuk penerjemah tersebut tidak harus dalam format teks atau bytecode yang hanya dimengerti oleh penerjemah ini; ia dapat berupa kode mesin dari beberapa platform perangkat keras yang ada. Misalnya, mesin virtual seperti QEMU, Bochs, VMware menyertakan penerjemah kode mesin untuk prosesor keluarga x86.

Beberapa interpreter (misalnya untuk bahasa Lisp, Scheme, Python, BASIC dan lain-lain) dapat bekerja dalam mode dialog atau yang disebut read-eval-printloop (REPL). Dalam mode ini, penerjemah membaca konstruksi bahasa lengkap (misalnya, ekspresi s di Lisp), mengeksekusinya, mencetak hasilnya, dan kemudian menunggu pengguna memasukkan konstruksi berikutnya.

Yang unik adalah bahasa Keempat, yang mampu bekerja dalam mode interpretasi dan kompilasi data input, memungkinkan Anda untuk beralih di antara mode ini kapan saja, baik selama penerjemahan kode sumber dan saat program sedang berjalan.

Perlu juga dicatat bahwa mode interpretasi tidak hanya dapat ditemukan di perangkat lunak, tetapi juga di perangkat keras. Jadi, banyak mikroprosesor menafsirkan kode mesin menggunakan firmware bawaan, dan prosesor keluarga x86, dimulai dengan Pentium (misalnya, pada arsitektur Intel P6), selama eksekusi kode mesin, menerjemahkannya terlebih dahulu ke dalam format internal (menjadi rangkaian operasi mikro).

Algoritma untuk penerjemah sederhana :

2. menganalisis instruksi dan menentukan tindakan yang tepat;

3. mengambil tindakan yang tepat;

4. Jika kondisi penghentian program tidak tercapai, baca instruksi berikut dan lanjutkan ke langkah 2.

Keuntungan dan kerugian penerjemah.

1) Portabilitas yang lebih besar dari program yang diinterpretasikan - program akan berjalan pada platform apa pun yang memiliki juru bahasa yang sesuai.

2) Biasanya, cara yang lebih canggih dan visual untuk mendiagnosis kesalahan dalam kode sumber.

3) Penyederhanaan debugging kode sumber program.

4) Ukuran kode lebih kecil dibandingkan dengan kode mesin yang diperoleh dari kompiler konvensional.

1) Program yang diinterpretasikan tidak dapat dijalankan secara terpisah tanpa program juru bahasa. Penerjemahnya sendiri bisa sangat kompak.

2) Program yang diinterpretasikan berjalan lebih lambat karena analisis perantara kode sumber dan penjadwalan eksekusinya memerlukan waktu tambahan dibandingkan dengan eksekusi langsung kode mesin tempat kode sumber dapat dikompilasi.

3) Praktis tidak ada optimasi kode, yang menyebabkan hilangnya kecepatan interpretasi program tambahan.

penghubung.

Linker (juga editor tautan, linker) - program yang melakukan penautan - mengambil satu atau lebih modul objek sebagai masukan dan merakit modul yang dapat dieksekusi dari modul tersebut.

Untuk menghubungkan modul, linker menggunakan tabel nama yang dibuat oleh kompiler di setiap modul objek. Nama-nama tersebut dapat terdiri dari dua jenis:

1) Nama yang ditentukan atau diekspor - fungsi dan variabel yang ditentukan dalam modul tertentu dan tersedia untuk digunakan oleh modul lain.

2) Nama yang tidak ditentukan atau diimpor - fungsi dan variabel yang dirujuk oleh modul, tetapi tidak mendefinisikannya secara internal.

Tugas linker adalah menyelesaikan referensi ke nama yang tidak ditentukan di setiap modul. Untuk setiap nama yang diimpor, definisinya ditemukan di modul lain; penyebutan nama diganti dengan alamatnya.

Linker umumnya tidak memeriksa jenis dan jumlah parameter prosedur dan fungsi. Jika Anda perlu menggabungkan modul objek dari program yang ditulis dalam bahasa dengan pengetikan yang kuat, maka pemeriksaan yang diperlukan harus dilakukan oleh utilitas tambahan sebelum meluncurkan editor tautan.

Perakit.

Assembler (dari bahasa Inggris assembler - assembler) adalah program komputer, penyusun teks sumber suatu program yang ditulis dalam bahasa assembly ke dalam program dalam bahasa mesin.

Seperti bahasa (perakitan) itu sendiri, assembler biasanya spesifik untuk arsitektur tertentu, sistem operasi, dan varian sintaksis bahasa. Pada saat yang sama, ada assembler multi-platform atau bahkan universal (lebih tepatnya, universal terbatas, karena tidak mungkin menulis program yang tidak bergantung pada perangkat keras dalam bahasa tingkat rendah) yang dapat berjalan pada platform dan sistem operasi yang berbeda. Di antara yang terakhir, seseorang juga dapat membedakan sekelompok cross-assembler yang mampu mengumpulkan kode mesin dan modul (file) yang dapat dieksekusi untuk arsitektur dan sistem operasi lain.

Perakitan mungkin bukan langkah pertama atau terakhir untuk mendapatkan modul program yang dapat dieksekusi. Dengan demikian, banyak compiler dari bahasa pemrograman tingkat tinggi yang menghasilkan hasil berupa program bahasa assembly, yang selanjutnya diproses oleh assembler. Selain itu, hasil perakitan mungkin tidak dapat dieksekusi, tetapi modul objek yang berisi bagian kode mesin dan data program yang berbeda dan tidak terkait, yang nantinya (atau dari beberapa modul objek) dapat dirakit menggunakan program linker (“linker”) file yang dapat dieksekusi.

Debugger atau debugger adalah modul lingkungan pengembangan atau aplikasi terpisah yang dirancang untuk menemukan kesalahan dalam suatu program. Debugger memungkinkan Anda melakukan penelusuran langkah demi langkah, memantau, menyetel atau mengubah nilai variabel selama eksekusi program, menyetel dan menghapus titik henti sementara atau kondisi penghentian, dan sebagainya.

Daftar debugger.

1) AQtime adalah debugger komersial untuk aplikasi yang dibuat untuk .NET Framework versi 1.0, 1.1, 2.0, 3.0, 3.5 (termasuk aplikasi ASP.NET), serta untuk aplikasi Windows 32 dan 64-bit.

2) DTrace - kerangka penelusuran dinamis untuk Solaris, OpenSolaris, FreeBSD, Mac OS X dan QNX.

3) Pagar Listrik - debugger memori.

4) GNU Debugger (GDB) - program debugger dari proyek GNU.

5) IDA adalah disassembler yang kuat dan debugger tingkat rendah untuk sistem operasi Windows dan Linux.

6) Microsoft Visual Studio - lingkungan pengembangan perangkat lunak yang mencakup alat debugging dari Microsoft.

7) OllyDbg adalah debugger tingkat rendah gratis untuk sistem operasi Windows.

8) SoftICE adalah debugger tingkat rendah untuk sistem operasi keluarga Windows.

9) Sun Studio - lingkungan pengembangan perangkat lunak, termasuk debugger dbx untuk Solaris dan OS Linux, dari Sun Microsystems Corporation.

10) Dr. Watson adalah debugger Windows standar yang memungkinkan Anda membuat dump memori.

11) TotalView adalah salah satu debugger komersial untuk UNIX.

12) WinDbg adalah debugger gratis dari Microsoft.

Generator dokumentasi adalah program atau paket perangkat lunak yang memungkinkan Anda memperoleh dokumentasi yang ditujukan untuk pemrogram (dokumentasi API) dan/atau untuk pengguna akhir sistem, untuk kode sumber yang dikomentari secara khusus dan, dalam beberapa kasus, untuk modul yang dapat dieksekusi (diperoleh pada output dari kompiler).

Biasanya, generator menganalisis kode sumber program, menyorot struktur sintaksis yang sesuai dengan objek program penting (tipe, kelas dan anggota/properti/metode, prosedur/fungsi, dll.). Analisisnya juga menggunakan meta-informasi tentang objek program, yang disajikan dalam bentuk komentar yang mendokumentasikan. Berdasarkan semua informasi yang dikumpulkan, dokumentasi siap pakai dihasilkan, biasanya dalam salah satu format yang diterima secara umum - HTML, HTMLHelp, PDF, RTF, dan lainnya.

Mendokumentasikan komentar.

Komentar yang mendokumentasikan adalah komentar yang diformat khusus pada objek program yang dimaksudkan untuk digunakan oleh generator dokumentasi tertentu. Sintaks konstruksi yang digunakan dalam mendokumentasikan komentar bergantung pada generator dokumentasi mana yang digunakan.

Mendokumentasikan komentar dapat berisi informasi tentang pembuat kode, menjelaskan tujuan objek program, arti parameter input dan output untuk suatu fungsi/prosedur, contoh penggunaan, kemungkinan situasi pengecualian, dan fitur implementasi.

Mendokumentasikan komentar biasanya diformat sebagai komentar gaya C multibaris. Dalam setiap kasus, komentar harus muncul sebelum elemen didokumentasikan. Karakter pertama dalam komentar (dan di awal baris komentar) harus berupa *. Blok dipisahkan oleh garis kosong.

3. Visual Basic untuk Aplikasi

sistem operasi perangkat lunak

3.1 Intisari VisualBasic dan sejarah singkatnya

Microsoft Visual Basic (VB) adalah alat pengembangan perangkat lunak yang dikembangkan oleh Microsoft Corporation yang mencakup bahasa pemrograman dan lingkungan pengembangan. Bahasa Visual Basic mewarisi semangat, gaya dan sebagian sintaksis nenek moyangnya - bahasa BASIC, yang memiliki banyak dialek. Pada saat yang sama, Visual Basic menggabungkan prosedur dan elemen bahasa pemrograman berorientasi objek dan berorientasi komponen. Lingkungan pengembangan VB mencakup alat untuk mendesain antarmuka pengguna secara visual. (lihat tabel).

Visual Basic (fitur utama)

Visual Basic dianggap sebagai alat yang baik untuk mengembangkan prototipe program dengan cepat, untuk mengembangkan aplikasi database, dan secara umum untuk metode pembuatan program berbasis komponen yang berjalan di bawah sistem operasi keluarga Microsoft Windows.

Dalam proses evolusinya, Visual Basic melewati beberapa tahapan berturut-turut yang menjadikannya salah satu bahasa pemrograman terpopuler saat ini. Jadi evolusi VisualBasic melakukan hal berikut:

1. Mei 1991 - Visual Basic 1.0 dirilis untuk Microsoft Windows. Sintaks QBasic diambil sebagai dasar bahasanya, dan inovasi yang kemudian membawa popularitas besar bahasa ini adalah prinsip hubungan antara bahasa dan antarmuka grafis.

2. September 1992 - Visual Basic 1.0 untuk DOS dirilis. Itu tidak sepenuhnya kompatibel dengan VB versi Windows, karena ini adalah versi QuickBASIC berikutnya dan berjalan dalam mode layar berbasis teks.

3. November 1992 - Visual Basic 2.0 dirilis. Lingkungan pengembangan menjadi lebih mudah digunakan dan lebih cepat.

4. pada musim panas 1993 - Visual Basic 3.0 dirilis dalam versi Standar dan Profesional. Selain itu, mesin untuk bekerja dengan database Access telah ditambahkan ke paket.

5. Agustus 1995 - Visual Basic 4.0 - versi yang dapat membuat program Windows 32 dan 16-bit.

6. Februari 1997 - Visual Basic 5.0 - dimulai dengan versi ini, bersama dengan aplikasi biasa, dimungkinkan untuk mengembangkan komponen COM.

7. Pada pertengahan tahun 1998, Visual Basic 6.0 dirilis. Setelah ini, Microsoft secara dramatis mengubah kebijakannya mengenai bahasa dasar. Alih-alih mengembangkan Visual Basic, bahasa yang benar-benar baru, Visual Basic .NET, telah dibuat.

8. Pada tahun 2005, versi baru Visual Basic dirilis, dibundel dengan Visual Studio. Dia senang dengan antarmuka dan kemampuan baru. Bahasa ini didasarkan pada Visual Basic.NET.

9. Pada akhir tahun 2007, Microsoft merilis versi baru Visual Basic - Visual Basic 2008, yang juga didasarkan pada Visual Basic.NET.

Berdasarkan fungsionalitas dan spesifikasi aplikasi, jenis program berikut dapat dibedakan:

1. Visual Basic Klasik (versi 5-6) Bahasa ini sangat terikat dengan lingkungan pengembangannya dan sistem operasi Windows, karena secara eksklusif merupakan alat untuk menulis aplikasi Windows

2. VisualBasicforApplications (VBA) Ini adalah alat pemrograman yang praktis tidak berbeda dengan Visual Basic klasik, yang dirancang untuk menulis makro dan program aplikasi lain untuk aplikasi tertentu. Ini memperoleh popularitas terbesar karena penggunaannya dalam paket Microsoft Office. Meluasnya penggunaan Visual Basic for Applications, ditambah dengan kurangnya perhatian terhadap masalah keamanan, telah menyebabkan meluasnya penggunaan virus makro.

3. VisualBasicScriptingEdition (VBScript) Sebuah bahasa scripting, yang merupakan versi agak terpotong dari Visual Basic biasa. Digunakan terutama untuk mengotomatisasi administrasi sistem Windows, serta untuk membuat halaman ASP dan skrip untuk Internet Explorer.

3.2 Antarmuka VisualBasicforApplication, fungsi dan kemampuan utama

Dengan menciptakan VisualBasicforApplication, Microsoft Corporation menetapkan tujuan utamanya untuk menciptakan alat yang dapat diakses oleh pengguna yang bukan pemrogram profesional, namun pada saat yang sama cukup memenuhi syarat untuk mengembangkan dan merancang program aplikasi dan aplikasi berdasarkan Microsoft Office. Untuk mengatasi masalah inilah para pengembang menciptakan VBA, memberinya sejumlah fitur unik. Salah satunya, yang paling berharga bagi pengguna, adalah kemampuan untuk membuat dan menggunakan kotak dialog non-standar (khusus) dalam program dengan menambahkan objek UserForm ke proyek, serta antarmuka pengguna yang nyaman.

Antarmuka program VisualBasicforApplication terdiri dari sekumpulan berbagai jendela dan tab yang digunakan saat mendesain aplikasi yang dibuat, yang utamanya adalah:

1) Jendela proyek (Gbr. 2), menampilkan struktur proyek yang dibuat.

2) jendela Kode Program (Gbr. 3), menampilkan kode program dari proyek yang dibuat dan memungkinkan untuk menulis program dengan cara klasik menggunakan editor kata kode bawaan, yang jumlahnya lebih dari 16 ribu di VBA. Jendela ini juga memungkinkan Anda untuk mengedit kode dan memeriksa kesalahannya.

3) tab Properties (Gbr. 4), menampilkan parameter yang ditetapkan untuk objek tertentu dan memungkinkan untuk mengubah pengaturan yang ditentukan.

Dengan berpindah antara jendela dan tab, pengguna dapat dengan mudah menyesuaikan proyek yang dibuat.

Dengan menggunakan formulir yang dibuat pengguna VBA, Anda dapat membuat kotak dialog khusus untuk menampilkan data atau menerima nilai dari pengguna program dengan cara yang paling sesuai dengan kebutuhan program. Misalnya, Anda dapat membuat tes, menampilkan kotak dialog untuk menampilkan pertanyaan pilihan ganda, dan memungkinkan pengguna memilih salah satu pilihan jawaban yang mereka yakini benar.

Kotak dialog non-standar memungkinkan program untuk berinteraksi dengan penggunanya dengan cara yang paling kompleks dan menyediakan berbagai bentuk input dan output data.

Dialog khusus dibuat di VBA dengan menambahkan objek UserForm ke proyek. Objek ini mewakili kotak dialog kosong; ia memiliki bilah judul dan tombol tutup, tetapi tidak memiliki kontrol lainnya. Kotak dialog kustom dibuat dengan menambahkan kontrol ke objek UserForm dan biasanya disebut formulir (Gambar 5).

Setiap objek UserForm memiliki properti, metode, dan peristiwa yang diwarisi dari kelas objek UserForm.

Setiap objek UserForm juga berisi modul kelas di mana pengguna menambahkan metode dan propertinya sendiri atau menulis prosedur penanganan kejadian untuk formulir tertentu.

Kemampuan untuk membuat antarmuka Anda sendiri, terlepas dari lingkungan aplikasi, seperti Excel, menggunakan formulir tampilan adalah salah satu fitur paling berharga di VBA.

Formulir layar adalah jendela dengan berbagai tujuan dan jenis yang dibuat oleh pengguna untuk aplikasinya. Mereka berisi kontrol yang memungkinkan pengguna untuk bertukar informasi dengan aplikasi.

VBA menggunakan desain grafis formulir yang dibuat - dengan pengaturan untuk properti formulir dan kontrol - untuk mendapatkan semua informasi yang diperlukan untuk menampilkan kotak dialog: dimensi kotak dialog, kontrol di dalamnya, dll. Hasilnya, VBA memungkinkan Anda menampilkan formulir kotak dialog dengan satu pernyataan.

Untuk menampilkan kotak dialog kustom, gunakan metode Show pada objek UserForm. Jika formulir saat ini tidak dimuat ke dalam memori, metode Show memuat formulir dan menampilkannya. Jika formulir sudah dimuat, metode Show hanya menampilkannya.

Menampilkan satu kotak dialog biasanya tidak cukup untuk menyelesaikan suatu tugas. Anda hampir selalu ingin menentukan status kontrol kotak dialog untuk mengetahui data atau opsi apa yang telah dipilih pengguna. Misalnya, jika kotak dialog digunakan untuk memperoleh informasi dari pengguna tentang kolom dan baris mana yang harus diurutkan dalam lembar kerja, Anda harus dapat mengetahui nilai apa yang dimasukkan pengguna setelah kotak dialog ditutup dan sebelum operasi pemesanan sebenarnya dimulai.

Dalam kasus lain, Anda mungkin ingin secara dinamis mengubah judul tombol (atau kontrol lainnya) pada kotak dialog, secara dinamis memperbarui label atau bidang yang terkait dengan penghitung, atau secara dinamis memvalidasi data yang dimasukkan ke dalam kotak dialog.

Di VBA, dimungkinkan untuk secara signifikan memperluas kumpulan fungsi yang dibangun ke dalam aplikasi standar, seperti Microsoft Excel, serta membuat fungsi yang nilainya bergantung pada kondisi dan peristiwa tertentu.

VBA memungkinkan Anda memprogram fungsi tabel. Untuk membuat lembar kerja terpisah untuk modul program, gunakan tab Sisipkan Modul dari menu Visual dan perintah Modul dari menu Sisipkan Makro. Setelah ini, lembar kerja baru "Modele1" akan muncul. Dalam modul program, Anda perlu menjelaskan suatu fungsi di VBA. Anda dapat bekerja di jendela modul program seolah-olah Anda berada di jendela editor teks kecil.

Penyematan fungsi dilakukan dengan perintah Object Browser dari menu View. Fungsi yang ditentukan pengguna diperlakukan sebagai objek independen dalam program. VBA memiliki serangkaian fungsi bawaan yang signifikan, membaginya menjadi beberapa tipe.

Visual Basic memungkinkan Anda untuk mencadangkan variabel, dengan atau tanpa ukuran, bekerja dengan berbagai tipe data, menggunakan konstanta, bekerja dengan operator dan fungsi matematika, dan menggunakan operator tambahan. Penggunaan operator loop For Next, Do, dan objek bertipe "timer" (stopwatch yang tidak terlihat dalam program) disediakan. Keakuratan pengaturan waktu pada program adalah 1 milidetik atau 1/1000 detik. Pengatur waktu yang dimulai terus berjalan - mis. prosedur penanganan interupsi yang sesuai dijalankan pada interval waktu tertentu - hingga pengguna menghentikan pengatur waktu atau menonaktifkan program.

Di VBA, Anda dapat mengatur properti apa pun untuk formulir, termasuk judul, ukuran, jenis batas, warna latar belakang dan karakter, font teks, dan gambar latar belakang.

Jika kita meringkas semua fungsi program, maka Visual Basic forApplication memungkinkan Anda untuk:

1) bekerja dengan kontrol

Keuntungan :

1. Kecepatan tinggi dalam membuat aplikasi dengan antarmuka grafis untuk MS Windows.

2. Sintaks sederhana yang memungkinkan Anda menguasai bahasa dengan sangat cepat.

3. Kemungkinan kompilasi baik ke dalam kode mesin maupun ke dalam kode-P (sesuai pilihan programmer). Dalam mode debug, program selalu (apa pun pilihannya) dikompilasi ke kode P, yang memungkinkan Anda untuk menghentikan sementara program, membuat perubahan signifikan pada kode sumber, dan kemudian melanjutkan eksekusi tanpa memerlukan kompilasi ulang lengkap dan memulai ulang program. .

4. Perlindungan terhadap kesalahan yang berhubungan dengan penggunaan pointer dan akses memori. Aspek ini membuat aplikasi Visual Basic lebih stabil, namun juga menjadi sasaran kritik.

5. Kemampuan untuk menggunakan sebagian besar fungsi WinAPI untuk memperluas fungsionalitas aplikasi. Masalah ini telah dipelajari sepenuhnya oleh Dan Appleman, yang menulis buku “Visual Basic Programmer's Guide to the Win32 API.”

Kritik :

1. Aspek Visual Basic yang sering dikritik, seperti kemampuan untuk menonaktifkan pelacakan variabel yang dideklarasikan, kemampuan untuk mengkonversi variabel secara implisit, dan adanya tipe data “Varian”. Menurut kritikus, hal ini memungkinkan penulisan kode yang sangat buruk. Di sisi lain, hal ini dapat dianggap sebagai nilai tambah, karena VB tidak memaksakan “gaya yang baik”, tetapi memberikan lebih banyak kebebasan kepada programmer.

2. Kurangnya pointer, akses memori tingkat rendah, sisipan ASM. Terlepas dari kenyataan bahwa paradigma Visual Basic memungkinkan rata-rata programmer VB untuk melakukannya tanpa semua ini, hal-hal ini juga sering menjadi sasaran kritik. Dan meskipun, dengan menggunakan fitur yang tidak terdokumentasi dan trik tertentu, semua ini dapat diimplementasikan di VB (misalnya, menggunakan fungsi untuk mendapatkan pointer VarPtr(), StrPtr() dan ObjPtr()); Menggunakan trik ini jauh lebih sulit dibandingkan, misalnya, di C++.

Namun, perlu dicatat bahwa semua kelemahan bahasa ini berasal dari keunggulan utamanya - kemudahan mengembangkan antarmuka grafis. Oleh karena itu, banyak pemrogram menggunakan Visual Basic untuk mengembangkan antarmuka pengguna, dan mengimplementasikan fungsionalitas program dalam bentuk pustaka tautan dinamis (DLL) yang ditulis dalam bahasa lain (paling sering C++).

4. Bagian praktis

4.1 Rumusan masalah

Gambarlah diagram blok dan tulis program dalam Pascal. Hitung nilai intrinsik sekuritas. Nilai intrinsik suatu aset ditentukan oleh aliran pendapatan masa depan dari aset tersebut.

pv – nilai intrinsik saham saat ini

c – penerimaan yang diharapkan dari aset yang bersangkutan

r – tingkat pengembalian yang diharapkan investor atas pendapatan dengan tingkat risiko yang sesuai

n – faktor waktu (dalam bulan).

Lakukan analisis pasar dan urutkan hasilnya dalam urutan data yang diperoleh.

4.2 Teks program dalam bahasa Pascal

pv: array nyata;

writeLn('Masukkan penerimaan yang diharapkan dari ',i,'aset c:');

writeLn('Masukkan tingkat pengembalian yang diharapkan investor r:');

pv:=c/exp(ln(1+r)*i);

writeLn('nilai intrinsik aset saat ini adalah', pv[i]:1:3);

writeLn('Nilai intrinsik aset tersebut adalah', s);

untuk j:=1 sampai 4 lakukan

jika pv[j] > pv maka

writeLn('Nilai aset diurutkan menaik');

untuk i:=1 sampai 5 lakukan

tulisLn(pv[i]:1:3);

4.3 Kasus uji

4.4 Hasil eksekusi program pada contoh pengujian

Kesimpulan

Jadi, menyimpulkan semua hal di atas, perlu dicatat bahwa perangkat lunak perkakas adalah salah satu jenis perangkat lunak yang memiliki tugas dan fungsi umum.

Namun, sebagai jenis perangkat lunak yang sangat terspesialisasi, ia memiliki serangkaian properti dan fungsi unik tertentu yang memberikan solusi terhadap masalah spesifiknya.

Perlu dicatat tren yang muncul ke arah penyederhanaan proses pemrograman dan penciptaan subkelas tertentu - pemrograman semi-profesional untuk tujuan terapan.

Inilah yang memungkinkan pengguna komputer berpengalaman, tetapi bukan pemrogram profesional, untuk membuat aplikasi tertentu dan file kecil yang dapat dieksekusi di lingkungan Microsoft Office, digunakan terutama untuk keperluan akuntansi dan aliran dokumen di perusahaan kecil.

Untuk tujuan inilah Microsoft mengembangkan paket perangkat lunak VisualBasicforApplication, yang menyederhanakan proses pemrograman dan memungkinkan pengguna, bukan pemrogram, untuk terlibat dalam pemrograman aplikasi. Fitur ini diimplementasikan terutama dengan membuat bagian program - "Editor Skrip" dan kemampuan untuk merekam dan menjalankan "Makro" sebagai jenis modul terpisah yang dapat diprogram secara grafis. Kemampuan membuat aplikasi dengan antarmuka grafis untuk MS Windows telah diterapkan. Keuntungan lain dari perangkat lunak alat jenis ini adalah sintaksisnya yang sederhana, yang memungkinkan Anda menguasai bahasa dengan cepat dan menggunakannya untuk pemrograman di semua aplikasi standar Microsoft Office.

Oleh karena itu, sulit untuk melebih-lebihkan pentingnya perkakas secara umum, dan VisualBasicforApplication pada khususnya, meskipun kekurangannya, seperti disebutkan di atas, juga ada. Tapi ini bukan aspek negatif dari produk, melainkan pedoman untuk perbaikan lebih lanjut dari perangkat lunak dalam bentuk VisualBasicforApplication.

1. Bahasa algoritmik waktu nyata / Ed. Yanga S. / 2004

2. Majalah PC Edisi Rusia No.2 2008 Komputer hari ini.

3. Ilmu Komputer. /Ed. Mogilev A.V., Pak N.I., Henner E.K./ - M.: ACADEMIA, 2000.

4. Ilmu Komputer dan Teknologi Informasi: Buku Ajar / Ed. Romanova D.Yu./Eksmo Publishing House LLC, 2007.

5. Ensiklopedia Komputer Pribadi Terbaru / Ed. Leontyeva V./Moskow, 1999. – 271 hal.

6. Bahasa pemrograman baru dan tren perkembangannya / Ed. Ushkova V. / 2001

7. Pedagogi / Ed. Pidkasistogo P.I./ – M.: Masyarakat Pedagogis Rusia, 2000.

8. Pemrograman Microsoft Excel 2000 dalam 21 hari. /Ed. Kharisa M./ – M.: Williams, 2000.

9. Simonovich S. Informatika: kursus dasar. Buku pelajaran untuk universitas. Sankt Peterburg, Peter, 2002

10. Tidak ada masalah dengan Excel 2000. /Ed. Kowalski/ – M.: Binom, 2000.

11. “Pekerjaan efektif di Windows 98” / Ed. Stinson K. / 2000. – 247 hal.

12. Bahasa pemrograman. buku 5 /Ed. Vaulina A.S./2003

13. Bahasa Pemrograman: Pengembangan dan Implementasi / Ed. Terrence P. / 2001

14. Buku teks elektronik ilmu komputer. Alekseev E.G. http://www.stf.mrsu.ru/economic/lib/Informatics/text/Progr.html\

Teknologi pemrograman pada umumnya dan alat pendukung pengembangan perangkat lunak pada khususnya berkembang begitu pesat sehingga bahkan sekadar membuat daftar sistem alat utama akan memakan terlalu banyak ruang dalam buku ini. Oleh karena itu di bawah ini kami akan membahas secara singkat beberapa proyek di bidang teknologi pemrograman yang menarik dalam konteks publikasi ini.

Setiap sistem teknologi yang dikembangkan harus mendukung semua tahapan utama pembuatan paket perangkat lunak yang dirancang. Untuk mencapai tujuan ini dalam struktur keseluruhan sistem pendukung pengembangan teknologi yang khas(Gbr. 6.3) biasanya terisolasi basis data proyek; subsistem otomasi desain dan pemrograman; subsistem debugging, dokumentasi dan pemeliharaan, A juga merupakan subsistem untuk mengelola kemajuan proyek.


Beras. 6.3. Struktur umum sistem pendukung pengembangan teknologi yang khas

Sistem pendukung pengembangan perpustakaan yang dikembangkan saat ini digunakan di seluruh dunia dalam semua proyek perangkat lunak yang serius. Namun dalam sebagian besar kasus, sistem seperti itu telah mencapai tingkat kemudahan penggunaan bagi pemrogram yang berkualifikasi. Kami terutama tertarik pada sistem dan proyek yang cenderung secara eksplisit mewakili pengetahuan teknologi, meskipun tidak didasarkan pada ide dan metode AI.

Salah satu proyek ini, Gandalf, difokuskan pada pembuatan sistem pengembangan perangkat lunak secara otomatis. Penelitian yang dilakukan dalam proyek Gandalf menyangkut tiga aspek dukungan desain perangkat lunak: manajemen proyek, kontrol versi dan pemrograman tambahan, serta integrasinya ke dalam satu lingkungan. Manajemen di lingkungan Gandalf didasarkan pada asumsi bahwa proyek yang sedang dikembangkan harus diperlakukan sebagai sekumpulan tipe data abstrak yang hanya dapat melakukan operasi tertentu. Alat yang mengimplementasikan konsep ini adalah sistem SDC (Software Development Control), yaitu sekumpulan program yang awalnya diimplementasikan dalam bahasa Shell pada sistem UNIX, dan kemudian diterjemahkan ke dalam bahasa C.

Penelitian di bidang kontrol versi dimulai oleh L. Kooprider berdasarkan proyek FAFOS, yang pada awalnya menganalisis kemungkinan pembuatan keluarga sistem operasi. Notasi dikembangkan untuk menggambarkan interaksi antar subsistem, untuk menggambarkan berbagai versi subsistem (kode sumber dan objek, dokumentasi, dll.) dan untuk menggambarkan mekanisme yang beroperasi pada tahap pengembangan (kompilasi, tautan pengeditan, dll.). Kemudian bahasa khusus, Intercol, diciptakan sebagai sarana untuk menggambarkan hubungan dan versi modul dalam sistem. Dan yang terakhir, pengetahuan tentang bagaimana membangun suatu sistem dari bagian-bagian dibangun ke dalam sistem tanpa memaksa pengguna untuk melakukannya. Sebagai tindak lanjut dari pekerjaan ini, SUCE diciptakan untuk melacak perbedaan antara implementasi (versi yang benar-benar menyediakan kode untuk serangkaian spesifikasi) dan komposisi (versi yang mendefinisikan subsistem baru sebagai kelompok subsistem yang ada).



Dalam sistem LOIPE (Lingkungan Pemrograman Inkremental Berorientasi Bahasa), kompilasi tambahan dilakukan pada tingkat prosedur individual. Keuntungan dari pendekatan ini adalah ketika suatu prosedur dikoreksi pada tingkat objek atau tipe lokal, hanya prosedur tersebut yang dikompilasi ulang. Jika spesifikasi berubah, maka semua prosedur yang bergantung padanya akan dikompilasi ulang. Antarmuka pengguna dengan sistem LOIPE didasarkan pada subsistem pengeditan berorientasi sintaksis ALOE (A Language-Oriented Editor). Tujuan pengembangan subsistem ini adalah untuk mempelajari kemungkinan membuat dan menggunakan editor berorientasi sintaksis sebagai dasar lingkungan pemrograman.

Analisis literatur beberapa tahun terakhir tentang teknologi pemrograman menunjukkan bahwa cabang baru dalam teknologi pengembangan industri dan implementasi sistem perangkat lunak yang kompleks dan signifikan adalah Teknologi KASUS(Rekayasa Perangkat Lunak Berbantuan Komputer).

Awalnya, teknologi CASE muncul dalam proyek untuk menciptakan sistem pemrosesan data industri. Keadaan ini meninggalkan jejaknya pada perangkat teknologi CASE, di mana perhatian paling serius diberikan, setidaknya pada sistem CASE awal, untuk mendukung desain arus informasi. Saat ini, terdapat pergeseran dari fokus pada sistem pemrosesan data, dan alat teknologi CASE menjadi semakin serbaguna.

Semua alat pendukung teknologi CASE dibagi menjadi dua kelompok besar: Perangkat KASUS Dan KASUS-Meja Kerja. Tidak ada padanan bahasa Rusia yang bagus untuk istilah-istilah ini. Namun, yang pertama sering disebut “peti alat” (paket pengembang, paket teknologi), dan yang kedua adalah “mesin produksi perangkat lunak” (lini produksi).

A-priori Perangkat KASUS - kumpulan alat perangkat lunak terintegrasi yang memberikan bantuan otomatis dalam memecahkan masalah serupa dalam proses pembuatan program.

Paket-paket tersebut menggunakan “repositori” umum untuk semua informasi teknis dan manajemen proyek (repositori), dilengkapi dengan antarmuka pengguna yang umum dan antarmuka terpadu antara masing-masing alat paket. Biasanya, CASE-Toolkit berpusat pada dukungan pengembangan satu fase produksi program atau satu jenis masalah aplikasi.

Semua hal di atas juga berlaku untuk CASE-WorkBench. Namun di sini, selain itu, dukungan otomatis disediakan untuk analisis tugas produksi perangkat lunak yang diselesaikan, yang didasarkan pada asumsi umum tentang proses dan teknologi dari aktivitas tersebut; transfer otomatis hasil pekerjaan dari satu tahap ke tahap lainnya didukung, mulai dari tahap desain dan diakhiri dengan pembuangan produk perangkat lunak yang dibuat dan pemeliharaannya.

Dengan demikian, CASE-WorkBench adalah “penutupan” alami dari teknologi untuk mengembangkan, mengimplementasikan, dan memelihara perangkat lunak.

Saat ini, sistem pendukung teknologi CASE “khas” memiliki fungsi yang ditunjukkan pada Gambar. 6.4.

Beras. 6.4. Fungsionalitas sistem pendukung teknologi CASE yang khas

Sebagai berikut dari diagram H ini, lingkungan CASE harus mendukung semua tahapan utama pengembangan dan pemeliharaan proses pembuatan sistem perangkat lunak. Namun, tingkat dukungan tersebut sangat bervariasi. Misalnya, jika kita berbicara tentang tahap analisis dan desain, sebagian besar paket alat mendukung formulir layar dan pelaporan, pembuatan prototipe, dan deteksi kesalahan. Sebagian besar dana ini ditujukan untuk PC. Banyak yang mendukung metodologi yang banyak digunakan seperti analisis struktur DeMarco atau Gane/Sarson, desain struktur Yourdan/Jackson, dan beberapa lainnya. Ada paket pengembangan khusus untuk membuat sistem informasi, misalnya Ana Tool (Perangkat Lunak Logis Tingkat Lanjut) untuk Macintosh; CA-Universe/Prototype (Computer Associates International) untuk PC. Terdapat lingkungan CASE untuk mendukung pengembangan sistem real-time.

Di antara pengembang perangkat lunak, ada dua penilaian terhadap pendekatan ini: beberapa dari mereka percaya bahwa teknologi CASE secara radikal mengubah proses pengembangan dan pengoperasian perangkat lunak, yang lain menyangkal hal ini dan hanya menyerahkan fungsi otomatisasi pekerjaan rutin ke alat CASE. Namun, analisis literatur menunjukkan bahwa alat CASE masih “menggeser” teknologi pengembangan perangkat lunak dari manajemen proyek ke metode pembuatan prototipe. Dan pergeseran ini, menurut kami, merupakan tren yang sangat penting dalam teknologi pemrograman modern.

Publikasi tentang topik tersebut