Embarcadero: Firemonkey OOP
Embarcadero: Firemonkey C++
FireMonkey Apps for iOS and Android are signed automatically by Delphi during the build process – this is an obligation esp. for iOS apps and thus has been added as a feature directly into the IDE. For Windows applications though (32 or 64, VCL or FMX) there is no such… Read More Der Beitrag Signing Windows Delphi Applications erschien zuerst auf Developer Experts.Read More
Anyone who loves playing with deck of cards knows solitaire. And no matter how advanced the technology is, it will always be played. That is why I’m thrilled to see BVS Solitaire Collection by BVS Development as our May 2018 cool app winner. It is an award-winning multi-featured collection of solitaire card games that includes over 510 variations.
It features both old-time favorites (like Spider Solitaire, FreeCell and Pyramid) and original variations not found elsewhere. You can modify rules of any game, thus easily creating your own unique variations. Attractive smoothly scalable playing cards, completely customizable game appearance and comprehensive set of statistics to measure your performance. Its Windows version gained popularity and was even featured in a movie “The Girl with the Dragon Tattoo” (2011).
BVS Solitaire Collection is built with Delphi along with Firemonkey. It runs on iOS, MacOS and Windows. Boris of BVS Development Corporation shared his experience on Delphi, he said:
“Delphi was chosen due to the flexibility of Object Pascal and both powerful and convenient development environment. I like the aesthetics of the Object Pascal code and its high readability. When I’m in an edit-compile- debug cycle I want it to be as fast as possible. Delphi compiler is extremely quick. That accelerates my development efforts and greatly improve my productivity. Besides, Object Pascal is much simpler and safer than C++ which further improves productivity and code maintainability. Embarcadero keeps adding new features continuously. Actually Delphi is one of the best IDEs on the market, that can be used to create cross platform applications.”
Watch BVS Solitaire Collections video in action here:
Interested in submitting for the Embarcadero’s Cool App contest? It’s open to any business or consumer application built with RAD Studio, Delphi or C++Builder. Embarcadero awards Cool App contest winners a $500 Amazon gift card and winning submissions are also highlighted on the company’s YouTube channel. For more information on the contest and a link to the submission form, click here.
For whatever reason my old Windows XP netbook doesn’t connect to our holiday flat’s WIFI while my OnePlus One Android phone does. So I thought I’d simply tether it to the Netbook via USB to get around this problem. I tried that before with other phones and other computers and don’t remember ever having a […] … Read More
One of the reasons it is so hard to write ARC a compatible source base is that there is no Delphi ARC win32 compiler. So you have to debug your memory issues using the remote debugging capabilities which – besides very slow – are unstable at best. This is the number 1 reason I have […] … Read More
Open: Delphi 10.2 Tokyo: they did not fix the broken documentation tab in 10.2.2 2004, but it is an “easy” fix to do yourself
Since the fix is on the forums server (singular!) and that one tends to be squirrel driven lately, here it is in full via [WayBack] I see they didn’t fix the broken documentation tab in 10.2.2 2004 (professional). It’s not a show stopper but a nuisance to fix oneself. And for new dev… – Herbert […] … Read More
There is an interesting post on Medium aiming to inspire students why to learn C++. Its main point is that learning C++ teaches fundamental computer science concepts: memory management, compile-time vs run-time, polymorphism implementation, iterators and containers, and more. Unfortunately, it phrases itself in an exclusionary manner. While C++ is not the only language where you can learn these fundamentals, it is one of the most popular. However, with dozens of coding "boot camps" popping up and charging thousands of dollars for the promise of a quick path to a software development career, why should you consider learning a complex language like C++? Here are three key reasons to learn and use C++ today: Technical Foundation It's Widely Used Support and Future Let’s look at these in order. Technical Foundation C++ is one of the most common languages used to teach strong foundational knowledge that is applicable to all other languages. There are many core concepts you can learn with C++: Memory management: Allocating and freeing; use of pointers, and very quickly why you should not manually manage memory Different memory management models: reference-counted in the form of shared_ptr; strict ownership in the form of unique_ptr Ownership and deterministic behaviour, illustrated by RAII (see C++ specifics) Polymorphism behaviours: this one is in fact illustrated by some odd behaviours of C++, such as that the type identity of an object changes throughout its construction - hint, what happens when you call a virtual method in a constructor? Fundamental containers and algorithms Optimizations: what causes fast or slow code? Functional programming: while not a pure functional language, functional style is a direction the language has been heading and is very powerful in C++ If you learn C++, you will have a solid background that will allow you to understand other languages’ designs and implementations. It’s Widely Used C++ is the most widely used language for software today, especially in areas requiring performance. The following applications are written totally or mostly in C++: Windows Explorer Photoshop Word Clang compiler Windows (key area, including the new wrappers for XAML and desktop in C++17) Amazon’s key services Large parts of Apple’s macOS Bloomberg’s financial software And many more. Why is it widely used? Because C++ is powerful, expressive, concise, and performant. When you need to write solid, fast, applications and need powerful concepts in your code, you use C++. Support and the Future Finally, one key item in learning a language is the direction it’s going in the future. C++ is an ISO standard, and is evolving rapidly. You can read an overview of the various standard versions here. It’s a language that is being kept up-to-date and extended as developers need it. That’s a language to rely on. Ready to Get Started learning or expanding your C++ knowledge? Start with our free tools and C++ Bootcamp replays.Read More
As you have probably seen, Embarcadero has released a few patches for 10.2.3. I wrote about them at http://blog.marcocantu.com/blog/2018-april-10-2-3-patches-recap.html and there was a new one for iOS covered by Sarina at https://community.embarcadero.com/blogs/entry/rad-studio-10-2-3-ios-11-3-patch-available. Yesterday, the compony released a patch that addresses a few critical issues when deploying RAD Server modules to Apache on Linux. The reported bug mentioned is not the key one, as the main issue was found and reported internally and not on Quality Portal. If you have any interest in deploying a RAD Server solution to Linux, this patch is a must have. The download is at https://cc.embarcadero.com/item/30836 . Just in case you missed is, remember that part of a RAD Studio. Delphi, or C++Builder Enterprise or Architect product, you now have the license to deploy a single RAD server instance without any further cost.Read More
Recently I was installing Linux Mint on a new Acer laptop with UEFI boot manager. The laptop came with preinstalled “Endless OS” which turned out to be useless because of absence of a package manager. I’ve created Linux Mint 18.3 bootable USB using Rufus, and chosen “GPT partition scheme for UEFI”. I did not make any BIOS changes before installation, and the installation procedure worked fine; I’ve chosen “Erase the entire disk” option during installation. After the installation, when I tried to launch the newly installed OS, I’ve got “No Bootable Device” screen. After several “try and error” iterations I came with the following solution: During installation, do not check “Install 3rd party drivers …” option – the drivers will not be installed anyway; they can be installed later using Driver Manager. After the installation is over, boot into BIOS settings (on Acer laptops by pressing F2 key after switching power on) and set the EFI file created during installation as trusted. The procedure is written in much detail here, only in my case the file turned out to be grubx64.efi The system should boot now, but without some drivers. The worst thing in my case appeared after installing Oracle’s Virtual Box – Virtual Box installs it’s own kernel driver, and Virtual Box did not work because the driver did not work. So you need to enable driver installation now, and it is done by disabling “Secure Boot” option in BIOS.Read More
In this video we have a quick look at some code I've written to produce a Minesweeper clone - in both the VCL and partially in FireMonkey, check it out on YouTube, it's about 10 minutes long.Read More
Our TMS XData expert Wagner R. Landgraf travels from Brasil to Germany especially for the TMS RADical Web training day on May 24th at Marienfeld, Germany. TMS XData is the tool for Delphi developers to enable creating fast, easy and secure REST APIs to access cloud databases from desktop, mobile and web client applications. As there is a demand for in-depth training on this powerful TMS XData product, we decided to also offer a possibility for training on TMS XData on May 25th, the day after the TMS RADical Web training day and available for an ultra limited number of developers to ensure a personal, hands-on and very interactive training. TMS XData Training Day (all sessions in English) 09h00 - 09h30 Welcome, coffee, meeting 09h30 - 10h30 1. Introduction to TMS Sparkle and TMS XData a) Presenting TMS Sparkle concepts: http.sys, modules, example server b) Creating a XData module with a “hello world” operation c) XData overal concepts: service operations and entities 10h30 - 11h00 Coffee break / Instructor available for questions and discussion 11h00 - 12h00 2. Service Operations a) Creating service operations - interface and implementation b) Parameter passing: in body, in url c) Supported parameter types: scalar, structured and PODO d) Parameter by reference e) Memory Management f) Using/receiving TStream 12h00 - 13h30 3-course warm lunch / instructor available for questions and discussion 13h30 - 15h00 3. Database access a) “Traditional” approach b) Connection Pool c) Aurelius integration in service operations d) Entity publishing: CRUD operations e) Querying, paging and counting entities f) Entity set permissions 15h00 - 15h30 Coffee break / Instructor available for questions and discussion 15h30 - 16h15 4. Desktop client-side development a) TXDataClient overview b) Invoking service operations c) CRUD operations from client d) Memory management 16h15 - 17h00 5. Web client-side development a) TXDataWebClient overview b) TXDataWebDataset usage c) Asynchronous paradigm 17h00 - 17h30 Closing, questions and answers. Alternative advanced topics that can be handled on-demand: a) JWT and authentication b) Server-side events c) Custom error-handling in server d) Swagger/OpenAPI The TMS XData training day price is 295EUR. For Delphi developers attending both the TMS RADical WEB training day and TMS XData training day, price is 395EUR. Contact us directly by email email@example.com for registrations. Contact us as quickly as possible as registration is on a first-come, first-serve basis.Read More
Success. Each one of us; you, me, Buffett, his pilot all want success. Whether we acknowledge it or not, we each hunger for success. So, what separates the exceptionally successful people from the rest of us?
Check out this story about Warren Buffet and his long-time pilot then you decide.
Mike Flint was Buffett’s personal airplane pilot for 10 years. Flint had flown for 4 different U.S. Presidents before, so he was pretty good at flying. Yet he still felt as though he hadn’t achieved all of the career and life goals that he wanted to.
So one day Buffett jokingly says to Flint: “The fact that you’re still working for me tells me I’m not doing my job. You should be out going after more of your goals and dreams.”
So Flint asks Buffett for his help, and Buffett tells him to go through this 3-step exercise.
Here’s how it works (you can play along at home, too)…
Buffett started by asking Flint to write down his top 25 goals – the things that came to mind when he thought of success in his career and life. So, Flint took some time and wrote them down.
Then, Buffett asked Flint to review his list and circle his top 5 goals – the things that were most important to him and that he wanted more than anything else in the world.
This was a lot harder for Flint, since everything on his list was important to him (after all, that’s why he wrote them down). But Warren insisted that he could only pick five, so after some time and thought, he made five circles.
“Are you sure these are the absolute highest priority for you?” Warren asked. Steve confidently replied that they were.
At this point, Flint had two lists. The 5 items he had circled were List A and the 20 items he hadn’t circled were List B.
Warren now asked Flint when he planned to get to work on these top 5 goals and what his approach would be.
Flint explained, “Warren, these are the most important things in my life right now. I’m going to get to work on them right away. I’ll start tomorrow. Actually, no I’ll start tonight.”
Flint went on to explain his plan, who he would enlist to help him, when he expected to complete each item…
And that’s when Buffett asked him about the second list, “And what about these other 20 things on your list that you didn’t circle? What is your plan for completing those?”
Flint replied, “Well the top 5 are my primary focus, but the other 20 come in at a close second. They are still important so I’ll work on those intermittently as I see fit as I’m getting through my top 5. They aren’t as urgent, but I still plan to give them a dedicated effort.”
To which Buffett replied:
“No. You’ve got it wrong, Mike. Everything you didn’t circle just became your ‘avoid at all cost list.’ No matter what, these things get no attention from you until you’ve succeeded with your top 5.”
zilchworks.com … Read More
I have already blogged specifically about the 10.2.3 release, the patches we delivered for it, and linked to the collection of related articles in the community site at https://community.embarcadero.com/blogs/tags/tag/10-2-3. In particular, the launch webinar reply is available at https://community.embarcadero.com/blogs/entry/10-2-3-webinar-replay. Not much else to add, if not that it has been very well received by the users. Technical Blog Posts Very interesting, focused suggestions in Positioning a Task Dialogue by David at http://www.davidghoyle.co.uk/WordPress/?p=1921 Media file meta-data on Android in Delphi by Craig at https://community.embarcadero.com/blogs/entry/media-file-meta-data-on-android-in-delphi 5-Minute-Snack: Understanding TWebRequest’s ContentFields and QueryFields with regard to MethodType by Holger at https://flixengineering.com/archives/649 Using CData’s Gmail connector in C++ Builder by Greg at https://cppthingsblog.wordpress.com/2018/04/09/using-cdatas-gmail-connector-in-c-builder/ (as it also applies to Delphi, almost identically) Ready for Debate? Which Windows Framework and What About StackOverflow? Two topics that could spawn a significant debate, I'm sure. The first is I found it very interesting to read this article by respected technical author Tim Anderson on "Which .NET framework for Windows: UWP, WPF or Windows Forms?" at https://www.itwriting.com/blog/10182-which-net-framework-for-windows-uwp-wpf-or-windows-forms.html. I strongly believe VCL provides a better option than any of the current Microsoft framework, plus it clearly wins for a long-lived applications and has the highest degree of long time support and compatibility. A couple of comments hinted at VCL, nice. Anyway, Tim recently reiterated the question on Twitter, https://twitter.com/timanderson/status/981933828964003840. The second good topic for a discussion is reading Nick's take on the status of StackOverflow, at http://www.codingindelphi.com/blog/in-which-i-pontificate-about-stackoverflow/. But read also this twitter thread by an internal : https://twitter.com/balpha/status/984839394829000706.Read More