I was thinking I could completely backup apps to the SD card, and then restore them when needed. This for saving system resources.
Is there some efficient way to do this?
There are numerous options available to you:
In that order of "user-friendliness", from a android application that requires rooted access, in reference to Titanium Backup, to the least, using the command line
If it is just the "user" and "system" applications, I do this sort of thing all the time. In fact I wrote an app to help me out with this. I uninstall and re-install applications for testing a development all the time. I need to easily be able to make copies and move ".apk" files all the time.
Please take a look at the free app: https://play.google.com/store/apps/details?id=burrows.apps.appmanager.
Simple install the app, "backup" your application of choice and then share/send the application(.apk) to another phone.
If your device is running Android 4.0 or higher, Carbon - App Sync and Backup would be the perfect solution, and does not even require root -- but still is capable of backing up apps including their data:
As above screenshots show, you can backup/restore single apps, or select a batch. What you cannot see on the screenshots: you can also save a selection as "group", so for the next backup/restore you don't need to select apps separately, but simply select the group instead.
With Carbon Backup, one should be able to backup apps and data to SD card, attached USB devices, Dropbox, GoogleDrive, etc.