SilkDevTools
Programmer's powerful local build tool
permanently free

introduction


 SilkDevTools, powerful local construction tools, provides all-round static detection, dynamic detection, code tools and various convenient plug-in tools for the project. Scan the program code through lexical analysis, syntax analysis, control flow, data flow analysis, memory detection, code coverage, hot function detection and other technologies to verify whether the code meets the standardization Safety, reliability, maintainability and other indicators. Deeply optimize the code according to the analysis results, improve the code quality and enhance the robustness of the product.

user guide


quick tutorial

installing software

Double-click to run setup
You can click Install Now
You can also adjust some options by clicking on custom options
Start the installation
installation complete
Desktop generated shortcuts
  Double click to launch

add the project

  Next we add an item for inspection and analysis and click the New item button
  Next we add an item for inspection and analysis and click the New item button Select existing projects in the project list, or browse to add projects that are not in the list
  Select the sample project named VS2019
  After adding, double-click to start the project directly. Click to display the details page

one key analysis

  Click the selected project in the workbench, and click the one-click test button in the project details page that pops up
  One-click detection is started
  You can see that the project checks have been run in sequence

check the report

  When the detection is completed, the project information page will be returned automatically. Click the report button in the upper right corner to enter the detailed report page to view the detection results
  Here you can see that there is a violation warning in line 53 of code. Click the edit file button on the right of the single violation information to open the corresponding source code file for viewing and modifying
  After the source code file is opened, it will automatically locate the offending line and view the details of the offending description. Delete needs to be changed to delete[].

adding development tools

  Click the New Development tool button
  Select existing tools in the tool list, or browse to add tools that are not in the list
  Double-click to start the tool. Click to display the details page

adding user Tools

  Click the New Tool button
  Select existing tools in the tool list, or browse to add tools that are not in the list
  Double-click to start the tool. Click to display the details page

run the plug-in tool

  Double-click the Plug-in Tools button to launch the plug-in tools

recording code snippets

  new folder
  Enter the name of the folder
  New snippet
  Enter the name of the snippet, paste in the code, fill in the instructions, and click the Add button
  Complete the code snippet. When we need to use the code, select it and click one-click copy in the upper right corner of the details page

The detailed function


workbench

overview


  Project area: Add/Modify/Delete items. This area lists all items that have been added   Tool area: Add/Modify/Remove development tools. This area lists all development tools that have been added   Quick start area: Provides a row of ICONS for quick startup of various tools

  • The project area

  •   Add the project:

      Click the New project button

      Select existing projects in the project list, or browse to add projects that are not in the list

      Choose project

      After adding, double-click to start the project directly. Click to display the details page

      Delete the project:

      Click the project icon and click the Delete project button on the project details page that appears

      Confirm whether to delete items (source items will not be deleted)

  • Tool area

  •   Adding development tools:

      Click the New Development tool button

      Select existing tools in the tool list, or browse to add tools that are not in the list

      Double-click to start the tool. Click to display the details page

      Deleting development tools:

      Click the development tool icon and click the Delete button on the development tool details page that appears

      Confirm whether to delete the development tool

  • Quick start area

  •   Add Quick Start:
      
      In the Developer Tools/My Tools/All Tools details page click Add to Quick Launch

      
      successfully added

      
      Click the icon to start the tool directly

      Delete quick Start:
      View batch delete Quick start

    project indicators


      
      Cyclomatic complexity: Cyclomatic complexity is a measure of code complexity. Cyclomatic complexity is used to measure the complexity of a module's judging structure. In terms of quantity, cyclomatic complexity is the number of linearly independent paths, that is, the minimum number of paths needed to be tested reasonably to prevent errors. High cyclomatic complexity indicates that program code may be of low quality and difficult to test and maintain。   Nesting depth: The set of statements inside curly braces is called a code block or compound statement code block and has its own declarative statements and other statements. A code block that is inside a function body or another code block is called a nested code block. Nesting depth is the number of layers of code blocks nested within valid parentheses.   The magic number: A number that has a special meaning but does not express it explicitly. There are a lot of these hard-to-read numbers in the program.   Macro definition: It replaces certain text patterns according to a set of predefined rules. The interpreter or compiler automatically makes this pattern substitution when it encounters a macro.   Violation of statistics: listed the current project static detection, dynamic detection of the total number of violations.


      
      detailed information: Click Details to view the detailed metrics of a single file within the project
      
    Click the detailed indicator button on the right of a single file to enter the detailed information of the file
      
    This shows the metrics and function call relationships for individual files (required to complete doxygen running)
      
    Click the detailed indicator button on the right of the class name to view the detailed information of the class
      

    compilation run


      
      open: Launch the development tool to open the project   open the folder: Open the folder where the source project is located   compile: Compile the project   recompile: Recompile the project   run: Run the project executable

    static analysis


      
    Click the button to initiate this type of detection   code analysis: Through lexical analysis, grammar analysis, control flow, data flow analysis and other techniques to scan the program code, check the consistency of the code and design, the code to the standard compliance, readability, the correctness of the logical expression of the code, the rationality of the code structure and other aspects.   encoding specification: Find out the problems that violate the program writing standards, the unsafe, unclear and fuzzy parts of the program, find out the non-portable parts of the program, and the problems that violate the program programming style, including variable checking, naming and type checking, program logic checking, program syntax checking and program structure checking.

    dynamic analysis


      
    Click the button to initiate this type of detection   memory leak : It refers to the heap memory that has been dynamically allocated in the program is not released or cannot be released due to some reason, resulting in the waste of system memory, slowing down the program, and even system crash.   code coverage rate: Is a measure in software testing that describes the percentage and extent to which the source code in a program is tested. The percentage is called code coverage.   performance analysis: Sub-standard application performance can cause software or network problems. To ensure that the software meets or exceeds design expectations, it is necessary to analyze application performance to identify potential problems. It involves checking applications to make sure each component is working efficiently, and keeping a close eye on processor usage, network and system services, storage, and input/output (I/O) by design.

    code tools


      
      code formatting: When code is typed or automatically generated in the source editor, it is formatted in certain ways, a process known as formatting code.   Generating documentation: A file generation tool for a program that converts specific comments in the program into explanatory files. Most useful comments are descriptions of functions, types, and so on. Therefore, if the comments can be processed and reorganized into a pure reference manual according to the structure of the program itself.

    check the report


      Compile report: A compilation report is generated each time the compilation is complete
      Static analysis report: Violations detected through static analysis means can be edited by clicking the file button
      Dynamic analysis report: Violations detected through dynamic analysis means can be edited by clicking the file button   Improve the code according to the report:   On the project information page, click the report button in the upper right corner to enter the detailed report page to view the test results
      Here you can see that there is a violation warning in line 53 of code. Click the edit file button on the right of the single violation information to open the corresponding source code file for viewing and modifying
      After the source code file is opened, it will automatically locate the offending line and view the details of the offending description. Delete needs to be changed to delete[].

      After opening the editor, modify the code according to the rules   The common functions of the editor are introduced
      After editing the code, save it, and then we can check again to see if the modified violation still exists or has been resolved

    automatic operation


         Click the Automation Run button on the project details page
         On the automation details page that appears, you can select the automation items that you want to run

    task manager

         When running a detection task, some information about the task can be displayed in real time, and the task can also be aborted

    other details


      Batch Deleting Items:      Select the multiple option button in the upper right corner of my workbench
         Check the items we need to delete
         Click the Delete item button
         Confirm deletion
      Delete development tools in batches:      Select the multiple option button in the upper right corner of my workbench      Check the development tools we need to remove
         Click the Delete Development Tools button
         Confirm deletion
      Batch delete Quick start:      Select the multiple option button in the upper right corner of my workbench
         Check the quick start we need to remove
         Click the Delete quick start button
         Confirm deletion
      Modifying project ICONS:      Click the project icon on the project details page to select a new replacement icon for the project
      Modifying project Name:      Click the project name on the project details page to edit the current project name

    tool kit

    system tools

         You can add some tools that come with the system to facilitate quick startup in the programming process

    the user tools

      You can browse your local path to add installed tools for quick startup during programming

    plug-in tool

         communication tools: Testing tools for various communication modes, to meet the requirements of the verification environment or testing, including serial port testing tools /TCPIP testing tools/file transfer
         graphical tools: Graphics processing related tools, currently including screen capture/screen video/YUV player
         design tools: Design processing related tools, currently including screen color
      conversion tools: Base conversion and other related tools
      generating tools: Random password generation, UUID generation and other related tools
      miscellaneous tools: Text encryption and decryption /JSON tools/timestamp tools and other related tools

    portfolio


      
    You can record the commonly used codes to the data bag and browse the copy at any time

    folder

      new folder
      Enter the name of the folder

    adding snippets

      New snippet
      Enter the name of the snippet, paste in the code, fill in the instructions, and click the Add button
      Complete the code snippet. When we need to use the code, select it and click one-click copy in the upper right corner of the details page

    modifying snippets

      Click the code snippet you want to modify, modify the content, and then click the Modify button to save

    deleting code snippets

         Right-click on the snippet you want to delete and choose Delete from the pop-up menu
         Confirm deletion

    rename folders

         Right-click on the folder you want to rename
         Enter the editing mode and change the name
         modification complete

    delete folders

         Right-click the folder you want to delete and choose Delete from the pop-up menu
         Confirm deletion

    settings

    multilanguage switching

         Currently, the supported languages are Chinese and English, which can be dynamically switched at any time
      

    settings - General

         Save form position: Save the position and size of the form when the program exits, and start the form directly by the saved position and size after the next startup   Intelligently limit CPU usage: Tasks are intelligently restricted based on the CPU usage to prevent excessive CPU usage

    setup - compile

         QMake set: When C++ projects are Qt projects, you can add a Qt compiler suite   configuration: Debug, Release, Debug&Release optional

    setup - Analysis

         time-out period: Default end time when a task times out   Select a feature to enable or disable: Here you can enable/disable some detection functions that we are not interested in, both for automated detection and one-click detection

    settings - Documents


    use skill


    common problem


    support


    support content

    name support developing
    operating system Windows7/8/10 macOS UOS
    programing language
    project type Qt
    VS2003-VS2019
    Eclipse
    Intellij IDEA

    Service


      software development: Long - term C++ Qt Qml platform software development services   customized development: Long - term SilkDevTools customized development services   code optimization: C++/Qt/Qml code optimization services for enterprises and individuals

    about us


    contact information

    author zhengtianzuo
    QQ 278969898
    mailbox camelsoft@163.com
    homepage http://www.camelstudio.cn
    blog http://blog.csdn.net/zhengtianzuo06
    github https://github.com/zhengtianzuo
    gitee https://gitee.com/zhengtianzuo
    QQ group 199672080

    Add QQ Friends Add WeChat Friends Paid Questions WeChat Sponsor Alipay Sponsor

    our vision

      vision: Programmer's powerful local build tool   mission: Create value, achieve customers and serve the industry   sense of worth: Mining functions, integrators and accurate services