Best practices for creating an application which will be upgraded frequently - C++ -


I am developing a portable C ++ application and looking for some great ways to do this. This application will be constantly updated and I need to make it so that some parts of the program are easily updated.

  1. For frequently updating programs, is it best to create part of the program in libraries? If the parts of the program are in different libraries, then users can replace the library when there are some changes.
  2. If the answer to point 1 is "yes", what type of library would I have to use? In linux, I know that I can make " shared library ", but I'm not sure how much portable for windows is, what kind of library do I have to use? I know about windows as well as DLL hell issues.

Any help would be great!

  1. Yes, it is good to use libraries, but instead of a new library The thoughts of "bus" can be unrealistic, because library APIs vary and the application often needs to be updated to take advantage of it, or it may be compatible with it, although different versions of a library may be of a good quantity Together, you have a series of different versions of the library Will be able to 'support'. Or, if you control yourself the library code, you can make sure that the changes made in the library code never break the application.

  2. Shared library in Windows DLL) therefore, in Linux, and if you compile both of them in a common environment (either cross-compiling or using mingews in Windows) Then Linker will do it the same way. Of course, all your codes are cross-platform and configure themselves correctly for the target platform.

    IMO, there was really a problem in the old days when all applications installed their DLLs like C: \ WINDOWS \ SYSTEM in a common directory, people who do not actually do it anymore because this DLL hell You can keep your shared library in a more appropriate place, where it will not interfere with other non-aware apps, or - the simplest possible - simply convert them to the same directory in the same directory. There needs to be, which they require.


Comments

Popular posts from this blog

python - Overriding the save method in Django ModelForm -

html - CSS autoheight, but fit content to height of div -

qt - How to prevent QAudioInput from automatically boosting the master volume to 100%? -