Format Converter (Delphi)
Format Converter (JSON, XML, dll.) Untuk Delphi.
Format Converter (JSON, XML, dll.) Untuk Delphi.
Indeks
- Instalasi/Konfigurasi
- Menggunakan
- Sitemap
- Struktur
- Workgroup
- Dependensi
- Menyumbang
- Daftar periksa untuk berkontribusi
- Kredit
- Lisensi
- Standardisasi kode
- Semua
- Pohon proyek
Instalasi/Konfigurasi

* Klik gambar untuk melihat video
Koreksi: Ganti "$ (variable_created) dcu" dengan "$ (variable_created) output" di jalur perpustakaan
Menggunakan
Cara menggunakan

* Klik gambar untuk melihat video
Gunakan contoh

* Klik gambar untuk melihat video
Dana
Jsontoxml
- Stringstring: Mengubah JSON berbentuk string menjadi xml berbentuk string (string);
- Parameterisasi
- Strcontent: json to converter (string);
- StringToFile: Mengubah string JSON menjadi file XML (boolean);
- Parameterisasi
- Strcontent: json to converter (string);
- FilePathResult: jalur file XML yang akan disimpan (string);
- StringToReturnType: Mengonversi JSON yang diukur string menjadi TXMLDOCUMEN XML (TXMLDOCUMEN);
- Parameterisasi
- Strcontent: json to converter (string);
- FileString: Mengubah file JSON menjadi XML di String (String);
- Parameterisasi
- FilePath: JSON File Path to Converter (String);
- FileLeletofile: Mengubah file JSON menjadi file XML (Boolean);
- Parameterisasi
- FilePath: JSON File Path to Converter (String);
- FilePathResult: jalur file XML yang akan disimpan (string);
- FileletoReturnType: Mengubah file JSON menjadi TXMLDOCUMEN XML (TXMLDOCUMEN);
- Parameterisasi
- FilePath: JSON File Path to Converter (String);
- OriginInpetoString: Mengubah tjsonObject JSON menjadi string berbentuk xml (string);
- Parameterisasi
- Konten: json to converter (tjsonObject);
- OriginInpetofile: Mengubah JSON TJSONOBJECT ke file XML (Boolean);
- Parameterisasi
- Konten: json to converter (tjsonObject);
- FilePathResult: jalur file XML yang akan disimpan (string);
- OriginIntypeturnType: Mengubah tjsonObject JSON menjadi TXMLDOCUMEN XML (TXMLDOCUMENT);
- Parameterisasi
- Konten: json to converter (tjsonObject);
- Normalizeorigin: Mengubah JSON berbentuk string menjadi tjsonObject (tjsonObject) json;
- Parameterisasi
- Konten: json untuk menormalkan (string);
- Normalizeorigin: Mengubah json tjsonObject menjadi tStringlist JSON (TStringList);
- Parameterisasi
- Konten: json untuk menormalkan (tjsonObject);
- Normalizeorigin: Mengubah json tStringlist menjadi string (string) json;
- Parameterisasi
- Konten: json untuk menormalkan (TStringList);
- NormalizerTurn: Mengonversi XML XML XML dalam bentuk TXMLDOCUMEN (TXMLDOCUMEN);
- Parameterisasi
- Konten: XML untuk menormalkan (string);
- NormalizerTurn: Mengubah xmldocument xml menjadi TStringList XML (TStringList);
- Parameterisasi
- Konten: XML untuk menormalkan (txmldocument);
- NormalizerTurn: Konversi xml dalam bentuk xml berbentuk string (string);
- Parameterisasi
- Konten: XML untuk menormalkan (TStringList);
XmltoJson
- Stringsstring: Mengubah string XML XML menjadi string (string) json;
- Parameterisasi
- Strcontent: xml to converter (string);
- StringToFile: Mengubah XML menjadi string menjadi file JSON (boolean);
- Parameterisasi
- Strcontent: xml to converter (string);
- FilePathResult: JSON file path yang akan disimpan (string);
- StringToReturnType: Mengubah string XML XML menjadi tjsonObject (tjsonObject) json;
- Parameterisasi
- Strcontent: xml to converter (string);
- FileString: Mengubah file XML menjadi string (string) json;
- Parameterisasi
- FilePath: XML File Path to Converter (String);
- Fileletofile: Konversi file xml menjadi file json (boolean);
- Parameterisasi
- FilePath: XML File Path to Converter (String);
- FilePathResult: JSON file path yang akan disimpan (string);
- FileletoReturnType: mengonversi file XML ke tjsonObject json (tjsonObject);
- Parameterisasi
- FilePath: XML File Path to Converter (String);
- OriginInpetoString: Mengubah XML XML -berbentuk menjadi string (string) json;
- Parameterisasi
- Konten: XML ke Converter (TXMLDocument);
- OriginInpetofile: Mengubah XML dalam bentuk TXMLDOCUCEN menjadi file JSON (Boolean);
- Parameterisasi
- Konten: XML ke Converter (TXMLDocument);
- FilePathResult: JSON file path yang akan disimpan (string);
- OriginInpeturnType: Mengubah xmldocument xml menjadi tjsonObject (tjsonObject) json;
- Parameterisasi
- Konten: XML ke Converter (TXMLDocument);
- Normalizeorigin: Konversi XML XML XML dalam bentuk txmldocument (txmldocument);
- Parameterisasi
- Konten: XML untuk menormalkan (string);
- Normalizeorigin: Mengubah xmldocument xml menjadi TStringList XML (TStringList);
- Parameterisasi
- Konten: XML untuk menormalkan (txmldocument);
- Normalizeorigin: Mengubah XML XML menjadi string xml berbentuk string (string);
- Parameterisasi
- Konten: XML untuk menormalkan (TStringList);
- NormalizerTurn: Mengubah JSON berbentuk string menjadi tjsonObject (tjsonObject) json;
- Parameterisasi
- Konten: json untuk menormalkan (string);
- Normalizereturn: Mengubah json tjsonObject ke tStringlist (tStringList) json;
- Parameterisasi
- Konten: json untuk menormalkan (tjsonObject);
- NormalizerTurn: Mengubah JSON TStringList menjadi string (String) JSON;
- Parameterisasi
- Konten: json untuk menormalkan (TStringList);
Sitemap

Struktur
- APP: berisi kompilasi paket dan penguji;
- Dokumentasi: berisi dokumentasi paket;
- Gambar: Berisi gambar yang digunakan dalam paket;
- Modul: Modul yang melakukan setiap konversi yang tersedia dalam sistem;
- JSontoxML: berisi paket yang digunakan untuk konversi XML ke JSON;
- XMLTOJSON: berisi paket yang digunakan untuk konversi dari JSON ke XML;
- Output: berisi file pra -kompilit yang digunakan oleh Delphi (.dcu);
- Proyek: Direktori dengan proyek setiap paket dan penguji;
- SRC: berisi sumber penting untuk pengoperasian paket;
- Standardisasi: berisi antarmuka yang menstandarisasi pasal;
- FormatConverter: berisi paket dengan pendaftaran komponen ini (juga digunakan untuk mendapatkan nomor build);
- FormatConvertester: berisi yang dapat dieksekusi dari komponen;
- VERDER: Berisi paket pihak ketiga;
Workgroup
Kompilasi proyek harus dipertahankan seperti pada gambar.

Dependensi
- Sejauh ini tidak ada dependensi.
Menyumbang
- Membuat garpu berdasarkan master;
- Buat "komit" dari perubahan Anda (jika Anda menyelesaikan "masalah" apa pun, jangan lupa untuk menulis "Fixed #Numeroissue" dalam pesan);
- Dorong komit Anda;
- Minta "permintaan tarik" untuk master repositori utama.
Membuat masalah
Untuk membuat masalah , Perhatikan hal -hal berikut:
- Memilih label yang sesuai untuk masalah ( label ini dapat diubah, tetapi non -desain menyebabkan masalah hilang).

- Memilih FormatConverter - Proyek Kanban , ini akan mengatur apa yang sedang dilakukan dan apa yang harus dilakukan.

Daftar periksa untuk berkontribusi
- Uji fungsionalitas yang dibuat / diubah;
- Tandai dengan "#" masalah yang diselesaikan, dalam komitmen;
- Readme (case in need)
- Bangun Nomor;
- Perubahan indeks;
- Ubah / tambahkan bentuk penggunaan;
- Sertakan paket / kelas / metode / parameter dalam bentuk penggunaan;
- Ubah Sitemap;
- Mengubah struktur aplikasi;
- Gambar workgroup yang diperbarui;
- Tambah / Hapus Ketergantungan (Paket Pihak Ketiga);
- Perbarui metode instalasi / konfigurasi paket;
- Perbarui dokumentasi sumber;
- Hapus / tambahkan item di semua;
- Perbarui Pohon Proyek;
- Saat menambahkan item secara keseluruhan, jangan lupa untuk membuat "masalah" yang sesuai;
- Label utama
- Bug: Koreksi beberapa masalah;
- Dokumentasi: Perubahan Dokumentasi;
- Peningkatan: Perubahan fungsionalitas yang ada untuk memperbaikinya;
- Fitur: Fungsi baru;
- Proyek
- FormatConverter - Kanban: untuk mengatur proyek dengan lebih baik;
Kredit
@bomorafinha
Lisensi
Standardisasi kode
Versi
Untuk versi formatConverter harus digunakan sebagai pangkalan, pembentukan paket formatConverter.bpl untuk windows 32 bit, sebagai berikut:

Di mana:
- Versi utama, itu hanya berubah ketika operasi sistem dasar berubah secara signifikan;
- Jumlah modul fungsional sistem;
- Jumlah fungsi publik yang tersedia dalam sistem;
- Bangun versi sistem yang dihasilkan sendiri Delphi;
- Build harus dijaga sebagai pembangkangan diri;
Untuk setiap tes yang berhasil dikompilasi, kami harus memberikan formatConverter.bpl ke versi (Shift + F9).
Rilis repositori akan dilakukan setiap kali modul sudah 100% selesai, atau ketika perbaikan yang sangat relevan dilakukan.
Standar yang diadopsi dalam proyek
Untuk pemahaman yang lebih baik tentang proyek, beberapa standar telah diadopsi yang memfasilitasi identifikasi setiap struktur yang digunakan. Mereka pada dasarnya adalah penggunaan Camelcase , dan Pascalcase ;
Variabel metode
Variabel lokal harus datang Camelcase .
Amati jarak antara deklarasi variabel dan awal metode.

Variabel pribadi
Deklarasi variabel pribadi harus selalu terjadi dalam pengubah akses.
Mereka harus datang Camelcase selalu dimulai dengan "F" diikuti dengan namamu.

Properti
Properti harus menggunakan Pascalcase .
Mereka harus memiliki nama variabel pribadi mereka dan/atau metode akses, hanya menghilangkan awalan (f, get, atur).

Metode
Deklarasi metode harus selalu terjadi dalam pengubah akses.
Metode harus datang Camelcase .
Parameter metode harus datang Camelcase dimulai dengan "A".
Cari, jika memungkinkan, gunakan Get , Set , Eh , dll. Menurut fungsi metode dan/atau pengembalian Anda.
Ketika dipanggil selalu gunakan kerabat pada panggilan Anda, bahkan ketika tanpa parameter. Contoh: saya memodo ();

Antarmuka
Antarmuka harus selalu dimulai dengan huruf "i" (huruf besar), diikuti dengan nama mereka di Pascalcase .

Kelas
Kelas harus selalu dimulai dengan huruf "T", diikuti dengan nama mereka di Pascalcase .
Kelas yang tidak memperluas kelas spesifik lainnya harus memperluas TinterfacedObject .

Disebut metode pada beberapa baris
Metode dengan panggilan yang sangat luas harus dipanggil menggunakan standar identitas JSON.


Penggunaan blok akhir mulai
Struktur yang tidak menggunakan blok pembukaan dan penutupan kode, seperti garis IFS , dalam kode yang sangat luas yang biasanya mereka dapatkan dengan cara membaca kode untuk modifikasi selanjutnya. Untuk alasan ini semua struktur harus memiliki blok pembukaan dan penutupan ( mulai .. Akhir )


Kemalasan
Pengubah akses harus dinyatakan selaras dengan pernyataan kelas.
Deklarasi metode, sifat, pembangun/destruktif, serta variabel Deklarasi VaR , harus diselaraskan.
Prosedur dan fungsi kelompok tanpa bergantian.
Deklarasi variabel terpisah, metode, pembangun, destruktor, dan properti dengan garis kosong, serta meninggalkan garis kosong sebelum pernyataan pengubah akses, atau akhir blok, kecuali pengubah pertama setelah pernyataan kelas.

Disebut metode dan variabel internal kelas
Mereka harus didahului oleh kata yang dicadangkan pada diri sendiri untuk memfasilitasi pembacaan kode.

Kata -kata yang dipesan
Preferensi diberikan pada penggunaan inisial kecil untuk kata -kata yang dipesan. Namun, ini bukan aturan untuk proyek karena dicadangkan ke IDE menandakannya, sehingga tidak mengganggu pembacaan kode.
File nomenklatur
Beri nama file yang dimulai dengan u_ .
Untuk lokasi file yang lebih baik di Manajer File, dan unit -unit dalam Delphi, kita harus mengatur nama file dengan menyusunnya dari modul mereka, mengirimkan, dan fungsi akhir, semuanya dipisahkan berdasarkan poin. Sebagai berikut pada gambar berikut:

Kode standar dengan baik jauh lebih mudah dibaca, bahkan oleh programmer yang menggunakan bahasa lain.
Semua
JSON Converter -> CSV
- Input JSON -> Output CSV
- Input JSON -> Output String
- Input JSON -> Output File
- Input String -> Output CSV
- Input String -> Output String
- Input String -> Output File
- Input File -> Output CSV
- File Input -> Output String
- Input file -> output file
- String asal standar -> json
- Asal standar JSON -> TStringList
- STANDAR TSTRINGLIST -> String
- Normalisasi string return -> CSV
- Normalisasi pengembalian CSV -> TStringList
- Standard Return TStringList -> String
XML Converter -> CSV
- Input XML -> Output CSV
- Input XML -> Output String
- Input XML -> Output File
- Input String -> Output CSV
- Input String -> Output String
- Input String -> Output File
- Input File -> Output CSV
- File Input -> Output String
- Input file -> output file
- String asal standar -> xml
- Asal standar XML -> TStringList
- STANDAR TSTRINGLIST -> String
- Normalisasi string return -> CSV
- Normalisasi pengembalian CSV -> TStringList
- Standard Return TStringList -> String
CSV Converter -> json
- Input CSV -> Output JSON
- Input CSV -> Output String
- Input CSV -> Output File
- Input String -> Output JSON
- Input String -> Output String
- Input String -> Output File
- Input File -> Output JSON
- File Input -> Output String
- Input file -> output file
- String Asal Standar -> CSV
- CSV Asal Standar -> TStringList
- STANDAR TSTRINGLIST -> String
- Normalisasi string return -> json
- Normalisasi return json -> tStringlist
- Standard Return TStringList -> String
CSV Converter -> XML
- Input CSV -> Output XML
- Input CSV -> Output String
- Input CSV -> Output File
- Input String -> Output XML
- Input String -> Output String
- Input String -> Output File
- Input File -> Output XML
- File Input -> Output String
- Input file -> output file
- String Asal Standar -> CSV
- CSV Asal Standar -> TStringList
- STANDAR TSTRINGLIST -> String
- Normalisasi string return -> xml
- Standardize Return XML -> TStringList
- Standard Return TStringList -> String
Pohon proyek
FormatConverter
├── app
│ └── .gitkeep
├── documentation
│ └── images
│ ├── exemplo.png
│ ├── install_config.png
│ ├── label_issue.png
│ ├── nomenclatura.png
│ ├── padrao_blocos_01.png
│ ├── padrao_blocos_02.png
│ ├── padrao_chamadas_01.png
│ ├── padrao_chamadas_02.png
│ ├── padrao_classes.png
│ ├── padrao_identacao_01.png
│ ├── padrao_interfaces.png
│ ├── padrao_metodos.png
│ ├── padrao_propriedades.png
│ ├── padrao_self_01.png
│ ├── padrao_variaveis_locais.png
│ ├── padrao_variaveis_privadas.png
│ ├── project_issue.png
│ ├── sitemap.png
│ ├── uso.png
│ ├── versionamento.png
│ └── workgroup.png
├── images
│ └── icone
│ ├── FormatConverter.bmp
│ ├── icon 150x150.png
│ ├── icon 44x44.png
│ ├── icon.ico
│ ├── icon.png
│ └── icon.psd
├── modules
│ ├── CSVtoJSON
│ │ └── U_CSV.JSON.pas
│ ├── CSVtoXML
│ │ └── U_CSV.XML.pas
│ ├── JSONtoCSV
│ │ └── U_JSON.CSV.pas
│ ├── JSONtoXML
│ │ └── U_JSON.XML.pas
│ ├── XMLtoCSV
│ │ └── U_XML.CSV.pas
│ └── XMLtoJSON
│ └── U_XML.JSON.pas
├── output
│ └── .gitkeep
├── project
│ ├── CSVtoJSON.dpk
│ ├── CSVtoJSON.dproj
│ ├── CSVtoXML.dpk
│ ├── CSVtoXML.dproj
│ ├── Format_Converter.groupproj
│ ├── FormatConverter.dpk
│ ├── FormatConverter.dproj
│ ├── FormatConverterTester.dpr
│ ├── FormatConverterTester.dproj
│ ├── JSONtoCSV.dpk
│ ├── JSONtoCSV.dproj
│ ├── JSONtoXML.dpk
│ ├── JSONtoXML.dproj
│ ├── Padronizacao.dpk
│ ├── Padronizacao.dproj
│ ├── XMLtoCSV.dpk
│ ├── XMLtoCSV.dproj
│ ├── XMLtoJSON.dpk
│ └── XMLtoJSON.dproj
├── src
│ ├── FormatConverter
│ │ └── U_FormatConverter.pas
│ ├── FormatConverterTester
│ │ ├── U_FormatConverterTester.View.fmx
│ │ └── U_FormatConverterTester.View.pas
│ └── Padronizacao
│ ├── U_Normalize.pas
│ └── U_Origin.Return.pas
├── vendor
│ └── .gitkeep
├── .gitattributes
├── .gitignore
├── LICENSE
└── README.md