Bachelorthesis: Java oder PHP (CMS)

Ghosty

Neues Mitglied
Wie ihr es in der Überschrift schon herauslesen könnt, stehe ich kurz davor meine Bachelorthesis in Informatik zu schreiben.

Ich habe die Idee ein einfaches hosted CMS auf Basis von Angularjs zu entwickeln.
Das CMS soll eine Single-Page-Webanwendung werden (Also Frontend viel mit AJAX) und soll
Content für externe Webseiten bereitstellen.

Jetzt stellt sich nur die Frage mit welcher Sprache ich das Backend entwickeln soll
- Userverwaltung, Rechteverwaltung, Contentverwaltung,... (ca. 5 Tabellen in MySQL).
Ich würde das Ganze sehr gerne in Java entwickeln, weil es für mich die schönere, saubere Sprache ist (objektorientiert).
Ich würde sogar behaupten, dass es mit Java schneller und gleichzeitig sauberer realisierbar ist als mit PHP.
Allerdings müsste ich in der Thesis Begründen warum ich mich ausgerechnet für Java (und nicht für PHP) entschieden habe.
Da kann ich natürlich nicht schreiben "Weil es die schönere Sprache ist" :)

Könnt ihr mir vielleicht eine der Sprachen empfehlen
bzw. Begründen welche Sprache für mein Vorhaben besser geeignet ist (ggf. mit Literatur)?
PHP (kein Framework oder Zend oder Symfony) oder Java (Spring, Hibernate, JSP)
 
Zuletzt bearbeitet:

Gucky

Top Contributor
Ich weiß nicht, wie das in PHP aussieht aber Java bringt sehr viel mit. Andererseits ist PHP für Internetanwendungen "geschaffen".

Außerdem finde ich schon, dass du sagen kannst, dass dir Java besser gefällt und du dich deshalb dafür entschieden hast.
Außerdem bietet Java genannte Vorteile (OOP, sauberer/besser lesbar etc.).

Vielleicht hilft dir das hier auch bei der Sprachfindung weiter.
 

JavaMeister

Gesperrter Benutzer
Ein CMS als Bachelor Thesis: Da stellt sich mir automatisch die Frage: Wo ist der wissenschaftliche Anspruch? Was soll hier "neues" erarbeitet werden?

Was hindert einen ein vorhandenes CMS zu nehmen und dieses abzugeben?

Wenn man sich dann in einem Unternehmen bewirbt: Ja ich habe ein CMS geschrieben. Ahja.
 

Ghosty

Neues Mitglied
vielen Dank für die Antworten.

@Gucky
Da es sich (wie es JavaMeister schon andeutet) um eine wissenschaftliche Arbeit handelt zählt meine eigene Meinung nur im Fazit der Arbeit. Alles andere müsste ich mit Literatur belegen.
Deinen Link hatte ich vorher beim googlen auch schon entdeckt. Allerdings stellt sich die Frage ob sich diese Argumente mit meinen Anforderungen decken.

@JavaMeister
Kurzfassung: Bestehende Webseite wird über eine URL (www . deinewebseite . de) in das System eingelesen und in einem Frame geladen. Über den Frame hat man die Möglichkeit die einzelnen DOM-Elemente der Webseite zu editieren (Text bearbeiten, Bild austauschen).
Danach muss lediglich in der Webseite ein JavaScript-Codeschnipsel im Footer eingesetzt werden, worüber der Content aus der DB meines Systems ermittelt wird und in den entsprechenden DOM-Elementen der Webseite geladen wird.
Mein System soll sich an Webdesigner und deren Clienten richten (kleine Webseiten wie Vereinsseiten, Firmenseiten, DJ-Seiten, private Homepages).
Hierbei entfällt das lästige einpflegen von Designs in eine Wordpressstruktur, geschweige denn das einrichten eines (Wordpress) CMS. Contentpflege in wenigen Minuten. Ich verfolge mit diesem System somit einen ganz anderen Ansatz als beispielsweise Wordpress und richte mich damit gezielter auf bestimmte Zielgruppen.
Ziel der Arbeit ist es, zu untersuchen in wie weit so etwas mit modernen Web-Technologien (wie Angularjs) möglich ist.
 
Zuletzt bearbeitet:

Gucky

Top Contributor
Ich habe jetzt noch keine Bachelorarbeit geschrieben aber ich bin der Meinung, dass deine Meinung bei der Wahl der Sprache sehr wohl eine Rolle spielt. Zumal du die perfekte Sprache nicht finden wirst. Es gibt auch noch C/C++, Perl, Python, Delphi etc. und sie alle sind mehr oder weniger dazu geeignet eine solche Anwendung zu erstellen. Irgendwo musst du deine Meinung mit einbringen und wie sieht es denn aus, wenn du schreibst "Ich habe Java genommen, weil der das so sagt." :D ;)

Wenn sich die Frage stellt, bist du der Einzige, der sie beantworten kann. ;)

Du könntest zum Beispiel ein eigenes Kapitel der Wahl der Programmiersprache widmen, was zeigt, dass du dich intensiv vorbereitet hast aber wie gesagt. Ich habe sowas noch nie geschrieben.



PS: Laut Wikipedia unterstützt PHP zumindest rudimentär OOP.
 
Zuletzt bearbeitet:

Ruzmanz

Top Contributor
Java EE und Spring sind gefragt. Für ein Unternehmen wird wohl der wissenschaftliche Anspruch seiner Bachelorthesis egal sein. Selbstverständlich gibt es ein paar Unternehmen, die darauf Wert legen. Das ist eher selten und zudem verlangen diese Unternehmen meistens einen Doktor-Titel ...

Deinen Link hatte ich vorher beim googlen auch schon entdeckt. Allerdings stellt sich die Frage ob sich diese Argumente mit meinen Anforderungen decken.

Ich denke schon. Deine Anforderungen sind zu simple. Warum nicht JNode, JRuby, Groovy, Grails, etc.? Sollten alle deine Anforderungen ohne Probleme erfüllen. Es könnte aber sein, dass aufgrund des engen Zeitrahmens der Bachelorarbeit einige neue Baustellen / interessante Aspekte ergeben, sodass jemand deine Arbeit ergänzen kann. Zum Beispiel ist es mit Spring problemlos möglich Neo4J einzubinden. Eine Graphendatenbank würde xyz neue Möglichkeiten öffnen. Dafür wäre es gut, wenn es eine etabliertes Framework ist, welches im laufe der Jahre einen hohen Zuwachs gefunden hat ...
 

AndiE

Top Contributor
Verstanden habe ich das noch nicht. Einerseits scheint es, also ob du ein System wie "Typo3" programmieren willst. Das halte ich schon für etwas umfangreich. Andererseits scheint es aber auch so, als ob du den HTML-Code einer Seite einlesen, ändern und den geänderten Code wieder auf den entsprechenden Server zurückschreiben willst, der die Webseite hostet.
Ich habe mich bei meiner Facharbeiterarbeit auch übernommen, weil sich letztendlich herausstellte, ich sollte sowas wie ein ERP-System programmieren. Ich hatte nur 70 Stunden, du magst ja mehr Zeit haben.
Ich würde den Schwerpunkt noch gar nicht auf die Auswahl der Sprache sondern die Ausformulierung der Use-Cases legen, und deren Umsetzung in Aktivitäten.
 

JeromeC

Aktives Mitglied
Irgendwo musst du deine Meinung mit einbringen und wie sieht es denn aus, wenn du schreibst "Ich habe Java genommen, weil der das so sagt."
Nein, selbst im Fazit nicht unbedingt. Der einzigste Platz wäre das Vorwort, soweit ich mich recht erinnere, und selbst das gilt als verpönt.
Du könntest zum Beispiel ein eigenes Kapitel der Wahl der Programmiersprache widmen, was zeigt, dass du dich intensiv vorbereitet hast aber wie gesagt. Ich habe sowas noch nie geschrieben.
Auf keinen Fall. Daher solltest du auch keine Meinung dazu äußern.

Die Frage ist, ob der wissenschaftliche Aspekt deiner Arbeit der Vergleich ist oder die reine Implementierung eines CMS. Mal ganz abgesehen wie schwer bzw. komplex das sein wird, musst du vorher wissen, was dabei rauskommen soll. Die reine Umsetzung einer Idee halte ich nicht für Gehaltvoll. Schließlich kannst du dann nicht mehr dazu sagen als "Es funktioniert" oder "Es funktioniert nicht".

Wenn du einen Vergleich mit anderen CMS anstrebst, solltest du den Umfang nicht unterschätzen. Neben der Implementation musst du noch sehr viel dich mit anderen CMS beschäftigen und dir ein Kriterium wie z.B. Performanz oder Installationsaufwand aussuchen und Messreihen erstellen. Dann musst du diese Daten noch auswerten und darüber schreiben. Literatur durchsuchen und gucken, wie dein Ergebnis überhaupt zu interpretieren ist.

Ich hatte damals auch Implementation + Vergleich gemacht, natürlich mir auch sehr viel Vorgenommen, aber es war der reinste Stress. Ich weis nicht wie gut dir so eine Umsetzung von der Hand geht, aber ich würde allgemein sagen, du solltest entweder ein CMS bauen dass absolut minimal ist und nur für den Zweck des Vergleichs gebaut wurde oder eine reine "Ich habe das und das Implementiert"-Arbeit abgeben.

Zur Sprache: Da deine persönliche Meinung nicht im geringsten etwas dadrin zu suchen hat, würde ich dir raten, im Hinblick auf dein Ziel die Begründung zu formulieren. Beispiel: Die Implementierung des CMS erfolgte mittels Java und JavaFX, da diese Technologien im Verbund ein breites Spektrum an an grafischen, logischen und operatorischen Möglichkeiten bieten. Besonders die Einsatzmöglichkeit von JavaFX im Browser als Applet weist diese Technologie als besseres Mittel der Wahl gegenüber bla,bla,etc. aus.
Hab jetzt irgendwas geschrieben, aber ich denke du verstehst, was ich damit meine.

Viel Erfolg!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Java ServerFaces Anwendung mit XHTML & CSS Allgemeines EE 1
E modulare Java-Anwendung verteilen (Camel) Allgemeines EE 0
B Java Mail und idle() mit zig Emailadressen? Allgemeines EE 59
H JWebUnit Fehler: java.lang.NoClassDefFoundError: org/apache/regexp/RESyntaxException Allgemeines EE 24
B Java mail API - möchte nur eine gewisse Anzahl von Emails in die Liste holen Allgemeines EE 3
M Rest mit Java 11 Allgemeines EE 6
M java.lang.SecurityException: class "javax.persistence.TupleElement"'s signer information does not match ... Allgemeines EE 1
F Java Programmierer Allgemeines EE 13
R Wie viel DevOps sollte ein Java-Entwickler kennen, der sich in Microservices spezialisiert? Allgemeines EE 5
Dimax JSP Probleme mit Java in JSP Allgemeines EE 21
Dimax JSP Auf button click java methode ausführen.Ist das möglich? Allgemeines EE 6
B Logging (log4j) in JAVA EE application - WildFly Allgemeines EE 15
A Java EE (am Cleint) und websocket Allgemeines EE 8
J Ich kann Java JDK nicht downloaden Allgemeines EE 6
R Aufbau zum Java EE Entwickler - Schulungen Allgemeines EE 0
G Java EE Hosting ? Allgemeines EE 6
P Java EE Videotutorials Allgemeines EE 1
R Java Enterpise entwickeln mit Virtualbox Allgemeines EE 6
A OutOfMemoryError: Java heap space Allgemeines EE 7
I Start Word from Java Allgemeines EE 1
T Java Jersey Interceptor Allgemeines EE 7
R Post Variable in Java Allgemeines EE 8
L JSP Fehlermeldung bei Verwendung von Java-Expression-Language Allgemeines EE 8
K Wie habt ihr Java EE gelernt? Allgemeines EE 11
hjpsoft JSF Lösung einer Aufgabe im "Workshop Java EE7" Allgemeines EE 5
S Welcher Java EE Applikationserver für RESTful Webservice? Allgemeines EE 2
T Java Login Allgemeines EE 1
L Certified Master Java Enterprise Architect Java EE Allgemeines EE 3
R Java EE 6, eclipse, maven, jsf, hibernate, mysql Allgemeines EE 8
D Einfaches Java Projekt funktioniert nicht Allgemeines EE 3
W Authentifizierung und Sessions in Java EE7 Allgemeines EE 0
OnDemand Task in Java ee Allgemeines EE 7
OnDemand JSF - java File Verständnisfrage Allgemeines EE 5
OnDemand Deployen ohne .java Files Allgemeines EE 0
E Wie kann ich über einen Suchfeld in Java Server Pages nach Datenbankinhalten suchen? Allgemeines EE 11
V Java EE 7 CDI, annotations und beans Allgemeines EE 1
X Konsolenausgabe einer java klasse in eine jsp umleiten Allgemeines EE 7
S Aufruf eines EJBs aus einer nativen Java-Applikation Allgemeines EE 1
T Fertiges html javascrip css template in java EE application Allgemeines EE 0
F Eclipse/Java EE Debug-Problem Allgemeines EE 1
D Java Projekt goes Webservice Allgemeines EE 6
L Button Handling in JSP mit Java-Backend Allgemeines EE 2
Shams Frage zu Dowload von JAVA SDK Allgemeines EE 5
T Größeres Java EE Beispiel Projekt Allgemeines EE 4
N JavaScript schickt und Java empfängt? Allgemeines EE 4
O Java EE in Netbeans + allgemeine Fragen Allgemeines EE 5
H java selenium spezis? Allgemeines EE 4
H java selenium test connection refused Allgemeines EE 6
M Java EE-Technologie-Lern-Wahl Allgemeines EE 5
B [EJB] javax.inject.DefinitionException: bean not a Java type Allgemeines EE 5
J Java Dependencies auslesen Allgemeines EE 19
2 installation java EE Allgemeines EE 12
J PHP oder Java? Allgemeines EE 12
L Webseiten Formulare über Java Oberfläche ausfüllen? Allgemeines EE 2
T Java CMS Entwicklung : Welcher Weg ist besser? Allgemeines EE 9
F Gesucht: Gratis Server für Java Entwickler Allgemeines EE 4
J Einstieg in Java EE Allgemeines EE 5
aze Eclipse Java EE Web Project:Wo liegen die Servlets ? Allgemeines EE 4
S java Entities Problem Allgemeines EE 19
D Grundüberlegung Java Webprojekt Allgemeines EE 10
F Einstieg in Java EE - Beispielanwendungen Allgemeines EE 52
R JAVA EE - eigene Klassen aus EJB übernehmen Allgemeines EE 2
T "normales" Java Programm auf einen Server laufen lassen Allgemeines EE 3
M EE6+EJB+JavaLib: Error in annotation processing: java.lang.NoClassDefFoundError Allgemeines EE 4
G java ResourceLocator Allgemeines EE 12
M Was ist mit Java möglich? Allgemeines EE 13
T Komponenten zusammenhänge Java EE Allgemeines EE 7
A Java CMS Allgemeines EE 2
P Architektur Java EE <-> HTML5 Allgemeines EE 3
A Java Tomcat findet Website nicht Allgemeines EE 8
F Java EE Server nutzung kostenlos an Schule? (zB. mit Glassfish) Allgemeines EE 6
B Java EE, kickstart my heart Allgemeines EE 10
P Frage zu Java EE Design Patterns Allgemeines EE 3
G EJB und Java EE - No Persistence provider Allgemeines EE 5
zilti Java EE Hosting, worauf muss ich achten? Allgemeines EE 5
M Java EE6: Wie Login-Vorgang durchführen? Allgemeines EE 2
MQue Java Web- Application -> MVC Allgemeines EE 4
G Java <-> Flex Allgemeines EE 2
Spin Ant - Java Beans umsetzen Allgemeines EE 4
V "null" durch NICHTS ersetzen jsp und java beans Allgemeines EE 3
M Serialisierung und Klonen in Java Allgemeines EE 5
W JAVA Optionen auslesen Allgemeines EE 3
D Spring 3 vs. Java EE 6 Allgemeines EE 33
MQue CMS in Verbindung mit Java Allgemeines EE 16
X3TitanCore Java Servertechnologie Allgemeines EE 7
C WebStart Fehler nach update auf Java 1.6 Allgemeines EE 2
R Variablen statt Java-Methoden in EL's Allgemeines EE 4
T Suche Buch für: Large Scale Web-Apps | Clustering | Scaling in Java ? Allgemeines EE 4
G Vergleich zwischen Java Spirng und Ruby on Rails Allgemeines EE 9
K EJB Enterprise Java Beans Allgemeines EE 32
F Ich will mit Java Internetseiten bauen, aber wo hosten? Allgemeines EE 14
J OOP Java Array Problem Allgemeines EE 2
T Problem mit Java Transaction API Allgemeines EE 2
D Java EE vs. Spring/Hibernate Allgemeines EE 26
R Java EE Anfänger will mehr. Allgemeines EE 7
A Fragen zum Einstieg in Java EE Allgemeines EE 11
M Evolution der Web-Entwicklung im Java-Bereich Allgemeines EE 15
N erstes Java EE Projekt - Server/ EJB-Verbindung-Anfängerfage Allgemeines EE 17
G Von Java SE nach JavaEE umsteigen Allgemeines EE 31
K Java Application Server + ganttproject *.jar Anwendung Allgemeines EE 6

Ähnliche Java Themen

Neue Themen


Oben