• Advertisement
Sign in to follow this  

Switching between languages/API

This topic is 1367 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, not really a beginner question but probably fits here than anywhere else.

 

I was coding SFML/C++ for the entire year of 2013, and switched to Libgdx/Java this Jan to port a game I made in C++ to android. After playing with Libgdx for about 2~3 months, + a 1 week break without touching any coding, I faced a problem. I wanted to prepare myself for Ludum dare this week and intended to use SFML/C++ instead of Libgdx, since I like SFML more. I realized I couldn't remember most of my C++/SFML stuffs. (I will probably have to read through my old projects). It is not that I forget the syntax but to do extremely trivial stuffs, like drawing sprite to screen, using my own personal code, or even just loading of assets, I have to reference my old projects to get started.

 

So my question is, what are some ways that you guys do to prevent or reduce this "confusion state" that happens when you switch from one language to another after using one for significant time.  I don't think I am the only one that experience this. Does cheatsheet helps ? I tried creating one in the past but it became extremely tedious and pointless when you are using the language but become extremely useful when you forget them.

 

 

Share this post


Link to post
Share on other sites
Advertisement

When I dont spend time on a codebase for a while I will have to read the stuff again and see how I do things, this is normal you can't keep all of this in your head all the time. The thing is though that you haven't actually forgotten how something works it's just the details that you miss, once you have seen them again for once you remember how it works.

 

I switch between 3 programming languages often, mostly C++/C# the only mistake I always make is array syntax related, if I switch to or from python extra {} are added in python or forgotten in C++.

Share this post


Link to post
Share on other sites

I usually keep a document with the most important stuff I've done in some project, for each project. Most doubts I faced during the development should be there, also tricky workarounds I've used and whatever I think I'm going to forget about soon. It's good to keep it neat and simple.

 

Quite of a simple thing, but most people get lazy to do it and I find it very helpful.

Share this post


Link to post
Share on other sites

Descriptive documentation, commenting (in code, perhaps within mainly a version of the game source code only for that), and to continue using the previous language and your libraries as much as you can while working another - is about all that you can do.  

 

Long term, if you revisit coding issues enough times then most of them will stick more, which might take years.

 

This thread shows the importance of making sure to thoroughly complete a game (or version of one) before moving to another project when possible. Read my signature below here and you will see that I am adamant about these matters.

Share this post


Link to post
Share on other sites

I have read through some of my completed projects since I posted this :D. Most of the memory came back after a while =).

 

I think having completed projects helps a lot. I wanted to make a cheatsheet for this a few years ago when I was switching between python / java / C# but I guess once you have enough projects in that language, they will serve the purpose of the cheatsheet.

Share this post


Link to post
Share on other sites

I regularly switch between several languages and APIs. For the languages I use the most (C, C++, C#, Java, JavaScript, PHP, Python, and Haskell) I have a quick reference sheet that has some of the common techniques and styles that are specific or noteworthy to that language. For APIs, I also have references for some of my more commonly used methods or classes in some of my regularly used APIs. I also have at least 1 book for each language or API (if there is a book for it) nearby so I can pull it out and use it if my quick reference sheet doesn't provide enough detail.

 

I also like to comment my code regularly, especially when using 3rd-party libraries.

 

Plus there's always the internet and I have a bookmarks folder for all the reference pages for just about every API I use regularly.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement