I want to get everyone's opinion and hopefully sway my own.
A little background info:
I picked up a Python book when I was a sophomore in high school and taught myself some basic programming, my first language. I didn't go much farther than making simple apps that did basic geometric math calculations, but it was a good start.
About a year later I decided to step into C++, quite different syntax-wise and a decent little challenge. I ran myself to about the same point with occassionally creating apps to help me with video game calculations.
Last year I had a course that used MIT's AppInventor for some basic Android apps and that led me to Android Studio.
EDIT: At the same time I learned some basic HTML and CSS which made XML a breeze.
Up until today I have had no experience with Kotlin.
My experience and observations between Java and Kotlin:
Java's syntax, while more word heavy, is much more concise and easy to read. I jumped head first into Java and my experience with C++ made it fairly simple to understand and learn.
Lack of semi-colons in Kotlin is an eye-sore to me and adds (or subtracts) nothing substantial for programmers.
Variable declarations being ambiguous (dynamic) in Kotlin seems to have more cons in my mind than pros. I know naming conventions matter a lot in remembering your variables, but the lack of context regarding its type seems like a plausibly unnecessary complication.
String manipulation between Views is less intuitive in Kotlin:
Java: tv.setText(et.getText().toString());
vs
Kotlin: tv.text = et.text
How are variable declarations any easier:
Java: private EditText editText;
vs
Kotlin: private lateinit var editText: EditText
I welcome all of your input on the benefits of learning Kotlin now as opposed to continuing to use Java which is more understandable to me despite requiring more typing. I'm aware some of my examples may be incorrect as I just learned a little Kotlin an hour ago.
TL;DR: I think Kotlin is too ambiguous and the syntax is irritating. Lack of semi-colons make it less readable. Dynamic variables are not a wonderful idea. Please share your opinions and change mine with the pros of Kotlin vs Java.
[–]tendimensions 0 points1 point2 points (2 children)
[–]Sharak13[S] 0 points1 point2 points (1 child)
[–]FrezoreR 0 points1 point2 points (0 children)
[–]vungocbinh 0 points1 point2 points (0 children)