محول التنسيق (JSON ، XML ، إلخ) لـ Delphi.
محول التنسيق (JSON ، XML ، إلخ) لـ Delphi.

* انقر على الصورة لعرض الفيديو
تصحيح: استبدل "$ (variable_created) dcu" بـ "$ (variable_created) outputing" على مسار المكتبة

* انقر على الصورة لعرض الفيديو

* انقر على الصورة لعرض الفيديو
JSONTOXML
xmltojson

يجب الحفاظ على تجميع المشروع كما في الصورة.

لإنشاء مشكلة انتبه إلى ما يلي:


bomorafinha
للإصدار ، يجب استخدام FormatConverter كقاعدة ، وتشكيل حزمة FormatConverter.bpl لـ Windows 32 بت ، على النحو التالي:

لكل اختبار تم تجميعه بنجاح ، يجب أن نقدم بنيًا على FormatConverter.bpl إلى الإصدار (Shift + F9).
سيتم إجراء إصدارات المستودعات في كل مرة يتم فيها الانتهاء من الوحدة النمطية بنسبة 100 ٪ ، أو عند إجراء إصلاح ذي صلة للغاية.
لفهم أفضل للمشروع ، تم اعتماد بعض المعايير التي تسهل تحديد كل هيكل المستخدم. هم في الأساس استخدام Camelcase ، و Pascalcase ؛
يجب أن تأتي المتغيرات المحلية.
راقب التباعد بين الإعلان المتغير وبداية الطريقة.

يجب أن يحدث إعلان المواد المتغيرة الخاصة دائمًا داخل معدلات الوصول.
يجب أن يأتي Camelcase دائمًا بدءًا من "F" متبوعًا باسمك.

يجب أن تستخدم الخصائص Pascalcase .
يجب أن يكون لديهم بالضبط اسم متغيرهم الخاص و/أو طريقة الوصول ، مما يلغي فقط البادئة (F ، GET ، SET).

يجب أن يحدث إعلان الأساليب دائمًا داخل معدلات الوصول.
يجب أن تأتي الأساليب .
يجب أن تأتي معلمات الطريقة الجمال بدءًا من "A".
ابحث ، عند الإمكان ، Get ، تعيين ، EH ، إلخ. وفقًا لوظيفة الطريقة و/أو عودتك.
عند الاتصال دائمًا ، استخدم الأقارب على مكالمتك ، حتى عندما يكون بدون معلمات. على سبيل المثال: memodo () ؛

يجب أن تبدأ الواجهات دائمًا بالحرف "I" (أقصى) ، تليها اسمها في Pascalcase .

يجب أن تبدأ الفصول الدراسية دائمًا بالحرف "T" ، تليها اسمها في Pascalcase .
يجب أن تمدد الفئات التي لا تمدد أي فئات محددة أخرى tinterfacedObject .

يجب استدعاء الطرق التي تحتوي على مكالمات واسعة للغاية باستخدام معيار هوية JSON.


الهياكل التي لا تستخدم كتلة فتح الكود والإغلاق ، مثل السطر IFS ، في رمز واسع النطاق للغاية ، عادة ما يكونون في طريق قراءة الكود للتعديلات اللاحقة. لهذا السبب يجب أن يكون لجميع الهياكل كتلة الافتتاح والإغلاق ( ابدأ .. نهاية )


يجب إعلان معدلات الوصول لتكون محاذاة مع بيان الفصل.
يجب محاذاة إعلان الأساليب والخصائص والبنائين/المدمرين ، وكذلك الإعلان المتغير.
إجراءات المجموعة والوظائف دون بالتناوب عليها.
إعلانات متغيرة منفصلة ، أساليب ، بناة ، مدمرين ، وخصائص مع خط فارغ ، وكذلك اترك سطر فارغ قبل بيان معدّل الوصول ، أو نهاية الكتلة ، باستثناء المعدل الأول بعد بيان الفصل.

يجب أن تسبقها كلمة محفوظة لتسهيل قراءة الكود.

يتم إعطاء التفضيل لاستخدام الأحرف الأولى الصغيرة للكلمات المحجوزة. ومع ذلك ، فإن هذه ليست قاعدة للمشروع منذ أن تم حجزها لإشارات IDE ، وبالتالي لا تزعج قراءة الكود.
قم بتسمية الملفات التي تبدأ بـ U_ .
للحصول على موقع أفضل للملفات في مدير الملفات ، والوحدات الموجودة داخل دلفي ، يجب علينا إعداد اسم الملفات من خلال تأليفها من وحداتها ، وتقديم الوظيفة ، والوظيفة النهائية ، وكلها مفصولة حسب النقطة. على النحو التالي في الصورة التالية:

محول JSON -> CSV
محول XML -> CSV
محول CSV -> JSON
محول CSV -> XML
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