On 6/23/2025 12:52 PM, Heart Bleed wrote:
> I'm learning GUI programming and I have basic idea of its working now
> & I can do away with simple GUI programs. But I now ask you good
> peoples to give me some advice on where can I learn more about commen
> GUI patterns, FAQs, pitfalls in general? .
What language are you using as that might help? If you are programming
in rust, I'll have to search them for.
If you want a generic resource to learn OO from, the classic book is:
"Design Patterns Elements of Reusable Object-Oriented Software"
The concepts are WAY advanced (it will probably be a book you will "get"
10-20 years after you start coding -- as I don't consider a programmer
myself I'll admit I usually tend not to apply the concepts in the book,
much to my regret). It was written with C++ in mind, so some concepts
may or may not apply anymore.
Check out Ruby's language discussions about MVP (look up RubyOnRails) if
you are doing or plan to do web programming. Again the concepts may not
apply anymore.
Also, check out a discussion about UIs that was posted about UI
programming design by MoAlyousef, which is one of the most interesting
discussions about how FLTK might *NOT* be a good choice anymore for
modern UI programming or the advantages and disadvantages it brings (Mo,
btw, is *IMO* the smartest -- and probably youngest -- guy currently on
the FLTK list, albeit he is I believe not part of the core group of FLTK
developers, much to my regret. Again the talk might go over your
head). To find the discussion you might need to check the archive on
googlegroups.
If you are planning on doing 3D graphics, there are two main competing
technologies (OpenGL - look up Nehe's tutorials if you can still find
them online -- you might need to use waybackmachine). The upcoming and
probably new resource (if it succeeds -- big if still) is Vulkan.
Vulkan relies heavily on advanced C++ so most of examples are not good
to start learning from and it is not python friendly. You will need to
learn Vulkan on either C++ or rust.
The best way to learn Vulkan that I found is to start small:
- Find GLFW's examples directory with the lonesome triangle_vulkan.c.
It is plain C code. If you know C++, it is easy.
- Then, try porting some of the FLTK examples to it. On my FLTK
repository, you will find, in the Vulkan branch, three really ugly coded
ported examples vk_*. If you want efficient and performant code, you
will need to go into some other of my projects or rely on asking your
favorites AI.
- My Vulkan performant code is likely "tainted" from the POV of
intellectual property thou, so until the IP lawsuits become clear, I
suggest you do NOT depend on them.
>
> Suggest me any resource that you think might help me please.
For FLTK specifically (with C++ in mind), you might want to translate
Greg Ercolano's C++ code to your language of choice to learn from:
https://www.seriss.com/people/erco/fltk/
I'd recommend learning rust if you are going to UI programming for
Holographic projections, Automated Vehicles or Robotics, which is *my*
bet on what I expect the new (and perhaps not so new) generations will
move into. I don't bet on AR/VR simply because I use glasses and at my
age, I have ALL visual illnesses (myopia, short-sighted *AND* astigmatism).
>
> Also, FLTK comes with so many goodies and features that it feels hard
> to comprehend it. Documents are indeed good but they lack
> motivation/problems for particular features/classes being introduced
> for it.
Erco's page is really the best resource for FLTK. Each example shows
you how to a specific class.
--
ggar...@gmail.com