Hi
We are happy to annouce a new success story: ApptiveGrid – Digitize and Automatize Business Processes
https://www.pharo.org/success/ApptiveGrid.html
S
Hi
We are happy to annouce a new success story: ApptiveGrid – Digitize and Automatize Business Processes
https://www.pharo.org/success/ApptiveGrid.html
S
Writing quiz questions for the new mooc on advanced object-oriented design mooc https://advanced-design-mooc.pharo.org I realized that some people get it totally wrong. They count class number and think that having many classes is a sign of bad design. Or that having fewer classes is better. Of course nobody likes to define classes for the sake of defining classes. And over engineering is not good either. But let us check a bit what the theory is teaching us.
First let us take some time to think: To have less code or less classes is super easy just remove features. For example if you want to have less classes in Pharo just remove the refactoring engine for example and you will instantaneously less class. Remove the Git tooling and you get less number of classes, number of methods, number of lines of code. It is so easy.
So now nobody is that stupid and usually acknowledges that when we compare things we should compare them under the hypothesis that they are feature equivalent. (I write this but this common wisdom is not totally shared, unfortunately).
Now let us check the theory under the basis of feature equivalence….
Why using class number as a good quality metric is idiotic?
[ * ] A class should have one responsibility
[ * ] A large class tends to have more complex logic and as such be more difficult to test and extend
[ * ] A small class is easier to extend
[ * ] A hierarchy supports dispatch and polymorphism
So I know some people that should really follow our cool mooc and they will learn things about good and strong OO design :).
Stef
I just learned that Pharo by example was translated in Chinese.
https://gitee.com/fmcdr/pharo-by-example
thanks a lot
We migrated Pillar to Pharo 11 and Pillar is now available. All the development will happen in Pharo11.
http://github.com/pillar-markup/pillar
We will start a new iteration of enhancements of Microdown.
S. Ducasse