Forum: PC-Programmierung Welche Programmiersprache? (Web & PC)


von Mariann (Gast)


Lesenswert?

Hallo,

ich muss eine Software entwickeln. Diese sollte Web sowie PC fähig sein, 
allerdings miteinander verbunden.

Also was ich mir vorgestellt habe:

Website mit Login (Admin Panel etc)

Software womit man Inhalte und Datensätze bearbeiten kann


Die Website wird mittels PHP und MySQL umgesetzt. Da ist nicht das 
Problem. Von Grundgerüst wie eine Art CMS.

Die Software sollte nun ebenfalls "live" auf die Daten der Website 
zugreifen können, diese verändern und löschen können. Der Login soll 
ebenfalls mit dem Login der Website übereinstimmen und nur für die 
Administratoren möglich sein.

Also im Grunde möchte ich das Admin-Panel des CMS in Software sowie 
webbasierd haben.

Die Software sollte einen Installer besitzen, weiterhin sollte diese auf 
Windows sowie Linux/Unix funktionieren.

Java fällt trotz der "einfachen" MySQL Anbindung aus. Welche 
Programmiersprache eignet sich nun um dieses umzusetzen?

Ich bedanke mich herzlichst.

von Peter II (Gast)


Lesenswert?

Mariann schrieb:
> Java fällt trotz der "einfachen" MySQL Anbindung aus. Welche
> Programmiersprache eignet sich nun um dieses umzusetzen?

eventuell C#? (ja da läuft auch unter Linux). Hätte den Vorteil das du 
sogar die Webseite damit erstellen kannst also den Code doppelt 
verwenden.

Oder halt kann Klassisch mit C++ (obwohl ich das zu umständlich für eine 
GUI finde)

von Purzel H. (hacky)


Lesenswert?

Naja Php. Sowas ach ich alles mit php. Ohne CMS.

von Mariann (Gast)


Lesenswert?

Zwölf M. schrieb:
> Naja Php. Sowas ach ich alles mit php. Ohne CMS.

Ahja, es soll aber ein Programm gestartet werden und nicht eine Website 
aufgerufen werden.

von Purzel H. (hacky)


Lesenswert?

Aalso die Beschreibung war etwas schwammig. Was soll denn geschehen ? 
Auf welchem Rechner soll was geschehen ?

 was sool auf welchem Rechner gestartet werden ? Was soll gelesen 
werden.

von Kaj (Gast)


Lesenswert?

Wie waers mit Python + Django?

von Mariann (Gast)


Lesenswert?

Also im Prinzip soll es zwei "programme" geben. Dazu eine Datenbank

Also, alles was benötigt wird steht in einer MySQL Datenbank. Daten, 
Layout, Parameter

Es soll einmal ein CMS drauf zugreifen (mit PHP ja kein Problem) und 
einmal eine Software. Beide sollen unanhänging voneinander, jedoch 
abhängig von der Datenbank sein.

Durch das ändern von Daten an der Datenbank selbst ändert sich der 
inhalt und das aussehen des CMS.

Dies soll nun mit einer Software passieren. Eine Datenbankeditierung 
jedoch grafisch angepasst.

Welche Software nutzt man hierzu am besten und läuft noch unabhänging 
bzw auf Windows UND Linux/Unix.

von Weinga U. (weinga-unity)


Lesenswert?

Hallo,

wenn ich lese Web sowie PC dann Javascript. Am PC mit node.js, im Web 
mit node.js als Server + Browser als Client.

Alleine der Umgang mit der seriellen Schnittstelle ist ein Genuss im 
Vergleich zu C# usw... und vorallem, wenn es portierbar sein soll.

Ich frage mich auch oft, wo die Javascript-Engines die Performance 
bekommen...

Vorallem gibt es bei node.js im npm Packagemanager nichts, was es nicht 
schon gibt...

Erst letzte Woche habe ich einen G-Code Postprozessor gemacht um den 
erzeugten Code kompatibel zu meiner Maschine zu machen. Eine 
Konsolenanwendung in 1h in JS geschrieben gehabt. Wirklich super.



Lg, Weinga-Unity

von Borislav B. (boris_b)


Lesenswert?

Mariann schrieb:
> Es soll einmal ein CMS drauf zugreifen (mit PHP ja kein Problem) und
> einmal eine Software

Ein CMS IST eine Software.
Warum müssen es also zwei verschiedene Zugänge sein?

von Mariann (Gast)


Lesenswert?

Borislav B. schrieb:
> Mariann schrieb:
> Es soll einmal ein CMS drauf zugreifen (mit PHP ja kein Problem) und
> einmal eine Software
>
> Ein CMS IST eine Software.
> Warum müssen es also zwei verschiedene Zugänge sein?

Dann würde es ja direkt laufen.

Ich rede von sowas wie Tapatalk. Eine "App" mit der man auf eine Website 
zugreifen kann. Nur halt eben für PC. Hierfür wird die 
Programmiersprache gesucht.

von Peter II (Gast)


Lesenswert?

Weinga U. schrieb:
> Alleine der Umgang mit der seriellen Schnittstelle ist ein Genuss im
> Vergleich zu C# usw... und vorallem, wenn es portierbar sein soll.

bist du sicher das du dich da nicht verschrieben hast? Ich kann mir 
nicht vorstellen, wie man den zugriff auf die Seriellen Schnittstelle 
noch einfacher als mit C# umsetzen kann.

JavaScript kann nicht mal mit mehren Threads umgehen. Alles Asynchron 
mag ich überhaupt nicht.

von Klapperstorch (Gast)


Lesenswert?

Mariann schrieb:
> Eine "App" mit der man auf eine Website
> zugreifen kann.

Nennt sich "Browser" ;-)

von Noch einer (Gast)


Lesenswert?

> Nennt sich "Browser" ;-)

Einen Browser kann man auch als Modul in eigene Programme einbinden. 
Z.B. das QWebPage aus dem Qt-Framework.

Willst du ein richtiges Client-Programm schreiben, muss dein Server 2 
Schnittstellen bereitstellen. Die Html-Seiten und die Rohdaten. Bei 
jeder Erweiterung musst du dann 2 Schnittstellen und ein Client-Programm 
ändern.

Da solltest du erst mal schauen, ob sich das Client-Programm mit einem 
eingebauten Browser-Modul faken lässt.

von Weinga U. (weinga-unity)


Lesenswert?

Peter II schrieb:
> zugriff auf die Seriellen Schnittstelle
> noch einfacher als mit C# umsetzen kann

Ich kenne die C# Serielle (.NET 2). Bei etwas mehr Datenübertragung 
fängt ein CPU-Kern ins jammern an wo man sich fragt warum? Das ganze mit 
der Kernel32.dll neu implementiert und man ist auf 2-3% CPU wieder 
runter...

Schlussendlich habe ich mir für die Serielle in JS eine kleine API 
gemacht, welche automatisch neuverbindet. Ein Verbinden/Trennen kommt in 
meinen Programmen deswegen gar nicht mehr vor. Eine so robuste Anbindung 
habe ich nochnicht wo gesehen. Keine hängengebliebenen com-ports usw...

Aber es ist wahr, wenn man asynchron nicht gewöhnt ist, kann man Fehler 
machen. Es gibt aber doch auch oft synchrone Befehle dazu (z.B. beim 
Filesystem).

Soll aber nicht offtopic werden...

Lg

von Noch einer (Gast)


Lesenswert?

... und sonst eignet sich jede Programmiersprache.

Du kannst in jeder Sprache direkt über TCP auf die Mysql zugreifen. Oder 
du kannst in PHP einen zusätzlichen Server-Dienst schreiben. Den Client 
für diesen Dienst kannst du in jeder Sprache schreiben.

Wenn du direkt auf die Mysql zugreifen willst - frag erst mal den 
Administrator, ob er die Firewall öffnet.

Wenn du einen PHP Serverdienst schreiben willst - nimm irgend etwas 
einfaches. Wie JSON. Corba, Soap und dieses tolle Zeug, was alles kann, 
bringt mehr Aufwand als Nutzen.-

von WebDepp (Gast)


Lesenswert?

Wenn du eh schon php verwendest kannst du das auch auf der kommandozeile 
voll nutzen, mache ich auch bzw. habe es ne zeitlang genutzt inzwischen 
mache ich immer mehr mit javascript/node.

Schau dir mal http://electron.atom.io an, damit kannst GUI-Programme 
bauen die  laufen dann auf allen drei wichtigen Desktopsystemen. Als 
basis dient eine browserengine+node.js. "Visual Studio Code" basiert 
auch darauf:
https://code.visualstudio.com

von Kupfer (Gast)


Lesenswert?

Peter II schrieb:
> wie man den zugriff auf die Seriellen Schnittstelle
> noch einfacher als mit C# umsetzen kann.

Wenn ich die Bits manuell in die Schnittstelle schreiben würde, wäre es 
noch leichter als bei C#.

Peter II schrieb:
> eventuell C#? (ja da läuft auch unter Linux)

Du bist halt ein C#-Spammer. Nur weil etwas mit viel Glück so halbwegs 
läuft, ist es nicht gut.

von Peter II (Gast)


Lesenswert?

Kupfer schrieb:
>> eventuell C#? (ja da läuft auch unter Linux)
>
> Du bist halt ein C#-Spammer. Nur weil etwas mit viel Glück so halbwegs
> läuft, ist es nicht gut.

und hast du einen bessern Vorschlag?

(ich habe übrigens auch C++ erwähnt, soweit bist du beim lesen bestimmt 
nicht gekommen)

von foo (Gast)


Lesenswert?

Mariann schrieb:
> Die Website wird mittels PHP und MySQL umgesetzt. Da ist nicht das
> Problem. Von Grundgerüst wie eine Art CMS.
>
> Die Software sollte nun ebenfalls "live" auf die Daten der Website
> zugreifen können, diese verändern und löschen können. Der Login soll
> ebenfalls mit dem Login der Website übereinstimmen und nur für die
> Administratoren möglich sein.

Wenn du die Webseitige Implementierung auch in der Hand hast, dann mach 
das Backend als RESTful-Api.
Login etc. über OAUTH2.
Geht beides mit nahezu jeder Sprache, mit PHP natürlich auch.

Alle deine Programme, die nun daran rumfuhrwerken wollen, greifen nun 
ausschliesslich per HTTP auf das Backend zu, sowohl die Website selber, 
als auch irgendwelche Rich-Clients.
Letztere kannst du dann in jeder Sprache schreiben, die HTTP-Transfers 
kann.
Für Cross-Plattform bietet sich natürlich QT an, aber auch Java oder C#.

von Mariann (Gast)


Lesenswert?

Also ich denke dann wird es C# mit QT.

von Peter II (Gast)


Lesenswert?

Mariann schrieb:
> Also ich denke dann wird es C# mit QT.

bist du da sicher? Geht das überhaupt? Oder meinst du C++?

von Tischtrollbürste Fluppi (Gast)


Lesenswert?

Mariann schrieb:
> Also ich denke dann wird es C# mit QT.

Das funktioniert zwar irgendwie, z.B. mit

https://github.com/ddobrev/QtSharp

aber ich weiß nicht, ob diese Kombination sinnvoll ist; erst recht bei 
einem ernsthaft eingesetzten Produktivsystem ...
Ich finde C# als Sprache zwar ok, aber hier wird eher zusammengeklebt, 
was nicht zusammengehört. Qt benutze ich selbst eigentlich nur, wenn es 
keine oder keine vernünftige "native" Möglichkeit gibt, z.B mit C++ oder 
Python.

von Der Andere (Gast)


Lesenswert?

Phyton, Java, wahrscheinlich auch Perl.
Alles deutlich portabler als C#

von Johnny B. (johnnyb)


Lesenswert?

Serverteil mit PHP, MySQL, node.js etc., Clientteil für den Browser mit 
JavaScript/jQuery etc.
Datenaustausch mit JSON.
Nochmals eine separate Applikation macht keinen Sinn, ausser Du brauchst 
keine Freizeit.

: Bearbeitet durch User
von Sheeva P. (sheevaplug)


Lesenswert?

Kaj schrieb:
> Wie waers mit Python + Django?

Da werfe ich mal Python + Flask fürs Web, Python + Tkinter oder -- wenn 
es hübsch werden soll -- Python + Qt fürs GUI in den Raum.

von Stephan G. (Firma: privat) (morob)


Lesenswert?

ich halte das ganze für unsinnig, webanwendung basta.
was soll in der webanwendung nicht gehen?

von Sheeva P. (sheevaplug)


Lesenswert?

Peter II schrieb:
> eventuell C#? (ja da läuft auch unter Linux).

Ja, der Peter und sein Allheilmittel. Wenn das unter Linux so toll 
liefe, sollte man sich fragen, warum es da kaum einer benutzt. Ach ja, 
Evil Empire und Softwarepatente und so...

Vielleicht, lieber Peter, ist es Dir ja egal. Aber für ernsthafte 
Entwickler ist es ein vermeidbares Geschäftsrisiko, sich von einem 
Framework abhängig zu machen, das von genau einem einzigen Hersteller 
entwickelt und gesteuert, und obendrein mit Softwarepatenten geschützt 
wird.

http://www.pro-linux.de/news/1/14376/richard-stallman-gegen-mono-und-c.html

von Peter II (Gast)


Lesenswert?

Sheeva P. schrieb:
> Ja, der Peter und sein Allheilmittel. Wenn das unter Linux so toll
> liefe, sollte man sich fragen, warum es da kaum einer benutzt. Ach ja,
> Evil Empire und Softwarepatente und so...
>
> Vielleicht, lieber Peter, ist es Dir ja egal. Aber für ernsthafte
> Entwickler ist es ein vermeidbares Geschäftsrisiko, sich von einem
> Framework abhängig zu machen, das von genau einem einzigen Hersteller
> entwickelt und gesteuert, und obendrein mit Softwarepatenten geschützt
> wird.

merkwürdig, das auch andere C# erwähnt haben. (nein ich war es nicht 
unter anderen Namen)

> http://www.pro-linux.de/news/1/14376/richard-stallman-gegen-mono-und-c.html

eventuell sollte du dein Wissen mal updaten:

[...]
Aufgrund der Gefahr durch Patentklagen seitens Microsoft hat Richard 
Stallman, der ideologische Führer der Freie-Software-Bewegung, vor Mono 
gewarnt, nachdem einige Distributionen dazu übergegangen waren, Mono in 
die Standardinstallation aufzunehmen.[21] Microsoft hat mittlerweile 
.NET und C# unwiderruflich unter die Community Promise Vereinbarung 
gestellt und will auf Patentklagen verzichten.[22]
[...]

Welche Sprache würdest du den Empfehlen?

von c-hater (Gast)


Lesenswert?

Weinga U. schrieb:

> Ich kenne die C# Serielle (.NET 2). Bei etwas mehr Datenübertragung
> fängt ein CPU-Kern ins jammern an wo man sich fragt warum?

Dann hast du die Sache schlicht falsch benutzt.

Ja klar, System.IO.Ports.Serialport bietet etliche Methoden, mit denen 
man auch einen schnellen Prozessor gut auslasten kann. Das sind aber die 
Methoden, die Microsoft eingebaut hat, um auch programmiertechnischen 
Vollidioten eine einfache Möglichkeit zur Benutzung der Klasse zu 
gewähren.

Man muss aber diese Methoden nicht benutzen... Und wenn man 
programmieren kann, wird man sie auch nicht benutzen...

> Schlussendlich habe ich mir für die Serielle in JS eine kleine API
> gemacht, welche automatisch neuverbindet.

JS=JavaScript? Ich lach' mich tot.

Du hättest statt dessen einfach lernen sollen, wie man die Klasse 
sinnvoll und effizient einsetzt. Das ist nicht mal sehr schwierig...

> Aber es ist wahr, wenn man asynchron nicht gewöhnt ist, kann man Fehler
> machen.

Ja, genau das wird wohl dein Problem gewesen sein...

von Sheeva P. (sheevaplug)


Lesenswert?

Peter II schrieb:
> merkwürdig, das auch andere C# erwähnt haben.

Das ist ein argumentum ad populum und deshalb nur insoweit der Gegenrede 
wert, als es leider viele Leute gibt, die nur einen Hammer haben und die 
deshalb jedes Problem der Welt nur als Nagel wahrnehmen können. ;-)

>> http://www.pro-linux.de/news/1/14376/richard-stallman-gegen-mono-und-c.html
>
> eventuell sollte du dein Wissen mal updaten:

Herzlichen Dank, aber mein Wissen ist aktuell genug.

> "Aufgrund der Gefahr durch Patentklagen seitens Microsoft hat Richard
> Stallman, der ideologische Führer der Freie-Software-Bewegung, vor Mono
> gewarnt, nachdem einige Distributionen dazu übergegangen waren, Mono in
> die Standardinstallation aufzunehmen.[21] Microsoft hat mittlerweile
> .NET und C# unwiderruflich unter die Community Promise Vereinbarung
> gestellt und will auf Patentklagen verzichten.[22]"

Es ist durchaus fraglich, ob diese "Community Promise" rechtsverbindlich 
und rechtswirksam ist. Wenn Microsoft sich entschlösse, seine Patente 
gegen einen unliebsamen Konkurrenten durchzusetzen, könnte der sich vor 
Gericht eventuell auf diese "Community Promise" berufen und würde sich 
dann möglicherweise wirklich durchsetzen -- nach einem Rechtsstreit von 
mindestens zehn Jahren, während derer aufgrund der Rechtsunsicherheit 
natürlich niemand sein Produkt kaufen würde. Mit anderen Worten: selbst 
wenn er am Ende vor Gericht obsiegt, ist er trotzdem längst pleite.

Außerdem bezieht sich die "Community Promise" auf ganz bestimmte 
Versionen einiger weniger Microsoft-Produkte und -Patente, im Falle von 
C# sind das die Version ECMA-334 und ECMA-335. Nichts hindert Microsoft 
daran, die nächste Version -- oder ausgewählte Erweiterungen -- nicht 
mehr unter diese "Community Promise" zu stellen. Obendrein bezieht sich 
dieser Teil lediglich auf die "Language Specification", also nur auf die 
Sprache C# selbst, aber nicht auf ggf. patent- oder urheberrechtlich 
geschützte Technologien in Bibliotheken oder dem Framework .NjET.

Wenn Microsoft seine "Community Promise" glaubwürdig und rechtssicher 
gestalten wollte, könnten die Patentrechte einer unabhängigen Stiftung 
übertragen und die Freiheit der Nutzungsrechte rechtsverbindlich als 
Stiftungszweck festgelegt oder einer bereits bestehenden Stiftung zur 
Förderung freier Software wie der FSF übertragen werden. Aber das tut 
Microsoft nicht; stattdessen erschöpft sich die "Community Premise" in 
einer lapidaren Website, wobei es im Zweifelsfall der Beklagten obliegen 
würde, die ihr daraus eingeräumten Rechte rechtssicher zu beweisen...

Wie dem auch sei, existieren bei der Bindung an C# gewisse Risiken, die 
sich kaum mit einer schlichten "Community Promise"-Webseite wegwischen 
lassen. Ein vernünftiger Entscheider (Sorgfaltspflicht!) kann sich nicht 
auf eine lapidare Webseite mit unklarer Rechtskraft und einem enormen 
Prozeßrisiko mit impliziter Beweislastumkehr verlassen, schon gar nicht 
gegen einen ökonomisch übermächtigen Konzern, der bereits mehrfach und 
nachweislich zu betrügerischen und illegalen Geschäftspraktiken 
gegriffen hat und deswegen schon mehrmals zu hohen Strafen verurteilt 
und teuren Vergleichen gezwungen worden ist.

Damit Du Dein diesbezügliches Wissen aktualisieren kannst, möchte ich 
Dir noch folgende Links ans Herz legen, beide NACH der Veröffentlichung 
von Microsofts "Community Promise" geschrieben:

[1] https://www.fsf.org/news/dont-depend-on-mono

[2] https://www.fsf.org/news/2009-07-mscp-mono


> Welche Sprache würdest du den Empfehlen?

Wie oben bereits erwähnt, zum Beispiel Python. Für Webanwendungen gibt 
es da von Flask über Django bis hin zu Zope eine ganze Reihe 
leistungsfähiger und moderner Frameworks, und -- wie die unten verlinkte 
Liste beweist -- kann man mit Python auch große, anspruchsvolle 
GUI-Programme mit modernen GUI-Toolkits und -Frameworks wie GTK, 
wxWindows und QT entwickeln, um nur ein paar Beispiele zu nennen. Und 
das ist dann wirklich unabhängig von Herstellern, Betriebssystemen und 
Plattformen. Anstelle von Python ließen sich natürlich auch 
Skriptsprachen wie Ruby und Perl oder kompilierte wie C++ oder Java 
nutzen, ohne die genannten Risiken und ohne Abhängigkeiten von 
bestimmten Herstellern oder Plattformen.

Nun, dank Deines Hinweises auf das Hammer-Nagel-Problem sind wir ohnehin 
schon beim argumentum ad populum angekommen. Da möchte ich es mir nicht 
nehmen lassen, meinerseits darauf hinzuweisen, daß ich offensichtlich 
nicht der Einzige bin, der Python gegenüber C# bevorzugt:

[3] https://en.wikipedia.org/wiki/List_of_Python_software

[4] https://en.wikipedia.org/wiki/List_of_C_Sharp_software

Für Dich mag das ja alles keine Rolle spielen, warum auch immer. Aber 
bitte hör auf, andere in die C#-Falle zu locken. Es gibt genug andere 
Alternativen ohne die damit verbundenen Risiken.

von Peter II (Gast)


Lesenswert?

Sheeva P. schrieb:
> Für Dich mag das ja alles keine Rolle spielen, warum auch immer. Aber
> bitte hör auf, andere in die C#-Falle zu locken. Es gibt genug andere
> Alternativen ohne die damit verbundenen Risiken.

achso, alle C# Entwickler sitzen in der Falle und wissen es nur nicht.

Wo ist dann das Problem das auch MS Geld verdienen will, will ich auch 
mit meiner Software. Ja habe auch Geld für eine Windows Version 
ausgegebenen und ziehe es am Desktop jeder kostenlosen Linux vor.

Wenn man die Klagen Oracle gegen Google sieht, ist man mit Android und 
Java genauso wenige geschützt.

Wie kannst du zu 100% sicher sein das Python keine Patente verletzt?

Und ja ich mag keine Scriptsprachen, ich will Typsicherheit haben auch 
wenn das gerade nicht "in" ist.

Damit ist Python für mich kein Ersatz für eine "richtige" Sprache wie 
Java, C++ oder auch C#.

Hier kannst du den nächsten belehren:
Beitrag "Re: Ist Java eine geeignete Sprache für Win-PC mit USB?"

von Sheeva P. (sheevaplug)


Lesenswert?

Peter II schrieb:
> Sheeva P. schrieb:
>> Für Dich mag das ja alles keine Rolle spielen, warum auch immer. Aber
>> bitte hör auf, andere in die C#-Falle zu locken. Es gibt genug andere
>> Alternativen ohne die damit verbundenen Risiken.
>
> achso, alle C# Entwickler sitzen in der Falle und wissen es nur nicht.

Jedenfalls alle, die damit Software für Nicht-MS-Systeme entwickeln.

> Wo ist dann das Problem das auch MS Geld verdienen will,

Du solltest unbedingt genauer Lesen. Ich habe kein Problem damit, daß MS 
Geld mit seiner Leistungen verdient. Ich habe ein Problem damit, wenn MS 
sein Geld mit illegalen Geschäftspraktiken ergaunert. Das ist ein großer 
Unterschied, weißt Du.

> will ich auch mit meiner Software.

Mach ich auch. Das klappt prima, sogar ohne C#. Toll, ne?

> Ja habe auch Geld für eine Windows Version
> ausgegebenen und ziehe es am Desktop jeder kostenlosen Linux vor.

Tja, ich habe weder das eine, noch würde ich das andere tun.

> Wenn man die Klagen Oracle gegen Google sieht, ist man mit Android und
> Java genauso wenige geschützt.

Tatsächlich zeigt Dein Beispiel sogar einmal mehr, wie richtig ich mit 
meinen Warnungen vor patentgeschützten Technologien liege. Google hat 
seinerzeit die Java-Implementierung von Oracle benutzt, die durch 
Patente geschützt ist. Dadurch hat sich Google genau dem Prozeßrisiko 
ausgesetzt, vor dem ich oben gewarnt habe. Mittlerweile hat Google aus 
seinem Fehler gelernt und das patentvernagelte Oracle-Java durch das 
freie OpenJDK ersetzt.

Anders gesagt: die Klage von Oracle gegen Google zeigt, wie 
problematisch Softwarepatente sogar für riesige Konzerne mit erfahrenen 
Rechtsanwälten sind. Und Du, lieber Peter, gibst Einsteigern hier einen 
"Ratschlag", der sie schlimmstenfalls in die Ziellinie solcher 
Patentklagen bringt.

> Wie kannst du zu 100% sicher sein das Python keine Patente verletzt?

Darum geht es gar nicht, weißt Du. Egal, was man benutzt: es ist niemals 
sicher, ob die Technologie oder man selbst möglicherweise ein Patent 
verletzt -- wie die Klage von Oracle gegen Google zeigt, sind davor 
nicht einmal große Softwarekonzerne mit erfahrenen Rechtsabteilungen 
gefeit.

Aber Python selbst wird nicht durch Patente geschützt und auch nicht von 
einem skrupellosen, prozeßwütigen Konzern entwickelt. Guido van Rossum 
und die Python Software Foundation (übrigens genau so eine Stiftung, wie 
ich sie in meinem vorigen Beitrag vorgeschlagen habe) werden Dich 
niemals auf Schadensersatz wegen einer Patentverletzung verklagen.

> Und ja ich mag keine Scriptsprachen, ich will Typsicherheit haben auch
> wenn das gerade nicht "in" ist.

Python ist typsicher:
1
>>> s = '1'
2
>>> s + 2
3
Traceback (most recent call last):
4
  File "<stdin>", line 1, in <module>
5
TypeError: cannot concatenate 'str' and 'int' objects

Für die Freunde des Kompilierten habe ich allerdings auch Java und C++ 
als Alternativen genannt. Wie gesagt: genauer Lesen.

> Damit ist Python für mich kein Ersatz für eine "richtige" Sprache wie
> Java, C++ oder auch C#.

Tja, für Dich triffst Du (hoffentlich) Deine eigenen Entscheidungen.

> Hier kannst du den nächsten belehren:
> Beitrag "Re: Ist Java eine geeignete Sprache für Win-PC mit USB?"

Nö, dort geht es um Windows-Programmierung, und dafür ist C# vermutlich 
eine vernünftige Wahl. Hier geht es aber um Plattformunabhängigkeit, 
darum ist C# hier keine gute Wahl.

Im Übrigen möchte ich niemanden belehren, sondern nur Dich darum bitten, 
unbedarfte Dritte nicht in eine proprietäre Falle zu locken.

von Horst (Gast)


Lesenswert?

Ich frag mich ja immer, ob Peter für sein C#-Getrolle eventuell bezahlt 
wird. Bei fast jeder Frage kommt er mit dieser Grüze daher. Auch seine 
anderen Beiträge sind eigentlich meist auffällig ProMS.

von Gott (Gast)


Lesenswert?

Horst schrieb:
> Ich frag mich ja immer, ob Peter für sein C#-Getrolle eventuell bezahlt
> wird. Bei fast jeder Frage kommt er mit dieser Grüze daher. Auch seine
> anderen Beiträge sind eigentlich meist auffällig ProMS.

Wollt ihr schon wieder so eine dümmliche "Er hat eine Programmiersprache 
genannt, die mir nicht gefällt! Mimimi"-Diskussion anfangen?

Das hatten wir schon oft genug.

von Arc N. (arc)


Lesenswert?

Sheeva P. schrieb:
> Peter II schrieb:
>> eventuell C#? (ja da läuft auch unter Linux).
>
> Ja, der Peter und sein Allheilmittel. Wenn das unter Linux so toll
> liefe, sollte man sich fragen, warum es da kaum einer benutzt. Ach ja,
> Evil Empire und Softwarepatente und so...
>
> Vielleicht, lieber Peter, ist es Dir ja egal. Aber für ernsthafte
> Entwickler ist es ein vermeidbares Geschäftsrisiko, sich von einem
> Framework abhängig zu machen, das von genau einem einzigen Hersteller
> entwickelt und gesteuert, und obendrein mit Softwarepatenten geschützt
> wird.
>
> http://www.pro-linux.de/news/1/14376/richard-stallman-gegen-mono-und-c.html

Damals war das schon kritikwürdig was RMS da geschrieben hat, heute ist 
es nur noch übelster FUD.

.NET Core steht unter MIT und Apache Lizenz
https://www.dotnetfoundation.org/netcore
Roslyn, der C# und VB-Compiler steht unter einer Apache 2.0 Lizenz
https://www.dotnetfoundation.org/dotnet-compiler-platform
Mono unter MIT, Xamarin MIT und Apache

Das .NET Micro Framework ebenso unter Apache 2.0 Lizenz, wie auch das 
Entity Framework oder ASP.NET Core
https://www.dotnetfoundation.org/dotnet-micro-framework

F# schon seit längerem unter einer Apache Lizenz usw. usf.

Kann es sein, dass da jemand die Nachrichten der letzten Jahre ignoriert 
hat?
https://www.heise.de/developer/meldung/Xamarin-stellt-SDKs-unter-Open-Source-und-veroeffentlicht-Studio-6-fuer-OS-X-3191262.html

https://www.heise.de/developer/meldung/Microsoft-Build-2016-Xamarin-wird-Teil-von-Visual-Studio-und-Open-Source-3159913.html

https://www.heise.de/developer/meldung/Microsoft-NET-wird-komplett-Open-Source-2452033.html
Das war 2014...

von Kann's nicht mehr hören (Gast)


Lesenswert?

Sheeva P. schrieb:
> Ich habe kein Problem damit, daß MS
> Geld mit seiner Leistungen verdient. Ich habe ein Problem damit, wenn MS
> sein Geld mit illegalen Geschäftspraktiken ergaunert. Das ist ein großer
> Unterschied, weißt Du.

Hast du auch BEWEISE für deine Behauptungen? Nein, hast du natürlich 
nicht, außer einem großen Rand und obendrein nicht mal die Intelligenz 
zu erkennen, was du hier für einen Bullshit lostrittst. Bei anderen 
Firmen, deren Produkte du natürlich ohne mit der Wimper zu zucken 
selbstverständlich nutzt, ist dir das hohe moralische Ross, auf das du 
dich hier begibst, nämlich SCHEISS EGAL.

Mit welchen Praktiken die so ihr Geld machen interessiert dich da 
natürlich nicht. Ob große Getränkefirmen, die mit Zucker oder Alkohol 
die Gesundheit ihrer Kunden ruinieren. Ob Automobilfirmen, die mit 
falschen Schadstoffemissionen ihre Kunden verarschen. Ob Banken, die 
ihre Kundschaft mit horrenden Gebühren abzocken. Ob falsche 
Werbeversprechen, die im Handel Usus sind und und und (lass dir weitere 
Beispiele gefälligst selber einfallen).

Nur bei Microsoft, da fällt dir auf, was ALLE machen (die einen mehr, 
die anderen weniger, die einen offensichtlicher, die anderen versteckter 
usw.). Und warum fällt dir das ausgerechnet an MS auf? Weil du einer 
dieser indoktrinierten Hanseln bist, einer dieser fsf Gläubigen, die 
alles was nicht nach deren Pfeife tanzt hassen wie die Pest und bei 
jeder Gelegenheit bashen - aus purer Freude am Niedertreten.

Du armer verblendeter Jüngling, du wirst auch noch älter und begreifst 
irgendwann wie albern und sinnlos so eine Haltung ist, ähnlich wie die 
eines naiven Revoluzzers, der auch erst zu Verstand kommen muss, bis er 
begreift, dass er mit dem woran er einst so feste glaubte sinnlose 
Zeitverschwendung war.

Werde ERWACHSEN und lass solches Gelaber sein. Diese Großkonzerne wie MS 
und Co überleben DICH ALLE und deine Auffassung interessiert die einen 
feuchten Kehricht. Du bist sowieso nicht juristisch ausgebildet um hier 
fundierte Aussagen über das Patentwesen beizutragen. Es ist alles hohles 
Gebrabbel, nach gekläfft, was du hier ablässt.

Ob man C# nutzt oder nicht entscheidet man über ganz einfache objektive 
Kriterien, genauso wie man entscheidet ob man BASIC oder PASCAL oder C 
oder C++ nutzen möchte und nicht über subjektives Gedöns das man anderen 
nachplappert.

Außerdem probiert ihr "Helden" doch seitdem C# vor Jahren mit v1.0 
erschienen ist der Sprache und dem Framework schlechtes anzudichten und 
nun haben wir welche Versionsnummer? Wie viele Jahre habt ihr nicht 
geschafft C# .NET den Garaus zu machen? Merkt ihr eigentlich noch wie 
gescheitert eure Versuche diesbezüglich waren und sind! Nö, oder?! Ihr 
merkt das nicht mal mehr. Ach ihr Kinder der Softwarezeit. Die 
Generation vor euch konnte sich noch an BASIC-Listings erfreuen und ihr? 
Ihr "Helden" seid da politisiert wo es überflüssig wie ein Kropf ist, 
und da wo ihr politisch sein müsstet haltet ihr eure Mäulchen, weil das 
ist ja unbequem.

Generation Angst, Generation Hilflos, Generation überkandidelt. Euch 
geht es einfach zu gut.

von Mani W. (e-doc)


Lesenswert?

Bin sehr beeindruckt von der Rede "Kanns nicht mehr hören (Gast)"...

von Horst (Gast)


Lesenswert?

Kann's nicht mehr hören schrieb:
> Generation Angst, Generation Hilflos, Generation überkandidelt. Euch
> geht es einfach zu gut.

Habt ihr bezahlten Trolle für diesen Unfug ein Team-Meeting abgehalten? 
Natürlich über Skype :)

Außer Ausflüchte (die andere Firma ist viel schlimmer!!!) und Lobgesänge 
auf MS und C# war ja nicht viel echter Inhalt.

von Mani W. (e-doc)


Lesenswert?

Kann's nicht mehr hören schrieb:
> Werde ERWACHSEN und lass solches Gelaber sein.

Da stecken ja viele Hinweise in diesem Satz...

von D. I. (Gast)


Lesenswert?

Horst schrieb:
> Außer Ausflüchte (die andere Firma ist viel schlimmer!!!) und Lobgesänge
> auf MS und C# war ja nicht viel echter Inhalt.

Richtig, den Inhalt hat Arc Net schon dargelegt.

von Tischtrollbürste Fluppi (Gast)


Lesenswert?

Kann's nicht mehr hören schrieb:
> Außerdem probiert ihr "Helden" doch seitdem C# vor Jahren mit v1.0
> erschienen ist der Sprache und dem Framework schlechtes anzudichten

Na ja, C# 1.x habe ich gehasst. Das war wirklich ziemlich übel. Zum 
Glück konnte ich weiterhin primär C++ verwenden (wobei ich ohnehin 
hauptsächlich mit Multiplattform-Anwendungen beschäftigt bin, da war C# 
damals sowieso keine Alternative). Mit v2 wurde es schon deutlich besser 
und mit den nachfolgenden Versionen sogar recht ordentlich.
Dass sich die Lizenzgeschichte deutlich geändert hat, das Framework 
inwischen abwärtskompatibel ist und unter Linux sogar C# 6 zur Verfügung 
steht (und, OT, unter Windows jetzt "serienmäßig" ein Linux-Subsystem 
verfügbar ist), finde ich auch als Nicht-MS-Jünger ganz gut.

> Ob man C# nutzt oder nicht entscheidet man über ganz einfache objektive
> Kriterien, genauso wie man entscheidet ob man BASIC oder PASCAL oder C
> oder C++ nutzen möchte und nicht über subjektives Gedöns das man anderen
> nachplappert.

Das kann man so unterschreiben.

von Sheeva P. (sheevaplug)


Lesenswert?

Kann's nicht mehr hören schrieb:
> Sheeva P. schrieb:
>> Ich habe kein Problem damit, daß MS
>> Geld mit seiner Leistungen verdient. Ich habe ein Problem damit, wenn MS
>> sein Geld mit illegalen Geschäftspraktiken ergaunert. Das ist ein großer
>> Unterschied, weißt Du.
>
> Hast du auch BEWEISE für deine Behauptungen? Nein, hast du natürlich
> nicht,

Doch, natürlich, wenngleich ich sie nicht selbst gesammelt habe, sondern 
diese Arbeit anderen überlassen habe, die sowas professionell machen, 
die Fähigkeiten, Möglichkeiten und Ressourcen dazu haben, und deren 
Aufgabe es ist, solche Beweise zu sammeln. Also verweise ich auf die 
us-amerikanische Justiz und die "findings and facts"-Dokumente im ersten 
Kartellverfahren gegen Microsoft, sowie weiterhin auf die Feststellungen 
der Europäischen Union, derentwegen sie Microsoft schon mehrmals 
rechtskräftig zu hohen Geldstrafen verurteilt hat. Weitere Informationen 
dazu findest Du mit der Internet-Suchmaschine Deines Vertrauens, viel 
Erfolg.

> Bei anderen
> Firmen, deren Produkte du natürlich ohne mit der Wimper zu zucken
> selbstverständlich nutzt, ist dir das hohe moralische Ross, auf das du
> dich hier begibst, nämlich SCHEISS EGAL.

Woher willst Du das wissen? Du kennst mich doch gar nicht und weißt 
nicht, wie und welche Kaufentscheidungen ich treffe.

> Mit welchen Praktiken die so ihr Geld machen interessiert dich da
> natürlich nicht. Ob große Getränkefirmen, die mit Zucker oder Alkohol
> die Gesundheit ihrer Kunden ruinieren. Ob Automobilfirmen, die mit
> falschen Schadstoffemissionen ihre Kunden verarschen. Ob Banken, die
> ihre Kundschaft mit horrenden Gebühren abzocken. Ob falsche
> Werbeversprechen, die im Handel Usus sind und und und (lass dir weitere
> Beispiele gefälligst selber einfallen).

Ach Gottchen, ist das arm. Ich habe zwei Neuigkeiten für Dich: erstens 
habe ich keine Getränke, Automobile, oder Banken empfohlen. Und zweitens 
kann es Microsofts illegale Geschäftspraktiken weder entschuldigen, noch 
ungeschehen machen, wenn andere sich ähnlicher Praktiken bedienen.

> Du armer verblendeter Jüngling, du wirst auch noch älter und begreifst
> irgendwann wie albern und sinnlos so eine Haltung ist,

Vielen Dank für den "Jüngling", das hat schon seit fünfundzwanzig Jahren 
niemand mehr zu mir gesagt.

von Sheeva P. (sheevaplug)


Lesenswert?

Arc N. schrieb:
> Damals war das schon kritikwürdig was RMS da geschrieben hat, heute ist
> es nur noch übelster FUD.
>
> .NET Core steht unter MIT und Apache Lizenz
> https://www.dotnetfoundation.org/netcore

Blöd nur, daß irgendwie die Hälfte fehlt oder noch im "Preview"-Status 
ist:

https://www.heise.de/developer/meldung/Unreife-Kernloesung-NET-Core-1-0-ist-zwar-erschienen-aber-noch-nicht-fertig-3249902.html

> [... drei Links zu Heise.de ...]
> Das war 2014...

Mein Link oben ist von Ende Juni 2016.

von 1N 4. (1n4148)


Lesenswert?

Es ist schon erschreckend, welche Aufgaben immer an Studenten und 
Schüler gestellt werden. Soll was programmieren und hat keine Ahnung von 
nix. Versteht noch nichtmal die Unterschiede zwischen Web und 
Standalone, sonst wäre die Frage nichtmal aufgetreten.

von Joey5337 (Gast)


Lesenswert?

Kurze einfache Antwort:

1. mach die Webseite, da hast du die Technologie ja schon festgelegt 
(php, mysql)

Im Besten Fall bist du jetzt fertig, weil man die Webseite auch vom PC 
aufrufen kann. Mit einer eigenen Konfiguration kann man z.B. den Firefox 
auch so anpassen, dass keine URL-Leiste etc. angezeigt wird. Dann kann 
das wie ein "echtes" Programm aussehen.

Wenn das nicht reicht kommen 2 Schritte dazu:

2. du machst in deiner Webapp eine nicht-grafische Schnittstelle, mit 
der alle notwendigen Operationen möglich sind. Sowas realisiert man 
heute oft als REST-API, da eignet sich das PHP, das du ja schon kannst, 
ganz hervorragend dazu.

3. Du programmierst eine GUI-Applikation in einer beliebigen Sprache 
deiner Wahl, die als Backend den REST-Webservice anspricht.

von Arc N. (arc)


Lesenswert?

Sheeva P. schrieb:
> Arc N. schrieb:
>> [... drei Links zu Heise.de ...]
>> Das war 2014...
>
> Mein Link oben ist von Ende Juni 2016.

Und? Das ändert nichts daran, dass das, was RMS vor Ewigkeiten 
geschrieben hat, heute übelster FUD ist. Es ging nicht um die 
Vollständigkeit, sondern die "Bedenken" RMSs.

von Sheeva P. (sheevaplug)


Lesenswert?

Arc N. schrieb:
> Sheeva P. schrieb:
>> Arc N. schrieb:
>>> [... drei Links zu Heise.de ...]
>>> Das war 2014...
>>
>> Mein Link oben ist von Ende Juni 2016.
>
> Und? Das ändert nichts daran, dass das, was RMS vor Ewigkeiten
> geschrieben hat, heute übelster FUD ist. Es ging nicht um die
> Vollständigkeit, sondern die "Bedenken" RMSs.

Du kannst es noch zehnmal FUD -- und, sag: war es nicht Microsoft, die 
FUD erfunden und damit ein Quasimonopol aufgezogen haben? -- nennen, es 
wird dadurch trotzdem keiner. RMS' Bedenken bestehen weiter, und zwar 
zurecht.

De facto sind Teile von .NjET nicht von freien Lizenzen abgedeckt, und 
zwar bis heute nicht. Auch die potentielle Problematik mit den Patenten 
besteht weiterhin, solange sich die Freistellung nur auf eine lapidate 
Website mit unbekannter Rechtswirksamkeit berufen kann.

von Rolf M. (rmagnus)


Lesenswert?

Arc N. schrieb:
>> Framework abhängig zu machen, das von genau einem einzigen Hersteller
>> entwickelt und gesteuert, und obendrein mit Softwarepatenten geschützt
>> wird.

> Damals war das schon kritikwürdig was RMS da geschrieben hat, heute ist
> es nur noch übelster FUD.
>
> .NET Core steht unter MIT und Apache Lizenz

Dir ist aber bewusst, dass Patente und Lizenzen zwei völlig 
unterschiedliche Dinge sind und sich auch auf unterschiedliche Dinge 
beziehen? Wenn der Code unter einer freien Lizenz steht, heißt das noch 
lange nicht, dass die Patente dadurch keinen Bestand mehr hätten. Und 
genau deshalb sind diese eine ständige Bedrohung für queulloffene 
Software.

Auf den (langen) Rest des Postings antworte ich mal nicht, denn da war 
leider nichts objektives mehr drin, sondern nur noch emotionales Gelaber 
und ... naja, FUD.

von Arc N. (arc)


Lesenswert?

Rolf M. schrieb:
> Arc N. schrieb:
>>> Framework abhängig zu machen, das von genau einem einzigen Hersteller
>>> entwickelt und gesteuert, und obendrein mit Softwarepatenten geschützt
>>> wird.
>
>> Damals war das schon kritikwürdig was RMS da geschrieben hat, heute ist
>> es nur noch übelster FUD.
>>
>> .NET Core steht unter MIT und Apache Lizenz
>
> Dir ist aber bewusst, dass Patente und Lizenzen zwei völlig
> unterschiedliche Dinge sind und sich auch auf unterschiedliche Dinge
> beziehen? Wenn der Code unter einer freien Lizenz steht, heißt das noch
> lange nicht, dass die Patente dadurch keinen Bestand mehr hätten.

Apache Lizenz gelesen? Die sagt zwar auch nichts über die Bestandskraft 
der Patente, allerdings:
"3. Grant of Patent License. Subject to the terms and conditions of this 
License, each Contributor hereby grants to You a perpetual, worldwide, 
non-exclusive, no-charge, royalty-free, irrevocable (except as stated in 
this section) patent license to make, have made, use, offer to sell, 
sell, import, and otherwise transfer the Work..."
https://www.apache.org/licenses/LICENSE-2.0
Etwas weniger eindeutig (Stichwort: Implicit Patent Grant) ist es bei 
der MIT-Lizenz http://en.swpat.org/wiki/Implicit_patent_licence

Dann mal auf http://en.swpat.org/wiki/.NET,_C-sharp,_and_Mono geschaut:
In der ganzen Liste von Links unter About Mono und References findet 
sich ein einziger 
(http://linuxpatents.blogspot.de/2010/05/language-envy.html), der sich 
tatsächlich mal die Mühe macht zu schauen welche Patente denn berührt 
sein könnten. Wobei das erste Patent eins von Borland ist, die anderen 
tatsächlich von MS und beschreiben "Erfindungen" wie Lambda Expressions, 
Type Inference oder Nullable Types...
Bleibt nur ein Problem: Der Artikel bezieht sich auf Vala, nicht auf 
Mono oder C#...

Kurz zur Erinnerung: Damals ging es um Mono und C#, das maßgeblich von 
Xamarin entwickelt wurde/wird und nicht in div. Distributionen 
aufgenommen werden sollte, u.a. weil Teile davon möglicherweise nicht 
von Microsofts Community Premise gedeckt waren.
Xamarin, siehe oben, gehört mittlerweile zu Microsoft, andere 
Implementationen wie dotgnu/Portable.NET sind schon lange tot.
Also wen soll Microsoft wegen nicht implementierter Teile oder anderer 
Patente am Framework/den Sprachen etc. verklagen? Sich selbst?

> Und genau deshalb sind diese eine ständige Bedrohung für queulloffene
> Software.

Da sind andere Unternehmen, Patente und Handelsabkommen eine weit 
größere Gefahr.

> Auf den (langen) Rest des Postings antworte ich mal nicht, denn da war
> leider nichts objektives mehr drin, sondern nur noch emotionales Gelaber
> und ... naja, FUD.

Welcher lange Rest? Das waren nur noch Links und eine Frage...

von Rolf M. (rmagnus)


Lesenswert?

Arc N. schrieb:
> Apache Lizenz gelesen? Die sagt zwar auch nichts über die Bestandskraft
> der Patente, allerdings:
> "3. Grant of Patent License. Subject to the terms and conditions of this
> License, each Contributor hereby grants to You a perpetual, worldwide,
> non-exclusive, no-charge, royalty-free, irrevocable (except as stated in
> this section) patent license to make, have made, use, offer to sell,
> sell, import, and otherwise transfer the Work..."

Hmm, ok, das geht natürlich in dem Fall, weil die Patente dem gehören, 
der es auch unter dieser Lizenz veröffentlicht.

>> Und genau deshalb sind diese eine ständige Bedrohung für queulloffene
>> Software.
>
> Da sind andere Unternehmen, Patente und Handelsabkommen eine weit
> größere Gefahr.

Ich hatte mich da allgemein auf Patente, nicht speziell auf Microsoft 
bezogen.

>> Auf den (langen) Rest des Postings antworte ich mal nicht, denn da war
>> leider nichts objektives mehr drin, sondern nur noch emotionales Gelaber
>> und ... naja, FUD.
>
> Welcher lange Rest? Das waren nur noch Links und eine Frage...

Sorry, da hatte ich mich vertan. Ich hab beim Beantworten dein Posting 
versehentlich mit dem darauffolgenden vermischt. Der lange Rest, den ich 
weggeworfen habe, kam also gar nicht von dir.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.