![]() But at the end of the day if you want to be an effective Java programmer you're still going to need to learn when to use a StringBuilder and this is the same in Rust. Admittedly this is partly because java! Strings are a bit more flexible than rust! &strs. Java, in fact, also has a String/ &str distinction, except it's called StringBuilder/ String and it's not generally considered important enough for students to learn about in their first semester. to_owned() is no more difficult than when you first encounter the idea that 1 and 1.0 are, contrary to what you learned in elementary school math, actually completely different things and they might behave weirdly if you pretend they're just numbers. Understanding that String and &str are different types and you have to convert them with. Because it's actually not really Rust that's hard: it's programming in general that is hard, and the way Rust does things is different enough from other languages that people with prior experience get hung up on the differences rather than on the core concepts.īut for people with no prior experience, everything is hard. clone(), rarely a & and never a 'a, and people would likely pick it up as quickly as they do Java or Python which is to say, with a lot of fumbling and missing semicolons and misleading indentation and not realizing there's a difference between () and or that the order of lines in a function matters. Similarly, I think it's possible to teach Rust starting with basics: all value types, plenty of. You don't start a Java course with how generics are really erased, you don't start a Python course with how default function arguments are only evaluated once and you don't start a C++ course at all because that language is such a minefield there's no reasonable subset that won't get you in trouble. These languages, despite being popular teaching languages, have many dark corners and "gotchas" and the trick for someone teaching the language is to start with the straightforward, systematic bits and introduce the complexity gradually. People who are new to programming often learn languages like Java, Python, or even C++. ![]() ![]() However, I think the "steep learning curve" is largely to do with the lack of beginner-oriented resources for learning Rust, rather than anything inherently to do with Rust itself. I think this is a great question to ask and something the community should definitely be talking about. ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |