C Programming: Deepen Understanding & Learn Python in 1 Month

In summary, the speaker is a Computer Science major who just finished a C programming class and received an A, but is not confident in their knowledge of C. They are good with functions, variables, pointers, and basic structs, but lacking understanding in using structs with pointers, objects, and linked lists. They have a few C books and are wondering if they should continue learning C on their own and do random projects, or focus on learning Python during their free time. They are also considering learning both C and Python at the same time and are seeking advice on the best way to finish their C learning. The speaker's advice is to pick an area of interest and work on projects related to that area, as it will help with both their domain
  • #1
SuperMiguel
110
0
Im a Computer Science Major, i just finish a programming Class.. it was a C class, i got an A on the class it was a bit to easy in my opinion, but I am not confident in C

Im good with functions, variables, pointers, basic structs, etc

Im lacking understanding on structs using pointers, Objects, linked list, and probably few extra things...

Now my question, i have a few C books, should i go ahead and keep reading about C in my own, and do random projects to finish my C learning?

Also i have 1 month free from school and i wanted to kinda learn python i heard it was a good language to learn.. So should i forget about C for a bit and focus in python?

Or 3 finish learning C and learn python at the same time?

If the answer is either 1 or 3.. what's the best way to finish my C learning?? books? practice practice and practice?
 
Technology news on Phys.org
  • #2
SuperMiguel said:
Im a Computer Science Major, i just finish a programming Class.. it was a C class, i got an A on the class it was a bit to easy in my opinion, but I am not confident in C

Im good with functions, variables, pointers, basic structs, etc

Im lacking understanding on structs using pointers, Objects, linked list, and probably few extra things...

Now my question, i have a few C books, should i go ahead and keep reading about C in my own, and do random projects to finish my C learning?

Also i have 1 month free from school and i wanted to kinda learn python i heard it was a good language to learn.. So should i forget about C for a bit and focus in python?

Or 3 finish learning C and learn python at the same time?

If the answer is either 1 or 3.. what's the best way to finish my C learning?? books? practice practice and practice?

Hey SuperMiguel.

My advice is to pick an area of interest and start working on projects in that area.

You can either get a framework that is already created like Python and it's libraries (as well as other custom created libraries), or you can grab a whole code-base written in C that has the same sort of functionality.

From this you can start on little projects. Each project will teach you a specific thing not only about programming but also about the domain. You can then add more projects as you go building on the previous ones to do more complex stuff since this is what typically happens in projects nowadays: we have lots of stuff that people build on to do more complex tasks.

The above suggestion doesn't have a preference for the platform you use, but the area you are interested in will help make that decision.

If you need to work on things that involve the requirement for high-performance, then typically something like C is good because you can create stuff that runs faster than an interpreted program.

Things like complex math libraries, simulation programs and games engines are like this due to the need of high performance and extensive features and usability.

It's not to say that you can't use stuff like Python for this, but there are arguments for using C or C++ over something like Python for these kinds of things.

Apart from your domain goals, you also have programming goals. You might just be interested in learning a particular programming paradigm just for the sake of extending your knowledge and that's great. If you can make it practical with regard to a mini-project that has other relevance then it's a lot easier to get motivated as opposed to just doing something without any real end-result.

Some people like to just do random exercises, but in my experience, this is not as fruitful as having a directed purpose and interest in mind. Having a directed interest helps you stick at a particular thing and it's good for learning as well since you are able to tie everything together to give more comprehensive understanding of something rather than just working on things with absolute no connection.

I'm not saying that you can't work on tonnes of things, but that having a directed goal helps put all of those things in perspective which IMO is important. Game engines have tonnes of moving parts but they have some very specific goals that tie everything together, as one example.

Just my opinion, but I hope it helps you make a more informed decision.
 

1. What is the difference between C programming and Python?

C programming is a low-level programming language used for system programming and hardware access, while Python is a high-level programming language used for general-purpose programming and web development. C is more efficient and faster, while Python is easier to learn and use.

2. Can I learn both C programming and Python in 1 month?

It is possible to gain a basic understanding of both C programming and Python in 1 month, but mastering these languages takes time and practice. It is important to continue learning and practicing even after the 1 month period to truly deepen your understanding.

3. Is C programming necessary for learning Python?

No, C programming is not necessary for learning Python. However, having a basic understanding of C can help you better understand the underlying concepts and structures of programming, making it easier to learn Python.

4. What are the benefits of learning C programming and Python?

Learning C programming can improve your understanding of computer systems and low-level programming, while learning Python can help you develop skills in data analysis, web development, and automation. Both languages are widely used and can open up various career opportunities.

5. How can I deepen my understanding of C programming and Python?

The best way to deepen your understanding of these languages is to practice writing code and solving problems. Additionally, reading books, taking online courses, and participating in coding challenges can also help strengthen your skills and knowledge.

Similar threads

  • Programming and Computer Science
Replies
1
Views
733
  • Programming and Computer Science
Replies
8
Views
882
  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
5
Views
858
  • Programming and Computer Science
Replies
8
Views
1K
  • Programming and Computer Science
Replies
7
Views
881
  • Programming and Computer Science
Replies
10
Views
2K
  • Programming and Computer Science
Replies
17
Views
1K
  • Programming and Computer Science
Replies
16
Views
1K
  • Programming and Computer Science
2
Replies
54
Views
3K
Back
Top