Giter VIP home page Giter VIP logo

Comments (6)

elharo avatar elharo commented on May 14, 2024 1

My personal opinion:

It is not confusing to put separate language files in separate roots. In fact, it's the opposite. It helps keep things organized and makes it easier to find the code. google3 and most multi-language github projects I've seen do this.

That said, I don't know enough about bazel to have a strong, informed opinion here. But I do think most Java developers will find the existing layout confusing.

from startup-os.

oferb avatar oferb commented on May 14, 2024

Do you mean that,
com.google.startupos.tools.reviewer.aa.AaTool
is in folder tools/reviewer/aa instead of java/com/google/startupos/tools/reviewer/aa and tests in javatests/com/google/startupos/tools/reviewer/aa?

from startup-os.

elharo avatar elharo commented on May 14, 2024

Yes, that's what I meant.

from startup-os.

oferb avatar oferb commented on May 14, 2024

Right, so we've actually had some discussions on that, here:
#30
The idea is that Bazel is a multi-language built tool, so if a repo has multiple projects, and say some project has java, scala, c++, python and proto (quite conceivable), it's confusing to have each in a separate root folder, i.e:
java/com/google/startupos/tools/reviewer/aa
javatests/com/google/startupos/tools/reviewer/aa
and then similarly,
<language>/com/google/startupos/tools/reviewer/aa
<language>tests/com/google/startupos/tools/reviewer/aa
for every language.

So the idea is that we organize folders based on projects, and keep project-related files together.

from startup-os.

oferb avatar oferb commented on May 14, 2024

How do we move forward with this issue?

from startup-os.

elharo avatar elharo commented on May 14, 2024

I'm not sure what you mean by a root here. google3 certainly does separate java, C++, etc. into separate directory structures and google3/java follows java conventions on package organization. In this case google/startup-os is the equivalent of google3.

from startup-os.

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.