Tach!
und jetzt frage ich mich: macht es sinn dass das backend auf einen port läuft und das frontend unabhängig davon auf einen anderen
Du kannst VHosts auch dem DNS-Namen nach unterscheiden. Die Frage ist nicht sinnvoll nach der Anzahl der Ports, sondern ob du mehrere VHosts brauchst oder nur einen. Das kann ich dir nicht beantworten. Das musst du selbst entscheiden, ob es für dein Projekt sinnvoll ist, die API zum Backend getrennt von den Dingen des Frontends laufen zu lassen. Es gibt beispielsweise Projekte, die sind klein genug für All-in-One, es gibt technische Herausforderungen, bei denen es einfacher ist, beides zu trennen, obwohl es sonst eigentlich keine Gründe gibt. Und es gibt Projekte, da sind es nicht nur VHosts sondern eigene Maschinen.
ich hab mal von einem Entwickler den satz "kein Problem ist zuklein für 10 verschiedene programmiersprachen" gehört, er meinte das aber ironisch. jetzt habe ich das Problem dass ich pausenlos hinterfrage welche Technologien zusammen passen.
Bei 0815-Web-Projekten hast du derzeit bereits 4 bis 5 (Nicht-nur-Programmier-)Sprachen im Projekt. PHP/Java/irgendeine_serverseitige, SQL, HTML, CSS und Javascript (als fünfte optionale). Die Sprachen sind aber auch nicht allein da, dazu kommt noch das eine oder andere Framework mit seiner eigenen Sprache (DSL) beziehungsweise Funktionsumfang und Lösungsphilosophie.
wie müsste ich den ein spring-Java-application + angular (1 oder 2?) projekt angehen damit ein zusammenspiel dieser Technologien sinn ergibt?
Angular 1 ergibt gar keinen Sinn mehr. Das ist nicht nur abgekündigt sondern auch kein Vergleich zu Version 2 und darüber. Aktuell ist 5.irgendwas. Angular 1 war hauptsächlich zum Sammeln von Erfahrungen da, was man alles besser machen muss und Version 2 war (und ihre Nachfolger sind) dann etwas, mit dem es sich angenehm und konsistent arbeiten lässt.
stellt dann die spring app einfach nur die restschnittstellen und das backend und wird von angular angesprochen oder morkse ich Java zeugs in das angular hinein?
Wenn du einen Sinn darin siehst, eine Angular-Anwendung aufzusetzen, dann beschränkt sich in aller Regel der Server-Teil auf das Ausliefern der für das Frontend benötigten Dateien und die REST-Schnittstelle. Es spricht aber auch nichts grundsätzliches dagegen, neben der Frontend-Application weitere Webseiten statisch oder dynamisch bereitzustellen.
Üblicherweise wird für die Angular-Anwendung ein Packmechanismus verwendet (z.B. Angular CLI mit WebPack), um die Zahl der auszuliefernden Ressourcen gering zu halten. Es wäre jedenfalls nicht sehr sinnvoll, da irgendwie mit Java/whatever was "hineinzumurksen", und mir fällt da auch grad nicht ein, wozu man das sinnvoll verwenden könnte und für das es keine Alternative gibt. Wohl aber kannst du mit Java/... Aufgaben des Scaffolding erledigen.
dedlfix.