Was ist einfacher? Java oder Kotlin?

4 Antworten

Kotlin ist übersichtlicher.

Java ist komplexer.


xXArzokXx 
Beitragsersteller
 04.09.2023, 11:22

danke

Kotlin:

fun main(args : Array<String>) {
    println("Hello, World!")
}

Java:

class HelloWorldKt {
    public static void main(String[] args) {
        System.out.println("Hello, World!"); 
    }
}

C#

namespace HelloWorld
{
    class Hello {         
        static void Main(string[] args)
        {
            System.Console.WriteLine("Hello World!");
        }
    }
}

Wobei man das auch nochmal kürzen kann, zu:

using System.Console;
Console.WriteLine("Hello World");

So. Das einmal zum Vergleich der Sprachen anhand eines simplen Hello World Programmes. Jetzt musst du für dich selber wissen, was dir davon besser gefällt.

Ich habe auch die Kommentare von dir unter den anderen Antworten gelesen und höre raus, dass du Android Apps und Spiele entwickeln willst. Hier stoßen wir auf den Knackpunkt. Spiele. Spiele Engines gibt es für viele Sprachen, doch eine der besten Engines ist Unity und diese nutzt C#, nicht Java oder Kotlin. Lass es mich erklären: Du kannst dir C# vorstellen, als wäre es Java. Beide Sprachen sind ziemlich ähnlich, nur dass C# so ein wenig auf Steroide ist. C# ist eine sehr powervolle und komplexe Sprache. Sie ist crossplatform, kann nativ und vieles mehr. Hier einmal ein Artikel, wo ich tiefer in die Thematik über C# eingehe, damit du dir selbst mal einen Überblick verschaffen kannst: C#, Welche Programmiersprache mögt ihr am Meisten? Das eigentliche Problem ist, dass viele noch in der Vergangenheit leben und denken, C# ist eine alte Windowssprache. Dieser Gedanke ist aber falsch. C# ist sehr mächtig und doch anfängerfreundlich. Mit dem Framework MAUI (neu, früher Xamarin, noch immer kompatibel) kann man wunderbar Apps entwickeln. Das tu ich derzeit auch. Man kann diese Apps dann auf Windows, Android, Mac, iOS, ... nutzen. Falls du eine Web Oberfläche haben möchtest, da du HTML erwähnt hast, kannst du auch auf Blazor Hybrid zurückgreifen, welches auch MAUI verwendet. Und zum Spiele entwickeln, gibt es da Unity. Die eine Game Engine, die du mit Sicherheit schon in anderen Spielen gesehen hast, denn sie ist sehr bekannt. Schau es dir mal an. Vielleicht interessiert es dich und holt dich vom Gedanken Kotlin und Java weg.

Unity Echtzeit-Entwicklungsplattform | 3D-, 2D-, VR- und AR-Engine

.NET Multi-platform App UI (.NET MAUI) | .NET (microsoft.com)

Man merkt immer mehr, wie viele Entwickler Kotlin für Apps benutzen. Java ist schon alt. Meiner Meinung nach zu alt. Deshalb würde ich, müsste ich eines von den beiden nehmen, Kotlin nehmen. Beide sind relativ gut zum Lernen und sind weit vertreten, sodass man auch schnell im Internet Hilfe findet. Somit ist deine Frage beantwortet. Trotzdem rate ich dir dazu, C# zumindest mal anzuschauen. Es wird nicht schaden, 😉

PS. Falls du dich für C# entscheidest und Fragen dazu hast, kannst du gerne auf mich zukommen.


xXArzokXx 
Beitragsersteller
 04.09.2023, 11:15

Danke für deine hilfe ich überlege es mir nochmal mit c# dann komme ich zu dir wennn ich was brauche😊

xXArzokXx 
Beitragsersteller
 04.09.2023, 11:13

danke aebr ich will apps machen und spiele vllt eher später ich habe mal unity gemacht so 3 monate auch mit c#...........aber ich bekamm immer fehler-..........

FaTech  04.09.2023, 11:16
@xXArzokXx

Das ist kein Problem. Fehler kann man beheben und ich kann auch gerne versuchen dabei zu helfen :)

Guten Morgen!

Java ist komplexer, aber einfacher
Kotlin ist übersichtlicher, durch die Vielseitigkeit aber schwerer zu erlernen.

So zumindest ist meine Meinung in diesem Sachverhalt. Am Ende musst du aber schauen, was für deine Zwecke mehr Sinn macht zu erlernen - und wie du es angehst ist deine Sache.

Liebe Grüße
LunaticTiger // Justin


xXArzokXx 
Beitragsersteller
 04.09.2023, 06:46

Aber komplex ist doch schwer oder?

LunaticTiger  04.09.2023, 06:47
@xXArzokXx

Nicht unbedingt.

Komplexität beschreibt die Vielschichtigkeit, nicht die Schwierigkeit.
Etwas ist komplex, wenn es viele Schichten hat, viel zu entdecken gibt - und vor allem viel zu lernen.

Wenn ich viel lernen muss, kann das Gelernte / zu lernende auch einfach zu erlernen sein. Das hat also nichts mit der Schwierigkeit zu tun.

xXArzokXx 
Beitragsersteller
 04.09.2023, 06:47
@LunaticTiger

Okay danke,und ist die syntax bei java oder bei kotlin schwerer

LunaticTiger  04.09.2023, 06:48
@xXArzokXx

Würde sagen, beide sind relativ gleich auf - aber eben anders einsetzbar. Musst du für dich einfach mal ausprobieren!

LunaticTiger  04.09.2023, 06:54
@xXArzokXx

Nicht "kann nur", sondern der Bereich den du damit abdeckst, ist entweder größer oder kleiner. Die Appentwicklung ist bei Kotlin eben der Vordergrund, bei Java nicht.

xXArzokXx 
Beitragsersteller
 04.09.2023, 07:04
@LunaticTiger

Also was empfiehlst du mir zu lernen ich will nur android apps programmieren und android games

FaTech  04.09.2023, 08:41
@xXArzokXx

Dann definitiv C#, denn wenn du auch Spiele entwickeln willst, hast du bei C# noch die Unity Engine, die die Mehrheit der Entwickler auch benutzt. Was Spiele angeht, ist Unity sehr mächtig. Für normale Apps hättest du MAUI und MAUI kann dann sogar auch auf Computer laufen, sodass du einen Code hast, der direkt auf (fast) allen Systemen läuft.

Unity Echtzeit-Entwicklungsplattform | 3D-, 2D-, VR- und AR-Engine

.NET Multi-platform App UI (.NET MAUI) | .NET (microsoft.com)

Ich selbst habe auch schon Unity und MAUI benutzt. Erfahrungsgemäß super. Besonders MAUI find' ich optimal für Einsteiger

Kotlin und Java sind etwas anders, ich würde aber insgesamt keinen anderen Schwierigkeitsgrad sehen.

Wenn es dir nur um die Android-Entwicklung geht, ist Kotlin heute die etwas bessere Wahl. Nicht weil die Sprache so viel schöner, einfacher oder sonstwas ist, sondern weil Google seit Jahren Kotlin bevorzugt und nicht mehr in die vollständige Unterstützung von modernem Java investiert. Außerhalb der Android-Szene ist Kotlin aber immer noch deutlich weniger im Einsatz als Java, der kleine Hype ist etwas abgeflaut.

Wenn du wirklich Cross-Platform-Apps entwickeln willst, ist die Route über Flutter (mit Dart) wahrscheinlich die beste.

C# ist da eher sinnlos, wie auch diverse andere Krücken à la Python + Kivy. Kann man machen, aber macht alles nur komplizierter. Nachteil ist halt, dass Dart de facto nur für Flutter verwendet wird.


FaTech  04.09.2023, 08:38

Das ist Blödsinn. C# ist nicht sinnlos. Wenn du eine solche These aufstellst, solltest du diese belegen. Mit .NET MAUI kann man in C# sehr gut sogar Native Apps erstellen und das mit einer crossplatformen Codebase für Android, iOS, Windows, Mac, ...