Java Application: Vorstellungen/Wünsche/etc..

Firestorm-

Lt. Commander
Registriert
Okt. 2006
Beiträge
2.015
Tag zusammen!

Da ich momentan Semesterferien habe dachte ich zum Zeitvertreib an ein kleines Programm, gecoded in Java. Es soll in schlichter und einfacher Editor werden, der Funktionen zusammenfasst, welche man sonst in herkömmlichen Editoren vermisst.

Hierbei seit ihr gefragt! Mich würde eure Meinungen zu dem Thema interessieren, vorallem die Antworten auf folgende Frage:
Was wünscht man sich als Feature in einem Editor? Was vermisst ihr bei einem 'standardmäßigen' Editor, beispielsweise einer wie von MS? Es geht nicht darum ein OpenOffice Produkt nachzuprogrammieren, sondern vielmehr nicht umbedingt standardmäßige Features in ein neues Programm zu integrieren, beispielsweise eine Kommandozeile integriert darin, was für einen Entwickler durchaus Vorteile haben kann, z.b. in Bezug auf die Implementierung von jsp Sites und dem nervigen restarten von z.b. Tomcat.

mfg, so far,
fire
 
Sinnvolle Syntaxvervollständigung und Unterstützungen wie in Eclipse wären nicht schlecht. Also das man nur den Punkt nach einer Klasse eingeben muss und es werden alle Methoden angezeigt.
 
Formatierung mit korrekter Einrückung von XML Dateien und vor allem die Möglichkeit diese Formatierung auch Dauerhaft in der Datei zu speichern.
 
AgentXM schrieb:
Sinnvolle Syntaxvervollständigung und Unterstützungen wie in Eclipse wären nicht schlecht. Also das man nur den Punkt nach einer Klasse eingeben muss und es werden alle Methoden angezeigt.

Problem dabei: Das Programm an sich wird nur auf eine Sprache fixiert und das wollte ich eigentlich vermeiden.

@samotyr:
Ich denke das sollte gehen.
 
Syntaxhighlighting wäre nicht schlecht. Wenn möglich konfigurierbar, damit es unabhängig von der Programmier-/Script-Sprache wird. Textsuche mit Regulären Ausdrücken. Bei Auswahl eines Textelementes gleich Suche nach allen Vorkommen, alle Treffer werden in einer Liste angezeigt, bei Doppelklick auf einen der Punkte in der Liste springt man zu der Stelle in der Datei. "Textmarken" setzen, damit man schnell zwischen 2 Textmarken hin und her springen kann. Diese Textmarken müssen nicht zwingend in der Datei gespeichert werden. Vielleicht auch eine TODO Liste, wenn man in der Datei ein bestimmtes "Tag", z.B. "// TODO: Prüfung der Übergabewerte" eingibt, dann erscheint dieses Tag in der Todo-Liste, Doppelklick auf einen Punkt in der Todo-Liste springt automatisch zu der Stelle in der Datei. Mehrere Zeilen markieren und gleich als Kommentar festlegen. (Das Kommentar-Zeichen sollte konfigurierbar sein)

Und jetzt etwas ganz "Verwegenes": Statt eine Multiline-Textbox für die Bearbeitung des Dateiinhaltes zu verwenden, könnte man auch einen TreeView einsetzen, der nach definierbaren Syntaxregeln die Datei in einem Baum darstellt. Das schöne daran ist, das man Bereiche der Datei einfach zusammen klappen kann, damit bei der Bearbeitung nur die Bereiche sichtbar sind, die man tatsächlich bearbeiten will. Und das ginge dann von der Klasse bis runter auf Ebene der "if", "while" Kontrollstrukturen. XML, HTML, CSS liesen sich ebenso wunderbar formatieren/einrücken.

Zusammenfassen mehrerer Dateien zu einem Projekt. Da wird man sicher nicht um eine zusätzliche Projektdatei rum kommen. Andererseits könnte man dann aber die Textmarken in dieser Projektdatei speichern. Ebenso wäre die letzte verwendete Kommandozeile, z.B. Aufruf des Compilers, drin speicherbar.
 
Zuletzt bearbeitet:
Hm okay, ich schau mal was sich machen lässt... Einige Vorschläge sind ja rel. leicht umzusetzen, an ein paar werde ich jedoch ein bisschen zu knabbern haben denk ich...

Bei der Gelegenheit noch eine kleine Frage:
Ich will eine Suchfunktion integrieren, und zwar eine die den lokalen Rechner nach Dateinamen/Ordernamen durchsucht. Würdet ihr per Process eine Windows Suche starten oder mit der Klasse File arbeiten, welche die Dateinamen ausließt und diese als String mit dem Suchwort/Begriff vergleicht..?
Ersteres wäre vermutlich schneller... Die Frage ist nur wie man eine Suche danach starten kann... Ich habs mir mit irgendwelchen Aufrufparametern gedacht, welche ich zu dem Explorer-Aufruf hinzufüge... Etwa wie
Code:
Process p = Runtime.getRuntime().exec("C:\Windwos\explorer.exe", "hier steht der Aufrufparameter für die Suche im Explorer");
Ich finde leider nichts für die entsprechende Suche.. Gibts irgendeine Möglichkeit dieses zu umgehen? Ideen...?
 
Hi,

ich würds ohne der Windowssuche machen, ist ja schließlich ein Java-Program und sollt halt Platformunabhängig bleiben ;)

Am besten Du schreibst Dir da was selbst ( ne nette Übung :) ) , oder schaust Dir mal die Java Collections genauer an.

MfG
 
Naja das ist es eben... Selbst schreiben sollte ja schon drin sein, eben genau das dachte ich mir auch wegen der Plattformunabhängigkeit.

Fraglich ist nur wie man das am besten umsetzt.

Was konkret meinst du mit 'Collections genauer anschauen'. Gibt es irgendein Collection-Interface welches eine vorimplementierte Methode zum Suchen/Durchsuchen von Datenträgern anbietet? Sowas wie in PHP, nur dass es dabei eher ums Sortieren geht...
 
Japp das ist mir schon klar :)

Der vorimplemetierte ArraySort ist auch eine Abwanldung eines MergeSorts. Das ist mir alles klar. Ich glaube du hast nur mein Problem falsch verstanden....

Ich will entweder einen direkten Explorer Zugriff auf die Windows Suche oder selbst eine Suche implementieren. Die Frage ist wie die selbstimplementierte Suche aussehen kann/soll, und wie die Umsetzung erfolgt. Java stellt eine File Klasse dar, mit der man innerhalb eines Pfades alle Verzeichnisse/Dateien rekursiv auslesen kann. Meine Idee, die Dateinamen in eine Collection zu packen und diese dann zu iterieren und mit dem Suchbegriff abzugleichen ist mir ehrlichgesagt zu unperformant mit einer Komplexität im worst case von O(n) oder gar O(n^2).
 
Bei einer Java-Anwendung auf die Windows-Suche zurückzugreifen, finde ich etwas, naja, am Konzept der Plattformunabhängigkeit vorbei.

Wenn du bei einer selbstimplementierten Suche nicht jedesmal jeden Eintrag durchsuchen willst, musst du wohl oder übel einen Index anlegen, der z.B. beim ersten Suchlauf oder in einem Thread im Hintergrund angelegt wird. Beim anlegen des Index wirst du allerdings nicht um O(n) herumkommen.

Kurz zu Collections.sort(): Standard ist MergeSort, ab 7 Einträge abwärts wird InsertionSort benutzt (auch bei den Rekursionen von MergeSort).
 
hmm okay, die Index-Idee find ich gar net so schlecht, obwohl sie im Prinzip auf diesselbe Misere hinausläuft die ich eigentlich vermeiden wollte...

Die Plattformunabhängigkeit ist zwar nett, aber in diesem Fall nicht umbedingt im Zentrum des Konzepts.
 
Zuletzt bearbeitet:
Mal den Thread wieder ausbuddeln:
wie ist denn der Stand der Dinge? Biste am Projekt noch dran oder wurde es begraben?
 
Gute Frage.. :) Momentan ist das Projekt leider auf Eis gelegt, da ich im Studium ziemlich viel Stress habe...

Angefangen hab ich aber schon, nebenher musste ich aber leider noch ein paar IKS Geschichten erledigen a la jsp und EJB... Die rauben nunmal sehr viel Zeit... Ich denke vor den Semesterferien wird das wohl nichts. Aber ich meld mich sobald es ein Update meinerseits gibt.. :)
 
Zurück
Oben