Delphiのフォーマットコンバーター(JSON、XMLなど)。
Delphiのフォーマットコンバーター(JSON、XMLなど)。

*画像をクリックしてビデオを表示します
修正:ライブラリパスに「$(variable_created) dcu」を「$(variable_created) output」に置き換えます

*画像をクリックしてビデオを表示します

*画像をクリックしてビデオを表示します
jsontoxml
xmltojson

プロジェクトの編集は、画像のように維持する必要があります。

問題を作成するには、次のことに注意してください。


@bomorafinha
バージョンには、FormatConverterをベースとして使用する必要があります。Windows32ビット用のformatconverter.bplパケットの形成を次のように使用する必要があります。

正常にコンパイルされた各テストについて、formatconverter.bplにバージョン(Shift + F9)に構築する必要があります。
モジュールが100%終了するたびに、または非常に関連性のある修理が実行されるたびにリポジトリリリースが行われます。
プロジェクトをよりよく理解するために、使用される各構造の識別を促進するいくつかの基準が採用されています。それらは基本的にラクアルケースとパスカルケースの使用です。
ローカル変数はCamelcaseに登場する必要があります。
変数宣言とメソッドの開始の間の間隔を観察します。

プライベート変化物の宣言は、常にアクセス修飾子内で発生する必要があります。
彼らは常に「F」から始まって、あなたの名前が続くカメルケースに来たに違いありません。

プロパティはPascalcaseを使用する必要があります。
プライベート変数および/またはアクセス方法の名前を正確に備えている必要があり、プレフィックスのみを排除します(f、get、set)。

メソッドの宣言は、常にアクセス修飾子内で発生する必要があります。
メソッドはカメルケースに来なければなりません。
メソッドパラメーターは、「a」から始まるラクメルケースに登場する必要があります。
可能な場合は、メソッド関数および/または返品に従って、 Get 、 Set 、 Ehなどを使用してください。
呼び出された場合、パラメーターがない場合でも、常に電話で親relativeを使用してください。例:my memodo();

インターフェイスは、常に「I」(大文字)の文字から始まり、その後にPascalcaseで名前が付いています。

クラスは常に「T」という文字から始まり、その後にPascalcaseで名前を付けてください。
他の特定のクラスを拡張しないクラスは、 TinterfacedObjectを拡張する必要があります。

JSON Identity Standardを使用して、非常に広範な呼び出しを伴う方法を呼び出す必要があります。


通常、後の変更のためにコードを読み取る邪魔になる非常に広範なコードで、行IFSなどのコード開閉ブロックを使用しない構造。このため、すべての構造には開閉ブロックが必要です(開始..終了)


アクセス修飾子は、クラスステートメントに合わせて宣言する必要があります。
メソッド、プロパティ、ビルダー/破壊的、および変数宣言varの宣言を調整する必要があります。
グループの手順と機能を交互に行わずに。
空白の行を使用した変数宣言、メソッド、ビルダー、破壊者、およびプロパティを個別に、アクセス修飾子ステートメントの前に空白行を残します。

コードの読みを容易にするために、自己という言葉が先行する必要があります。

予約された単語のために小さなイニシャルを使用する方が優先されます。ただし、これはIDEのシグナルに予約されているため、プロジェクトのルールではないため、コードの読み取りを乱しません。
U_で始まるファイルに名前を付けます。
ファイルマネージャーのファイルのより良い場所、およびDelphi内のユニットの場合、すべてがポイントで区切られたモジュール、送信、および最終関数からそれらを作成することにより、ファイルの名前を設定する必要があります。次の画像で次のように:

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