Category: Blog
-
Auto Layout Baseline Alignment, Once For Ever
Have you ever tried to do first baseline alignment using auto layout or stack view but been disappointed with the result? If yes, this post is for you. What is Baseline? In typography, the baseline is the imaginary line upon which a line of text rests. In most typefaces, the descenders on characters such as…
-
Xcode Custom Template, A Mysterious Useful Feature
Xcode template is an ability that allows developers to create projects and files with predefined files and structures automatically. Practically we can also define custom templates to reduce boring repetitive tasks but Apple explains almost nothing about it. Maybe they have not decided to release it publicly yet but I found it very useful in…
-
Xcode Modules, Framework and Libraries Comparison
In Xcode, we can define frameworks, static and dynamic libraries and bundles to modularize our codes and resources. Unfortunately it is somewhat vague in Apple documentations. So let’s look at their differences and purposes in a simple word.
-
PLC Object Oriented Programming, HOW?
In the previous post I talked about why we should use object oriented for PLC programming instead of the solely structured programming model. In this post I will explain how to do it to achieve the best result.
-
PLC Object Oriented Programming, WHY?
Around 10 years ago object oriented programming feature added to the standard IEC 61131-3 programming languages for industrial automation controllers. But you will find very few PLC producers to support OOP. In this post I want to analyze what benefits OOP can provide for me in details and answer this question that is it worth…
-
In Swift, why protocol initializers must be defined as required in conforming types?
You may have asked yourself “why either the conforming types must define initializers of protocols as ‘required’ or they must be final”.
-
In Swift, why cannot we add designated initializers in extension?
We cannot define designated initializers in extensions. But why is that? In this post I am going to show you an example of the reason of that.
-
In Swift, why cannot we use generic protocols as normal protocols?
In Swift, generic protocols can only be used as a generic constraint. But why is that? Why we can’t use them as normal protocols?