On Github you can see the following Distribution:

1. C++ 79.3% <https://github.com/apache/openoffice/search?l=c%2B%2B>
2. Java 9.8% <https://github.com/apache/openoffice/search?l=java>
3. Makefile 2.3% <https://github.com/apache/openoffice/search?l=makefile>
4. XSLT 2.2% <https://github.com/apache/openoffice/search?l=xslt>
5. PostScript 2.1%
   <https://github.com/apache/openoffice/search?l=postscript>
6. C 1.4% <https://github.com/apache/openoffice/search?l=c>
7. Other 2.9%

So the Core is written in C/C++. But it is still in an old style. So we use gnu98 standard. Mainly because we support old Distributions. So we still support Centos 7. On Windows we need to move to newer SDKs, currently we use an outdated one, which makes trouble. Some volunteers have tried to update it but it never went into our sourcetree. For MacOSX we moved up in the SDK versions, and got rid of the most legacy stuff.

About the Java Code: Java has been introduced by sun at some point in history. A lot of Wizards are made in Java. I am not sure if Java is completly optional, since ant the Java build tool we use is not optional. But most of the code is optional for sure.

Other Code:
We have some Perl and bash scripts that help us to build openoffice. They are currently added in the source repository.
We have integrated some Scripts in python too. I.E. Mailmerge.
Also there is some Assambler script which is very interesting concept. The assambler application creates a sort of compability layer between languages. We can directly use a Java class in C++, when it is announced by special idl files or vice versa. Pretty neat but breaks any chance currently to use an IDE.

Also the codes is divided in Modules. You can check the Architecture at [1] where it gives some abstract overview. However at [2] I created a dependency sheet, showing how the build environment thinks the modules depends on each other. [3] tries to explain what each modules does, but it is incomplete and I invite everyone to help to complete it. I try to collect text from other parts of the wiki and from the code.

HTH
Peter

[1] https://wiki.openoffice.org/wiki/Architecture
[2] https://wiki.openoffice.org/wiki/File:Dependency_graph_trunc.odg
[3] https://wiki.openoffice.org/wiki/Main


Am 16.03.20 um 22:31 schrieb James Taylor:
Hello,

I am James and I am currently studying a BTEC Level 3 extended Diploma in IT 
and Computing at Henley College.

As part of my course, we have different units and one of them we are currently 
covering is Programming.

I was wondering what OpenOffice is programmed in, and how it works in a code 
way.

I am sorry if this isn’t very clear.

Kind Regards,
James Taylor

Sent from Mail<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10


Reply via email to