Coder Social home page Coder Social logo

Comments (12)

JalonSolov avatar JalonSolov commented on July 18, 2024 3

This would definitely be a breaking change.

A fundamental aspect of V is that you cannot create methods on structs in other modules.

This is why all your api methods on the App struct must be in the same module as the file where your App struct is defined.

Those api methods could be tiny wrappers that simply call functions in other modules, but the main api method definition must be in the same module.

from v.

spytheman avatar spytheman commented on July 18, 2024 1

I understand your concerns, but we can consider other solutions to achieve file organization and management in this way. For large projects this is very important. No one wants their code directory to be a mess

I understand your desire to organize your code in that way, but it has many disadvantages, in terms of complexity for the compiler.

from v.

medvednikov avatar medvednikov commented on July 18, 2024 1

I think this was suggested before. "Virtual submodules" or something. There was a long discussion on GitHub.

from v.

medvednikov avatar medvednikov commented on July 18, 2024 1

It can be set up via v.mod. I'm personally not against this feature, but many are against due to complications.

from v.

Avey777 avatar Avey777 commented on July 18, 2024

This would definitely be a breaking change.

A fundamental aspect of V is that you cannot create methods on structs in other modules.

This is why all your api methods on the App struct must be in the same module as the file where your App struct is defined.

Those api methods could be tiny wrappers that simply call functions in other modules, but the main api method definition must be in the same module.

I understand your concerns, but we can consider other solutions to achieve file organization and management in this way. For large projects this is very important. No one wants their code directory to be a mess

from v.

Avey777 avatar Avey777 commented on July 18, 2024

image

image
I imported the App and Context structures in the api module, allowing the code and no error message; but when I access this api it will return “404 Not Found”

from v.

Avey777 avatar Avey777 commented on July 18, 2024

I understand your concerns, but we can consider other solutions to achieve file organization and management in this way. For large projects this is very important. No one wants their code directory to be a mess

I understand your desire to organize your code in that way, but it has many disadvantages, in terms of complexity for the compiler.

But I did this and the compiler didn't complain; I think this should be fixed.

from v.

Avey777 avatar Avey777 commented on July 18, 2024

@spytheman
Are there any other roundabout ways to achieve similar code organization and management?

from v.

Avey777 avatar Avey777 commented on July 18, 2024

It can be set up via v.mod. I'm personally not against this feature, but many are against due to complications.

Can you give me an example to show me how to do it

from v.

Avey777 avatar Avey777 commented on July 18, 2024

It can be set up via v.mod. I'm personally not against this feature, but many are against due to complications.

image
Is it an implementation similar to Rust? Can you give an example?

from v.

Avey777 avatar Avey777 commented on July 18, 2024

This is not possible
image

This is ok(This is possible, but it still doesn't achieve the purpose of putting V files in different folders)
image

from v.

Avey777 avatar Avey777 commented on July 18, 2024

image
Is it possible to encapsulate it in a very concise way like go?

from v.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.