I want to start learning D programming language it looks interesting
Thread overview | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
March 04 Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
March 04 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Fidele | On Monday, 4 March 2024 at 13:37:53 UTC, Fidele wrote: >I want to start learning D programming language it looks interesting Please use "Learn" Group of the forum, this part of the forum for Announcements. Here are some useful links:
|
March 04 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Fidele | On Monday, 4 March 2024 at 13:37:53 UTC, Fidele wrote: >I want to start learning D programming language it looks interesting Answering thread question: It can be complicated, D has a lot of features and mastering it will take quite a lot of time. Since D is statically typed compiled system programming language it is still will be harder to grasp than say Python. The core language is pretty neat and shouldn't cause much trouble, by core here I mean basic templates, basic mixins, basic classes and operator overloading, version conditioning and such. Ranges and the standard library approach to "Design-by-Introspection" will definitely require some time to get used to, so expect to dive into std sources a lot for real world examples. Advanced templates is still not as hard as C++ though, and there is no some of the more quirks that C++ has. Few things to avoid until you absolutely know what you are doing is @nogc and betterC. There is also a "system" part in it that ultimately will require you to understand what is actually a executable file and what is a linker, knowing how to use debuggers, etc... Finally, D is flexible enough to delay touching some of those features until you are ready, and unlike practically any other language it doesn't forces any philosophy or zen or whatever ideology on you. Before you started though - note that D is not considered "enterprisey" enough language so don't expect your favorite JetBrains IDE or other fancy tooling, the debuggers are just minimally working, and generally any other ecosystem tools (if any) too. |
March 05 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Fidele | Fidele via Digitalmars-d-announce wrote: > I want to start learning D programming language it looks interesting Get familiar with https://dlang.org/ web site, you'll use it a lot. Do the Tour, https://tour.dlang.org/ Books, full list here: https://wiki.dlang.org/Books I would recommend starting with these. I found them easy to read and they just make sense. * Learning D by Mike Parker and * Programming in D by Ali รehreli I also highly recommend Mike Shah's video series available on youtube and on his web site: https://courses.mshah.io/courses/d-language-dlang-programming The advantages of Mike Shah's site are: * no youtube distractions * you can track your progress * it's FREE! You can get started with just a text editor and one of the D compilers. Lastly, as others mentioned, get on the D-Learn mailing list, or use the forum https://forum.dlang.org/ instead of D-announce. Lurk for a while. Read and try some of the code snippets you see go by. It will help you understand the language. Welcome to D! scot |
March 11 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Fidele | On Monday, 4 March 2024 at 13:37:53 UTC, Fidele wrote: >I want to start learning D programming language it looks interesting Depends what you mean by "beginner". If you've never programmed before and D is your first language, then the answer is a definite no. |
March 12 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Doigt | On Monday, 11 March 2024 at 12:30:10 UTC, Doigt wrote: >On Monday, 4 March 2024 at 13:37:53 UTC, Fidele wrote: >I want to start learning D programming language it looks interesting Depends what you mean by "beginner". If you've never programmed before and D is your first language, then the answer is a definite no. Why definitely not? https://youtu.be/V2YwTIIMEeU?si=j3cQzzN4jsUQrN9C&t=682 -- Bastiaan. |
March 12 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Bastiaan Veelo | On Tuesday, 12 March 2024 at 14:03:30 UTC, Bastiaan Veelo wrote: >On Monday, 11 March 2024 at 12:30:10 UTC, Doigt wrote: >On Monday, 4 March 2024 at 13:37:53 UTC, Fidele wrote: >I want to start learning D programming language it looks interesting Depends what you mean by "beginner". If you've never programmed before and D is your first language, then the answer is a definite no. Why definitely not? https://youtu.be/V2YwTIIMEeU?si=j3cQzzN4jsUQrN9C&t=682 -- Bastiaan. I really think D would be a wonderful first language. ๐ Fast feedback, no need to manage memory, and easy to use built-in data structures would make for a nice intro course. |
March 12 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Shah | On Tuesday, 12 March 2024 at 14:52:32 UTC, Mike Shah wrote:
> ...
> I really think D would be a wonderful first language. ๐ Fast feedback, no need to manage memory, and easy to use built-in data structures would make for a nice intro course.
If you say that D would be a good language to learn in lieu C++/Rust I'd agree, but as a First Language neither one would be my choice.
Most here already program and know things, but as a first language forget, at least where and when I did college (Already knowing how to program), most people were lost with all the concepts of C++ for example.
Bitwise shifts like << >> and the same operators being used in cin/cout may be OK for most people already in programming and using shell, but for those learning was a hell.
Matheus.
|
March 12 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to matheus. | On Tuesday, 12 March 2024 at 16:20:29 UTC, matheus. wrote: > On Tuesday, 12 March 2024 at 14:52:32 UTC, Mike Shah wrote: >> ... >> I really think D would be a wonderful first language. ๐ Fast feedback, no need to manage memory, and easy to use built-in data structures would make for a nice intro course. > > If you say that D would be a good language to learn in lieu C++/Rust I'd agree, but as a First Language neither one would be my choice. > > Most here already program and know things, but as a first language forget, at least where and when I did college (Already knowing how to program), most people were lost with all the concepts of C++ for example. > > Bitwise shifts like << >> and the same operators being used in cin/cout may be OK for most people already in programming and using shell, but for those learning was a hell. > > Matheus. I agree (and I've made my case from my DConf talk with some data) D is much more productive than C++ for students (especially in the scope of a quarter or semester long course). I probably would recommend in the general case that someone who wants to try programming to start with Python or JavaScript -- purely because the start up cost is smaller, and the vast amount of packages let beginners do something interesting quickly. That said, in a university curriculum (where students have multiple semesters), D could prove nice as an intro language as it has the ability to scale up in difficulty over time. I think D is friendly enough that it would not immediately turn away beginners from computer science programs (But ultimately Python probably wins for now in this category). As a note, the 'which language is best for CS 1' debate has long been debated -- but at least in a school setting, I've found the quality/enthusiasm/encouragement of the teacher to be the most important aspect regardless of language choice. |
March 12 Re: Is D programming friendly for beginners? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Shah | On Tuesday, 12 March 2024 at 17:03:42 UTC, Mike Shah wrote: >As a note, the 'which language is best for CS 1' debate has long been debated -- but at least in a school setting, I've found the quality/enthusiasm/encouragement of the teacher to be the most important aspect regardless of language choice. As someone that's been teaching beginners to program at a university for a long time (but not in a CS department) I've come to see the choice of language as largely unimportant. You have to decide what you want to teach them and then eliminate the languages that aren't suitable. D is one of many languages that would work with the right content. Other languages, like C++, add unnecessary overhead and thus should not be used. It's often said "X is a complicated language" but that's the wrong way to look at it. You're teaching a set of programming concepts, not a language. The question is how well a particular language works for learning those concepts. |