Searching with keywords “most popular programming languages 2013” in any search engine, you’ll find that Java always stays on top 3 of the list. It’s easy to understand because Java is an old programming language, open source, supports many operating systems (such as Linux, Windows…) and is able to run on many devices with slogan “Write once, run everywhere”. There is no question about position of Java or C or C++ but I just wonder how it can be, that Objective C has higher position than C#. A language for about one billion devices is more popular than a language for many billion devices around the world? It’ really weird. However it is not the topic of this post today. Back to Java, with its popularity, of course there are many great open source libraries written in Java. They are all wonderful libraries that any programmer would like to use in his product because of their numerous features and stability.
I’m working now in software branch for construction industry. After years of working together with my customers, I have found out that the IT security at the construction area is not getting enough attention. The world is moving on mobility and automation, people are trying to remotely control all equipment, to make everything working automatically or just to control the work progress. Same things happen to construction field too. We’re planning, developing many products so that we could optimize the workflow, centralize data, minimize risk… at best to save time and money for our customers.
If you’re working with .NET, maybe you’re already familiar with the concepts of dependency injection and MVVM (Model-View-ViewModel) pattern. Some of popular dependency injection containers for .NET are Castle Windsor, Ninject or Unity… They are all good frameworks, it just depends on which you prefer. For example, I use Castle Windsor at company and Ninject at home so that I can understand and use both of frameworks. It’s just the matter of favorite. The MVVM pattern was introduced years ago when WPF came to market. This pattern makes use of data binding structure of WPF and helps programmer to separate the view completely from logic layer. For more details about this pattern you can read some articles on my site about MVVM. Today, I will discuss again about these concepts, however not for .NET application, but I would like to show how we can apply these concepts into Android app. The example I use in this post is a De-De-Dictionary app. In this app, I can add German vocabulary with his explanation (also in German :)) through a user interface or look up for a vocabulary. Nothing special than a real dictionary book.