Showing posts from September, 2020

Data Types

byte 8bits (0 to 255) sbyte 8bits (-127 to 127) short 16bits (32k) ushort 16bits (64k) int 32bits (2M) uint var a = 1;   // int var a = 1U;  // uint var a = 1F;  // float var a = 1D;  // double var a = 1M;  // decimal (money)

Learning WPF in 2020

I was a desktop app developer when I started my programming journey, I wrote VBScript,, and I've switched to web programming since I started Softinn (2012).  Now, with the need to connect online to offline, I will have to re-visit desktop programming. I have developed a few applications using WPF in the past (when it was fairly new), I have to say that i'm not impressed by the framework then.  Recently, I've got the chance to re-learn WPF and found that it's now a viable solution. Here's what I've discovered:  A good read to learn about Data Binding on WPF PrismLibrary - A good application framework for WPF desktop application A good read to learn about Templating

Node JS x Angular x ElectronJs

NodeJS is built for Javascript programmers. With NodeJS, we can call OS native API (e.g. create a new folder) on OS. It's popular among web developers since most of them familiar with Javascript and with NodeJS, they may deploy their code on server, it's platform agnostic. For now, NodeJS works on Windows, Linux and MacOS. Good crash course on Angular. For those who come from AngularJS, you will find a new file named Angular.json in your project. Here's how to read it . On the Windows and NodeJS environment, I've tried using ffi to call hardware library (DLL files) functions, I believe it's not ready for production usage. Two reasons, first, it's hard to debug; second, we will need to manage the client environment if we decided to deploy the app for production usage. Such a setup required too many environments configuration. For example, 32bit vs 64bit, library data structure, and memory management.