IDEAS home Printed from https://ideas.repec.org/a/baq/taprar/v5y2022i2p6-10.html
   My bibliography  Save this article

Research of possibilities of default refactoring actions in Swift language

Author

Listed:
  • Andrii Tkachuk

    (National Technical University of Ukraine «Igor Sikorsky Kyiv Polytechnic Institute»)

  • Bogdan Bulakh

    (National Technical University of Ukraine «Igor Sikorsky Kyiv Polytechnic Institute)

Abstract

The object of research in the paper is a built-in refactoring mechanism in the Swift programming language. Swift has gained a lot of popularity recently, which is why there are many new challenges associated with the need to support and modify the source code written in this programming language. The problem is that the more powerful refactoring mechanism that can be applied to Swift is proprietary and cannot be used by other software. Moreover, even closed-source refactoring software tools are not capable of performing more complex queries. To explore the possibilities of expanding the built-in refactoring, it is suggested to investigate the software implementation of the sourcekit component of the Swift programming language, which is responsible for working with «raw» source code, and to implement new refactoring action in practice. To implement the research plan, one refactoring activity that was not present in the refactoring utilities (adding an implementation of the Equatable protocol) was chosen. Its implementation was developed using the components and resources provided within the sourcekit component. To check the correctness and compliance with the development conditions, several tests were created and conducted. It has been discovered that both refactoring mechanisms supported by the Swift programming language have a limited context and a limited scope and application. That is why the possibility of expanding the functionality should not be based on the local level of code processing, but on the upper level, where it is possible to combine several source files, which often happens in projects. The work was directed to the development of the own refactoring action to analyze and obtain a perfect representation of the advantages and disadvantages of the existing component. As a result, a new approach to refactoring was proposed, which will allow solving the problems described above.

Suggested Citation

  • Andrii Tkachuk & Bogdan Bulakh, 2022. "Research of possibilities of default refactoring actions in Swift language," Technology audit and production reserves, PC TECHNOLOGY CENTER, vol. 5(2(67)), pages 6-10, October.
  • Handle: RePEc:baq:taprar:v:5:y:2022:i:2:p:6-10
    DOI: 10.15587/2706-5448.2022.266061
    as

    Download full text from publisher

    File URL: https://journals.uran.ua/tarp/article/view/266061/262233
    Download Restriction: no

    File URL: https://libkey.io/10.15587/2706-5448.2022.266061?utm_source=ideas
    LibKey link: if access is restricted and if your library uses this service, LibKey will redirect you to where you can use your library subscription to access this item
    ---><---

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:baq:taprar:v:5:y:2022:i:2:p:6-10. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Iryna Prudius (email available below). General contact details of provider: https://journals.uran.ua/tarp/issue/archive .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.